Closed OmarIthawi closed 6 days ago
@brian-smith-tcril @sarina fyi.
I think the issue with edx-platform
is a python version issue. We're using 3.8
here but edx-platform
has 3.11
listed as a dependency now. The open-release/redwood.master
branch of edx-platform
says "Python 3.11 (preferred) or 3.8 (compatible, for now)".
I'm not 100% sure upgrading all the workflows in this repo (and requirements files) to use 3.11
will fix everything but it seems like a good thing to do on both main
and open-release/redwood.master
.
@brian-smith-tcril there has been an attempt:
But not all packages are compatible with python 3.11 therefore we might want to add python_version
property to each package so we don't have to upgrade them all at once.
I ran a workflow on my fork from a branch where I updated the workflow to use 3.11, this is what I've figured out so far:
repo | 3.8 |
3.11 |
---|---|---|
course-discovery |
:heavy_check_mark: | :x: |
credentials |
:x: | :x: |
ecommerce |
:x: | :x: |
edx-platform |
:x: | :x: |
course-discovery
(3.11
)cd course_discovery && PYTHONPATH="..:" django-admin.py makemessages -l en -v1 --ignore="assets/*" --ignore="static/bower_components/*" --ignore="static/build/*" -d django
/bin/sh: 1: django-admin.py: not found
make: *** [Makefile:95: extract_translations] Error 127
Error: Process completed with exit code 2.
credentials
"no changes added to commit" - something about untracked files. Same error on 3.8
and 3.11
ecommerce
python3.12 -m tox -e py312-django32-extract_translations
make: python3.12: No such file or directory
make: *** [Makefile:119: extract_translations] Error 127
edx-platform
(3.8
)ERROR: Ignored the following versions that require a different python version: 0.15.0 Requires-Python >=3.9; 0.16.0 Requires-Python >=3.9; 5.0 Requires-Python >=3.10; 5.0.1 Requires-Python >=3.10; 5.0.2 Requires-Python >=3.10; 5.0.3 Requires-Python >=3.10; 5.0.4 Requires-Python >=3.10; 5.0.5 Requires-Python >=3.10; 5.0.6 Requires-Python >=3.10; 5.0.7 Requires-Python >=3.10; 5.0.8 Requires-Python >=3.10; 5.0a1 Requires-Python >=3.10; 5.0b1 Requires-Python >=3.10; 5.0rc1 Requires-Python >=3.10; 5.1 Requires-Python >=3.10; 5.1a1 Requires-Python >=3.10; 5.1b1 Requires-Python >=3.10; 5.1rc1 Requires-Python >=3.10
ERROR: Could not find a version that satisfies the requirement django-mptt==0.16.0 (from versions: 0.1, 0.2, 0.2.1, 0.3.0, 0.3.1, 0.4.0, 0.4.1, 0.4.2, 0.5.0, 0.5.1, 0.5.2, 0.5.3, 0.5.4, 0.5.5, 0.6.0, 0.6.1, 0.7.0, 0.7.1, 0.7.2, 0.7.3, 0.7.4, 0.8.0, 0.8.1, 0.8.2, 0.8.3, 0.8.4, 0.8.5, 0.8.6, 0.8.7, 0.9.0, 0.9.1, 0.10.0, 0.11.0, 0.12.0, 0.13.0, 0.13.1, 0.13.2, 0.13.3, 0.13.4, 0.14.0)
ERROR: No matching distribution found for django-mptt==0.16.0
Error: Process completed with exit code 1.
edx-platform
(3.11
)INFO:i18n.execute:pybabel extract --mapping=conf/locale/babel_underscore.cfg --add-comments="Translators:" --keyword="interpolate" . --output=conf/locale/en/LC_MESSAGES/underscore.po
extracting messages from cms/templates/js/access-editor.underscore (input_encoding="utf-8")
Traceback (most recent call last):
File "/opt/hostedtoolcache/Python/3.11.9/x64/bin/pybabel", line 8, in <module>
sys.exit(main())
^^^^^^
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/babel/messages/frontend.py", line 999, in main
return CommandLineInterface().run(sys.argv)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/babel/messages/frontend.py", line 925, in run
return cmdinst.run()
^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/babel/messages/frontend.py", line 523, in run
for filename, lineno, message, comments, context in extracted:
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/babel/messages/extract.py", line 217, in extract_from_dir
yield from check_and_call_extract_file(
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/babel/messages/extract.py", line 281, in check_and_call_extract_file
for message_tuple in extract_from_file(
^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/babel/messages/extract.py", line 323, in extract_from_file
return list(extract(method, fileobj, keywords, comment_tags,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/babel/messages/extract.py", line 432, in extract
func = getattr(__import__(module, {}, {}, [attrname]), attrname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/enmerkar_underscore/__init__.py", line 13, in <module>
from .vendor.markey import underscore
ModuleNotFoundError: No module named 'enmerkar_underscore.vendor'
Traceback (most recent call last):
File "/opt/hostedtoolcache/Python/3.11.9/x64/bin/i18n_tool", line 8, in <module>
sys.exit(main())
^^^^^^
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/i18n/main.py", line 60, in main
return module.main()
^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/i18n/__init__.py", line 50, in __call__
return self.run(args)
^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/i18n/extract.py", line 121, in run
self.babel_extract(stderr, babel_verbosity)
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/i18n/extract.py", line 224, in babel_extract
execute(babel_underscore_cmd, working_directory=configuration.root_dir, stderr=stderr)
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/site-packages/i18n/execute.py", line 21, in execute
sp.check_call(command, cwd=working_directory, stderr=stderr, shell=True)
File "/opt/hostedtoolcache/Python/3.11.9/x64/lib/python3.11/subprocess.py", line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command 'pybabel extract --mapping=conf/locale/babel_underscore.cfg --add-comments="Translators:" --keyword="interpolate" . --output=conf/locale/en/LC_MESSAGES/underscore.po' returned non-zero exit status 1.
make: *** [Makefile:37: extract_translations] Error 1
Thanks for checking Brian!
It's, unfortunately, much worse than I thought! Any chance we get some help from those repositories' maintainers? except for ecommerce which is deprecated which means we have to do it ourselves.
I'm taking a look at the edx-platform repo to see if I can get that fixed.
Related PRs:
Thanks Feanil and Brian for tackling this!
The Extract Translation Source Files workflow is failing for some resources: