Re: [Zope-dev] problem with TAL statements across multiple lines in zope 2.7b3

2003-12-12 Thread Stuart Bishop
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 13/12/2003, at 3:34 AM, Gerry Kirk wrote:

i didn't have this problem with zope 2.6.2. I have a TAL statement as 
follows:

tal:define = "url python:test(item_typeinfo.getId() in	 
use_folder_contents, item.absolute_url()+'/folder_contents', 
item.absolute_url()+'/'+action);"

this statement works if it is all on one line, but i get a syntax 
error if it is spread across multiple lines. is this a bug, or a 
change in TAL design?
Works for me. You aren't accidently splitting inside of a string are 
you?

- --  
Stuart Bishop <[EMAIL PROTECTED]>
http://www.stuartbishop.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (Darwin)

iD8DBQE/2puKAfqZj7rGN0oRAs9IAJ0SudIu20xmevZrSIHTPu2Aug9cDwCgiRFw
7x6vS4ticldQQ6H+Q4dL8xU=
=hBXD
-END PGP SIGNATURE-
___
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope )


Re: [Zope-dev] Zope Head (2.8) breaks "refresh"

2003-12-12 Thread Stuart Bishop
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 13/12/2003, at 5:05 AM, Dieter Maurer wrote:

Then, it is highly likely that the problems in Zope 2.7
has a different cause.
I probably will start working with Zope 2.7 in 2 weeks.
And as refresh is an essential functionality for me,
I will make it working (should it not work).
I've just clarified the issue in the collector. We have since found that
manual product refresh is working, and it is just the automatic product
refresh that gives this error.
- --  
Stuart Bishop <[EMAIL PROTECTED]>
http://www.stuartbishop.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (Darwin)

iD8DBQE/2pj2AfqZj7rGN0oRAqltAJwM0oaQN2zV+mnWuRNU2BpxJ7824ACdGRXq
PN6CjW0fqAjAiwHQpOj4uKY=
=aG8y
-END PGP SIGNATURE-
___
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope )


[Zope-dev] Re: Converting from old-style BTreess

2003-12-12 Thread Jim Fulton
Sidnei da Silva wrote:
/me grumbles
Why grumble, the problem may be easier than we thought!

Is it right that in general the only old-style BTree in a ZODB is
'ZGlobals' at the root?
I dunno. Maybe. :)

> It seems ZCatalog have a manage_convertBTrees
method since 2.3.1, and at least on my instance, the indexes BTrees
are already new.
Huh, that may may things *much easier*.

I'm going to change the code to use BTrees.convert, now that I've
found it *wink*.
Cool.

Jim

--
Jim Fulton   mailto:[EMAIL PROTECTED]   Python Powered!
CTO  (540) 361-1714http://www.python.org
Zope Corporation http://www.zope.com   http://www.zope.org
___
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope )


Re: [Zope-dev] To the brave folks trying Zope HEAD...

2003-12-12 Thread Paul Winkler
On Thu, Dec 11, 2003 at 11:03:35PM -0500, Jim Fulton wrote:
> 3. The hard part is walking the object tree.  You will need a function that,
>given an object, will return the oids of the objects it references.
>Perhaps Jeremy can help you with that.

Perhaps some of the zodb utilities contain code that might be
useful as a starting point?
fsrefs.py, checkbtrees.py... 

> 5. You will want to keep a dictionary of the oids visited, just in case 
> there are
>any cyles.

I believe the version of checkbtrees.py in cvs now does that.

-- 

Paul Winkler
http://www.slinkp.com
Look! Up in the sky! It's PENGUIN FINALE!
(random hero from isometric.spaceninja.com)

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


[Zope-dev] Re: problem with TAL statements across multiple lines in zope 2.7b3

2003-12-12 Thread Gerry Kirk
Dieter Maurer wrote:

Gerry Kirk wrote at 2003-12-12 11:34 -0500:

i didn't have this problem with zope 2.6.2. I have a TAL statement as 
follows:

tal:define = "url python:test(item_typeinfo.getId() in	 
use_folder_contents, item.absolute_url()+'/folder_contents', 
item.absolute_url()+'/'+action);"

this statement works if it is all on one line, but i get a syntax error 
if it is spread across multiple lines. is this a bug, or a change in TAL 
design?


Sounds like a bug...

It's now been filed as a bug.

Gerry

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


Re: Converting from old-style BTreess (was: [Zope-dev] To the brave folks ...)

2003-12-12 Thread Dieter Maurer
Jeremy Hylton wrote at 2003-12-12 10:23 -0500:
>> Is it right that in general the only old-style BTree in a ZODB is
>> 'ZGlobals' at the root? It seems ZCatalog have a manage_convertBTrees
>> method since 2.3.1, and at least on my instance, the indexes BTrees
>> are already new.
>
>I think that is true.  On the other hand, it was a bit of a surprise to
>find a BTree in ZGlobals.  Maybe they're hiding somewhere else, too.

Shane's "BTreeFolder" uses them, too.

-- 
Dieter

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


Re: Converting from old-style BTreess (was: [Zope-dev] To the brave folks ...)

2003-12-12 Thread Sidnei da Silva
| Shane's "BTreeFolder" uses them, too.

The old one. BTreeFolder2 uses the new BTrees.

-- 
Sidnei da Silva <[EMAIL PROTECTED]>
http://awkly.org - dreamcatching :: making your dreams come true
http://plone.org/about/team#dreamcatcher

You have mail.

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


Re: [Zope-dev] Zope Head (2.8) breaks "refresh"

2003-12-12 Thread Dieter Maurer
Stuart Bishop wrote at 2003-12-12 09:05 +1100:
>>> This is not just a 2.8 issue - the behavior is in the 2.7 betas (at
>>> least
>>> up to beta 2 - havn't tested autorefresh with beta 3 yet) as well:
>>>
>>> http://collector.zope.org/Zope/1010
>>>
>>> Manually refreshing works fine, but automatic refreshes cause the
>>> ValueErrors.
>>
>> Then, try my patch...
>
>The patch is incompatible with the 2.7 branch - self._reader
>and ConnectionObjectReader don't seem to exist in 2.7 at all,
>so there is nothing to shuffle around.

Then, it is highly likely that the problems in Zope 2.7
has a different cause.


I probably will start working with Zope 2.7 in 2 weeks.
And as refresh is an essential functionality for me,
I will make it working (should it not work).

-- 
Dieter

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


Re: [Zope-dev] problem with TAL statements across multiple lines in zope 2.7b3

2003-12-12 Thread Dieter Maurer
Gerry Kirk wrote at 2003-12-12 11:34 -0500:
>i didn't have this problem with zope 2.6.2. I have a TAL statement as 
>follows:
>
>tal:define = "url python:test(item_typeinfo.getId() in  
>use_folder_contents, item.absolute_url()+'/folder_contents', 
>item.absolute_url()+'/'+action);"
>
>this statement works if it is all on one line, but i get a syntax error 
>if it is spread across multiple lines. is this a bug, or a change in TAL 
>design?

Sounds like a bug...

-- 
Dieter

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


[Zope-dev] problem with TAL statements across multiple lines in zope 2.7b3

2003-12-12 Thread Gerry Kirk
i didn't have this problem with zope 2.6.2. I have a TAL statement as 
follows:

tal:define = "url python:test(item_typeinfo.getId() in	 
use_folder_contents, item.absolute_url()+'/folder_contents', 
item.absolute_url()+'/'+action);"

this statement works if it is all on one line, but i get a syntax error 
if it is spread across multiple lines. is this a bug, or a change in TAL 
design?

- Gerry

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


Re: [Zope-dev] Environment for Python Development

2003-12-12 Thread Jean Jordaan
Hello. Do any of you know of an IDE(preferably open source) that I can use
to develop/debug/test python code in? Thanks.
Don't forget Boa Constructor:
  http://boa-constructor.sourceforge.net/
--
Jean Jordaan
http://www.upfrontsystems.co.za
___
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope )


Re: Converting from old-style BTreess (was: [Zope-dev] To the brave folks ...)

2003-12-12 Thread Sidnei da Silva
| I think that is true.  On the other hand, it was a bit of a surprise to
| find a BTree in ZGlobals.  Maybe they're hiding somewhere else, too.

At least, the script didn't found another one. It did found 7800
objects total, of which one was a BTree (ZGlobals).

Now, in 2.7 I get this output (starting zope via 'zopectl debug'):

>>> app

>>> app._p_jar

>>> app._p_jar.root()
{'Application': , 'ZGlobals':
, 'RefreshData': {'auto': {'CCHS': 1},
'products': {'Archetypes': {'dependent_products': ('CCHS',)

Which looks sane to me. But if I copy the same Data.fs to another
instance with Zope HEAD, the "AttributeError: data" is there again. It
*seems* to me that the root PersistentMapping is not being unpickled
correctly.

> /var/src/zope/head/lib/python/ZODB/ZApplication.py(32)__init__()
-> conn=db.open()
(Pdb) n
> /var/src/zope/head/lib/python/ZODB/ZApplication.py(33)__init__()
-> root=conn.root()
(Pdb) n   
> /var/src/zope/head/lib/python/ZODB/ZApplication.py(34)__init__()
-> if not root.has_key(name):
(Pdb) print root
*** AttributeError: data
(Pdb) type(root)

(Pdb) print conn.root()
*** AttributeError: data

-- 
Sidnei da Silva <[EMAIL PROTECTED]>
http://awkly.org - dreamcatching :: making your dreams come true
http://plone.org/about/team#dreamcatcher

One person's error is another person's data.

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


Re: Converting from old-style BTreess (was: [Zope-dev] To the brave folks ...)

2003-12-12 Thread Jeremy Hylton
On Fri, 2003-12-12 at 10:09, Sidnei da Silva wrote:
> /me grumbles
> 
> Is it right that in general the only old-style BTree in a ZODB is
> 'ZGlobals' at the root? It seems ZCatalog have a manage_convertBTrees
> method since 2.3.1, and at least on my instance, the indexes BTrees
> are already new.

I think that is true.  On the other hand, it was a bit of a surprise to
find a BTree in ZGlobals.  Maybe they're hiding somewhere else, too.

> I'm going to change the code to use BTrees.convert, now that I've
> found it *wink*.

Didn't know that was there either.

Jeremy



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


Converting from old-style BTreess (was: [Zope-dev] To the brave folks ...)

2003-12-12 Thread Sidnei da Silva
/me grumbles

Is it right that in general the only old-style BTree in a ZODB is
'ZGlobals' at the root? It seems ZCatalog have a manage_convertBTrees
method since 2.3.1, and at least on my instance, the indexes BTrees
are already new.

I'm going to change the code to use BTrees.convert, now that I've
found it *wink*.
-- 
Sidnei da Silva <[EMAIL PROTECTED]>
http://awkly.org - dreamcatching :: making your dreams come true
http://plone.org/about/team#dreamcatcher

Is your job running?  You'd better go catch it!

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


Re: [Zope-dev] Creating a Zope Product

2003-12-12 Thread Max M
Asad Habib wrote:

> Does anyone know how to create a Zope Product? One example would be the
> Local File System Object that I am using. If you could point me to some
> resources that would be great. Thanks.
http://zope.org/Members/maxm/index_html/HowTo/minimal_01/
http://zope.org/Members/maxm/index_html/HowTo/minimal_02/
http://zope.org/Members/maxm/index_html/HowTo/easyProduct
regards Max M

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


Re: [Zope-dev] Creating a Zope Product

2003-12-12 Thread robert
There are sample products on zope.org (look for boring or boringproduct)
and then there are the developper documentations

Robert

Am Freitag, 12. Dezember 2003 14:25 schrieb Asad Habib:
> Does anyone know how to create a Zope Product? One example would be the
> Local File System Object that I am using. If you could point me to some
> resources that would be great. Thanks.
>
> - Asad
>
>
> ___
> Zope-Dev maillist  -  [EMAIL PROTECTED]
> http://mail.zope.org/mailman/listinfo/zope-dev
> **  No cross posts or HTML encoding!  **
> (Related lists -
>  http://mail.zope.org/mailman/listinfo/zope-announce
>  http://mail.zope.org/mailman/listinfo/zope )

-- 
mit freundlichen GrĂ¼ssen

Robert Rottermann
www.redCOR.ch


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


Re: [Zope-dev] To the brave folks trying Zope HEAD...

2003-12-12 Thread Sidnei da Silva
| Think of it in terms of modules:
| 
| objects from BTree -> objects from BTrees.OOBTree
| objects from IOBTree -> objects from BTrees.IOBTree
| objects from OIBTree -> objects from BTrees.OIBTree
| objects from IIBTree -> objects from BTrees.IIBTree
| objects from intSet -> objects from BTrees.IIBTree

Ok.

+++
|Old |New |
+++
|BTree.BTree |BTrees.OOBTree.OOBtree  |
+++
|BTree.Bucket|BTrees.OOBTree.OOBucket |
+++
|IOBTree.BTree   |BTrees.IOBTree.IOBTree  |
+++
|IOBTree.Bucket  |BTrees.IOBTree.IOBucket |
+++
|OIBTree.BTree   |BTrees.OIBTree.OIBTree  |
+++
|OIBTree.Bucket  |BTrees.OIBTree.OIBucket |
+++
|IIBTree.IIBTree |BTrees.IIBTree.IIBTree  |
+++
|IIBTree.Bucket  |BTrees.IIBTree.IIBUcket |
+++
|intSet  |BTrees.IIBTree.IITreeSet|
+++

| >| 3. The hard part is walking the object tree.  You will need a function 
| >that,
| >|given an object, will return the oids of the objects it references.
| >|Perhaps Jeremy can help you with that.
| >
| >I hope so *wink*.
| 
| Me too. He's pretty busy. If he can't, I'll try to help.

I started with a slight variation of Shane's change_modules.py
[1]. Had to make some changes because stuff seem to have changed in
the Connection class. For example, invalidate() now expects a dict
instead of a oid. My plan is to change around line 130, where it
creates a new pickle with new_class_spec to wake the old object,
create a new one and pickle the new object. Sounds reasonable?

[1] 
http://cvs.sourceforge.net/viewcvs.py/zodbex/zodbex/ChangeModules/change_modules.py?rev=1.3&view=auto
-- 
Sidnei da Silva <[EMAIL PROTECTED]>
http://awkly.org - dreamcatching :: making your dreams come true
http://plone.org/about/team#dreamcatcher

A programming language is low level when its programs require attention
to the irrelevant.

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


[Zope-dev] Creating a Zope Product

2003-12-12 Thread Asad Habib
Does anyone know how to create a Zope Product? One example would be the
Local File System Object that I am using. If you could point me to some
resources that would be great. Thanks.

- Asad


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


Re: [Zope-dev] Environment for Python Development

2003-12-12 Thread robert
jeremy recommends this from developerWorks(TM):
lesenswert
-

Title: Charming Python: Review of Python IDEs

David looks at four open source development environments for working with 
Python code on Unix-like operating systems. He evaluates two general-purpose 
editors/environments and two Python-specific ones, and compares the merits of 
each.

Learn more:
http://www-106.ibm.com/developerworks/library/l-cpyide/?ca=dnt-449

developerWorks
Need it? Get it.
http://www.ibm.com/developerWorks

Am Freitag, 12. Dezember 2003 14:20 schrieb Asad Habib:
> Hello. Do any of you know of an IDE(preferably open source) that I can use
> to develop/debug/test python code in? Thanks.
>
> - Asad
>
>
> ___
> Zope-Dev maillist  -  [EMAIL PROTECTED]
> http://mail.zope.org/mailman/listinfo/zope-dev
> **  No cross posts or HTML encoding!  **
> (Related lists -
>  http://mail.zope.org/mailman/listinfo/zope-announce
>  http://mail.zope.org/mailman/listinfo/zope )

-- 
mit freundlichen GrĂ¼ssen

Robert Rottermann
www.redCOR.ch


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


[Zope-dev] Environment for Python Development

2003-12-12 Thread Asad Habib
Hello. Do any of you know of an IDE(preferably open source) that I can use
to develop/debug/test python code in? Thanks.

- Asad


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


[Zope-dev] Changing the Appearance of the Contents of a Local File System Object

2003-12-12 Thread Asad Habib
Hello. I have a folder that I have created at the root
level and inside this folder I have placed one Local
File System object. The Local File System object
contains two File objects. When I view the Local File
System object by clicking on the 'View' option
provided by the management interface, I can see that
it contains two File objects. What I would like to do
is to change the way that these File objects are
displayed. Specifically, I would like to show only
certain attributes that these File objects have and
hide others. Right now, the following attributes are
shown: type, icon, size, and last modified
time(mtime). I would like to hide the size and last
modified time(mtime) attributes. I want these
attributes to be set but I do not want their values to
show.

FYI, I am using the Local File System Product. Any
help would be greatly appreciated. Thanks.

- Asad


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


[Zope-dev] Re: Post-mortem [Was: Zope 2.7.0 b3 regressions]

2003-12-12 Thread Yuppie
Evan Simpson wrote:
Argh.  A bug in my refactoring of the tests made them all pass without 
really testing.  I *think* it's fixed now.
Thanks! Looks much better now :-)

Cheers,
Yuppie


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


Re: [Zope-dev] To the brave folks trying Zope HEAD...

2003-12-12 Thread Jim Fulton
Sidnei da Silva wrote:
| >Is there any special trick to such script? Provided some pointers of
| >what the script should do, I wouldn't mind writing and testing it.
| 
| There are lots of special tricks to such a script. Otherwise, I would
| have written it already. :)

Obviously.

/me slaps his forehead

| OK, here's how I think it needs to happen, with some, hopefuly helpful 
| notes.
| 
| 1. The script needs to be run under Zope 2.6 or 2.7.  There should
|be a product that people can install that installs some method to
|be run.  People should be able to run this method in a running zope.
|They should not need to shut down their site to do the conversion.
| 
| 2. The method should walk the object tree, converting:
| 
|- old-style BTrees to modern BTrees
|- old-style buckets to modern buckets
|- intSets to IITreeSets.

Just to check:

+--+---+
|   Old|New|
+--+---+
|  BTree   |  OOBTree  |
+--+---+
| IIBTree  |  IIBtree  |
+--+---+
| OIBTree  |  OIBTree  |
+--+---+
| IOBTree  |  IOBTree  |
+--+---+
|  intSet  | IITreeSet |
+--+---+
| bucket?  |  bucket?  |
+--+---+
No, this isn't quite right. I don't remember the details off hand.

Think of it in terms of modules:

objects from BTree -> objects from BTrees.OOBTree
objects from IOBTree -> objects from BTrees.IOBTree
objects from OIBTree -> objects from BTrees.OIBTree
objects from IIBTree -> objects from BTrees.IIBTree
objects from intSet -> objects from BTrees.IIBTree
|The individual conversions should be pretty simple. At worst involving
|a for loop, but, in many cases, the constructors for the new types will
|be able to accept the old types.
| 
| 3. The hard part is walking the object tree.  You will need a function that,
|given an object, will return the oids of the objects it references.
|Perhaps Jeremy can help you with that.

I hope so *wink*.
Me too. He's pretty busy. If he can't, I'll try to help.

Jim

--
Jim Fulton   mailto:[EMAIL PROTECTED]   Python Powered!
CTO  (540) 361-1714http://www.python.org
Zope Corporation http://www.zope.com   http://www.zope.org
___
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope )


Re: [Zope-dev] To the brave folks trying Zope HEAD...

2003-12-12 Thread Sidnei da Silva
| >Is there any special trick to such script? Provided some pointers of
| >what the script should do, I wouldn't mind writing and testing it.
| 
| There are lots of special tricks to such a script. Otherwise, I would
| have written it already. :)

Obviously.

/me slaps his forehead

| OK, here's how I think it needs to happen, with some, hopefuly helpful 
| notes.
| 
| 1. The script needs to be run under Zope 2.6 or 2.7.  There should
|be a product that people can install that installs some method to
|be run.  People should be able to run this method in a running zope.
|They should not need to shut down their site to do the conversion.
| 
| 2. The method should walk the object tree, converting:
| 
|- old-style BTrees to modern BTrees
|- old-style buckets to modern buckets
|- intSets to IITreeSets.

Just to check:

+--+---+
|   Old|New|
+--+---+
|  BTree   |  OOBTree  |
+--+---+
| IIBTree  |  IIBtree  |
+--+---+
| OIBTree  |  OIBTree  |
+--+---+
| IOBTree  |  IOBTree  |
+--+---+
|  intSet  | IITreeSet |
+--+---+
| bucket?  |  bucket?  |
+--+---+

|The individual conversions should be pretty simple. At worst involving
|a for loop, but, in many cases, the constructors for the new types will
|be able to accept the old types.
| 
| 3. The hard part is walking the object tree.  You will need a function that,
|given an object, will return the oids of the objects it references.
|Perhaps Jeremy can help you with that.

I hope so *wink*.

| 4. You should do each conversion in a separate transaction.  That is, when 
| you
|encounter an object that needs to be converted, you should convert it 
|and commit.
|
| 5. You will want to keep a dictionary of the oids visited, just in case 
| there are
|any cyles.  Also, if you encounter an oid that was converted, you will 
|need to
|subtitute the new value.  This might be really hard. :(  I think this 
|probably
|won't happen, but perhaps you should at least check for it.
| 
| 6. After the conversion has been run, the database should be usable with
|the head.

Kewl. I'm eager to get my hands on it.

-- 
Sidnei da Silva <[EMAIL PROTECTED]>
http://awkly.org - dreamcatching :: making your dreams come true
http://plone.org/about/team#dreamcatcher

Somebody's terminal is dropping bits.  I found a pile of them over in the
corner.

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