Re: [Zope] Product loading during ZopeTestCase startup

2010-01-18 Thread Ross Patterson
Encolpe Degoute

writes:

> Hello,
> since few days i'am facing a strange problem with egg loading in tests.
> One egg called project.site_policy is never loaded in the Products
> namespace: the ZopeLite.hasPackage('project.site_policy') always returns
> False.
> Where is the code that loads eggs and products outside
> SOFTWARE_HOME/lib/python/Products ?
>
> regards

If I'm understanding correctly, one need to use the five:registerPackage
ZCML directive and then use ZTC.installPackage.  Many collective.*
packages can be used as reference, including collective.formcriteria.
There are probably simper examples, but that's the first that comes to
mind.

HTH,
Ross

___
Zope maillist  -  Zope@zope.org
https://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Regarding ZODB

2009-03-25 Thread Ross Patterson
amol kumbhar 
writes:

> I am trying to execute following code
>
> import ZODB
> from Persistence import Persistent
>
> class Employee(Persistent):
>
>     def setName(self, name):
>     self.name = name
>
> but getting following error
>
> Error Type: ImportError
> Error Value: import of "Persistent" from "Persistence" is unauthorized. You 
> are
> not allowed to access 'Persistent' in this context

It looks like you're trying to do this from a python script in the ZMI.
I think to do what you're trying to do you need to write a python
package on the filesystem.

Ross

> this is my full error log
>
> Time 2009/03/24 22:31:33.559 GMT+0530 
> 
> User Nameadmin (admin)
> 
> (User Id) 
> 
> Request URL  http://localhost:9673/DeveloperGuide/SimpleinterfaceException
> ImportError  
> Type  
> 
> Exceptionimport of "Persistent" from "Persistence" is unauthorized. You 
> are   
> Valuenot allowed to access 'Persistent' in this context   
> 
>
> Traceback (innermost last):
>
>   • Module ZPublisher.Publish, line 119, in publish
>   • Module ZPublisher.mapply, line 88, in mapply
>   • Module ZPublisher.Publish, line 42, in call_object
>   • Module Shared.DC.Scripts.Bindings, line 313, in __call__
>   • Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec
>   • Module Products.PythonScripts.PythonScript, line 327, in _exec
>   • Module None, line 2, in Simpleinterface
> 
> Line 2
>   • Module AccessControl.ZopeGuards, line 284, in guarded_import
>
> ImportError: import of "Persistent" from "Persistence" is unauthorized. You 
> are
> not allowed to access 'Persistent' in this context
>
> Display traceback as text
>
>   Return to log  
> REQUEST
>
> form
>
> -C ''
>
> cookies
>
> dtpref_rows '20'  
>  
> dtpref_cols '90%' 
>  
> tree-s  'eJzT0MgpMOQKVneEA1dbda4CI67EkgJjLj0AeGcHew'  
>  
> GLog
> '%7Bleft%3A0%2Ctop%3A0%2Cwidth%3A1175%2Cheight%3A630%2CpriorityDefaults%3A%7BLog%3A4%7D%2CdefaultPriority%3A3%2CtrackRPC%3Anull%7D'
>
> lazy items
>
> SESSION   /session_data_manager>>   
> 
>
> other
>
> TraversalRequestNameStack []  
>   
> AUTHENTICATED_USER  
>   
> URL   
> 'http://localhost:9673/DeveloperGuide/Simpleinterface'
> SERVER_URL'http://localhost:9673' 
>   
> AUTHENTICATION_PATH   ''  
>   
> traverse_subpath  []  
>   
> PUBLISHED
>   
> ACTUAL_URL
> 'http://localhost:9673/DeveloperGuide/Simpleinterface'
> URL0  
> http://localhost:9673/DeveloperGuide/SimpleinterfaceURL1  
> http://localhost:9673/DeveloperGuideURL2  
> http://localhost:9673BASE0 http://localhost:9673BASE1 
> http://localhost:9673BASE2 
> http://localhost:9673/DeveloperGuideBASE3 
> http://localhost:9673/DeveloperGuide/Simpleinterface  
>
> environ
>
> HTTP_COOKIE   'dtpref_rows="20"; dtpref_cols="90%"; GLog= 
>   
>   
> %7Bleft%3A0%2Ctop%3A0%2Cwidth%3A1175%2Cheight%3A630%2CpriorityDefaults%3A%7BLog%3A4%7D%2CdefaultPriority%3A3%2CtrackRPC%3Anull%7D;
>   tree-s="eJzT0MgpMOQKVneEA1dbda4CI67EkgJjLj0AeGcHew"'
>   
> SERVER_SOFTWARE   'Zope/(Zope 2.10.5-final, python 2.4.5, linux2) 
> ZServer/1.1

Re: [Zope] Anyone know of a tool to restore/cleanup/reset security/role settings?

2008-12-01 Thread Ross Patterson
"Alexander Limi" <[EMAIL PROTECTED]> writes:

> On Sat, 29 Nov 2008 15:19:10 -0800, Ross Patterson  
> <[EMAIL PROTECTED]> wrote:
>
>> Yeah, I did see that and no it doesn't look like it resets anything.  It
>> also looks like it's only concerned with local roles and I need to reset
>> the role mappings too.  But thanks anyways!
>>
>> Keep an eye out for collective.securitycleanup.  :)
>
> Cool, I will. It's a very frequently asked question — "how can I get back  
> to the state my site was in before I started messing with security?" :)

I've released it:

http://pypi.python.org/pypi/collective.securitycleanup

collective.securitycleanup

GenericSetup handlers to restore Zope security to defaults

WARNING: Backup your ZODB before using this package!

The Zope 2 security framework is very powerful and one of it's greatest
strengths. A lot of it's power comes from it's flexibility. Exposing
that power to site adminsitrators often ends up giving them enough rope
to hang themselves with. This is exactly what the "Security" tab in the
ZMI does.

In many cases, a site admin or consultant is faced with the daunting
task of restoring all the security settings throughout the Zope object
heirarchy in order to bring sanity and predictability back to the
site. The collective.securitycleanup package provides GenericSetup
handlers for restoring the role mappings and local roles back to their
defaults. This handler can be used in combination with existing handlers
to set role mappings and to re-apply workflow security settings to help
start the process of security cleanup.

The clean up is performed on all ancestors including the Zope
application root and by walking down the heirarchy to all
descendants. This means all descendents of the context the handler is
used on and all ancestors of the context including the root will be
cleaned up. It will not clean up siblings or anything else that is not a
direct ancestor to the context.

The clean up removes all permission settings stored on the instance
which effectively restores them to code defaults. The clean up also
removes all local roles except the "Owner" role for the user returned by
OFS.interfasces.IOwned.getOwnerTuple() if already assigned.

Use of this tool will likely only ever be a starting point. So be sure
to test thoroughly before deploying to your production server and backup
your ZODB before using it.

Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Anyone know of a tool to restore/cleanup/reset security/role settings?

2008-11-29 Thread Ross Patterson
"Alexander Limi" <[EMAIL PROTECTED]> writes:

> On Fri, 28 Nov 2008 19:10:48 -0800, Ross Patterson  
> <[EMAIL PROTECTED]> wrote:
>
>> Does anyone know of an existing tool for restoring all security
>> settings/rolemaps from the ground up?  Obviously I can use
>> rolemap.xml where applicable and update workflow security.  I want to
>> first restore the Zope root to code defaults and restore the whole
>> hierarchy to just acquire.
>>
>> I'm going to write something myself if not, but I thought I'd see if
>> there was anything out there.
>
> I assume you saw this release from Andreas today:
> http://pypi.python.org/pypi/zopyx.plone.cassandra
>
> I'm not sure if it can actually reset the settings, but at least it
> can show them. Maybe something you can contribute to the next release?
> :)

Yeah, I did see that and no it doesn't look like it resets anything.  It
also looks like it's only concerned with local roles and I need to reset
the role mappings too.  But thanks anyways!

Keep an eye out for collective.securitycleanup.  :)

Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] Anyone know of a tool to restore/cleanup/reset security/role settings?

2008-11-28 Thread Ross Patterson
Does anyone know of an existing tool for restoring all security
settings/rolemaps from the ground up?  Obviously I can use rolemap.xml
where applicable and update workflow security.  I want to first restore
the Zope root to code defaults and restore the whole hierarchy to just
acquire.

I'm going to write something myself if not, but I thought I'd see if
there was anything out there.

Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] FunctionalTestCase commits transactions

2008-11-05 Thread Ross Patterson
"Peter Bengtsson" <[EMAIL PROTECTED]>
writes:

> 2008/11/4 Dieter Maurer <[EMAIL PROTECTED]>:
>> Ross Patterson wrote at 2008-11-3 16:04 -0800:
>>> ...
>>>If memory serves, a *functional* test fixture calls the Zope publisher
>>>when a testbrowser request is made.  The publisher opens a new
>>>transaction, as it should.
>>
>> Really?
>>
>> When I wrote a functional test browser (years before "zope3"),
>> I emulated the Zope publisher rather than calling it directly
>> in order to have control how transactions are handled.
>>
>> Especially, I used subtransactions instead of top level transactions
>> to avoid the bug reported by Peter.
>>
>
> Uh? "subtransactions"?
> So how would you recommend that I go abouts doing this?
> In fact I've already written a custom tearDown() for my class that
> cleans the test database (postgresql) which is quite neat because I
> can write tests in a completely different way as each test can build
> on each other (assuming order of methods is respected) similar to how
> doctests are done where you have blocks of shell code split between
> text.
>
> If this is the way it has to be to test with zope.testbrowser in zope
> 2 then I'll let it be so.

I don't think what Dieter is talking about is a viable path for you.  I
think he's talking about something *else* that he did in the past.  I
think you should use your approach or the one I suggested.

Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] FunctionalTestCase commits transactions

2008-11-04 Thread Ross Patterson
"Dieter Maurer" <[EMAIL PROTECTED]> writes:

> Ross Patterson wrote at 2008-11-3 16:04 -0800:
>> ...
>>If memory serves, a *functional* test fixture calls the Zope publisher
>>when a testbrowser request is made.  The publisher opens a new
>>transaction, as it should.
>
> Really?
>
> When I wrote a functional test browser (years before "zope3"),
> I emulated the Zope publisher rather than calling it directly
> in order to have control how transactions are handled.
>
> Especially, I used subtransactions instead of top level transactions
> to avoid the bug reported by Peter.

I'm not completely sure, but I'm *pretty* sure.  I remember stepping
through the code before and seeing a new transaction start.

As for "as it should", it just seems reasonable to me that a functional
test fixture would try to use the real application behavior as much as
possible.

Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] FunctionalTestCase commits transactions

2008-11-03 Thread Ross Patterson
"Peter Bengtsson" <[EMAIL PROTECTED]>
writes:

> I'm trying to get zope.testbrowser to work in Zope 2.10. After a lot
> of guesswork (easy_install zope.testbrowser broke my environment, Zope
> 2.11 isn't setting up session container, used various blogs tips to
> get adapters right) I got it running and I can now do stuff like
> browser.open(self.folder.myapp.absolute_url()) in python unit test.
> However, I have a problem. The app uses ZSQL Methods and when the test
> finishes the transaction is not rolled back and I'm not interested in
> manually resetting the test database.
> Is this so deliberately?
> Do I really have to manually reset the database?
>
> I noticed that FunctionTestCase
> (lib/python/Testing/ZopeTestCase/ZopeTestCase.py:116) inherits from
> functional.Functional which inherits from sandbox.SandBoxed which,
> although I don't understand it, seems to do things differently to the
> non-functional approach which inherits from base.TestCase.
>
> Although I'm not using it, function.Functional adds the nifty function
> publish() which I'm not using but it's not a transaction.commit() in
> it. Why??
> And what does that decorator actually do?

If memory serves, a *functional* test fixture calls the Zope publisher
when a testbrowser request is made.  The publisher opens a new
transaction, as it should.  So if there are uncommitted changes in the
transaction used by the test before submitting the testbrowser request,
then those changes won't be reflected in the new transaction opened when
the publisher handles the request.  I'm guessing that since this is a
fairly common situation it was decided that the test case should commit
before submitting the request to the Zope publisher.

I think it's proper that a *functional* test case opens a new
transaction when responding to requests since that's how the application
behaves.  I also think that it's proper for a widely shared test fixture
such as this to gracefully handle the common case where a test writer
needs changes made in the test to show up when handling the request as
it does now.  I *also* agree that your case is the purer one and that
should be supported.  So I guess I'd advocate for making the commit in
the Functional.publish() method configurable.

At any rate, to solve your immediate problem, I would just write a new
test case class that subclasses whatever test case class you were using,
copy the publish method implementation from Functional and just remove
the commit line.  Then you can use your test case class in your tests
and the commit won't be made.

HTH,
Ross

> class Functional(sandbox.Sandboxed):
> ...
> __implements__ = (interfaces.IFunctional,)
>
> @savestate
> def publish(self, path, basic=None, env=None, extra=None,
> request_method='GET', stdin=None, handle_errors=True):
> '''Publishes the object at 'path' returning a response object.'''
>...
>
> # Commit the sandbox for good measure
> transaction.commit()
> ...

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] Re: help debugging a "can't pickle" error deep within a catalog reindex

2008-06-18 Thread Ross Patterson
Rob Miller <[EMAIL PROTECTED]> writes:

> Ross Patterson wrote:
>> Rob Miller <[EMAIL PROTECTED]> writes:
>>
>>> hi,
>>>
>>> i'm trying to perform a ZCatalog.refreshCatalog() on a catalog with
>>> over 29,000 indexed objects.  it churns for a good long time, and
>>> eventually fails with a long set of tracebacks, of which i've included
>>> a sample at the end of this message.
>>>
>>> i think i understand the gist of the issue... it's trying to write an
>>> object (probably a CatalogBrain) to the database, but this object's
>>> __dict__ contains a value that is of type instancemethod, which isn't
>>> allowed for persistent objects.
>>>
>>> the problem is that i can't figure out which specific objects are
>>> causing the problem.  i've used pdb.post_mortem to get a debug prompt
>>> way down in the traceback, but the code goes in and out of C modules,
>>> so i'm missing a lot of what's happening.  and when i interactively
>>> peek at the objects that are being indexed when the error happens,
>>> there doesn't seem to be anything wrong, and i can index the objects
>>> w/ no problem.  i've even tried dropping the subtransaction threshold
>>> down to 1, so it will try to commit a savepoint after every object,
>>> but none of the objects being indexed seemed to have any problems.
>>>
>>> i CAN verify that the instancemethod that is causing the problem
>>> renders like this:
>>>
>>> >> at /session_data_manager>>
>>>
>>> even that hasn't proven enough for me to concretely identify the
>>> source of the problem, though.
>>>
>>> i've been working on this for a full day already, and am not sure how
>>> to proceed.  does anyone have any debugging tips that might help me
>>> figure out what, exactly, is causing the reindex attempts to blow up?
>>>
>>> thanks!
>>
>> Can you get a pdb.post_mortem prompt at the actual ZODB/serialize.py:416
>> error or only at transaction/_transaction.py:267 where some sort of
>> previous error is handled?
>
> yes, i put the post_mortem around the "transaction.savepoint" call at
> line 559 of Products/ZCatalog/ZCatalog.py.  this is the place where
> the error is happening, but it's where the subtransaction threshold
> has been reached, so IIUC the error could be caused by any of the
> objects in the subtransaction.

Then it seems like you're not getting at the actual pickle error and
thus aren't looking at the object whose __getstate__ returns the
offending instance method.  If you have enough memory, try running the
refreshCatalog with subtransactions disabled to get the *actual* pickle
error.

>> If the former, I often find it informative to step up to
>> ZODB/serialize.py:407 where obj.__getstate__() is called and find out
>> what obj is.  Is it the same object every time?  If not, is it of the
>> same type every time?
>
> right.  as long as the subtxn threshold number is the same, then the
> object is the same.  but if i change the subtxn threshold, then the
> object will be different.  as i said, i even tried reducing the subtxn
> threshold to '1', so, assuming my understanding is correct, this would
> be triggered after every object.  it took many hours to get to my
> debug prompt; when i did, the obj was FileAttachment object that
> didn't seem to have any problems.  i was able to interactively index
> the object from the pdb prompt, and even commit the transaction, w/ no
> problems.

The actual error of your TB is the error that savepoint raises when a
previous error has occurred.  So changing the subtransaction threshold
just changes which object is being indexed when the savepoint *happens*
to be run and notices that an error has been raised for a previous
object in the savepoint.  At least, that's my read of it.

>> A next step can also be to put a pdb.set_trace() at
>> transaction/_transaction.py:340 in the register() method such that
>> it's is only called when the offending object is added to the
>> transaction.
>
> i'll give this a shot, thx.
>
>> Hope some of that helps,
>
> even just having someone to discuss it with is helpful, for my sanity
> at least...  ;-)

Well, then I'll have to enjoy your sanity vicariously.  :)

Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] Re: help debugging a "can't pickle" error deep within a catalog reindex

2008-06-17 Thread Ross Patterson
Rob Miller <[EMAIL PROTECTED]> writes:

> hi,
>
> i'm trying to perform a ZCatalog.refreshCatalog() on a catalog with
> over 29,000 indexed objects.  it churns for a good long time, and
> eventually fails with a long set of tracebacks, of which i've included
> a sample at the end of this message.
>
> i think i understand the gist of the issue... it's trying to write an
> object (probably a CatalogBrain) to the database, but this object's
> __dict__ contains a value that is of type instancemethod, which isn't
> allowed for persistent objects.
>
> the problem is that i can't figure out which specific objects are
> causing the problem.  i've used pdb.post_mortem to get a debug prompt
> way down in the traceback, but the code goes in and out of C modules,
> so i'm missing a lot of what's happening.  and when i interactively
> peek at the objects that are being indexed when the error happens,
> there doesn't seem to be anything wrong, and i can index the objects
> w/ no problem.  i've even tried dropping the subtransaction threshold
> down to 1, so it will try to commit a savepoint after every object,
> but none of the objects being indexed seemed to have any problems.
>
> i CAN verify that the instancemethod that is causing the problem
> renders like this:
>
>  at /session_data_manager>>
>
> even that hasn't proven enough for me to concretely identify the
> source of the problem, though.
>
> i've been working on this for a full day already, and am not sure how
> to proceed.  does anyone have any debugging tips that might help me
> figure out what, exactly, is causing the reindex attempts to blow up?
>
> thanks!

Can you get a pdb.post_mortem prompt at the actual ZODB/serialize.py:416
error or only at transaction/_transaction.py:267 where some sort of
previous error is handled?

If the former, I often find it informative to step up to
ZODB/serialize.py:407 where obj.__getstate__() is called and find out
what obj is.  Is it the same object every time?  If not, is it of the
same type every time?

A next step can also be to put a pdb.set_trace() at
transaction/_transaction.py:340 in the register() method such that it's
is only called when the offending object is added to the transaction.

Hope some of that helps,
Ross

> Traceback (most recent call last):
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/lib/zope/lib/python/Products/ZCatalog/ZCatalog.py",
> line 296, in refreshCatalog
> self.catalog_object(obj, p, pghandler=pghandler)
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/zope/Products/CMFPlone/CatalogTool.py",
> line 367, in catalog_object
> self._increment_counter()
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/zope/Products/CMFPlone/CatalogTool.py",
> line 395, in _increment_counter
> self._counter.change(1)
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/lib/zope/lib/python/BTrees/Length.py",
> line 55, in change
> self.value += delta
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/lib/zope/lib/python/ZODB/Connection.py",
> line 890, in register
> self._register(obj)
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/lib/zope/lib/python/ZODB/Connection.py",
> line 900, in _register
> self.transaction_manager.get().join(self)
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/lib/zope/lib/python/transaction/_transaction.py",
> line 273, in join
> self._prior_operation_failed() # doesn't return
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/lib/zope/lib/python/transaction/_transaction.py",
> line 267, in _prior_operation_failed
> raise TransactionFailedError("An operation previously failed, "
> TransactionFailedError: An operation previously failed, with traceback:
>
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/lib/zope/lib/python/ZServer/PubCore/ZServerPublisher.py",
> line 25, in __init__
> response=b)
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/lib/zope/lib/python/ZPublisher/Publish.py",
> line 401, in publish_module
> environ, debug, request, response)
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/lib/zope/lib/python/ZPublisher/Publish.py",
> line 202, in publish_module_standard
> response = publish(request, module_name, after_list, debug=debug)
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/lib/zope/lib/python/ZPublisher/Publish.py",
> line 119, in publish
> request, bind=1)
>   File
> "/home/rob/topp/14000/builds/20080611/opencore/lib/zope/lib/pytho

[Zope] Re: ZPL and GPL: What should one consider when choosing a license?

2007-12-26 Thread Ross Patterson
Ross Patterson <[EMAIL PROTECTED]> writes:

> Chris McDonough <[EMAIL PROTECTED]>
> writes:
>
>> On Dec 21, 2007, at 3:53 PM, Ross Patterson wrote:
>
>> Now I've gotta run out of here before a licensing discussion breaks
>> out. ;-)
>
> I suppose this topic is just too volatile, but it would be great to
> have some documentation somewhere for developers like myself who don't
> really have strongly formed opinions or practices on licensing.  I'd
> love to have a page I can go to, read the facts, a sampling of the
> opinions, all provided just for the purposes of giving developers a
> resource for making their own decision.

I'm really a bit embarrassed that I started this thread.  All I really
wanted was to find or maybe instigate the creation of resources for
developers such as myself who want to learn enough about the licenses
available to make a choice.  I don't want to participate in or instigate
a licensing debate.

This is not to say I don't think it's worth debating.  I think
impassioned opinions and debates about licensing are necessary and
healthy.  It's just not why I started this thread.

The amusing thing is much of the most useful information I've gotten has
been off list.  :)

It seems as though a creating an informative resource on licensing in
the Zope and/or Plone communities is not possible due to these
impassioned opinions.  As such, I'd like to to consider that conclusion
to be the resolution of this thread.  :)

Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] Re: ZPL and GPL: What should one consider when choosing a license?

2007-12-21 Thread Ross Patterson
David Pratt <[EMAIL PROTECTED]> writes:

> In relation to Chris's post, my understanding of the Zope repository
> is that a committer is required to sign an agreement with Zope Corp or
> ZF. This requires the code to be licensed as ZPL with 50% of
> intellectual rights to Zope Corp or ZF. Hope this helps.

And if we set up a licensing howto, it could also say something like,
"If your code is on svn.zope.org then it *has* to be ZPL due to the
contributor agreement you signed, dumbass!"  :) I'll be fixing the
licensing on my svn.zope.org projects as soon as I can carve out the
time.  Thanks for the heads up.

Ross

> Ross Patterson wrote:
>> Recently, someone wrote to me regarding one of my z3c packages which
>> is licensed under the GPL.  They asked me to license them under the
>> ZPL saying that the ZPL would allow the widest range of use for those
>> packages.  They also implied that using the GPL impacted the
>> licensing of other code that uses mine.
>>
>> Mostly this is just a debate I've never taken up before.  I've always
>> just chosen the GPL because it's the most aligned with my values and
>> ideals on a "visceral" level.  IOW, it's a gut choice not an educated
>> choice.
>>
>> I realize this is an old debate.  I found some lengthy threads on
>> zope-dev from 2001, but I think there have been some license changes
>> since then.  I also read the following blog posts:
>>
>> http://radio.weblogs.com/0116506/2005/11/21.html#a370
>> http://awkly.org/2005/11/21/gpl-considered-harmful/
>>
>> Unfortunately, the comment by Chris McDonough mentioned in the latter
>> doesn't seem to be accessible any more.  I'd love to read it.
>>
>> From those blog posts, I don't really see any corroboration of the
>> claims of the person who made the request that I switch to the ZPL.
>> What exactly about the GPL narrows the range of developers who can
>> use my code?  What about the GPL impacts the license of other code
>> that depends on my code?
>>
>> Here's what I want.  I want anyone who modifies or forks my code to
>> make their modifications just as accessible to myself and the
>> community as my code is in the first place.  I also want anyone who
>> forks my code to credit me and other contributors as authors of the
>> code they forked.  I have a slight preference to allow proprietary
>> code to depend on my code without having to open source their code.
>> I definitely want commercial entities to be allowed to sell products
>> and services that include my code as long as credit is given to the
>> authors.
>>
>> That's just what I want from my admittedly naive perspective.  I'd
>> like to hear comments on why others think I should or shouldn't want
>> any of those things from a license.  I'd also like to hear how others
>> think the license available relate to what I want from a license.
>>
>> Thoughts?  Is there documentation somewhere about choosing a license?
>> Maybe a howto I missed in my googling?
>>
>> Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] Re: ZPL and GPL: What should one consider when choosing a license?

2007-12-21 Thread Ross Patterson
Chris McDonough <[EMAIL PROTECTED]> writes:

> On Dec 21, 2007, at 3:53 PM, Ross Patterson wrote:
>>
>> Unfortunately, the comment by Chris McDonough mentioned in the latter
>> doesn't seem to be accessible any more.  I'd love to read it.
>
> It said:
>
> """
> I don't think Plone is "bad" because it uses the GPL. I do think it's
> a pain in the balls to have to ask authors of various GPL things if
> they're willing to relicense ZPL or other BSD-type license in order to
> be able to incorporate their software into CMF or Zope (as required by
> the ZC contributor's agreement in order to check it into either of
> those projects). It just puts up a big enough impediment to sharing
> code that the codebases don't intermingle much.
> What's gauche about using the GPL is that at least by default, the
> Plone guys don't need to ask the Zope guys if they can ship their
> software. They get the benefit (or pain ;-) of shipping it all without
> any extra work. But the Zope guys need to go track down the copyright
> owners of various bits of Plone code and get all of their permissions
> to ship their software in CMF or Zope via a relicense. That's just
> hurts collaboration badly. It's anti-sharing which I think is
> practically just gauche.
> """

Thanks for digging that up, its a really good point to have in the mix
here.

> Now I've gotta run out of here before a licensing discussion breaks
> out. ;-)

I suppose this topic is just too volatile, but it would be great to have
some documentation somewhere for developers like myself who don't really
have strongly formed opinions or practices on licensing.  I'd love to
have a page I can go to, read the facts, a sampling of the opinions, all
provided just for the purposes of giving developers a resource for
making their own decision.

Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] ZPL and GPL: What should one consider when choosing a license?

2007-12-21 Thread Ross Patterson
Recently, someone wrote to me regarding one of my z3c packages which is
licensed under the GPL.  They asked me to license them under the ZPL
saying that the ZPL would allow the widest range of use for those
packages.  They also implied that using the GPL impacted the licensing
of other code that uses mine.

Mostly this is just a debate I've never taken up before.  I've always
just chosen the GPL because it's the most aligned with my values and
ideals on a "visceral" level.  IOW, it's a gut choice not an educated
choice.

I realize this is an old debate.  I found some lengthy threads on
zope-dev from 2001, but I think there have been some license changes
since then.  I also read the following blog posts:

http://radio.weblogs.com/0116506/2005/11/21.html#a370
http://awkly.org/2005/11/21/gpl-considered-harmful/

Unfortunately, the comment by Chris McDonough mentioned in the latter
doesn't seem to be accessible any more.  I'd love to read it.

>From those blog posts, I don't really see any corroboration of the
claims of the person who made the request that I switch to the ZPL.
What exactly about the GPL narrows the range of developers who can use
my code?  What about the GPL impacts the license of other code that
depends on my code?

Here's what I want.  I want anyone who modifies or forks my code to make
their modifications just as accessible to myself and the community as my
code is in the first place.  I also want anyone who forks my code to
credit me and other contributors as authors of the code they forked.  I
have a slight preference to allow proprietary code to depend on my code
without having to open source their code.  I definitely want commercial
entities to be allowed to sell products and services that include my
code as long as credit is given to the authors.

That's just what I want from my admittedly naive perspective.  I'd
like to hear comments on why others think I should or shouldn't want
any of those things from a license.  I'd also like to hear how others
think the license available relate to what I want from a license.

Thoughts?  Is there documentation somewhere about choosing a license?
Maybe a howto I missed in my googling?

Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] ANN: z3c.recipe.egg - Recipes based on zc.recipe.egg for working with source distributions

2007-10-01 Thread Ross Patterson
I just bundled up and released some zc.buildout recipes I've found
useful.  Attached is the README.txt.

http://cheeseshop.python.org/pypi/z3c.recipe.egg

Ross

==
z3c.recipe.egg
==

Recipes based on zc.recipe.egg for working with source
distributions.

Editable Distributions
--

The z3c.recipe.egg:editable recipe uses the easy_install --editable
and --build-directory options to download multiple source
distributions.

The source distributions will be placed in the part directory and
managed by the buildout if build-directory is not specified.  If so,
the distributions will be replaced when newer versions are available.
So be sure to set build-directory to a directory not managed by
buildout if you want to maintain changes to the source distributions.

The z3c.recipe.egg:editable can be used to assemble a set of
subversion checkouts to work with specifying subversion URLs in
find-links as is supported by easy_install.  See the easy_install
documentation for the syntax for using subversion URLs.  There are a
number of ways in which it is more flexible to control checkouts via
recipes rather than svn:externals.

Finally, if the develop option is true then the distributions will be
installed in develop mode.

See z3c/recipe/egg/editable.txt for more details.

Running Setup Scripts
-

The z3c.recipe.egg:setup recipe calls arbitrary setup.py commands on
multiple distributions in a buildout.

The z3c.recipe.egg:setup recipe can be used, for example, to automate
releases.  When the source is ready for release, the setup recipe is
configured to run the "register sdist bdist_egg upload" setup
commands.  To ensure release only runs when intended, the setup recipe
can be used in it's own release.cfg file that extends
the buildout.cfg file.  With this setup, releases for multiple
projects can be made with "bin/buildout -c release.cfg".

The z3c.recipe.egg:setup recipe also supports the develop option as
with z3c.recipe.egg:editable.

See z3c/recipe/egg/setup.txt for more details.
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] ANN: Generating svn:externals by inspecting a repository - z3c.repoexternals

2007-09-30 Thread Ross Patterson
z3c.repoexternals recursively retrieves subversion directory listings
from the url or path and matches directories against a previous set of
svn:externals if provided then against regular expressions and generates
qualifying svn:externals lines.  The defaults generate a set of
svn:externals for all the trunks in a repository and keeps them up to
date with the repository as new trunks are added when the previous
externals are provided thereafter.

http://cheeseshop.python.org/pypi/z3c.repoexternals

Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] Re: z3c.offlinepack

2007-09-27 Thread Ross Patterson
Philipp von Weitershausen
<[EMAIL PROTECTED]> writes:

> Ross Patterson wrote:
>> Also, I can't seem to get the ReStructuredText in the long_description
>> on the pypi page to display as ReStructuredText instead of just
>> displaying as test.  Anyone got any pointers?
>
> I assume you're generating long_description from a README.txt file or
> so. If you have docutils installed, you can render this file yourself
> using the rst2html script. It will show warnings and errors during the
> rendering. Fix those, and PyPI will happily render your reST as well.

Excellent!  That did it.  Thanks!

Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] z3c.offlinepack

2007-09-26 Thread Ross Patterson
I wrote a small script for packing ZODB storages without running zope
complete with buildout support for quick deployment without modifying
the system.  Attached is the README for more details.  I hope this is
useful for some.

Also, I can't seem to get the ReStructuredText in the long_description
on the pypi page to display as ReStructuredText instead of just
displaying as test.  Anyone got any pointers?

http://cheeseshop.python.org/pypi/z3c.offlinepack

Ross

==
Pack ZODBs Offline
==

Pack a ZODB storage without running any part of the Zope application
server.  Only an appropriate version of ZODB3 for the ZODB storage is
required.  Apply only to copies of ZODB storages, not ZODB storages
currently in use.

Install the distribution::

  $ python setup.py install

Then use the offlinepack script to pack a copy of your ZODB::

  $ offlinepack /path/to/Data-copy.fs

zc.buildout
---

A buildout.cfg is included that will install the offlinepack script
to the buildout.  The buildout makes it possible to quickly use the
offlinepack script without modifying the system python installation::

  $ svn co svn://svn.zope.org/repos/main/z3c.offlinepack/trunk z3c.offlinepack
  $ cd z3c.offlinepack
  $ python bootsrtap/bootsrtap.py -v
  $ bin/buildout -v
  $ bin/offlinepack /path/to/Data-copy.fs

The buildout.cfg file can also be modified to use a specific version
of ZODB3.  This is uesful if you need to use offlinepack without
migrating the ZODB to a newer version of ZODB3.  Add the version
specifier to the offlinepack section of buildout.cfg.  For example, to
use offlinepack with Zope 2.9, use the following offlinepack section.

[offlinepack]
recipe = zc.recipe.egg:scripts
eggs = z3c.offlinepack
ZODB3<3.7-dev
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] z3c.offlinepack

2007-09-26 Thread Ross Patterson
I wrote a small script for packing ZODB storages without running zope
complete with buildout support for quick deployment without modifying
the system.  Attached is the README for more details.  I hope this is
useful for some.

Also, I can't seem to get the ReStructuredText in the long_description
on the pypi page to display as ReStructuredText instead of just
displaying as test.  Anyone got any pointers?

http://cheeseshop.python.org/pypi/z3c.offlinepack

Ross

==
Pack ZODBs Offline
==

Pack a ZODB storage without running any part of the Zope application
server.  Only an appropriate version of ZODB3 for the ZODB storage is
required.  Apply only to copies of ZODB storages, not ZODB storages
currently in use.

Install the distribution::

  $ python setup.py install

Then use the offlinepack script to pack a copy of your ZODB::

  $ offlinepack /path/to/Data-copy.fs

zc.buildout
---

A buildout.cfg is included that will install the offlinepack script
to the buildout.  The buildout makes it possible to quickly use the
offlinepack script without modifying the system python installation::

  $ svn co svn://svn.zope.org/repos/main/z3c.offlinepack/trunk z3c.offlinepack
  $ cd z3c.offlinepack
  $ python bootsrtap/bootsrtap.py -v
  $ bin/buildout -v
  $ bin/offlinepack /path/to/Data-copy.fs

The buildout.cfg file can also be modified to use a specific version
of ZODB3.  This is uesful if you need to use offlinepack without
migrating the ZODB to a newer version of ZODB3.  Add the version
specifier to the offlinepack section of buildout.cfg.  For example, to
use offlinepack with Zope 2.9, use the following offlinepack section.

[offlinepack]
recipe = zc.recipe.egg:scripts
eggs = z3c.offlinepack
ZODB3<3.7-dev
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Deploying with buildout

2007-08-28 Thread Ross Patterson
Chris McDonough <[EMAIL PROTECTED]> writes:

> On Aug 28, 2007, at 5:55 PM, Ross Patterson wrote:
>>
>>> Putting these packages in your Zope instance home's "lib/python"
>>> directory should get them found before the others.  For Products, you
>>> can use an additional "products-path" directive in zope.conf and put
>>> files in there.  I don't know how to tell buildout to do either,
>>> though.
>>
>> But wouldn't that cause problems in this case since zope.app.interface
>> is a package in two nested-namespace packages.  IOW, wouldn't putting
>> zope/app/interface in $INSTANCE_HOME/lib/python mean that it was the
>> only package in the zope or zope.app namespace packages?
>
> Gah.  Yeah.  Sorry.  You might get away with creating and installing a
> custom zope.app.interface-myversion.egg into your Python's site- 
> packages dir and using something like:
>
> from pkg_resources import require
> require('zope.app.interface = myversion')
>
> ... in a script early on or do the equivalent within a .pth file in
> your site-packages dir.  Even after that, you *might* need to munge
> the PYTHONPATH, though, to prevent Zope from finding the one in
> SOFTWARE_HOME first. :-(
>
> I find Ian Bicking's virtual_python.py script very useful for trying
> things like this out.  I usually install both a custom version of
> Python and one or more virtual pythons in my automated scripts (using
> the --no-site-packages flag to virtual_python.py).  This means I can
> let distutils/setuptools packages install to site-packages "normally"
> without polluting the main Python installation's site-packages and so
> I don't need to go through gyrations to munge the PYTHONPATH for them
> to be found somewhere else.  I think buildout tends to prefer
> creating scripts that munge the path.

Great.  Thanks, I'll check those out.

Ross
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Deploying with buildout

2007-08-28 Thread Ross Patterson
Chris McDonough <[EMAIL PROTECTED]> writes:

> On Aug 27, 2007, at 10:59 PM, Ross Patterson wrote:
>
>> We have a Plone 3.0/Zope 2.10 application that we need to develop
>> on, maintain and
>> deploy to a ZEO server and multiple ZEO clients.  Currently we use svn
>> bundles of Zope and Plone and our own packages and products in one big
>> svn:externals definition.  We also use some more recent versions of
>> certain products and packages than those included in the upstream
>> svn:externals.  For example:
>>
>> Zope svn://svn.zope.org/repos/main/Zope/branches/2.10
>> Zope/lib/python/zope/app/interface svn://svn.zope.org/repos/main/
>> zope.app.interface/trunk/src/zope/app/interface
>>
>> Though I haven't seen any documentation to this effect, svn seems to
>> treat the second svn:externals as a "svn switch" on "svn up".
>>
>> So one question I have is how would I "override" the versions of some
>> package like this using buildout?
>
> Putting these packages in your Zope instance home's "lib/python"
> directory should get them found before the others.  For Products, you
> can use an additional "products-path" directive in zope.conf and put
> files in there.  I don't know how to tell buildout to do either,
> though.

But wouldn't that cause problems in this case since zope.app.interface
is a package in two nested-namespace packages.  IOW, wouldn't putting
zope/app/interface in $INSTANCE_HOME/lib/python mean that it was the
only package in the zope or zope.app namespace packages?

>> Another question I have is that there aren't releases for all the
>> dependencies our application has.  I'm wondering what the best way
>> is to
>> define a canonical release for deployment to our cluster.  Ideally,
>> we'd
>> have a buildout (or whatever) on a staging server where we're testing
>> the candidate for deployment and then when all tests pass that *exact*
>> source should be deployed to the cluster.
>
> I always use a vendor import for this (to a separate CVS server, I
> don't use SVN).

Yeah, I guess that what we'll end up doing.

>>   How might one do this without
>> upstream releases?  Is there a way to get buildout and setuptools to
>> play together so that I can build a source distribution from the test
>> passing buildout on staging?  Is there a way I can have a buildout on
>> each cluster node such that a simple ./bin/buildout will get the
>> latest
>> deployment release for that node?
>
> Personally I use a script that knows about all of the revisions of all
> of the products and packages I want to deploy, and which creates  a
> "sandbox", downloading and installing all of them (as well as
> creating instances, etc).  It doesn't work very well for upgrades,
> but for starting a sandbox fresh, it's fine.  See http://
> agendaless.com/Members/chrism/software/buildit and http://
> www.plope.com/Members/chrism/buildit_example .

Thanks, I'll check it out.

Ross
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] Deploying with buildout (was: buildout, instancemanager, and eggs)

2007-08-27 Thread Ross Patterson
We have a Plone 3.0/Zope 2.10 application that we need to develop on, maintain 
and
deploy to a ZEO server and multiple ZEO clients.  Currently we use svn
bundles of Zope and Plone and our own packages and products in one big
svn:externals definition.  We also use some more recent versions of
certain products and packages than those included in the upstream
svn:externals.  For example:

Zope svn://svn.zope.org/repos/main/Zope/branches/2.10
Zope/lib/python/zope/app/interface 
svn://svn.zope.org/repos/main/zope.app.interface/trunk/src/zope/app/interface

Though I haven't seen any documentation to this effect, svn seems to
treat the second svn:externals as a "svn switch" on "svn up".

So one question I have is how would I "override" the versions of some
package like this using buildout?

Another question I have is that there aren't releases for all the
dependencies our application has.  I'm wondering what the best way is to
define a canonical release for deployment to our cluster.  Ideally, we'd
have a buildout (or whatever) on a staging server where we're testing
the candidate for deployment and then when all tests pass that *exact*
source should be deployed to the cluster.  How might one do this without
upstream releases?  Is there a way to get buildout and setuptools to
play together so that I can build a source distribution from the test
passing buildout on staging?  Is there a way I can have a buildout on
each cluster node such that a simple ./bin/buildout will get the latest
deployment release for that node?

Ross

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] How to do this trick..

