[Zope-CVS] CVS: Products/Ape - CHANGES.txt:

Shane Hathaway shane at zope.com
Sat Dec 20 23:24:34 EST 2003

Update of /cvs-repository/Products/Ape
In directory cvs.zope.org:/tmp/cvs-serv18412

Modified Files:
      Tag: ape-0_8-branch
Log Message:
Continued cleanup after refactoring the interfaces.  See CHANGES.txt.

All tests now pass except for the SQL tests.

=== Products/Ape/CHANGES.txt 1.6 => ===
--- Products/Ape/CHANGES.txt:1.6	Mon Aug 18 11:03:01 2003
+++ Products/Ape/CHANGES.txt	Sat Dec 20 23:24:00 2003
@@ -1,4 +1,47 @@
+Version 0.8
+  - APE used to stand for Adaptable PErsistence.  Now it stands for
+    Adaptable Persistence Engine.  Someone finally found a good word
+    that starts with E, but I'm not sure who deserves the credit.
+  - Major refactoring to reduce the number of concepts in Ape.
+    Ape supported a concept called domain mappers.  Domain mappers
+    allowed you to redefine object mapping policies in the context of
+    a particular mapped object.  This feature was a theoretical
+    advantage, but it necessitated a large number of extra concepts in
+    Ape: keychains, keys, mapper trees, multiple classifiers, and so
+    forth.  These extra concepts were a major stumbling block for
+    people who wanted to learn about Ape, and the benefit of domain
+    mappers was uncertain.
+    All of those concepts have been removed.  Keychains and keys have
+    been replaced with simple string OIDs.  There is now a flat
+    namespace of mappers instead of a tree.  Only one classifier and
+    one OID generator are used in any object database.
+    This necessitated changes to all of the interfaces and most of the
+    code.  Hopefully, though, all of the changes will make Ape easier
+    to learn and use.  The interfaces now use shorter method names and
+    attributes instead of methods where possible, making many
+    operations less opaque.
+    Ape also no longer uses fixed OIDs very often, since they were
+    also a major source of confusion.  Standard ZODB always allocates
+    a new OID for new objects, but Ape makes it possible to reuse
+    OIDs.  You should not use this capability unless you understand
+    the guts of a persistent object system; otherwise you'll generate
+    ConflictErrors that will make you tear out your hair.  Therefore,
+    Ape no longer shows you how to use fixed OIDs.  Developers will
+    have to figure it out on their own.
+  - The ZODB root object is now stored on the filesystem.  It used to
+    be a virtual object that only contained the Zope Application object.
+    The true root object is now stored in a subdirectory of the
+    application root called "_root".
 Version 0.7.1
   - Fixed several bugs that made Ape fail under Python 2.1 and Zope 2.6.

More information about the Zope-CVS mailing list