[Zodb-checkins] SVN: ZODB/trunk/NEWS.txt Merge rev 30328 from 3.4 branch.

Tim Peters tim.one at comcast.net
Wed May 11 15:47:37 EDT 2005


Log message for revision 30329:
  Merge rev 30328 from 3.4 branch.
  
  Combine the news items from the last 8 "internal
  releases" -- had become impossible to follow.
  

Changed:
  U   ZODB/trunk/NEWS.txt

-=-
Modified: ZODB/trunk/NEWS.txt
===================================================================
--- ZODB/trunk/NEWS.txt	2005-05-11 19:45:27 UTC (rev 30328)
+++ ZODB/trunk/NEWS.txt	2005-05-11 19:47:36 UTC (rev 30329)
@@ -3,56 +3,36 @@
 Release date: DD-MMM-YYYY
 
 
-What's new in ZODB3 3.4a8?
+What's new in ZODB3 3.4a9?
 ==========================
-Release date: 09-May-2005
+Release date: DD-MMM-2005
 
-Another internal release, to move Zope 2.8 along.
+What follows is combined news from the "internal releases" (to support
+ongoing Zope 2.8 and Zope3 development) since the last public ZODB 3.4
+release.  These are the dates of the internal releases:
 
-ZApplication
-------------
+- 3.4a8 09-May-2005
+- 3.4a7 06-May-2005
+- 3.4a6 05-May-2005
+- 3.4a5 25-Apr-2005
+- 3.4a4 23-Apr-2005
+- 3.4a3 13-Apr-2005
+- 3.4a2 03-Apr-2005
 
-- The file ``ZApplication.py`` was moved, from ZODB to Zope(2).  ZODB and
-  Zope3 don't use it, but Zope2 does.
 
-
-What's new in ZODB3 3.4a7?
-==========================
-Release date: 06-May-2005
-
-This was an internal release, to fix an obscure older bug discovered while
-testing the ``ISynchronizer`` enhancements.
-
 transaction
 -----------
 
-- If the first activity seen by a new ``ThreadTransactionManager`` was
-  an explicit ``begin()`` call, then synchronizers registered after that
-  (but still during the first transaction) were not communicated to the
+- (3.4a7) If the first activity seen by a new ``ThreadTransactionManager`` was
+  an explicit ``begin()`` call, then synchronizers registered after that (but
+  still during the first transaction) were not communicated to the
   transaction object.  As a result, the ``afterCompletion()`` methods of
   registered synchronizers weren't called when the first transaction ended.
 
-ZApplication
-------------
-
-- The ``__call__`` method didn't work if a non-None ``connection`` string
-  argument was passed.  Thanks to Stefan Holek for noticing.
-
-
-What's new in ZODB3 3.4a6?
-==========================
-Release date: 05-May-2005
-
-This was an internal release, to get the last of the planned new 3.4 features
-into the Zope 2.8 beta.
-
-transaction
------------
-
-- Doing a subtransaction commit erroneously processed invalidations, which
-  could lead to an inconsistent view of the database.  For example, let T be
-  the transaction of which the subtransaction commit was a part.  If T read a
-  persistent object O's state before the subtransaction commit, did not
+- (3.4a6) Doing a subtransaction commit erroneously processed invalidations,
+  which could lead to an inconsistent view of the database.  For example, let
+  T be the transaction of which the subtransaction commit was a part.  If T
+  read a persistent object O's state before the subtransaction commit, did not
   commit new state of its own for O during its subtransaction commit, and O
   was modified before the subtransaction commit by a different transaction,
   then the subtransaction commit processed an invalidation for O, and the
@@ -65,52 +45,49 @@
 
   could fail, and despite that T never modifed O.
 
-- A ``getBeforeCommitHooks()`` method was added.  It returns an iterable
-  producing the registered beforeCommit hooks.
+- (3.4a4) Transactions now support savepoints.  Savepoints allow changes to be
+  periodically checkpointed within a transaction.  You can then rollback to a
+  previously created savepoint.  See ``transaction/savepoint.txt``.
 
-- The ``ISynchronizer`` interface has a new ``newTransaction()`` method.
-  This is invoked whenever a transaction manager's ``begin()`` method is
-  called.  (Note that a transaction object's (as opposed to a transaction
-  manager's) ``begin()`` method is deprecated, and ``newTransaction()``
-  is not called when using the deprecated method.)
+- (3.4a6) A ``getBeforeCommitHooks()`` method was added.  It returns an
+  iterable producing the registered beforeCommit hooks.
 
-- Relatedly, ``Connection`` implements ``ISynchronizer``, and ``Connection``'s
-  ``afterCompletion()`` and ``newTransaction()`` methods now call ``sync()``
-  on the underlying storage (if the underlying storage has such a method),
-  in addition to processing invalidations.  The practical implication is that
-  storage synchronization will be done automatically now, whenever a
-  transaction is explicitly started, and after top-level transaction commit
-  or abort.  As a result, ``Connection.sync()`` should virtually never be
-  needed anymore, and will eventually be deprecated.
+- (3.4a6) The ``ISynchronizer`` interface has a new ``newTransaction()``
+  method. This is invoked whenever a transaction manager's ``begin()`` method
+  is called.  (Note that a transaction object's (as opposed to a transaction
+  manager's) ``begin()`` method is deprecated, and ``newTransaction()`` is
+  not called when using the deprecated method.)
 
+- (3.4a6) Relatedly, ``Connection`` implements ``ISynchronizer``, and
+  ``Connection``'s ``afterCompletion()`` and ``newTransaction()`` methods now
+  call ``sync()`` on the underlying storage (if the underlying storage has
+  such a method), in addition to processing invalidations.  The practical
+  implication is that storage synchronization will be done automatically now,
+  whenever a transaction is explicitly started, and after top-level
+  transaction commit or abort.  As a result, ``Connection.sync()`` should
+  virtually never be needed anymore, and will eventually be deprecated.
 
-What's new in ZODB3 3.4a5?
-==========================
-Release date: 25-Apr-2005
+- (3.4a3) Transaction objects have a new method, ``beforeCommitHook(hook,
+  *args, **kws)``.  Hook functions registered with a transaction are called
+  at the start of a top-level commit, before any of the work is begun, so a
+  hook function can perform any database operations it likes.  See
+  ``test_beforeCommitHook()`` in ``transaction/tests/test_transaction.py``
+  for a tutorial doctest, and the ``ITransaction`` interface for details.
+  Thanks to Florent Guillaume for contributing code and tests.
 
-This was an internal release, to fix problems with the new savepoint feature.
+- (3.4a3) Clarifications were made to transaction interfaces.
 
+Support for ZODB4 savepoint-aware data managers has been dropped
+----------------------------------------------------------------
 
-What's new in ZODB3 3.4a4?
-==========================
-Release date: 23-Apr-2005
+- (3.4a4) In adding savepoint support, we dropped the attempted support for
+  ZODB4 data managers that support savepoints.  We don't think that this will
+  affect anyone.
 
-This was an internal release, to create a tag for use in Zope 2.8b1 and
-Zope3 development.
-
-transaction
------------
-
-Transactions now support savepoints.  Savepoints allow changes to be
-periodically checkpointed within a transaction.  You can then
-rollback to a previously created savepoint.  See
-``transaction/savepoint.txt``.
-
-
 ZEO
 ---
 
-- The ZODB and ZEO version numbers are now the same.  Concretely::
+- (3.4a4) The ZODB and ZEO version numbers are now the same.  Concretely::
 
       import ZODB, ZEO
       assert ZODB.__version__ == ZEO.version
@@ -118,18 +95,18 @@
   no longer fails.  If interested, see the README file for details about
   earlier version numbering schemes.
 
-- The default logging setup in ``runzeo.py`` was broken.  It was changed
-  so that running ``runzeo.py`` from a command line now, and without using
-  a config file, prints output to the console much as ZODB 3.2 did.
+- (3.4a4) The default logging setup in ``runzeo.py`` was broken.  It was
+  changed so that running ``runzeo.py`` from a command line now, and without
+  using a config file, prints output to the console much as ZODB 3.2 did.
 
 ZEO on Windows
 --------------
 
 Thanks to Mark Hammond for these ``runzeo.py`` enhancements on Windows:
 
-- A pid file (containing the process id as a decimal string) is created now
-  for a ZEO server started via ``runzeo.py``.  External programs can
-  read the pid from this file and derive a "signal name" used in a new
+- (3.4a4) A pid file (containing the process id as a decimal string) is
+  created now for a ZEO server started via ``runzeo.py``.  External programs
+  can read the pid from this file and derive a "signal name" used in a new
   signal-emulation scheme for Windows.  This is only necessary on Windows,
   but the pid file is created on all platforms that implement
   ``os.getpid()``, as long as the ``pid-filename`` option is set, or
@@ -137,86 +114,62 @@
   option can be set in a ZEO config file, or passed as the new ``--pid-file``
   argument to ``runzeo.py``.
 
-- If available, ``runzeo.py`` now uses Zope's new 'Signal' mechanism for
-  Windows, to implement clean shutdown and log rotation handlers for Windows.
-  Note that the Python in use on the ZEO server must also have the Python
-  Win32 extensions installed for this to be useful.
+- (3.4a4) If available, ``runzeo.py`` now uses Zope's new 'Signal' mechanism
+  for Windows, to implement clean shutdown and log rotation handlers for
+  Windows. Note that the Python in use on the ZEO server must also have the
+  Python Win32 extensions installed for this to be useful.
 
-DemoStorage
------------
-
-Appropriate implementations of the storage API's ``registerDB()`` and
-``new_oid()`` methods were added, delegating to the base storage.  This was
-needed to support wrapping a ZEO client storage as a ``DemoStorage`` base
-storage, as some new Zope tests want to do.
-
 Tools
 -----
 
-``fsdump.py`` now displays the size (in bytes) of data records.  This
-actually went in several months go, but wasn't noted here at the time.
-Thanks to Dmitry Vasiliev for contributing code and tests.
+- (3.4a4) ``fsdump.py`` now displays the size (in bytes) of data records.
+  This actually went in several months go, but wasn't noted here at the time.
+  Thanks to Dmitry Vasiliev for contributing code and tests.
 
-BaseStorage
+DemoStorage
 -----------
 
-``new_oid()``'s undocumented ``last=`` argument was removed.  It was used
-only for internal recursion, and injured code sanity elsewhere because not
-all storages included it in their ``new_oid()``'s signature.  Straightening
-this out required adding ``last=`` everywhere, or removing it everywhere.
-Since recursion isn't actually needed, and there was no other use for
-``last=``, removing it everywhere was the obvious choice.
+- (3.4a4) Appropriate implementations of the storage API's ``registerDB()``
+  and ``new_oid()`` methods were added, delegating to the base storage.  This
+  was needed to support wrapping a ZEO client storage as a ``DemoStorage``
+  base storage, as some new Zope tests want to do.
 
-Support for ZODB4 savepoint-aware data managers has been dropped
-----------------------------------------------------------------
-
-In adding savepoint support, we dropped the attempted support
-for ZODB4 data managers that support savepoints.  We don't think that
-this will affect anyone.
-
-What's new in ZODB3 3.4a3?
-==========================
-Release date: 13-Apr-2005
-
-This was an internal release, to make a tag for ongoing Zope3 and Zope 2.8
-development to use.
-
-transaction
+BaseStorage
 -----------
 
-Transaction objects have a new method,
-``beforeCommitHook(hook, *args, **kws)``.  Hook functions registered with
-a transaction are called at the start of a top-level commit, before any
-of the work is begun, so a hook function can perform any database operations
-it likes.  See ``test_beforeCommitHook()`` in
-``transaction/tests/test_transaction.py`` for a tutorial doctest, and
-the ``ITransaction`` interface for details.  Thanks to Florent Guillaume
-for contributing code and tests.
+- (3.4a4) ``new_oid()``'s undocumented ``last=`` argument was removed.  It
+  was used only for internal recursion, and injured code sanity elsewhere
+  because not all storages included it in their ``new_oid()``'s signature.
+  Straightening this out required adding ``last=`` everywhere, or removing it
+  everywhere. Since recursion isn't actually needed, and there was no other
+  use for ``last=``, removing it everywhere was the obvious choice.
 
-Clarifications were made to transaction interfaces too.
-
 Tests
 -----
 
-The various flavors of the ``check2ZODBThreads`` and ``check7ZODBThreads``
-tests are much less likely to suffer sproadic failures now.
+- (3.4a3) The various flavors of the ``check2ZODBThreads`` and
+  ``check7ZODBThreads`` tests are much less likely to suffer sproadic
+  failures now.
 
+- (3.4a2) The test ``checkOldStyleRoot`` failed in Zope3, because of an
+  obscure dependence on the ``Persistence`` package (which Zope3 doesn't use).
 
-What's new in ZODB3 3.4a2?
-==========================
-Release date: 03-Apr-2005
+FileStorage
+-----------
 
-This was an internal release, to supply "quick fixes" for a few glitches
-in 3.4a1, and to give ongoing Zope2 and Zope3 development a release tag to
-use:
-
-- A ``pdb.set_trace()`` call was mistakenly left in method
+- (3.4a2) A ``pdb.set_trace()`` call was mistakenly left in method
   ``FileStorage.modifiedInVersion()``.
 
-- The test ``checkOldStyleRoot`` failed in Zope3, because of an obscure
-  dependence on the ``Persistence`` package (which Zope3 doesn't use).
+ZApplication
+------------
 
+- (3.4a8) The file ``ZApplication.py`` was moved, from ZODB to Zope(2).  ZODB
+  and Zope3 don't use it, but Zope2 does.
 
+- (3.4a7) The ``__call__`` method didn't work if a non-None ``connection``
+  string argument was passed.  Thanks to Stefan Holek for noticing.
+
+
 What's new in ZODB3 3.4a1?
 ==========================
 Release date: 01-Apr-2005



More information about the Zodb-checkins mailing list