buildout.cfg 20.3 KB
Newer Older
1
[buildout]
2

3 4
extends =
# Exact version of Zope
5 6
  ztk-versions.cfg
  zope-versions.cfg
7
  buildout.hash.cfg
8 9 10 11
  ../../component/fonts/buildout.cfg
  ../../component/git/buildout.cfg
  ../../component/graphviz/buildout.cfg
  ../../component/gzip/buildout.cfg
12
  ../../component/xz-utils/buildout.cfg
13
  ../../component/haproxy/buildout.cfg
14
  ../../component/socat/buildout.cfg
15
  ../../component/rsyslogd/buildout.cfg
16
  ../../component/findutils/buildout.cfg
17 18
  ../../component/librsvg/buildout.cfg
  ../../component/imagemagick/buildout.cfg
19
  ../../component/jpegoptim/buildout.cfg
20 21
  ../../component/kumo/buildout.cfg
  ../../component/libdmtx/buildout.cfg
22
  ../../component/matplotlib/buildout.cfg
23
  ../../component/numpy/buildout.cfg
24 25
  ../../component/statsmodels/buildout.cfg
  ../../component/h5py/buildout.cfg
26
  ../../component/ocropy/buildout.cfg
27
  ../../component/optipng/buildout.cfg
28
  ../../component/pandas/buildout.cfg
29
  ../../component/percona-toolkit/buildout.cfg
30
  ../../component/patch/buildout.cfg
31
  ../../component/pillow/buildout.cfg
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
32
  ../../component/pycrypto-python/buildout.cfg
33 34 35
  ../../component/pysvn-python/buildout.cfg
  ../../component/python-ldap-python/buildout.cfg
  ../../component/rdiff-backup/buildout.cfg
36
  ../../component/scikit-learn/buildout.cfg
37 38
  ../../component/scikit-image/buildout.cfg
  ../../component/PyWavelets/buildout.cfg
39 40 41 42 43 44 45 46 47
  ../../component/subversion/buildout.cfg
  ../../component/tesseract/buildout.cfg
  ../../component/w3m/buildout.cfg
  ../../component/poppler/buildout.cfg
  ../../component/zabbix/buildout.cfg
  ../../component/sed/buildout.cfg
  ../../component/coreutils/buildout.cfg
  ../../component/grep/buildout.cfg
  ../../component/dash/buildout.cfg
48
  ../../component/bash/buildout.cfg
49 50
  ../../component/wget/buildout.cfg
  ../../component/aspell/buildout.cfg
51
  ../../component/jsl/buildout.cfg
52
  ../../component/6tunnel/buildout.cfg
53
  ../../component/userhosts/buildout.cfg
54
  ../../component/postfix/buildout.cfg
Yusei Tahara's avatar
Yusei Tahara committed
55
  ../../component/zbarlight/buildout.cfg
56
  ../../component/pylint/buildout.cfg
57
  ../../component/perl-Image-ExifTool/buildout.cfg
58
  ../../component/wendelin.core/buildout.cfg
59
  ../../component/jupyter-py2/buildout.cfg
60
  ../../stack/caucase/buildout.cfg
61 62
  ../../software/neoppod/software-common.cfg
# keep neoppod extends last
63

64
parts +=
65
  erp5-util-develop
66
  slapos-cookbook
67
  rdiff-backup
68
  mroonga-mariadb
69
  tesseract
70 71
  tesseract-eng-traineddata
  tesseract-osd-traineddata
72 73 74
  zabbix-agent

# Buildoutish
75
  eggs-all-scripts
76 77 78 79
  testrunner
  test_suite_runner

# get git repositories
80 81
  genbt5list

82
# some additional utils
83
  zodbanalyze
84
  zodbpack
85

86 87 88
# Create instance template
  template

89
# jupyter
90
  jupyter-notebook-initialized-scripts
91

92

93 94
# override instance-jupyter-notebook not to render into default template.cfg
[instance-jupyter-notebook]
95 96
rendered = ${buildout:directory}/template-jupyter.cfg

97
[download-base]
98
<= download-base-neo
99 100
url = ${:_profile_base_location_}/${:filename}

101 102 103 104
[mariadb-start-clone-from-backup]
<= download-base
mode = 755

105
[mariadb-resiliency-after-import-script]
106
<= download-base
107 108
mode = 755

109 110 111 112
[mariadb-slow-query-report-script]
<= download-base
mode = 755

113
[template-mariadb]
114
<= download-base
115 116 117 118 119 120 121
link-binary =
  ${coreutils:location}/bin/basename
  ${coreutils:location}/bin/cat
  ${coreutils:location}/bin/cp
  ${coreutils:location}/bin/ls
  ${coreutils:location}/bin/tr
  ${coreutils:location}/bin/uname
122
  ${gettext:location}/lib/gettext/hostname
123 124
  ${grep:location}/bin/grep
  ${sed:location}/bin/sed
125
  ${mariadb:location}/bin/mysqlbinlog
126 127

[template-kumofs]
128
<= download-base
129 130

[template-zope-conf]
131
<= download-base
132

133
[site-zcml]
134
<= download-base
135

136
[template-my-cnf]
137
<= download-base
138 139

[template-mariadb-initial-setup]
140
<= download-base
141

142 143 144 145 146 147 148 149
[template-postfix]
< = download-base

[template-postfix-master-cf]
< = download-base

[template-postfix-main-cf]
< = download-base
150 151 152

[template-postfix-aliases]
< = download-base
153

154 155
[template-run-zelenium]
< = download-base
156

157

158
[template]
159
recipe = slapos.recipe.template:jinja2
160
# XXX: "template.cfg" is hardcoded in instanciation recipe
161
rendered = ${buildout:directory}/template.cfg
162
template = ${:_profile_base_location_}/${:filename}
163 164
mode = 640
context =
165
    key mariadb_link_binary template-mariadb:link-binary
166
    key zope_link_binary template-zope:link-binary
167 168
    key zope_fonts template-zope:fonts
    key zope_fontconfig_includes template-zope:fontconfig-includes
169
    key apache_location apache:location
170
    key bin_directory buildout:bin-directory
171
    key buildout_bin_directory buildout:bin-directory
172
    key caucase_jinja2_library caucase-jinja2-library:target
173
    key coreutils_location coreutils:location
174
    key curl_location curl:location
175
    key cyrus_sasl_location cyrus-sasl:location
176
    key dash_location dash:location
177
    key bash_location bash:location
178
    key dcron_location dcron:location
179
    key default_cloudooo_url erp5-defaults:cloudooo-connection-url
180
    key erp5_location erp5:location
181
    key findutils_location findutils:location
182
    key gzip_location gzip:location
183
    key xz_utils_location xz-utils:location
184
    key haproxy_location haproxy:location
185
    key socat_location socat:location
186
    key rsyslogd_location rsyslogd:location
187
    key instance_common_cfg instance-common:rendered
188
    key jsl_location jsl:location
189
    key jupyter_enable_default erp5-defaults:jupyter-enable-default
190
    key kumo_location kumo:location
191
    key local_bt5_repository local-bt5-repository:list
192 193
    key logrotate_location logrotate:location
    key mariadb_location mariadb:location
194
    key mariadb_resiliency_after_import_script mariadb-resiliency-after-import-script:target
195
    key mariadb_slow_query_report_script mariadb-slow-query-report-script:target
196
    key mariadb_start_clone_from_backup mariadb-start-clone-from-backup:target
197
    key mroonga_mariadb_install_sql mroonga-mariadb:install-sql
198 199 200
    key mroonga_mariadb_plugin_dir mroonga-mariadb:plugin-dir
    key groonga_plugin_dir groonga:groonga-plugin-dir
    key groonga_mysql_normalizer_plugin_dir groonga-normalizer-mysql:groonga-plugin-dir
201
    key matplotlibrc_location matplotlibrc:location
202
    key parts_directory buildout:parts-directory
203
    key openssl_location openssl:location
204
    key percona_toolkit_location percona-toolkit:location
205
    key perl_dbd_mariadb_path perl-DBD-mariadb:perl-PATH
206
    key postfix_location postfix:location
207
    key root_common root-common:target
208
    key site_zcml site-zcml:target
209
    key sixtunnel_location 6tunnel:location
210 211
    key template_run_zelenium template-run-zelenium:target
    key egg_interpreter eggs:interpreter
212
    key template_apache_conf template-apache-backend-conf:target
213
    key template_balancer template-balancer:target
214
    key template_erp5 template-erp5:target
215
    key template_haproxy_cfg template-haproxy-cfg:target
216
    key template_rsyslogd_cfg template-rsyslogd-cfg:target
217
    key template_jupyter_cfg instance-jupyter-notebook:rendered
218
    key template_kumofs template-kumofs:target
219
    key template_mariadb template-mariadb:target
220 221
    key template_mariadb_initial_setup template-mariadb-initial-setup:target
    key template_my_cnf template-my-cnf:target
222
    key template_mysqld_wrapper template-mysqld-wrapper:rendered
223
    key template_postfix template-postfix:target
224
    key template_postfix_aliases template-postfix-aliases:target
225 226
    key template_postfix_main_cf template-postfix-main-cf:target
    key template_postfix_master_cf template-postfix-master-cf:target
227
    key template_zeo template-zeo:target
228 229
    key template_zope template-zope:target
    key template_zope_conf template-zope-conf:target
230
    key template_fonts_conf template-fonts-conf:output
231
    key userhosts_location userhosts:location
232
    key unixodbc_location unixodbc:location
233
    key wget_location wget:location
234
    key extra_path_list eggs:extra-paths
235

236
[template-erp5]
237
<= download-base
238

239
[template-zeo]
240
<= download-base
241

242
[template-zope]
243
<= download-base
244
link-binary =
245
  ${aspell-en-dictionary:bin-aspell}
246 247 248 249 250 251
  ${dmtx-utils:location}/bin/dmtxwrite
  ${git:location}/bin/git
  ${graphviz:location}/bin/dot
  ${grep:location}/bin/grep
  ${imagemagick:location}/bin/convert
  ${imagemagick:location}/bin/identify
252
  ${jpegoptim:location}/bin/jpegoptim
253 254
  ${jsl:location}/bin/jsl
  ${librsvg:location}/bin/rsvg-convert
255 256
  ${mariadb:location}/bin/mysql
  ${mariadb:location}/bin/mysqldump
257
  ${openssl:location}/bin/openssl
258
  ${optipng:location}/bin/optipng
259
  ${perl-Image-ExifTool:location}/bin/exiftool
260 261 262
  ${poppler:location}/bin/pdfinfo
  ${poppler:location}/bin/pdftohtml
  ${poppler:location}/bin/pdftotext
Aurel's avatar
Aurel committed
263
  ${python2.7:location}/bin/2to3
264 265 266
  ${sed:location}/bin/sed
  ${tesseract:location}/bin/tesseract
  ${w3m:location}/bin/w3m
267 268 269 270 271 272 273 274 275
fonts =
  ${liberation-fonts:location}
  ${ipaex-fonts:location}
  ${ipa-fonts:location}
  ${ocrb-fonts:location}
  ${android-fonts:location}
fontconfig-includes =
  ${fontconfig:location}/etc/fonts/conf.d

276 277

[template-balancer]
278
<= download-base
279

280
[template-haproxy-cfg]
281
<= download-base
282

283 284 285
[template-rsyslogd-cfg]
<= download-base

286 287 288 289 290
[erp5-bin]
<= erp5
repository = https://lab.nexedi.com/nexedi/erp5-bin.git
branch = master

291 292 293 294 295
[erp5-doc]
<= erp5
repository = https://lab.nexedi.com/nexedi/erp5-doc.git
branch = master

296 297 298 299 300 301 302 303 304 305 306
[bt5-repository]
# Format:
#   <url or path> [...]
#
# Use absolute paths for local repositories, and URLs for non-local otherwise.
#
list = ${local-bt5-repository:list}

[local-bt5-repository]
# Same as bt5-repository, but only local repository.
# Used to generate bt5lists.
307
list = ${erp5:location}/bt5 ${erp5:location}/product/ERP5/bootstrap ${erp5-bin:location}/bt5 ${erp5-doc:location}/bt5
308 309 310 311 312 313

[genbt5list]
recipe = plone.recipe.command
stop-on-error = true
genbt5list = ${erp5:location}/product/ERP5/bin/genbt5list
command =
314
  echo '${local-bt5-repository:list}' |xargs ${buildout:executable} ${:genbt5list}
315
update-command = ${:command}
316 317

[erp5_repository_list]
318
repository_id_list = erp5 erp5-bin erp5-doc
319

320 321
# ERP5 defaults, which can be overridden in inheriting recipes (e.g. wendelin)
[erp5-defaults]
322
cloudooo-connection-url = https://cloudooo.erp5.net/
323 324 325
# Jupyter is by default disabled in ERP5
jupyter-enable-default = false

326
[erp5]
327
recipe = slapos.recipe.build:gitclone
328
repository = https://lab.nexedi.com/nexedi/erp5.git
329
branch = master
330
git-executable = ${git:location}/bin/git
331 332 333 334 335 336 337 338

[testrunner]
# XXX: Workaround for fact ERP5Type is not an distribution and does not
#      expose entry point for test runner
recipe = zc.recipe.egg
eggs = ${eggs:eggs}
extra-paths = ${eggs:extra-paths}
entry-points =
339
  runUnitTest=runUnitTest:main
340 341
scripts = runUnitTest
initialization =
342
  import glob, os, sys
343
  import Products
344 345
  Products.__path__[:0] = filter(None,
    os.getenv('INSERT_PRODUCTS_PATH', '').split(os.pathsep))
346
  os.environ['ZOPE_SCRIPTS'] = ''
Vincent Pelletier's avatar
Vincent Pelletier committed
347
  parts_directory = '''${buildout:parts-directory}'''
348 349
  repository_id_list = \
    '''${erp5_repository_list:repository_id_list}'''.split()[::-1]
350 351
  os.environ['erp5_tests_bt5_path'] = ','.join(
    os.path.join(parts_directory, x, 'bt5') for x in repository_id_list)
352
  extra_path_list = '''${:extra-paths}'''.split()
353
  sys.path[:0] = sum((
354 355
    glob.glob(os.path.join(x, 'tests'))
    for x in extra_path_list), [])
356
  sys.path[:0] = sum((
357 358
    glob.glob(os.path.join(x, 'Products', '*', 'tests'))
    for x in extra_path_list), [])
359 360 361
  sys.path[:0] = sum((
    glob.glob(os.path.join(x, 'Products', '*', 'tests'))
    for x in os.getenv('INSERT_PRODUCTS_PATH', '').split(os.pathsep)), [])
362
  os.environ['PATH'] = '${jsl:location}/bin:%s' % os.environ['PATH']
363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378

[test_suite_runner]
# XXX: Workaround for fact ERP5Type is not an distribution and does not
#      expose entry point for test runner
recipe = zc.recipe.egg
eggs = ${eggs:eggs}
extra-paths = ${eggs:extra-paths}
entry-points =
  runTestSuite=Products.ERP5Type.tests.runTestSuite:main
scripts = runTestSuite
initialization =
  import os
  import sys
  import Products
  [Products.__path__.insert(0, p) for p in reversed(os.environ.get('INSERT_PRODUCTS_PATH', '').split(':')) if p]
  os.environ['ZOPE_SCRIPTS'] = ''
