Skip to content

update python to 3.10 and flask to 1.1.4#129

Open
trjh wants to merge 1 commit intolinuxacademy:masterfrom
trjh:python3.10update
Open

update python to 3.10 and flask to 1.1.4#129
trjh wants to merge 1 commit intolinuxacademy:masterfrom
trjh:python3.10update

Conversation

@trjh
Copy link
Copy Markdown

@trjh trjh commented Dec 23, 2021

At the moment, containers built with this repository will fail to run with these errors:

cloud_user@ip-10-0-1-101:~$ kubectl log deployment/hello -n lasample
log is DEPRECATED and will be removed in a future version. Use logs instead.
Traceback (most recent call last):
  File "/python/app.py", line 1, in <module>
    from flask import Flask
  File "/usr/local/lib/python3.10/site-packages/flask/__init__.py", line 21,
in <module>
    from .app import Flask, Request, Response
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 36, in
<module>
    from .sessions import SecureCookieSessionInterface
  File "/usr/local/lib/python3.10/site-packages/flask/sessions.py", line 14,
in <module>
    from collections import MutableMapping
ImportError: cannot import name 'MutableMapping' from 'collections'
(/usr/local/lib/python3.10/collections/__init__.py)

python/Dockerfile builds from python:3-alpine, which currently uses python
3.10.1. This version of python requires an updated import syntax that doesn't
seem to be in use in version 1.0.2 of Flask, installed via requirements.txt.

https://stackoverflow.com/questions/70013988/importerror-cannot-import-name-mutablemapping-from-collections-usr-local

Here I've explicitly specified python 3.10 in both the Dockerfile and in the
github workflow file, and updated the Flask version to one that works with
python 3.10.

At the moment, containers built with this repository will fail to run with
these errors:

```
cloud_user@ip-10-0-1-101:~$ kubectl log deployment/hello -n lasample
log is DEPRECATED and will be removed in a future version. Use logs instead.
Traceback (most recent call last):
  File "/python/app.py", line 1, in <module>
    from flask import Flask
  File "/usr/local/lib/python3.10/site-packages/flask/__init__.py", line 21,
in <module>
    from .app import Flask, Request, Response
  File "/usr/local/lib/python3.10/site-packages/flask/app.py", line 36, in
<module>
    from .sessions import SecureCookieSessionInterface
  File "/usr/local/lib/python3.10/site-packages/flask/sessions.py", line 14,
in <module>
    from collections import MutableMapping
ImportError: cannot import name 'MutableMapping' from 'collections'
(/usr/local/lib/python3.10/collections/__init__.py)
```

python/Dockerfile builds from python:3-alpine, which currently uses python
3.10.1.  This version of python requires an updated import syntax that doesn't
seem to be in use in version 1.0.2 of Flask, installed via requirements.txt.

https://stackoverflow.com/questions/70013988/importerror-cannot-import-name-mutablemapping-from-collections-usr-local

Here I've explicitly specified python 3.10 in both the Dockerfile and in the
github workflow file, and updated the Flask version to one that works with
python 3.10.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant