Earl Zope invites to sprint

Two Zope sprints at 23rd of April and
2nd of July 2021.

Already nearly two years went by after Earl Zope got his permanent permit to live in the Python 3 wonderland. He enjoys his new life, the many new friends he made and the old ones who also moved to the Python 3 wonderland. Life could be so happy and so easy but there are always some disruptions appearing and shadows of the past showing up:

  • the automatic verification for Earl Zope and all of his staff broke – aka the continuous integration system for Zope and its dependencies has to be changed from TravisCI to GitHub Actions
  • the laws, regulations and instructions have to be adapted to the Python 3 wonderland standards – aka still large parts of the documentation are outdated: they are describing Zope 2, and should get an update to match Zope 5
  • Python 3 wonderland rapidly changes and develops: each year there will be changes Earl Zope has to handle – aka Python 3.10 is in its late alpha versions now and it is already known that there are changes in Zope’s dependencies necessary to support that new version

So Earl Zope kindly asks for help with this troubles.– Or should he call them challenges? He invites to a two short sprints:

Both sprints will be remote-only due to the unclear pandemic situation. On the other hand it allows participants to save time and money otherwise needed for travel.

To participate, please sign up using Meetup: The dates above are links to the Meetup events.

Earl Zope looks forward to these days and thanks in advance everyone who will be contributing to the success.

Zope roadmap

Zope 4 is the successor of Zope 2.13 supporting both Python 2.7 and Python 3. After the release of its final version 4.0:

  • Zope 2.13 will drop into “security fixes only” mode. It will stay in this mode as long as there is a supported Plone version using Zope 2.13: The last Plone version using Zope 2.13 is Plone 5.1. Currently the last two major releases of Plone are officially supported. So with the final release of Plone 7 there will be no supported Plone version running on Zope 2.13. (Plone 5.2 will have a final release soon after the Zope 4 final release.)
  • Zope 4 will only be a short-term supported release. It is an intermediate step to ease the transition to Python 3. There will be only a few bugfix releases until Zope 5 is ready. After 4.0.1 is released the work on Zope 5 will start.
  • Zope 5 will only drop support for Python 2 and for APIs and imports which were already marked as deprecated in Zope 4 or even in Zope 2.13. So software which runs on Zope 4 using Python 3 without DeprecationWarnings should run fine on Zope 5, too. A first beta version of Zope 5 could be released by the end of 2019. With the final release of Zope 5, Zope 4 will drop into “security fixes only” mode.

If you have software running on Zope 2.13 with current Python 2.7, the migration plan looks like the following:

  1. Upgrade to Zope 4 on Python 2.7.
  2. Rollout your software on Zope 4 with Python 2.7 to prove your changes in a live environment.
  3. Upgrade the code of your software to Python 3.
  4. Migrate the ZODB to Python 3.
  5. Rollout your software using Zope 4 on Python 3 to prove it in a live environment.
  6. Drop the Python 2 support in your software.
  7. Upgrade to Zope 5 once it is released.

See the documentation how to install Zope. It also documents the migrations steps.