remove needless PIL entry in [versions].
[slapos.git] / stack / erp5 / buildout.cfg
1 [buildout]
2 # Local development
3 develop =
4   ${:parts-directory}/slapos.cookbook-repository
5   ${:parts-directory}/cloudooo-repository
6
7 find-links +=
8   http://www.owlfish.com/software/wsgiutils/download.html
9
10 extends =
11 # Exact version of Zope
12   https://raw.github.com/zopefoundation/Zope/2.13.22/versions.cfg
13   ../../stack/slapos.cfg
14   ../../component/logrotate/buildout.cfg
15   ../../component/cups/buildout.cfg
16   ../../component/dbus/buildout.cfg
17   ../../component/dcron/buildout.cfg
18   ../../component/file/buildout.cfg
19   ../../component/fonts/buildout.cfg
20   ../../component/ghostscript/buildout.cfg
21   ../../component/git/buildout.cfg
22   ../../component/graphviz/buildout.cfg
23   ../../component/gzip/buildout.cfg
24   ../../component/haproxy/buildout.cfg
25   ../../component/hookbox/buildout.cfg
26   ../../component/librsvg/buildout.cfg
27   ../../component/imagemagick/buildout.cfg
28   ../../component/inkscape/buildout.cfg
29   ../../component/kumo/buildout.cfg
30   ../../component/libdmtx/buildout.cfg
31   ../../component/libffi/buildout.cfg
32   ../../component/libpng/buildout.cfg
33   ../../component/libreoffice-bin/buildout.cfg
34   ../../component/lxml-python/buildout.cfg
35   ../../component/percona-toolkit/buildout.cfg
36   ../../component/mariadb/buildout.cfg
37   ../../component/mysql-python/buildout.cfg
38   ../../component/patch/buildout.cfg
39   ../../component/pillow/buildout.cfg
40   ../../component/pycrypto-python/buildout.cfg
41   ../../component/pysvn-python/buildout.cfg
42   ../../component/python-2.7/buildout.cfg
43   ../../component/python-ldap-python/buildout.cfg
44   ../../component/rdiff-backup/buildout.cfg
45   ../../component/stunnel/buildout.cfg
46   ../../component/subversion/buildout.cfg
47   ../../component/tesseract/buildout.cfg
48   ../../component/varnish/buildout.cfg
49   ../../component/w3-validator/buildout.cfg
50   ../../component/w3m/buildout.cfg
51   ../../component/xorg/buildout.cfg
52   ../../component/poppler/buildout.cfg
53   ../../component/xtrabackup/buildout.cfg
54   ../../component/zabbix/buildout.cfg
55   ../../component/sed/buildout.cfg
56   ../../component/coreutils/buildout.cfg
57   ../../component/grep/buildout.cfg
58   ../../component/dash/buildout.cfg
59   ../../component/wget/buildout.cfg
60   ../../component/aspell/buildout.cfg
61   ../../component/cloudooo/buildout.cfg
62   ../../component/jsl/buildout.cfg
63
64 parts =
65   rdiff-backup
66   aspell
67   aspell-en-dictionary
68   apache
69   apache-antiloris
70   file
71   graphviz
72   haproxy
73   jsl
74   stunnel
75   varnish-3.0
76   w3m
77   poppler
78   libpng
79   ghostscript
80   mariadb
81   mroonga-mariadb
82   imagemagick
83   inkscape
84   libdmtx
85   dmtx-utils
86   kumo
87   libreoffice-bin
88   w3-validator
89   tesseract
90   hookbox
91   perl-DBD-mariadb
92   perl-DBI
93   percona-toolkit
94   zabbix-agent
95   dcron
96   dash
97   wget
98
99 # Buildoutish
100   patched-eggs
101   eggs
102   testrunner
103   test_suite_runner
104
105 # basic Xorg
106   libXdmcp
107   libXext
108   libXau
109   libSM
110   libXrender
111
112 # fonts
113   liberation-fonts
114   ipaex-fonts
115   ipa-fonts
116   ocrb-fonts
117   android-fonts
118
119 # Cloudooo specific part
120   cloudooo
121
122 # get git repositories
123   erp5
124   genbt5list
125
126 # fix products path (Zeo needs ERP5 Products to be available for
127 # conflict resolution)
128   fix-products-paths
129 # some additional utils
130   slapos-toolbox
131   zodbanalyze
132
133 # Local development
134   slapos.cookbook-repository
135   check-recipe
136 # Create instance template
137   template
138
139 # Local development
140 [slapos.cookbook-repository]
141 recipe = slapos.recipe.build:gitclone
142 repository = http://git.erp5.org/repos/slapos.git
143 branch = erp5
144 git-executable = ${git:location}/bin/git
145
146 [check-recipe]
147 recipe = plone.recipe.command
148 stop-on-error = true
149 update-command = ${:command}
150 command = grep parts ${buildout:develop-eggs-directory}/slapos.cookbook.egg-link
151
152 [template-jinja2-base]
153 recipe = slapos.recipe.template:jinja2
154 template = ${:_profile_base_location_}/${:filename}.in
155 rendered = ${buildout:directory}/${:filename}
156 # XXX: extra-context is needed because we cannot append to a key of an extended
157 # section.
158 extra-context =
159 context =
160     key bin_directory buildout:bin-directory
161     key develop_eggs_directory buildout:develop-eggs-directory
162     key eggs_directory buildout:eggs-directory
163     key slapos_core_version versions:slapos.core
164     ${:extra-context}
165
166 [template-mariadb]
167 < = template-jinja2-base
168 filename = instance-mariadb.cfg
169 md5sum = e0c923a8195b5a36c7df766c1fb4bfdb
170 extra-context =
171     key coreutils_location coreutils:location
172     key dcron_location dcron:location
173     key gettext_location gettext:location
174     key grep_location grep:location
175     key gzip_location gzip:location
176     key logrotate_location logrotate:location
177     key mariadb_location mariadb:location
178     key perl_location perl:location
179     key perl_siteprefix perl:siteprefix
180     key sed_location sed:location
181     key xtrabackup_location xtrabackup:location
182
183 [template-zope]
184 recipe = slapos.recipe.build:download
185 url = ${:_profile_base_location_}/instance-zope.cfg.in
186 md5sum = 23baedc096a3ee046d2efe2195e19b96
187 mode = 640
188
189 [template-kumofs]
190 < = template-jinja2-base
191 filename = instance-kumofs.cfg
192 md5sum = 40817014a41497bceb696e512436e670
193 extra-context =
194     key dash_location dash:location
195     key dcron_location dcron:location
196     key gzip_location gzip:location
197     key kumo_location kumo:location
198     key logrotate_location logrotate:location
199
200 [template-tidstorage]
201 recipe = slapos.recipe.build:download
202 url = ${:_profile_base_location_}/instance-tidstorage.cfg.in
203 md5sum = 2bc13fc6cd52c7b8e2b4ddb99a69974b
204 mode = 640
205
206 [template-cloudooo]
207 recipe = slapos.recipe.build:download
208 url = ${:_profile_base_location_}/instance-cloudoo.cfg.in
209 md5sum = 45f8a58568fb7e6eb832802551f3ff03
210 mode = 640
211
212 [template-zope-conf]
213 recipe = slapos.recipe.build:download
214 url = ${:_profile_base_location_}/zope.conf.in
215 md5sum = bc2154161a1d5baddc4ed4dfaaf94fbe
216 mode = 640
217
218 [template]
219 < = template-jinja2-base
220 # XXX: "template.cfg" is hardcoded in instanciation recipe
221 filename = template.cfg
222 template = ${:_profile_base_location_}/instance.cfg.in
223 md5sum = 66a1be44c72437d87a7b609eb58c3526
224 extra-context =
225     key apache_location apache:location
226     key aspell_location aspell:location
227     key buildout_bin_directory buildout:bin-directory
228     key coreutils_location coreutils:location
229     key cups_location cups:location
230     key curl_location curl:location
231     key dash_location dash:location
232     key dbus_location dbus:location
233     key dbus_glib_location dbus-glib:location
234     key dcron_location dcron:location
235     key dmtx_utils_location dmtx-utils:location
236     key erp5_location erp5:location
237     key file_location file:location
238     key fontconfig_location fontconfig:location
239     key fonts_location fonts:location
240     key freetype_location freetype:location
241     key git_location git:location
242     key graphviz_location graphviz:location
243     key grep_location grep:location
244     key glib_location glib:location
245     key gzip_location gzip:location
246     key haproxy_location haproxy:location
247     key imagemagick_location imagemagick:location
248     key jsl_location jsl:location
249     key libICE_location libICE:location
250     key libSM_location libSM:location
251     key libX11_location libX11:location
252     key libXau_location libXau:location
253     key libXdmcp_location libXdmcp:location
254     key libXext_location libXext:location
255     key libXrender_location libXrender:location
256     key libffi_location libffi:location
257     key libpng12_location libpng12:location
258     key libreoffice_bin_location libreoffice-bin:location
259     key librsvg_location librsvg:location
260     key libxcb_location libxcb:location
261     key local_bt5_repository local-bt5-repository:list
262     key logrotate_location logrotate:location
263     key mariadb_location mariadb:location
264     key openssl_location openssl:location
265     key poppler_location poppler:location
266     key sed_location sed:location
267     key stunnel_location stunnel:location
268     key template_cloudooo template-cloudooo:target
269     key template_erp5_single template-erp5-single:target
270     key template_erp5_cluster template-erp5-cluster:target
271     key template_kumofs template-kumofs:rendered
272     key template_mariadb template-mariadb:rendered
273     key template_memcached template-memcached:rendered
274     key template_tidstorage template-tidstorage:target
275     key template_varnish template-varnish:target
276     key template_zope template-zope:target
277     key template_zope_conf template-zope-conf:target
278     key tesseract_location tesseract:location
279     key varnish_location varnish-3.0:location
280     key w3m_location w3m:location
281     key wget_location wget:location
282     key zlib_location zlib:location
283
284 [template-memcached]
285 < = template-jinja2-base
286 filename = instance-memcached.cfg
287 md5sum = 346c864c1f119360eddb5e163f16d4f3
288 extra-context =
289     key dash_location dash:location
290     key dcron_location dcron:location
291     key gzip_location gzip:location
292     key kumo_location kumo:location
293     key logrotate_location logrotate:location
294
295 [template-erp5-single]
296 recipe = slapos.recipe.build:download
297 url = ${:_profile_base_location_}/instance-erp5-single.cfg.in
298 md5sum = becf4faf3df849bb90ddf5f587f02d5e
299 mode = 640
300
301 [template-erp5-cluster]
302 recipe = slapos.recipe.build:download
303 url = ${:_profile_base_location_}/instance-erp5-cluster.cfg.in
304 md5sum = f4c9cdbbac82232b84db080461bd0007
305 mode = 640
306
307 [template-varnish]
308 recipe = slapos.recipe.build:download
309 url = ${:_profile_base_location_}/instance-varnish.cfg.in
310 md5sum = ae0465591c22c0cb316c1706965c6b18
311 mode = 640
312
313 [bt5-repository]
314 # Format:
315 #   <url or path> [...]
316 #
317 # Use absolute paths for local repositories, and URLs for non-local otherwise.
318 #
319 list = ${local-bt5-repository:list}
320
321 [local-bt5-repository]
322 # Same as bt5-repository, but only local repository.
323 # Used to generate bt5lists.
324 list = ${erp5:location}/bt5 ${erp5:location}/product/ERP5/bootstrap
325
326 [genbt5list]
327 recipe = plone.recipe.command
328 stop-on-error = true
329 genbt5list = ${erp5:location}/product/ERP5/bin/genbt5list
330 command =
331   ${buildout:executable} ${:genbt5list} ${local-bt5-repository:list}
332 update-command = ${:command}
333
334 [erp5_repository_list]
335 repository_id_list = erp5
336
337 [erp5]
338 recipe = slapos.recipe.build:gitclone
339 repository = http://git.erp5.org/repos/erp5.git
340 branch = master
341 git-executable = ${git:location}/bin/git
342
343 [fix-products-paths]
344 recipe = plone.recipe.command
345 stop-on-error = true
346 dir = ${erp5:location}
347 command =
348   rm -f "${:dir}/Products" && ln -s product "${:dir}/Products" && touch "${:dir}/product/__init__.py"
349 update-command = ${:command}
350
351 [testrunner]
352 # XXX: Workaround for fact ERP5Type is not an distribution and does not
353 #      expose entry point for test runner
354 recipe = zc.recipe.egg
355 eggs = ${eggs:eggs}
356 extra-paths = ${eggs:extra-paths}
357 entry-points =
358   runUnitTest=runUnitTest:main
359 scripts = runUnitTest
360 initialization =
361   import glob, imp, os, sys
362   import App # prevent Testing from importing Zope2.App instead of App
363   import Products
364   Products.__path__[:0] = filter(None,
365     os.getenv('INSERT_PRODUCTS_PATH', '').split(os.pathsep))
366   os.environ['SOFTWARE_HOME'] = os.path.abspath(imp.find_module('Zope2')[1])
367   os.environ['ZOPE_SCRIPTS'] = ''
368   parts_directory = '''${buildout:parts-directory}'''
369   repository_id_list = \
370     '''${erp5_repository_list:repository_id_list}'''.split()[::-1]
371   os.environ['erp5_tests_bt5_path'] = ','.join(sum((
372     [bt5_path, os.path.join(bt5_path, '*')]
373     for bt5_path in (os.path.join(parts_directory, x, 'bt5')
374                      for x in repository_id_list)), []))
375   extra_path_list = '''${:extra-paths}'''.split()
376   sys.path[:0] = sum((
377     glob.glob(os.path.join(x, 'tests'))
378     for x in extra_path_list), [])
379   sys.path[:0] = sum((
380     glob.glob(os.path.join(x, 'Products', '*', 'tests'))
381     for x in extra_path_list), [])
382   sys.path[:0] = sum((
383     glob.glob(os.path.join(x, 'Products', '*', 'tests'))
384     for x in os.getenv('INSERT_PRODUCTS_PATH', '').split(os.pathsep)), [])
385   os.environ['PATH'] = '${jsl:location}/bin:%s' % os.environ['PATH']
386   os.environ['CGI_PATH'] = '${w3-validator:location}/httpd/cgi-bin'
387
388 [test_suite_runner]
389 # XXX: Workaround for fact ERP5Type is not an distribution and does not
390 #      expose entry point for test runner
391 recipe = zc.recipe.egg
392 eggs = ${eggs:eggs}
393 extra-paths = ${eggs:extra-paths}
394 entry-points =
395   runTestSuite=Products.ERP5Type.tests.runTestSuite:main
396 scripts = runTestSuite
397 initialization =
398   import os
399   import sys
400   import Products
401   [Products.__path__.insert(0, p) for p in reversed(os.environ.get('INSERT_PRODUCTS_PATH', '').split(':')) if p]
402   import Zope2
403   os.environ['SOFTWARE_HOME'] = os.path.abspath(os.path.dirname(os.path.dirname(Zope2.__file__)))
404   os.environ['ZOPE_SCRIPTS'] = ''
405   repository_id_list = list(reversed('''${erp5_repository_list:repository_id_list}'''.split()))
406   sys.path[0:0] = ['/'.join(['''${buildout:parts-directory}''', x]) for x in repository_id_list]
407
408 [patched-eggs]
409 recipe = minitage.recipe.egg
410 eggs =
411   Acquisition
412   Products.DCWorkflow
413   ZODB3
414 Acquisition-patches = ${:_profile_base_location_}/../../component/egg-patch/Acquisition/aq_dynamic.patch
415 Acquisition-patch-options = -p1
416 Acquisition-patch-binary = ${patch:location}/bin/patch
417 Products.DCWorkflow-patches = ${:_profile_base_location_}/../../component/egg-patch/Products.DCWorkflow/workflow_method.patch
418 Products.DCWorkflow-patch-options = -p1
419 Products.DCWorkflow-patch-binary = ${patch:location}/bin/patch
420 ZODB3-patches = ${:_profile_base_location_}/../../component/egg-patch/ZODB3-3.10.5.patch
421 ZODB3-patch-options = -p1
422 ZODB3-patch-binary = ${patch:location}/bin/patch
423
424 [eggs]
425 recipe = zc.recipe.egg
426 eggs =
427   ${mysql-python:egg}
428   ${lxml-python:egg}
429   ${pillow-python:egg}
430   ${python-ldap-python:egg}
431   ${pysvn-python:egg}
432   ${pycrypto-python:egg}
433   lock_file
434   PyXML
435   Pympler
436   SOAPpy
437   chardet
438   coverage
439   elementtree
440   erp5diff
441   inotifyx
442   interval
443   ipdb
444   Jinja2
445   mechanize
446   numpy
447   paramiko
448   ply
449   pyflakes
450   pypdf2
451   python-magic
452   python-memcached
453   pytz
454   requests
455   threadframe
456   timerserver
457   urlnorm
458   uuid
459   xml_marshaller
460   xupdate_processor
461   feedparser
462   argparse
463   validictory
464   erp5.util
465   huBarcode
466   qrcode
467   spyne
468   httplib2
469   suds
470   pprofile
471   pycountry
472 # Needed for checking ZODB Components source code
473   pylint
474
475 # Zope
476   ZODB3
477   Zope2
478 # Zope acquisition patch
479   Acquisition
480
481 # Other Zope 2 packages
482   Products.PluggableAuthService
483   Products.PluginRegistry
484
485 # CMF 2.2
486   Products.CMFActionIcons
487   Products.CMFCalendar
488   Products.CMFCore
489   Products.CMFDefault
490   Products.CMFTopic
491   Products.CMFUid
492   Products.DCWorkflow
493   Products.GenericSetup
494   five.localsitemanager
495
496 # Other products
497   Products.DCWorkflowGraph
498   Products.MimetypesRegistry
499   Products.ExternalEditor
500   Products.TIDStorage
501   Products.LongRequestLogger
502
503 # BBB: Temporarily keep zope.app.testing awaiting we use newer version of CMF
504 #      (for tests like testCookieCrumbler).
505   zope.app.testing
506
507 # Currently forked in our repository
508 #    Products.PortalTransforms
509 # Dependency for our fork of PortalTransforms
510   StructuredText
511
512 # Needed for parsing .po files from our Localizer subset
513   polib
514
515 # parameterizing the version of the generated python interpreter name by the
516 # python section version causes dependency between this egg section and the
517 # installation of python, which we don't want on an instance
518 interpreter = ${buildout:python}
519 scripts =
520   repozo
521   runzope
522   runzeo
523   tidstoraged
524   tidstorage_repozo
525   web_checker_utility = erp5.util.webchecker:web_checker_utility
526
527 extra-paths =
528   ${erp5:location}
529
530 [zodbanalyze]
531 recipe = zc.recipe.egg
532 eggs =
533   ZODB3
534   erp5.util
535 entry-points =
536   zodbanalyze=erp5.util.zodbanalyze:main
537 scripts = zodbanalyze
538
539 [cloudooo-repository]
540 branch =
541 revision = f67af2797f74d4212f7221978645552353f341c8
542
543 [slapos-toolbox]
544 recipe = zc.recipe.egg
545 eggs =
546   ${lxml-python:egg}
547   slapos.toolbox
548   slapos.toolbox[zodbpack]
549
550 scripts =
551   killpidfromfile
552   onetimedownload
553   zodbpack
554
555 [versions]
556 # patched eggs
557 Acquisition = 2.13.8-ZMinitagePatched-AqDynamic
558 Products.DCWorkflow = 2.2.4-ZMinitagePatched-WorkflowMethod
559 ZODB3 = 3.10.5-ZMinitagePatched-ZODB33105
560
561 # specify dev version to be sure that an old released version is not used
562 cloudooo = 1.2.5-dev
563
564 # use newer version than specified in ZTK
565 PasteDeploy = 1.5.2
566 Pygments = 1.6
567 coverage = 3.7.1
568
569 # Known version with works
570 numpy = 1.6.2
571
572 # test_UserManagerInterfaces in testERP5Security fails with 1.10.0.
573 Products.PluggableAuthService = 1.9.0
574
575 # official pysvn egg does not supports --include-dirs and
576 # --library-dirs, so we use our modified version
577 pysvn = 1.7.4nxd006
578
579 # we are still using this old stable version.
580 rdiff-backup = 1.0.5
581
582 # use newest version of slapos.cookbook
583 slapos.cookbook =
584
585 # modified version that works fine for buildout installation
586 SOAPpy = 0.12.0nxd001
587
588 # CMF 2.3 is not yet supported.
589 Products.CMFCalendar = 2.2.3
590 Products.CMFCore = 2.2.8
591 Products.CMFDefault = 2.2.4
592 Products.CMFTopic = 2.2.1
593 Products.CMFUid = 2.2.1
594
595 # newer version requires zope.traversing>=4.0.0a2.
596 zope.app.appsetup = 3.16.0
597
598 # newer version requires zope.i18n>=4.0.0a3
599 zope.app.publication = 3.14.0
600
601 # newer version requires zope.testbrowser>=4
602 zope.app.testing = 3.8.1
603
604 # Pinned versions
605 MySQL-python = 1.2.5
606 Products.CMFActionIcons = 2.1.3
607 Products.DCWorkflowGraph = 0.4.1
608 Products.ExternalEditor = 1.1.0
609 Products.GenericSetup = 1.7.4
610 Products.LongRequestLogger = 1.1.0
611 Products.MimetypesRegistry = 2.0.5
612 Products.PluginRegistry = 1.3
613 Products.TIDStorage = 5.4.9
614 PyPDF2 = 1.23
615 PyXML = 0.8.5
616 Pympler = 0.3.1
617 StructuredText = 2.11.1
618 WSGIUtils = 0.7
619 apache-libcloud = 0.15.1
620 astroid = 1.2.0
621 async = 0.6.1
622 chardet = 2.2.1
623 csp-eventlet = 0.7.0
624 elementtree = 1.2.7-20070827-preview
625 erp5diff = 0.8.1.5
626 eventlet = 0.15.0
627 five.formlib = 1.0.4
628 five.localsitemanager = 2.0.5
629 gitdb = 0.5.4
630 greenlet = 0.4.3
631 http-parser = 0.8.3
632 httplib2 = 0.9
633 huBarcode = 1.0.0
634 interval = 1.0.0
635 ipdb = 0.8
636 ipython = 2.2.0
637 logilab-common = 0.62.1
638 minitage.paste = 1.4.6
639 minitage.recipe.egg = 1.107
640 pillow = 2.5.3
641 plone.recipe.command = 1.1
642 ply = 3.4
643 polib = 1.0.4
644 pprofile = 1.7.2
645 pycountry = 1.8
646 pyflakes = 0.8.1
647 pylint = 1.3.0
648 python-ldap = 2.4.15
649 python-magic = 0.4.6
650 python-memcached = 1.53
651 pytz = 2014.4
652 qrcode = 5.0.1
653 restkit = 4.2.2
654 rtjp-eventlet = 0.3.2
655 slapos.recipe.build = 0.12
656 slapos.recipe.template = 2.5
657 slapos.toolbox = 0.39.4
658 smmap = 0.8.2
659 socketpool = 0.5.3
660 spyne = 2.11.0
661 suds = 0.4
662 threadframe = 0.2
663 timerserver = 2.0.2
664 urlnorm = 1.1.2
665 uuid = 1.30
666 validictory = 1.0.0a2
667 xupdate-processor = 0.4
668
669 # Required by:
670 # slapos.toolbox==0.39.4
671 GitPython = 0.3.2.RC1
672
673 # Required by:
674 # Products.CMFCore==2.2.8
675 Products.ZSQLMethods = 2.13.4
676
677 # Required by:
678 # slapos.toolbox==0.39.4
679 atomize = 0.2.0
680
681 # Required by:
682 # paramiko==1.14.0
683 ecdsa = 0.11
684
685 # Required by:
686 # cloudooo==1.2.5-dev
687 erp5.util = 0.4.41
688
689 # Required by:
690 # slapos.toolbox==0.39.4
691 feedparser = 5.1.3
692
693 # Required by:
694 # SOAPpy==0.12.0nxd001
695 fpconst = 0.7.2
696
697 # Required by:
698 # minitage.recipe.egg==1.107
699 iniparse = 0.4
700
701 # Required by:
702 # minitage.core==2.0.57
703 minitage = 2.0.67
704
705 # Required by:
706 # minitage.recipe.common==1.90
707 # minitage.recipe.egg==1.107
708 minitage.core = 2.0.57
709
710 # Required by:
711 # minitage.recipe.egg==1.107
712 minitage.recipe.common = 1.90
713
714 # Required by:
715 # minitage.recipe.egg==1.107
716 ordereddict = 1.1
717
718 # Required by:
719 # slapos.toolbox==0.39.4
720 paramiko = 1.14.0
721
722 # Required by:
723 # zope.app.testing==3.8.1
724 zope.app.debug = 3.4.1
725
726 # Required by:
727 # zope.app.testing==3.8.1
728 zope.app.dependable = 3.5.1
729
730 # Required by:
731 # Products.CMFCalendar==2.2.3
732 # five.formlib==1.0.4
733 zope.app.form = 4.0.2