-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rebuild for python 3.11 #12
Comments
First error found is in node-gyp during the mgr dashboard build: Details
Seems to be fixed in nodejs/node-gyp#2219, so have to figure out why this isn't pulled in (update npm version?) |
Looks like they use a bundled version of node: https://github.com/ceph/ceph/blob/main/src/pybind/mgr/dashboard/frontend/CMakeLists.txt#L66 and I vaguely remember running into all sorts of weird errors when I enabled Ideally, I can bump this to 16 or 18 and get a npm with a late enough bundled node-gyp EDIT: npm/cli#5113, npm/cli#4664, npm/cli#4660 seems new npm bothers to validate package-lock.json files, and the upstream has something hinky in theirs. See if we can work around this somehow |
Also ran into EDIT: Actually, Ceph is on the ball here, and fixed all of their usages 3 years ago, however they use a 6 year old version of cherrypy which is missing cherrypy/cherrypy@8245a74, so trying another build with cherrypy>=18.7 -- hopefully jumping 5 major versions doesn't break anything (har har) |
During a pylint run Details
See: GrahamDumpleton/wrapt#196 Not sure how relevant this one is as this is only linting, not part of the mgr code directly, but I'm worried other bugs made be hiding behind this one (like this one was hiding behind the cherrypy error) |
up the bundled node version to 16, so as to fix node-gyp errors originating from a too-old npm version in 14. Basically, python 3.11 removed a deprecated file open option from python, which consequently blows up `npm ci`, preventing the build. Issue: #12 References: npm/cli#5113 References: npm/cli#4664 References: npm/cli#4660
cherrypy is a runtime dependency, while pylint is a build/lint dep, both of them encountered import errors due to API removals in py3.11, see the links for more. pylint's is indirect, a dependency of a dependency: pylint->astroid->wrapt but fixed by moving to a more recent version - ceph-17.2.6-mgr-dashboard-cherrypy-18.patch - ceph-17.2.6-mgr-dashboard-pylint-217.patch Issue: #12 References: cherrypy/cherrypy@8245a74 References: GrahamDumpleton/wrapt#196
Seems Archlinux finally managed to navigate the 3.11 mess and is testing 3.11 rebuilds now.
This package has to be rebuilt once that hits stable.
The text was updated successfully, but these errors were encountered: