After some eggs and parts installed through buildout, plone 5.1.2 fails to start

I am learning to customize plone on https://training.plone.org/5/mastering-plone .
Following chapter 15. Buildout I, I modified my buildout,cfg and added robot in parts section. While installing robot, I got some Errors just like “The requirement ('AccessControl>=4.0b4') is not allowed by your [versions] constraint (3.0.14)”. So I set them in versions section as it requires in buildout.cfg:
Unidecode = 1.0.22
plone.testing = 6.0.0
zExceptions = 4.0
AccessControl = 4.0b4
RestrictedPython = 4.0a1
Persistence = 3.0a3
Then command bin/buildout runs well, but my plone fails to start and there is no any message.

Need your help.

Regards.
Hugo

This is my buildout.cfg:
 .[buildout]
extends =
    base.cfg
    versions.cfg
#    http://dist.plone.org/release/5.1.2/versions.cfg

extends-cache = extends-cache

extensions = mr.developer
# Tell mr.developer to ask before updating a checkout.
always-checkout = true
show-picked-versions = true
sources = sources

buildout_dir = ${buildout:directory}

auto-checkout =
    ploneconf.site

find-links +=
    http://dist.plone.org/release/5.1.2

effective-user = plone_daemon

buildout-user = plone_buildout

need-sudo = yes

############################################
eggs =
    Plone
    Pillow
# development tools
    plone.reload
    Products.PDBDebugMode
    plone.app.debugtoolbar
    Products.PrintingMailHost
    pdbpp

# TTW Forms
    collective.easyform

# The addon we develop in the training
    ploneconf.site
############################################
# ZCML Slugs
# ----------
# Some eggs need ZCML slugs to tell Zope to
# use them. This is increasingly rare.
zcml =
#    plone.reload
test-eggs +=
    ploneconf.site [test]

develop =
#    src/my.package

############################################
var-dir=${buildout:directory}/var
backups-dir=${buildout:var-dir}

############################################
user=admin:123456

############################################
deprecation-warnings = on
# change verbose-security to "on" for useful security errors while developing
verbose-security = on

############################################
parts =
    checkversions
    zeoserver
    client1
    client2
    backup
    mrbob
    packages
    robot
    test
    zopepy
    unifiedinstaller
    precompiler
    setpermissions

############################################
[zeoserver]
<= zeoserver_base
recipe = plone.recipe.zeoserver
zeo-address = 127.0.0.1:8100

[client1]
<= client_base
recipe = plone.recipe.zope2instance
zeo-address = ${zeoserver:zeo-address}
http-address = 8080

debug-mode = on
eggs = ${buildout:eggs}
zcml = ${buildout:zcml}
file-storage = ${buildout:buildout_dir}/var/filestorage/Data.fs
blob-storage = ${buildout:buildout_dir}/var/blobstorage
[client2]
<= client_base
recipe = plone.recipe.zope2instance
zeo-address = ${zeoserver:zeo-address}
http-address = 8081

debug-mode = on
eggs = ${buildout:eggs}
zcml = ${buildout:zcml}
file-storage = ${buildout:buildout_dir}/var/filestorage/Data.fs
blob-storage = ${buildout:buildout_dir}/var/blobstorage


[test]
recipe = zc.recipe.testrunner
eggs = ${buildout:test-eggs}
defaults = ['--auto-color', '-vvv']

[robot]
recipe = zc.recipe.egg
eggs =
    ${buildout:test-eggs}
    Pillow
    plone.app.robotframework[ride,reload,debug]

[packages]
recipe = collective.recipe.omelette
eggs = ${buildout:eggs}
location = ${buildout:buildout_dir}/packages

[checkversions]
recipe = zc.recipe.egg
eggs = z3c.checkversions [buildout]

[zopepy]
recipe = zc.recipe.egg
eggs =
    ${buildout:eggs}
# need to explicitly mention Products.CMFPlone in order for plone-compile-resources to be found
    Products.CMFPlone
interpreter = zopepy
scripts =
    zopepy
    plone-generate-gruntfile
    plone-compile-resources

[mrbob]
recipe = zc.recipe.egg
eggs =
    mr.bob
    bobtemplates.plone

[sources]
ploneconf.site = git https://github.com/collective/ploneconf.site.git pushurl=git@github.com:collective/ploneconf.site.git
starzel.votable_behavior = git https://github.com/collective/starzel.votable_behavior.git pushurl=git://github.com/collective/starzel.votable_behavior.git

[versions]

setuptools =
zc.buildout =
Pillow = 5.1.0

buildout.sanitycheck = 1.0.2
collective.recipe.backup = 4.0
plone.recipe.unifiedinstaller = 4.3.2
plone.recipe.command = 1.1
plone.recipe.precompiler = 0.6

Unidecode = 1.0.22
plone.testing = 6.0.0
zExceptions = 4.0
AccessControl = 4.0b4
RestrictedPython = 4.0a1
Persistence = 3.0a3

Why did you comment out the http://dist.plone.org/release/5.1.2/versions.cfg line in your versions.cfg? This is like walkingin to a restaurant and ask if the waiter wants to dump every menu experiment from chef from the last 6 months on your table. Bon appetit :wink:

If you start with Plone in general it makes no sense to start adding higher versions of packages because buildout says there's a conflict. Almost always it's a signn you've unpinned something essential which is too new and that package is pulling in other too new packages as well.

AccessControl 4.x is part of the current development release cycle for Python 3 support. It is probably pulled in by other too new packages depending on it. Please stick to a versions.cfg of a released version, in this case Plone 5.1.2 as a baseline. Then if you really want to go upwards from those versions for legit bugfixes, first look up that package on pypi.org and check the version history.


Open versions.cfg file in zinstance folder. Search for '‘AccessControl" in the file
replace the version with the 4.0b4 . The package will install.


If you still get error go to 'pypi' site and see the latest version and replace with the latest version.

Thanks.
I do hope to stick to the version.cfg of plone 5.1.2.
Any other guide except this for customizing plone with plone 5.1.2 as a baseline ?

Thanks. It does not work.