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
  ../../component/fonts/buildout.cfg
  ../../component/git/buildout.cfg
10
  ../../component/ghostscript/buildout.cfg
11 12
  ../../component/graphviz/buildout.cfg
  ../../component/gzip/buildout.cfg
13
  ../../component/xz-utils/buildout.cfg
14
  ../../component/haproxy/buildout.cfg
15
  ../../component/socat/buildout.cfg
16
  ../../component/rsyslogd/buildout.cfg
17
  ../../component/findutils/buildout.cfg
18 19
  ../../component/librsvg/buildout.cfg
  ../../component/imagemagick/buildout.cfg
20
  ../../component/jpegoptim/buildout.cfg
21 22
  ../../component/kumo/buildout.cfg
  ../../component/libdmtx/buildout.cfg
23
  ../../component/matplotlib/buildout.cfg
24
  ../../component/numpy/buildout.cfg
25 26
  ../../component/statsmodels/buildout.cfg
  ../../component/h5py/buildout.cfg
27
  ../../component/ocropy/buildout.cfg
28
  ../../component/optipng/buildout.cfg
29
  ../../component/pandas/buildout.cfg
30
  ../../component/percona-toolkit/buildout.cfg
31
  ../../component/patch/buildout.cfg
32
  ../../component/pillow/buildout.cfg
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
33
  ../../component/pycrypto-python/buildout.cfg
34 35
  ../../component/pysvn-python/buildout.cfg
  ../../component/python-ldap-python/buildout.cfg
36
  ../../component/scikit-learn/buildout.cfg
37 38
  ../../component/scikit-image/buildout.cfg
  ../../component/PyWavelets/buildout.cfg
39
  ../../component/subversion/buildout.cfg
40
  ../../component/tempstorage/buildout.cfg
41 42 43 44 45 46 47 48
  ../../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
49
  ../../component/bash/buildout.cfg
50 51
  ../../component/wget/buildout.cfg
  ../../component/aspell/buildout.cfg
52
  ../../component/jsl/buildout.cfg
53
  ../../component/6tunnel/buildout.cfg
54
  ../../component/userhosts/buildout.cfg
55
  ../../component/postfix/buildout.cfg
Yusei Tahara's avatar
Yusei Tahara committed
56
  ../../component/zbarlight/buildout.cfg
57
  ../../component/pylint/buildout.cfg
58
  ../../component/perl-Image-ExifTool/buildout.cfg
59
  ../../component/wendelin.core/buildout.cfg
60
  ../../component/jupyter-py2/buildout.cfg
61
  ../../component/pygolang/buildout.cfg
62 63
  ../../component/bcrypt/buildout.cfg
  ../../component/python-pynacl/buildout.cfg
64
  ../../stack/caucase/buildout.cfg
65 66
  ../../software/neoppod/software-common.cfg
# keep neoppod extends last
67

68
parts +=
69
  erp5-util-develop
70
  slapos-cookbook
71
  mroonga-mariadb
72 73 74 75
  tesseract
  zabbix-agent

# Buildoutish
76
  eggs-all-scripts
77
  testrunner
78
  test-suite-runner
79 80

# get git repositories
81 82
  genbt5list

83
# some additional utils
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
output = ${buildout:directory}/template-jupyter.cfg
96

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

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

104
[mariadb-resiliency-after-import-script]
105
<= download-base
106

107 108 109
[mariadb-slow-query-report-script]
<= download-base

110
[template-mariadb]
111
<= download-base
112 113 114 115 116 117 118
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
119
  ${gettext:location}/lib/gettext/hostname
120 121
  ${grep:location}/bin/grep
  ${sed:location}/bin/sed
122
  ${mariadb:location}/bin/mysqlbinlog
123 124

[template-kumofs]
125
<= download-base
126 127

[template-zope-conf]
128
<= download-base
129

130
[site-zcml]
131
<= download-base
132

133
[template-my-cnf]
134
<= download-base
135 136

[template-mariadb-initial-setup]
137
<= download-base
138

139 140 141 142 143 144 145 146
[template-postfix]
< = download-base

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

[template-postfix-main-cf]
< = download-base
147 148 149

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

151 152
[template-run-zelenium]
< = download-base
153

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

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

242
[template-zeo]
243
<= download-base
244

245 246 247
[template-zodb-base]
<= download-base

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

283 284

[template-balancer]
285
<= download-base
286

287
[template-haproxy-cfg]
288
<= download-base
289

290 291 292
[template-rsyslogd-cfg]
<= download-base

293 294 295
[instance-wcfs.cfg.in]
<= download-base

296 297 298 299 300
[erp5-bin]
<= erp5
repository = https://lab.nexedi.com/nexedi/erp5-bin.git
branch = master

301 302 303 304 305
[erp5-doc]
<= erp5
repository = https://lab.nexedi.com/nexedi/erp5-doc.git
branch = master

306 307 308 309 310 311 312 313 314 315 316
[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.
317
list = ${erp5:location}/bt5 ${erp5:location}/product/ERP5/bootstrap ${erp5-bin:location}/bt5 ${erp5-doc:location}/bt5
318 319 320 321 322 323

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

[erp5_repository_list]
328
repository_id_list = erp5 erp5-bin erp5-doc
329

330 331
# ERP5 defaults, which can be overridden in inheriting recipes (e.g. wendelin)
[erp5-defaults]
332
cloudooo-connection-url = https://cloudooo.erp5.net/
333 334
# Jupyter is by default disabled in ERP5
jupyter-enable-default = false
335 336
# WCFS is by default disabled in ERP5
wcfs-enable-default = false
337

338
[erp5]
339
recipe = slapos.recipe.build:gitclone
340
repository = https://lab.nexedi.com/nexedi/erp5.git
341
branch = master
342
git-executable = ${git:location}/bin/git
343 344 345 346 347 348 349 350

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

376
[test-suite-runner]
377 378 379 380 381 382 383 384 385 386 387 388 389 390
# 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'] = ''
391
  repository_id_list = list(reversed('''${erp5_repository_list:repository_id_list}'''.split()))
392
  sys.path[0:0] = ['/'.join(['''${buildout:parts-directory}''', x]) for x in repository_id_list]
393

394 395 396 397 398 399 400
[erp5-python-interpreter]
<= python-interpreter
# a python interpreter with all eggs available, usable for the software release but also
# for external tools (such as python extension in theia).
eggs += ${eggs:eggs}
extra-paths += ${eggs:extra-paths}

401 402 403 404 405 406 407 408 409 410 411 412
[erp5-python-interpreter-jupyter]
<= erp5-python-interpreter
interpreter = pythonwitheggs_jupyter
interpreter_path = ${buildout:directory}/bin/${:interpreter}
eggs +=
  jupyter_client
  jupyter_core
  ipython_genutils
  ipykernel
  ipywidgets
  requests

413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437
[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

438
[eggs]
439
<= neoppod
440
eggs = ${neoppod:eggs}
441
  ${caucase-eggs:eggs}
442
  ${wendelin.core:egg}
443
  ${numpy:egg}
444
  ${matplotlib:egg}
445
  ${lxml-python:egg}
446
  ${ocropy:egg}
447
  ${pandas:egg}
448
  ${pillow-python:egg}
449 450
  ${python-ldap-python:egg}
  ${pysvn-python:egg}
451
  ${pycrypto-python:egg}
452
  ${scipy:egg}
453
  ${scikit-learn:egg}
454
  ${scikit-image:egg}
455
  sympy
456
  more-itertools
457 458 459
  ${h5py:egg}
  openpyxl
  ${statsmodels:egg}
Yusei Tahara's avatar
Yusei Tahara committed
460
  ${zbarlight:egg}
461
  lock_file
462
  astor
463
  APacheDEX
464
  PyStemmer
465
  Pympler
466 467
  SOAPpy
  chardet
468
  collective.recipe.template
Aurel's avatar
Aurel committed
469
  coverage
470
  erp5diff
471
  interval
472
  ipdb
473
  Jinja2
474
  jsonschema
475
  mechanize
Jérome Perrin's avatar
Jérome Perrin committed
476
  mock
477
  oauthlib
478
  objgraph
479 480
  ${python-pynacl:egg}
  ${bcrypt:egg}
481 482
  paramiko
  ply
Jérome Perrin's avatar
Jérome Perrin committed
483
  pyflakes
Gabriel Monnerat's avatar
Gabriel Monnerat committed
484
  PyPDF2
485 486 487
  python-magic
  python-memcached
  pytz
488
  requests
Jérome Perrin's avatar
Jérome Perrin committed
489
  responses
490 491 492 493 494
  urlnorm
  uuid
  xml_marshaller
  xupdate_processor
  feedparser
495
  validictory
496
  erp5.util
497
  z3c.etestbrowser
498
  huBarcode
499
  qrcode
500
  spyne
501 502
  httplib2
  suds
503
  pprofile
504
  pycountry
Jérome Perrin's avatar
Jérome Perrin committed
505
  xfw
506
  jsonschema
Vincent Bechu's avatar
Vincent Bechu committed
507
  selenium
508 509 510
  pytesseract
  decorator
  networkx
511
# Needed for checking ZODB Components source code
512
  ${astroid:egg}
513
  ${pylint:egg}
Jérome Perrin's avatar
Jérome Perrin committed
514
  jedi
Jérome Perrin's avatar
Jérome Perrin committed
515
  yapf
Jérome Perrin's avatar
Jérome Perrin committed
516
  typing
517
  pytracemalloc
518
  xlrd
519

Vincent Pelletier's avatar
Vincent Pelletier committed
520
# Zope
521
  Zope2
522
  ${tempstorage:egg}
Vincent Pelletier's avatar
Vincent Pelletier committed
523
# Zope acquisition patch
524
  Acquisition
525
# for runzeo
526
  ${ZEO:egg}
527 528 529 530 531 532

# Other Zope 2 packages
  Products.PluggableAuthService
  Products.PluginRegistry

# CMF 2.2
533 534 535 536 537 538 539 540
  ${Products.CMFActionIcons:egg}
  ${Products.CMFCalendar:egg}
  ${Products.CMFCore:egg}
  ${Products.CMFDefault:egg}
  ${Products.CMFTopic:egg}
  ${Products.CMFUid:egg}
  ${Products.DCWorkflow:egg}
  ${Products.GenericSetup:egg}
541 542 543 544 545
  five.localsitemanager

# Other products
  Products.MimetypesRegistry
  Products.TIDStorage
546
  Products.LongRequestLogger
547

548 549 550 551
# BBB: Temporarily keep zope.app.testing awaiting we use newer version of CMF
#      (for tests like testCookieCrumbler).
  zope.app.testing

552 553 554 555 556
# Currently forked in our repository
#    Products.PortalTransforms
# Dependency for our fork of PortalTransforms
  StructuredText

557 558
# Needed for parsing .po files from our Localizer subset
  polib
Rafael Monnerat's avatar
Rafael Monnerat committed
559

560 561
# Needed for Google OAuth
  google-api-python-client
562

Rafael Monnerat's avatar
Rafael Monnerat committed
563 564 565
# Need for Facebook OAuth
  facebook-sdk

566 567 568
# Used by ERP5 Jupyter backend
  ipykernel

569 570 571 572
# Used by DiffTool
  deepdiff
  unidiff

573 574 575 576
# WSGI server
  zope.globalrequest
  waitress

577 578 579
# OpenId Connect
  oic

580 581 582 583
# json schema validation
  strict-rfc3339
  jsonschema[format]

584 585
entry-points =
  runwsgi=Products.ERP5.bin.zopewsgi:runwsgi
586
scripts =
587
  apachedex
588
  performance_tester_erp5
589
  runwsgi
590 591 592 593
  runzope
  runzeo
  tidstoraged
  tidstorage_repozo
594
  wcfs
595
  web_checker_utility
596 597

extra-paths =
598
  ${erp5:location}
599

600 601
# patches for eggs
patch-binary = ${patch:location}/bin/patch
Gabriel Monnerat's avatar
Gabriel Monnerat committed
602 603
PyPDF2-patches = ${:_profile_base_location_}/../../component/egg-patch/PyPDF2/0001-Custom-implementation-of-warnings.formatwarning-remo.patch#d25bb0f5dde7f3337a0a50c2f986f5c8
PyPDF2-patch-options = -p1
604
Acquisition-patches = ${:_profile_base_location_}/../../component/egg-patch/Acquisition/aq_dynamic-2.13.12.patch#1d9a56e9af4371f5b6951ebf217a15d7
605
Acquisition-patch-options = -p1
606
python-magic-patches = ${:_profile_base_location_}/../../component/egg-patch/python_magic/magic.patch#de0839bffac17801e39b60873a6c2068
607
python-magic-patch-options = -p1
608

609 610 611 612 613 614
[eggs-all-scripts]
recipe = zc.recipe.egg
eggs =
  munnel
patch-binary = ${eggs:patch-binary}

615 616 617 618 619
# develop erp5.util from parts/erp5/
[erp5-util-develop]
recipe = zc.recipe.egg:develop
setup = ${erp5:location}

620
[zodbpack]
621
recipe = zc.recipe.egg
622
eggs =
Łukasz Nowak's avatar
Łukasz Nowak committed
623
  slapos.toolbox[zodbpack]
624
scripts =
Łukasz Nowak's avatar
Łukasz Nowak committed
625
  zodbpack
626 627
depends =
  ${slapos-toolbox-dependencies:eggs}
628

629
[versions]
630
# See ../../software/neoppod/software-common.cfg for versions common with NEO:
631
#  neoppod, mysqlclient, slapos.recipe.template
632

633
# patched eggs
634
Acquisition = 2.13.12+SlapOSPatched001
635
Products.DCWorkflow = 2.2.4+SlapOSPatched001
636
ocropy = 1.0+SlapOSPatched001
637
pysvn = 1.9.15+SlapOSPatched001
638
python-ldap = 2.4.32+SlapOSPatched001
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
639
python-magic = 0.4.12+SlapOSPatched001
Gabriel Monnerat's avatar
Gabriel Monnerat committed
640
PyPDF2 = 1.26.0+SlapOSPatched001
641
## https://lab.nexedi.com/nexedi/slapos/merge_requests/648
642
pylint = 1.4.4+SlapOSPatched002
643 644
# astroid 1.4.1 breaks testDynamicClassGeneration
astroid = 1.3.8+SlapOSPatched001
645

646
# use newer version than specified in ZTK
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
647
PasteDeploy = 1.5.2
648
argparse = 1.4.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
649
zope.dottedname = 4.1.0
650 651 652

# modified version that works fine for buildout installation
SOAPpy = 0.12.0nxd001
653

Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
654
# CMF 2.3 is not yet supported.
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
655
Products.CMFCalendar = 2.2.3
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
656
Products.CMFCore = 2.2.10
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
657
Products.CMFDefault = 2.2.4
658 659
Products.CMFTopic = 2.2.1
Products.CMFUid = 2.2.1
660

661 662 663 664 665 666
# 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
667
# newer version requires zope.testbrowser>=4
668 669
zope.app.testing = 3.8.1

670
# Pinned versions
671
APacheDEX = 1.8
672
Pillow = 6.2.2
673
Products.CMFActionIcons = 2.1.3
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
674
Products.GenericSetup = 1.8.6
675
Products.LongRequestLogger = 2.1.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
676
# Products.MimetypesRegistry 2.1 requires AccessControl>=3.0.0Acquisition.
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
677
Products.MimetypesRegistry = 2.0.10
678
Products.PluggableAuthService = 1.10.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
679
Products.PluginRegistry = 1.4
680
Products.TIDStorage = 5.5.0
681
pyPdf = 1.13
682
PyStemmer = 1.3.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
683
Pympler = 0.4.3
684 685
StructuredText = 2.11.1
WSGIUtils = 0.7
686
erp5diff = 0.8.1.8
687
five.formlib = 1.0.4
688
five.localsitemanager = 2.0.5
689
google-api-python-client = 1.6.1
690
httplib2 = 0.10.3
691
huBarcode = 1.0.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
692
interval = 1.0.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
693
ipdb = 0.10.2
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
694
logilab-common = 1.3.0
695
munnel = 0.3
696
nt-svcutils = 2.13.0
697
oauth2client = 4.0.0
698
oauthlib = 3.1.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
699
objgraph = 3.1.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
700
ply = 3.10
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
701
polib = 1.0.8
702
pprofile = 2.0.4
703
pyasn1-modules = 0.0.8
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
704
pycountry = 17.1.8
705
pycrypto = 2.6.1
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
706
pyflakes = 1.5.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
707
python-memcached = 1.58
708
pytracemalloc = 1.2
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
709
qrcode = 5.3
710
rsa = 3.4.2
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
711
spyne = 2.12.14
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
712
suds = 0.4
Rafael Monnerat's avatar
Rafael Monnerat committed
713
facebook-sdk = 2.0.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
714
urlnorm = 1.1.4
715
uuid = 1.30
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
716
validictory = 1.1.0
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
717
xfw = 0.10
718
xupdate-processor = 0.5
719
selenium = 3.14.1
720 721 722
scikit-image = 0.14.0
PyWavelets = 0.5.2
networkx = 2.1
723
pytesseract = 0.2.2
724
zbarlight = 2.3
725 726 727
cloudpickle = 0.5.3
dask = 0.18.1
toolz = 0.9.0
728
zope.globalrequest = 1.5
729
waitress = 1.4.4
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
730

Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
731
Products.ZSQLMethods = 2.13.5
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
732
fpconst = 0.7.2
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
733 734
graphviz = 0.5.2
olefile = 0.44
735
python-libmilter = 1.0.3
736 737 738
zope.app.debug = 3.4.1
zope.app.dependable = 3.5.1
zope.app.form = 4.0.2
739 740 741
mpmath = 0.19
openpyxl = 2.4.8
jdcal = 1.3
742 743 744
deepdiff = 3.3.0
unidiff = 0.5.5
jsonpickle = 0.9.6
Jérome Perrin's avatar
Jérome Perrin committed
745 746
responses = 0.10.6
cookies = 2.2.1
Jérome Perrin's avatar
Jérome Perrin committed
747 748
jedi = 0.15.1
parso = 0.5.1
Jérome Perrin's avatar
Jérome Perrin committed
749
yapf = 0.28.0
750 751 752 753 754 755 756
z3c.etestbrowser = 3.0.1
zope.testbrowser = 5.5.1
WSGIProxy2 = 0.4.6
WebTest = 2.0.33
beautifulsoup4 = 4.8.2
WebOb = 1.8.5
soupsieve = 1.9.5
757
eggtestinfo = 0.3
758 759 760 761 762 763 764 765

oic = 0.15.1
Beaker = 1.11.0
Mako = 1.1.4
pyjwkest = 1.4.2
alabaster = 0.7.12
future = 0.18.2
pycryptodomex = 3.10.1
766 767 768 769 770

strict-rfc3339 = 0.7
webcolors = 1.10
rfc3987 = 1.3.8
jsonpointer = 2.2