2006-03-27 Thread Ross Patterson





The  tags are to make sure the order of TAL operations
works properly with the tal:define being done *after* the tal:repeat.
Hope this helps.

Ross
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] regex vs ts_regex

2000-12-10 Thread Ross Lazarus

Apropos http://www.zope.org/Documentation/How-To/ThreadSafety

Am I missing something here? 
There seem to be a number of places in the current 2.2.4 source where
the python regex module is used - not ts_regex, thus apparently
violating your advice on thread safety? 

For example, I was just spelunking through
/lib/python/AccessControl/User.py, App/Product.py so I started greping a
few subdirectories.

DateTime.py uses ts_regex as does OFS/ObjectManager.py but NOT
OFS/SimpleItem.py ...

Is there some reason why it's ok for some modules to use regex rather
than ts_regex ???

(I'm resending this to [EMAIL PROTECTED] because it bounced from
[EMAIL PROTECTED] - is something broken?)

___
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )




[Zope] Re: SSL and relative links (URLs)

2000-11-14 Thread Ross Lazarus

Do a search on the zope site for ssl.

You'll find two very useful howto's - one describes the apache httpd.conf virtual host 
pixie dust using proxy and proxyrewrite
directives (you need to build apache with mod_rewrite and mod_proxy as well as 
mod_ssl) and the other has some details on
integrating the siteroot product to do the url munging in zope - be warned that the 
siteroot product can lead to some interesting
consequences if it isn't installed just right - it works a treat now but I would have 
been in serious trouble if I'd tried
installing it on a production site - get it right with a development site before 
bringing it over to your production machine
particularly if your dropping it into your zope root folder.

I just finished setting this up and found these two resources solved many problems 
before I encountered them (!) although there was
the inevitable headbanging needed to get everything just rightI ended up NOT using 
fastcgi although that was my original
intention. Right now, mod_proxy allows me to serve a zope running on another machine 
(!) through ssl.


In [EMAIL PROTECTED], Dustin Engelhaupt <[EMAIL PROTECTED]> wrote:
> 
>   I am running Zope 2.2.2 and accessing it through Apache & FastCGI. I 
>   want to access some of the content through SSL and some without. What 
>I 
>   have done is set up 2 FastCgiExternalServer directives in Apache. One 
>in 
>   the non-SSL area (/non-SSL/dir/zope) and one in the SSL enabled area 
>   (/SSL/dir/zope_ssl).
>

___
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )




[Zope] OT: PythonLabs Team Moves to Digital Creations!

2000-10-27 Thread Ross Lazarus

Now here's something readers of this list might be interested in ...

 Original Message 
Subject: PythonLabs Team Moves to Digital Creations
Date: Fri, 27 Oct 2000 20:42:42 -0500
From: Guido van Rossum <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED] (Python mailing list),[EMAIL PROTECTED], 
[EMAIL PROTECTED]
Newsgroups: comp.lang.python

To all Python users and developers:

Less than half a year ago, I moved with my team to BeOpen.com, in the
hope of finding a new permanent home for Python development.  At
BeOpen, we've done several good things for Python, such as moving the
Python and Jython development process to SourceForge, and the
successful release of Python 2.0.

Unfortunately, BeOpen.com's original plans for PythonLabs didn't work
out as hoped, and we weren't able to reach mutual agreement on
workable alternative plans -- despite trying for months.

I am proud to have found a new home for my entire team: starting
today, Tim Peters, Barry Warsaw, Jeremy Hylton, Fred Drake and myself
are working for Digital Creations.  We will be spending part of our
time on core Python development (including Jython and Mailman) and
part of our time on Python infrastructure improvements that also
benefit Zope.

Python will remain Open Source; Digital Creations has no desire to
monetize or brand the Python language or specific Python
distributions.  All future work we do on Python as Digital Creations
employees will be owned by a non-profit organization yet to be
created.  We think of this new organization as the Python Software
Foundation.  In the meantime (while the PSF is under construction) I
will own such copyrights personally.

We're excited to be working for Digital Creations: they are one of the
oldest companies active in the Python community, one of the companies
most committed to Python, and they have a great product!  Plus, we
know they have deep financial backing.  We trust that Digital
Creations will provide a stable home for Python for many years.

Digital Creations has also offered to take over hosting of the
python.org and starship sites.  On behalf of the Python community,
we're grateful for this support of the two prime community sites for
Python, and we expect to be implementing the transitions shortly.

These are exciting times for the PythonLabs team -- and also for
Python and its community.  Mainstream successes for Python are showing
up everywhere, and we're proud to be a part of such a smart and
friendly community.  A great year lies ahead!

--Guido van Rossum (home page: http://www.python.org/~guido/)

___
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )




[Zope] zope221b1 - broken zclass instances

2000-08-10 Thread Dr. Ross Lazarus

zope220 working fine, redhat 6.2, intel hardware.

Installed zope221b1 (tried installing the upgrade tar over a copy and
compiling - repeated with the source tar - same results).

All zclass instances broken - the zclass products are healthy looking in
the Products folder and new instances added under 221b1 seem healthy -
it's just all the existing ones which appear broken.

Tried deleting and then importing fresh .zexp versions of the folders
containing my zclass instance - the .zexp file imports fine but the
contained instances are still all broken.

Stopped futzing. Back to zope220 for now.

Is it just me ?

___
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )




[Zope] sybase - hmmm

2000-08-06 Thread Dr. Ross Lazarus

I know that zope runs on everything else, but how do we reconcile the
DC/Sybase partnership announced late last year

"Sybase is committed to delivering best of breed products supporting
open platform development. We are pleased to partner with Digital
Creations, and by supporting the Zope application server with Adaptive
Server Enterprise, we deliver an enterprise-class database solution for
customers using Open Source technology," said David Jacobson, director
of product marketing for Sybase Enterprise Solutions Division."  (see
http://linuxpr.com/releases/661.html)

with today's Sybase announcement that

"Sybase will not be incorporating Linux into its internet application
product range in a move that runs contrary to current industry trends
and to the company's overall strategy. The move comes after a trial run
failed to grab customer interest."
(see
http://www.silicon.com/public/door?REQUNIQ=965611102&6004REQEVENT=&REQINT1=38967&REQSTR1=newsnow)

We're becoming a sybase/zope/linux dependent outfit; to whom should I
email my concerns - or is it time to move to another SQL backend?

___
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )




[Zope] RE: riddle me this Batman, coded copy/paste syntax?

2000-08-06 Thread Dr. Ross Lazarus

This code worked fine in 2.1.6 but is broken
(http://classic.zope.org:8080/Collector/1371/view) for me when moving
zclass instances in 2.2.0

However...YMMV, so here it is for what it's worth.

Note that thingstocopyidlist is just a list containing the object ids
you want cloned from sourcefolder into targetfolder and that the
clipboardstuff trick came out of a latenight reading of some python
source
deep in the bowels of zope


 
 
 
 
 
 

> The Zope quick reference lists the following methods
> for the stock folder object:
> 
>manage_copyObjects(self, ids, [REQUEST, RESPONSE])
>manage_cutObjects(self, ids, [REQUEST])
>manage_delObjects(self, [ids, REQUEST])
>manage_pasteObjects(self, [cb_copy_data, REQUEST])
> 
> For the life of me I can't get copy|cut and paste
> to work even for the simplest of examples.  I've
> tried snippets like the following (embedded within
> a DTML method in a folder) but to no avail:
> 
>   
>   
> 
>   
>   
> 
> Can someone shed some light on my misunderstanding?
> 
> Cheers,
> Darran.

___
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )




[Zope] Can multiple processes access a ZODB3 file?

2000-07-28 Thread Ross Boylan

If I have Zope running, using ZODB3 on Data.fs, can a separate 
process also use ZODB3 to access Data.fs?  I have my suspicions, but 
I'm not sure.

I'm interested in this because I'm in the middle of a balloting 
period.  People email me their ballots.  I will need to check them 
for validity, send out confirmation or error messages, and eventually 
tally the results.

I definitely want a persistent store, so ZODB seems good.  Also, I 
eventually would like this to be a Zope product, with people able to 
access the results on the web (and, in the future, vote on the web).  
But getting it Zoped may be too much work in the short run.

So, I'll have a Zope server running on my Debian system, and another 
process will be going through the mail.  It would be more 
straightforwad if that other process worked directly with the 
database, rather than going through Zope via http or xml-rpc or 
something similar.  So I'm wondering if that's possible.  I can 
always take the indirect route if, as I suspect, that's necessary.
 
I'm cribbing from parts of the Poll product as appropriate.  The 
polling machinery is considerably more complex though: a restricted 
list of voters, various muckings around to get the info out of the 
email, and preference voting (1 for first choice, 2 for second, etc 
with an instant run off).

I know Zeo is more in the multi-process space, but I don't want to 
use it for this project because I don't have time to learn it; it's 
alpha; and it seems like overkill for my problem.




___
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )




Re: [Zope] RE: Generate edito form from dtmlDocument : property type

2000-05-22 Thread Dr. Ross Lazarus

Yes, it's definitely a very interesting product and goes a long way
toward what I was thinking about. It's a step toward what could be a
killer app for zope I think - most web developers would kill for an open
source through the web RAD tool.

I still think it's worth peeking at what I've done because it generates
ZSQL code as well as the DTML skeleton for a typical application. It
would be easy to integrate I imagine with metapublisher. In my
experience, the ZODB is great for development and testing, but there
comes a point with big apps where you think seriously about RDBMS
storage. 

Jason Spisak wrote:
> 
> Dr. Ross Lazarus writes:
> 
> Have you guys seen MetaPublisher?!
> 
> http://hive.beehive.de/Beehive/www.beehive.de/Zope/MetaPublisher/
> 
> A very strong offering in this direction.
> 
> > I think the general idea of automating html generation for data entry
> > web forms is a very
> > good one, but IMHO it's heroic to even think about doing this sort of
> > stuff in dtml!! (This
> > discussion probably should be moved to zope-dev?)
> >
> > I've got something which generates useful DTML and ZSQL code
> > automagically from ZClass BASIC propertysheet contents and so can be
> > used to do the grunt work for making zclass add and edit methods. It
> > generates ZSQL code which is only tested for the sybaseda but would be
> > relatively easy to tweak for other DA's
> >
> > It uses a single python external method - have a look at
> > http://www.zope.org/Members/rossl/ZClassExtender for an example of
> > what's possible...feel free to extend it?!!

-- 

Dr Ross Lazarus
Associate Professor and Sub-Dean for Information Technology
Faculty of Medicine, Room 126A, A27, University of Sydney,
Camperdown, NSW 2006, Australia
Tel: (+61 2) 93514429   Mobile: +61414872482  
Fax: (+61 2) 93516646   Email: [EMAIL PROTECTED]

___
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )




[Zope] RE: Generate edito form from dtmlDocument : property type

2000-05-20 Thread Dr. Ross Lazarus

I think the general idea of automating html generation for data entry
web forms is a very
good one, but IMHO it's heroic to even think about doing this sort of
stuff in dtml!! (This
discussion probably should be moved to zope-dev?)

I've got something which generates useful DTML and ZSQL code
automagically from ZClass BASIC propertysheet contents and so can be
used to do the grunt work for making zclass add and edit methods. It
generates ZSQL code which is only tested for the sybaseda but would be
relatively easy to tweak for other DA's

It uses a single python external method - have a look at
http://www.zope.org/Members/rossl/ZClassExtender for an example of
what's possible...feel free to extend it?!!

Sin Hang Kin wrote:

> I have the method form_dtmlDocument which generate the data entry form from
> an existing dtmldocument, How can I determine the type of the properties?
> Moreover, if the property is expected as list, how can I convert it into
> multiple input tag?


-- 

Dr Ross Lazarus
Associate Professor and Sub-Dean for Information Technology
Faculty of Medicine, Room 126A, A27, University of Sydney,
Camperdown, NSW 2006, Australia
Tel: (+61 2) 93514429   Mobile: +61414872482  
Fax: (+61 2) 93516646   Email: [EMAIL PROTECTED]

___
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )