buildout.cfg 20.2 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 263 264 265
  ${poppler:location}/bin/pdfinfo
  ${poppler:location}/bin/pdftohtml
  ${poppler:location}/bin/pdftotext
  ${sed:location}/bin/sed
  ${tesseract:location}/bin/tesseract
  ${w3m:location}/bin/w3m
266 267 268 269 270 271 272 273 274
fonts =
  ${liberation-fonts:location}
  ${ipaex-fonts:location}
  ${ipa-fonts:location}
  ${ocrb-fonts:location}
  ${android-fonts:location}
fontconfig-includes =
  ${fontconfig:location}/etc/fonts/conf.d

275 276

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

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

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

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

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

295 296 297 298 299 300 301 302 303 304 305
[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.
306
list = ${erp5:location}/bt5 ${erp5:location}/product/ERP5/bootstrap ${erp5-bin:location}/bt5 ${erp5-doc:location}/bt5
307 308 309 310 311 312

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

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

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

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

[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 =
338
  runUnitTest=runUnitTest:main
339 340
scripts = runUnitTest
initialization =
341
  import glob, os, sys
342
  import Products
343 344
  Products.__path__[:0] = filter(None,
    os.getenv('INSERT_PRODUCTS_PATH', '').split(os.pathsep))
345
  os.environ['ZOPE_SCRIPTS'] = ''
Vincent Pelletier's avatar
Vincent Pelletier committed
346
  parts_directory = '''${buildout:parts-directory}'''
347 348
  repository_id_list = \
    '''${erp5_repository_list:repository_id_list}'''.split()[::-1]
349 350
  os.environ['erp5_tests_bt5_path'] = ','.join(
    os.path.join(parts_directory, x, 'bt5') for x in repository_id_list)
351
  extra_path_list = '''${:extra-paths}'''.split()
352
  sys.path[:0] = sum((
353 354
    glob.glob(os.path.join(x, 'tests'))
    for x in extra_path_list), [])
355
  sys.path[:0] = sum((
356 357
    glob.glob(os.path.join(x, 'Products', '*', 'tests'))
    for x in extra_path_list), [])
358 359 360
  sys.path[:0] = sum((
    glob.glob(os.path.join(x, 'Products', '*', 'tests'))
    for x in os.getenv('INSERT_PRODUCTS_PATH', '').split(os.pathsep)), [])
361
  os.environ['PATH'] = '${jsl:location}/bin:%s' % os.environ['PATH']
362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377

[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'] = ''
378
  repository_id_list = list(reversed('''${erp5_repository_list:repository_id_list}'''.split()))
379
  sys.path[0:0] = ['/'.join(['''${buildout:parts-directory}''', x]) for x in repository_id_list]
380

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
[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

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

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

# Other Zope 2 packages
  Products.PluggableAuthService
  Products.PluginRegistry

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

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

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

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

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

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

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

535 536 537
# Used by ERP5 Jupyter backend
  ipykernel

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

544 545 546 547
# WSGI server
  zope.globalrequest
  waitress

548 549 550
# 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
551
interpreter = ${buildout:python}
552 553
entry-points =
  runwsgi=Products.ERP5.bin.zopewsgi:runwsgi
554
scripts =
555
  apachedex
556
  performance_tester_erp5
557
  runwsgi
558 559 560 561
  runzope
  runzeo
  tidstoraged
  tidstorage_repozo
562
  web_checker_utility
563 564

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

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

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

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

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

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

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

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

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

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

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

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

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

639 640 641 642 643 644
# 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
645
# newer version requires zope.testbrowser>=4
646 647
zope.app.testing = 3.8.1

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

718 719 720
# 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
721
# Required by:
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
722
# Products.CMFCore==2.2.10
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
723
Products.ZSQLMethods = 2.13.5
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
724

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

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

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

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

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

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

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

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
763 764 765 766 767 768 769 770

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
771

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

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

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

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

783 784 785 786 787 788 789 790 791 792 793 794 795 796 797
# 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
798 799

eggtestinfo = 0.3