Upgrading Plone 5.1.7 -> 5.2.3 (from buildout) error messages

I am getting the following errors from ./bin/buildout, and I am having problems determining what the source of the error is. Is my buildout.cfg adequate (pasted below the error output)? By the way, I previously ran all those "find" commands listed in the output, but they continue repeating when I rerun buildout.

eric@bumble:~/Plone5/zinstance$ ./bin/buildout
Updating instance.
Updating repozo.
Updating backup.
Updating zopepy.
Updating unifiedinstaller.
Updating precompiler.
Compiling Python files.
File "/home/eric/Plone5/buildout-cache/eggs/attrs-20.3.0-py2.7.egg/attr/_next_gen.py", line 18
*,
^
SyntaxError: invalid syntax

File "/home/eric/Plone5/buildout-cache/eggs/zodbpickle-2.0.0-py2.7-linux-x86_64.egg/zodbpickle/pickle_3.py", line 178
def init(self, file, protocol=None, *, fix_imports=True):
^
SyntaxError: invalid syntax

File "/home/eric/Plone5/buildout-cache/eggs/zodbpickle-2.0.0-py2.7-linux-x86_64.egg/zodbpickle/pickletools_3.py", line 2049
print("%5d:" % pos, end=' ', file=out)
^
SyntaxError: invalid syntax

File "/home/eric/Plone5/buildout-cache/eggs/zodbpickle-2.0.0-py2.7-linux-x86_64.egg/zodbpickle/tests/pickletester_3.py", line 142
class use_metaclass(object, metaclass=metaclass):
^
SyntaxError: invalid syntax

Compiling locale files.
Updating setpermissions.
setpermissions: Running # Dummy references to force this to execute after referenced parts
echo /home/eric/Plone5/zinstance/var/backups no > /dev/null
chmod 600 .installed.cfg
Make sure anything we've created in var is r/w by our group
find /home/eric/Plone5/zinstance/var -type d -exec chmod 770 {} ; 2> /dev/null
find /home/eric/Plone5/zinstance/var -type f -exec chmod 660 {} ; 2> /dev/null
find /home/eric/Plone5/zinstance/var -type d -exec chmod 770 {} ; 2> /dev/null
find /home/eric/Plone5/zinstance/var -type f -exec chmod 660 {} ; 2> /dev/null
chmod 754 /home/eric/Plone5/zinstance/bin/*
Versions had to be automatically picked.
The following part definition lists the versions picked:
[versions]
plone.recipe.unifiedinstaller = 4.3.2

[buildout]
extensions =
buildout.sanitycheck

extends =
base.cfg
http://dist.plone.org/release/5.2-latest/versions.cfg

find-links +=
Index of /release/5.2-latest/

effective-user = eric
buildout-user = eric
need-sudo = no
index = Simple index
eggs =
Plone
Pillow
zcml =
develop =
var-dir=${buildout:directory}/var
backups-dir=${buildout:var-dir}
verbose-security = off
parts =
instance
#commented out zeoserver
#commented out client1
repozo
backup
zopepy
unifiedinstaller
precompiler
setpermissions
[instance]
<= instance_base
recipe = plone.recipe.zope2instance
http-address = 9130
[versions]
setuptools =
zc.buildout =
buildout.sanitycheck = 1.0.2
collective.recipe.backup = 4.1.0

I just answered a similar question on plone.staticresources.

I expect this to be harmless. See explanation on docs.plone.org, although the SyntaxErrors in there are for Python skin scripts, which is not the case for you.

In your case, you get errors when running the precompiler part of the buildout:

Updating precompiler.
Compiling Python files.

This tries to find all Python files in all packages, and compiles them with your Python version, to see if there are any possible errors.

Problem: this also finds Python files that will never be used. You are using Python 2, and it can very well be that these two Python files are in practice only called when using Python 3.

In this case, I don't see anything special in your buildout, it is a pretty simple Plone 5.2 with Python 2 buildout. So I would not worry.

I do see one small thing, but it does not really cause trouble I think.
You point to a deprecated index. Please change this:

index = https://pypi.python.org/simple

into this:

index = https://pypi.org/simple
2 Likes

Thank you for your response. The running of ./bin/buildout (notwithstanding these error messages) is failing to generate the interpreter at the end of the output, as happens normally. Normally, it outputs for me

"Installing instance.
Generated script /home/eric/Plone5/zinstance/bin/instance'.
Generated interpreter '/home/eric/Plone5/zinstance/parts/instance/bin/interpreter"

But none of those output lines occur anymore, and I can not start Plone .

I read in the similar question that you linked, that the buildout output was related to print functions requiring parenthesis in Python 3, so my Syntax Errors are likely a similar Python 3 syntax compatibility issue in the "attrs" and "zodbpickle" dependencies. Is this issue related to what is causing the interpreter generation to fail, and if not, how do I provide more buildout error logging verbosity? Thanks again!

Well, I was able to successfully install 5.2.2 (using the unified installer buildout.cfg template). I'll wait a bit to try 5.2.3.