Sortie de Zope 3.4

Deux ans après Zope 3.3, voici enfin Zope 3.4, sorti le 29 janvier 2009. Zope 3 est une plateforme logicielle pour le web, c'est-à-dire un ensemble cohérent de briques de programmation pour créer des sites et des applications web. La particularité de Zope 3 est de permettre un découpage propre d'une application en composants réutilisables et interchangeables, chaque composant correspondant à une fonctionnalité bien délimitée, décrite et documentée par une ou plusieurs interfaces. Les composants peuvent être développés et testés séparément, puis changés ou étendus sans impacter le reste de l'application. C'est une garantie de fiabilité, perennité, et extensibilité pour de grosses applications.

Traduction de l'annonce officielle de Stephan Richter

Bonjour tout le monde,

Elle est enfin là ! Merci à tous ceux qui y ont participé !

29 janvier 2009 - L'équipe de développement de Zope 3 annonce la version 3.4.0 de Zope.

Après deux ans de développement, la Fondation Zope et la communauté Zope sont fiers de vous annoncer la sortie de Zope 3.4.0.

L'effort de développement de Zope 3.4 a été porté vers la transformation d'une arborescence de code source monolithique en un ensemble de petits paquets (eggs) qui peuvent être utilisés indépendemment les uns des autres. Le coeur a été encore stabilisé grâce à de nombreuses corrections de bogues et plusieurs nouveaux paquets additionnels ont été développés pour enrichir les possibilités de développement.

Avec cette nouvelle version, vient également un effort pour garantir un cycle de sortie de nouvelles versions tous les 6 mois.

Paquets et Eggs

Zope 3 est maintenant complètement basé sur des eggs. Bien qu'il reste encore du travail à accomplir, il s'intègre fort bien au reste de la communauté Python. La conversion en eggs permet également aux autres développeurs Python de n'utiliser que de petits morceaux du système Zope. La conversion implique également que les développeurs Zope 3 n'utilisent plus le gros paquet « tar.gz » classique. Celui-ci sera tout de même fourni pour Zope 3.4 et probablement Zope 3.5, pour ceux qui y sont habitués.

Mais alors comment les applications Zope 3 sont-elles construites ?

Le KGS (Known Good Set)

Le KGS est un ensemble précis de paquets et de versions, connues pour fonctionner correctement ensemble. La compatibilité est vérifiée fréquemment grâce au lancement quotidien de plus de douze mille tests [1]. Le KGS est testé avec Python 2.4 et Python 2.5, pour les architectures 32 et 64 bits. La liste des paquets contrôlés et leurs versions pour Zope 3.4 peut être consultée sur le site du KGS [2].

Le KGS peut être utilisé de différentes façons [3]. La façon la plus courante est de figer les versions en téléchargeant le fichier de définition des versions [4] et en l'insérant dans votre configuration buildout de la façon suivante :

[buildout] versions = versions ...

[versions] zope.interface = 3.4.0 ...

Outil de démarrage rapide zopeproject

Pour démarrer un nouveau projet rapidement en utilisant une configuration habituelle, un paquet appelé « zopeproject » peut être utilisé. La documentation de zopeproject est fournie sur la page d'accueil de cet outil [5]. zopeproject utilise Paste ou ZDaemon pour créer le serveur. Les commandes suivantes sont suffisantes pour lancer un projet :

$ easy_install zopeproject
$ zopeproject HelloWorld
$ cd HelloWorld
$ bin/helloworld-ctl foreground

Démo

Pour l'instant il n'existe pas de paquet dédié à la démonstration d'un exemple simple de configuration d'une application Zope 3. Cependant le paquet z3c.formdemo peut être utilisé comme un exemple minimal. Pour l'essayer, il suffit de taper les commandes suivantes :

$ svn co svn://svn.zope.org/repos/main/z3c.formdemo/tags/1.5.3 formdemo
$ cd formdemo
$ python bootstrap.py
$ ./bin/buildout -v
$ ./bin/demo fg
[1]http://zope3.pov.lt/buildbot
[2]http://download.zope.org/zope3.4/3.4.0/controlled-packages.cfg
[3]http://download.zope.org/zope3.4/intro.html
[4]http://download.zope.org/zope3.4/3.4.0/versions.cfg
[5]http://pypi.python.org/pypi/zopeproject

Téléchargements

Les instructions d'installation pour Windows et Un*x/Linux sont maintenant disponibles dans le fichier README.txt à la racine de l'arborescence. L'installateur binaire est recommandé pour Windows.

Zope 3.4 nécessite Python 2.4 ou 2.5. Vous devez également installer la bibliothèque zlib sur votre système.

Ressources

À propos de Zope 3

Zope 3 est un serveur d'application web hérité de Zope. Il a été réécrit entièrement en se basant sur les derniers motifs de conception et l'expérience issue de Zope 2.

La « Component Architecture » constitue le coeur de Zope 3 et permet aux développeurs de créer des applications flexibles et puissantes.

Compatibilité avec Zope 2

Zope 3 n'est pas rétrocompatible avec Zope 2. Cela signifie qu'il ne peut pas être utilisé pour faire fonctionner des applications Zope 2.

Nous continuons de travailler sur la transision entre Zope 2 et Zope 3 en permettant à Zope 2 d'utiliser une part grandissante de l'infrastructure de Zope 3. Cela signifie que tout nouveau code écrit pour Zope 2 peut bénéficier de la technologie Zope 3. Avec un peu de soin il est même possible d'écrire du code qui fonctionne à la fois sur les deux versions. Cela permet à une application Zope 2 de migrer doucement vers Zope 3. Cependant les applications Zope 2 existantes ne pourront jamais fonctionner avec Zope 3 sans aucun changement.

À propos de la Fondation Zope

La Fondation Zope, basée à Fredricksburg en Virginie, est une organisation à but non lucratif qui supporte la communauté Zope, la plateforme logicielle Zope et ses projets associés. Sa communauté comprend à la fois la communauté des contributeurs particuliers à l'open-source et la communauté des entreprises et des organisations qui utilisent Zope.