379
  repository_id_list = list(reversed('''${erp5_repository_list:repository_id_list}'''.split()))
380
  sys.path[0:0] = ['/'.join(['''${buildout:parts-directory}''', x]) for x in repository_id_list]
381

382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406
[zope-product-with-eggtestinfo]
recipe = zc.recipe.egg:custom
setup-eggs =
  eggtestinfo
egg = ${:_buildout_section_name_}

[Products.CMFUid]
<= zope-product-with-eggtestinfo
[Products.CMFActionIcons]
<= zope-product-with-eggtestinfo
[Products.CMFCalendar]
<= zope-product-with-eggtestinfo
[Products.CMFCore]
<= zope-product-with-eggtestinfo
[Products.CMFDefault]
<= zope-product-with-eggtestinfo
[Products.CMFTopic]
<= zope-product-with-eggtestinfo
[Products.DCWorkflow]
<= zope-product-with-eggtestinfo
Products.DCWorkflow-patches = ${:_profile_base_location_}/../../component/egg-patch/Products.DCWorkflow/workflow_method.patch#975b49e96bae33ac8563454fe5fa9899
Products.DCWorkflow-patch-options = -p1
[Products.GenericSetup]
<= zope-product-with-eggtestinfo

407
[eggs]
408
<= neoppod
409
eggs = ${neoppod:eggs}
410
  ${caucase-eggs:eggs}
411
  ${wendelin.core:egg}
412
  ${numpy:egg}
413
  ${matplotlib:egg}
414
  ${lxml-python:egg}
415
  ${ocropy:egg}
416
  ${pandas:egg}
417
  ${pillow-python:egg}
418 419
  ${python-ldap-python:egg}
  ${pysvn-python:egg}
420
  ${pycrypto-python:egg}
421
  ${scipy:egg}
422
  ${scikit-learn:egg}
423
  ${scikit-image:egg}
424
  sympy
425
  more-itertools
426 427 428
  ${h5py:egg}
  openpyxl
  ${statsmodels:egg}
Yusei Tahara's avatar
Yusei Tahara committed
429
  ${zbarlight:egg}
430
  lock_file
431
  astor
432
  APacheDEX
433
  PyStemmer
434
  PyXML
435
  Pympler
436 437
  SOAPpy
  chardet
438
  collective.recipe.template
Aurel's avatar
Aurel committed
439
  coverage
440
  erp5diff
441
  interval
442
  ipdb
443
  Jinja2
444
  jsonschema
445
  mechanize
Jérome Perrin's avatar
Jérome Perrin committed
446
  mock
447
  oauthlib
448
  objgraph
449 450
  paramiko
  ply
Jérome Perrin's avatar
Jérome Perrin committed
451
  pyflakes
Gabriel Monnerat's avatar
Gabriel Monnerat committed
452
  PyPDF2
453 454 455
  python-magic
  python-memcached
  pytz
456
  requests
Jérome Perrin's avatar
Jérome Perrin committed
457
  responses
458 459 460 461 462 463 464
  threadframe
  timerserver
  urlnorm
  uuid
  xml_marshaller
  xupdate_processor
  feedparser
465
  validictory
466
  erp5.util
467
  z3c.etestbrowser
468
  huBarcode
469
  qrcode
470
  spyne
471 472
  httplib2
  suds
473
  pprofile
474
  pycountry
Jérome Perrin's avatar
Jérome Perrin committed
475
  xfw
476
  jsonschema
Vincent Bechu's avatar
Vincent Bechu committed
477
  selenium
478 479 480
  pytesseract
  decorator
  networkx
481
# Needed for checking ZODB Components source code
482
  ${pylint:egg}
Jérome Perrin's avatar
Jérome Perrin committed
483
  jedi
Jérome Perrin's avatar
Jérome Perrin committed
484
  yapf
Jérome Perrin's avatar
Jérome Perrin committed
485
  typing
486
  pytracemalloc
487
  xlrd
488

Vincent Pelletier's avatar
Vincent Pelletier committed
489
# Zope
490
  Zope2
Vincent Pelletier's avatar
Vincent Pelletier committed
491
# Zope acquisition patch
492
  Acquisition
493
# for runzeo
494
  ${ZEO:egg}
495 496 497 498 499 500

# Other Zope 2 packages
  Products.PluggableAuthService
  Products.PluginRegistry

# CMF 2.2
501 502 503 504 505 506 507 508
  ${Products.CMFActionIcons:egg}
  ${Products.CMFCalendar:egg}
  ${Products.CMFCore:egg}
  ${Products.CMFDefault:egg}
  ${Products.CMFTopic:egg}
  ${Products.CMFUid:egg}
  ${Products.DCWorkflow:egg}
  ${Products.GenericSetup:egg}
509 510 511 512 513 514 515
  five.localsitemanager

# Other products
  Products.DCWorkflowGraph
  Products.MimetypesRegistry
  Products.ExternalEditor
  Products.TIDStorage
516
  Products.LongRequestLogger
517

518 519 520 521
# BBB: Temporarily keep zope.app.testing awaiting we use newer version of CMF
#      (for tests like testCookieCrumbler).
  zope.app.testing

522 523 524 525 526
# Currently forked in our repository
#    Products.PortalTransforms
# Dependency for our fork of PortalTransforms
  StructuredText

527 528
# Needed for parsing .po files from our Localizer subset
  polib
Rafael Monnerat's avatar
Rafael Monnerat committed
529

530 531
# Needed for Google OAuth
  google-api-python-client
532

Rafael Monnerat's avatar
Rafael Monnerat committed
533 534 535
# Need for Facebook OAuth
  facebook-sdk

536 537 538
# Used by ERP5 Jupyter backend
  ipykernel

539 540 541 542 543 544
# Used by DiffTool
  xmltodict
  deepdiff
  unidiff
  jsonpickle

545 546 547 548
# WSGI server
  zope.globalrequest
  waitress

549 550 551
# parameterizing the version of the generated python interpreter name by the
# python section version causes dependency between this egg section and the
# installation of python, which we don't want on an instance
552
interpreter = ${buildout:python}
553 554
entry-points =
  runwsgi=Products.ERP5.bin.zopewsgi:runwsgi
555
scripts =
556
  apachedex
557
  performance_tester_erp5
558
  runwsgi
559 560 561 562
  runzope
  runzeo
  tidstoraged
  tidstorage_repozo
563
  web_checker_utility
564 565

extra-paths =
566
  ${erp5:location}
567

568 569
# patches for eggs
patch-binary = ${patch:location}/bin/patch
Gabriel Monnerat's avatar
Gabriel Monnerat committed
570 571
PyPDF2-patches = ${:_profile_base_location_}/../../component/egg-patch/PyPDF2/0001-Custom-implementation-of-warnings.formatwarning-remo.patch#d25bb0f5dde7f3337a0a50c2f986f5c8
PyPDF2-patch-options = -p1
572
Acquisition-patches = ${:_profile_base_location_}/../../component/egg-patch/Acquisition/aq_dynamic.patch#1d9a56e9af4371f5b6951ebf217a15d7
573
Acquisition-patch-options = -p1
574
python-magic-patches = ${:_profile_base_location_}/../../component/egg-patch/python_magic/magic.patch#de0839bffac17801e39b60873a6c2068
575
python-magic-patch-options = -p1
576

577 578 579 580 581 582
[eggs-all-scripts]
recipe = zc.recipe.egg
eggs =
  munnel
patch-binary = ${eggs:patch-binary}

583 584
[zodbanalyze]
recipe = zc.recipe.egg
585
eggs = erp5.util
586 587 588 589
entry-points =
  zodbanalyze=erp5.util.zodbanalyze:main
scripts = zodbanalyze

590 591 592 593 594
# develop erp5.util from parts/erp5/
[erp5-util-develop]
recipe = zc.recipe.egg:develop
setup = ${erp5:location}

595
[zodbpack]
596
recipe = zc.recipe.egg
597
eggs =
Łukasz Nowak's avatar
Łukasz Nowak committed
598
  slapos.toolbox[zodbpack]
599
scripts =
Łukasz Nowak's avatar
Łukasz Nowak committed
600
  zodbpack
601 602
depends =
  ${slapos-toolbox-dependencies:eggs}
603

604
[versions]
605
# See ../../software/neoppod/software-common.cfg for versions common with NEO:
606
#  neoppod, mysqlclient, slapos.recipe.template
607

608
# patched eggs
609
Acquisition = 2.13.12+SlapOSPatched001
610
Products.DCWorkflow = 2.2.4+SlapOSPatched001
611
ocropy = 1.0+SlapOSPatched001
612
pysvn = 1.7.10+SlapOSPatched002
613
python-ldap = 2.4.32+SlapOSPatched001
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
614
python-magic = 0.4.12+SlapOSPatched001
Gabriel Monnerat's avatar
Gabriel Monnerat committed
615
PyPDF2 = 1.26.0+SlapOSPatched001
616 617
## https://lab.nexedi.com/nexedi/slapos/merge_requests/648
pylint = 1.4.4
618

619
# use newer version than specified in ZTK
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
620
PasteDeploy = 1.5.2
621
argparse = 1.4.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
622
zope.dottedname = 4.1.0
623 624 625 626

# test_UserManagerInterfaces in testERP5Security fails with 1.10.0.
Products.PluggableAuthService = 1.9.0

627
# we are still using this old stable version.
628
rdiff-backup = 1.0.5+SlapOSPatched001
629

630 631
# modified version that works fine for buildout installation
SOAPpy = 0.12.0nxd001
632

Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
633
# CMF 2.3 is not yet supported.
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
634
Products.CMFCalendar = 2.2.3
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
635
Products.CMFCore = 2.2.10
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
636
Products.CMFDefault = 2.2.4
637 638
Products.CMFTopic = 2.2.1
Products.CMFUid = 2.2.1
639

640 641 642 643 644 645
# newer version requires zope.traversing>=4.0.0a2.
zope.app.appsetup = 3.16.0

# newer version requires zope.i18n>=4.0.0a3
zope.app.publication = 3.14.0

Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
646
# newer version requires zope.testbrowser>=4
647 648
zope.app.testing = 3.8.1

649
# Pinned versions
650
APacheDEX = 1.8
651
Pillow = 6.2.2
652 653
Products.CMFActionIcons = 2.1.3
Products.DCWorkflowGraph = 0.4.1
654 655
# Products.ExternalEditor 2.0.0's dtml is not based on Zope2 OFS's one.
Products.ExternalEditor = 1.1.1
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
656
Products.GenericSetup = 1.8.6
657
Products.LongRequestLogger = 2.1.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
658
# Products.MimetypesRegistry 2.1 requires AccessControl>=3.0.0Acquisition.
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
659
Products.MimetypesRegistry = 2.0.10
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
660
Products.PluginRegistry = 1.4
661
Products.TIDStorage = 5.5.0
662
pyPdf = 1.13
663
PyStemmer = 1.3.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
664
PyXML = 0.8.5
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
665
Pympler = 0.4.3
666 667
StructuredText = 2.11.1
WSGIUtils = 0.7
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
668
# astroid 1.4.1 breaks testDynamicClassGeneration
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
669
astroid = 1.3.8
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
670
erp5diff = 0.8.1.7
671
five.formlib = 1.0.4
672
five.localsitemanager = 2.0.5
673
google-api-python-client = 1.6.1
674
httplib2 = 0.10.3
675
huBarcode = 1.0.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
676
interval = 1.0.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
677
ipdb = 0.10.2
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
678
logilab-common = 1.3.0
679
munnel = 0.3
680
nt-svcutils = 2.13.0
681
oauth2client = 4.0.0
682
oauthlib = 3.1.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
683
objgraph = 3.1.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
684
ply = 3.10
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
685
polib = 1.0.8
686
pprofile = 2.0.4
687
pyasn1-modules = 0.0.8
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
688
pycountry = 17.1.8
689
pycrypto = 2.6.1
690
pycurl = 7.43.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
691
pyflakes = 1.5.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
692
python-memcached = 1.58
693
pytracemalloc = 1.2
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
694
qrcode = 5.3
695
rsa = 3.4.2
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
696
spyne = 2.12.14
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
697
suds = 0.4
Rafael Monnerat's avatar
Rafael Monnerat committed
698
facebook-sdk = 2.0.0
699
threadframe = 0.2
700
timerserver = 2.0.4
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
701
urlnorm = 1.1.4
702
uuid = 1.30
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
703
validictory = 1.1.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
704
xfw = 0.10
705
xupdate-processor = 0.4
706
selenium = 3.8.0
707 708 709
scikit-image = 0.14.0
PyWavelets = 0.5.2
networkx = 2.1
710
pytesseract = 0.2.2
711
zbarlight = 2.3
712 713 714
cloudpickle = 0.5.3
dask = 0.18.1
toolz = 0.9.0
715 716
zope.globalrequest = 1.5
waitress = 1.3.0
717
xlrd = 1.1.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
718

719 720 721
# Re-add for as it is required to be there for uninstallation
erp5.recipe.w3validator = 1.0.2

Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
722
# Required by:
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
723
# Products.CMFCore==2.2.10
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
724
Products.ZSQLMethods = 2.13.5
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
725

726
# Required by:
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
727
# SOAPpy===0.12.0nxd001
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
728 729
fpconst = 0.7.2

730
# Required by:
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
731 732
# objgraph==3.1.0
graphviz = 0.5.2
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
733

Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
734
# Required by:
735
# Pillow==6.2.2
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
736
olefile = 0.44
737

738 739 740 741
# Required by:
# munnel==0.3
python-libmilter = 1.0.3

Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
742 743
# Required by:
# zope.app.testing==3.8.1
744
zope.app.debug = 3.4.1
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
745 746 747

# Required by:
# zope.app.testing==3.8.1
748
zope.app.dependable = 3.5.1
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
749 750 751 752

# Required by:
# Products.CMFCalendar==2.2.3
# five.formlib==1.0.4
753
zope.app.form = 4.0.2
754 755 756 757 758 759 760 761 762 763

et-xmlfile = 1.0.1
h5py = 2.7.1
mpmath = 0.19
openpyxl = 2.4.8
sympy = 1.1.1

# Required by:
# openpyxl==2.4.8
jdcal = 1.3
764 765 766 767 768 769 770 771

xmltodict = 0.11.0
deepdiff = 3.3.0
unidiff = 0.5.5

# Required by:
# deepdiff = 3.3.0
jsonpickle = 0.9.6
Jérome Perrin's avatar
Jérome Perrin committed
772

Jérome Perrin's avatar
Jérome Perrin committed
773 774 775 776 777
responses = 0.10.6

# Required by:
# responses = 0.10.6
cookies = 2.2.1
Jérome Perrin's avatar
Jérome Perrin committed
778 779 780

jedi = 0.15.1
parso = 0.5.1
Jérome Perrin's avatar
Jérome Perrin committed
781 782

yapf = 0.28.0
Jérome Perrin's avatar
Jérome Perrin committed
783

784 785 786 787 788 789 790 791 792 793 794 795 796 797 798
# Required by:
# erp5.util==0.4.65
z3c.etestbrowser = 3.0.1
zope.testbrowser = 5.5.1

# Required by:
# zope.testbrowser==5.5.1
WSGIProxy2 = 0.4.6
WebTest = 2.0.33
beautifulsoup4 = 4.8.2

# Required by:
# WSGIProxy2==0.4.6
WebOb = 1.8.5
soupsieve = 1.9.5
799 800

eggtestinfo = 0.3