Chore: Upgrade to python 3.10 (#1688)

* changed class name

* Working requirements.in

* Reordered lines to see changes better

* Working minimal upgrades

* Added hashes

* - Upgraded python to 3.10 and bitcoin to v23.0
- Added libzmq to build process, to enable future use cases such as https://github.com/cryptoadvance/specter-desktop/issues/778
- added --without-gui to remove configure warning that gui will not be built.

* Added line-break

* - Updated the embit version to 0.4.13
- pushed python-bitcoind image

* - Build registry.gitlab.com/c8527/specter/cirrus-jammy:20220504
- updated docker references

* - added cypress-base-ubuntu-jammy

* - added cypress-python

* - fixed unchanged registry path

* Fixed wrong path

* readme change

* Fixed path

* Changed github-changelog

* changes registrar links

* Fixed bitcoin version

* Set reset bitcoin version to 22

* Set bitcoin version to 22.0

* Fixed black issue via https://github.com/psf/black/issues/2964#issuecomment-1080974737

* Revert for changelog

* Upgraded pytest because otherwise I get the error  https://github.com/pytest-dev/pytest/discussions/9195

* Added temporary fix for upgraded hwi version. Should be fixed in https://github.com/cryptoadvance/specter-desktop/pull/1693

* more verbosity for page generation

* doc about python 3.10

* docs: update TOC

* yet another library necessary

* black

* Corrected tag

* Fixed wrong python version introduced in the merge commit

* Use same babel version across requirements and test_requirements

* Created the reuqirements.txt with python 3.8 such, that that netlify can create the python docs in python 3.8, while everything elese works also with python 3.10

* testing https://peps.python.org/pep-0508/#environment-markers

* CHanged just the txt

* Added comments

* electron docker build successful

* rename image to cypress-python:v9.7.0

* doc

* docker file rename

* fix pyinstaller pip error by changing requirements.in

* reference jammy electron dockerfile

See https://github.com/electron-userland/electron-builder/pull/6922#issuecomment-1234420845

* updated all references to dockerimages

* fix release-build

* fix the image-version to something else than latest. pin all the stuff!

* revert to old image to avoid glibc issues

Co-authored-by: Kim Neunert <k9ert@gmx.de>
Co-authored-by: k9ert <k9ert@users.noreply.github.com>
This commit is contained in:
relativisticelectron 2022-09-13 10:44:49 +02:00 committed by GitHub
parent c528e90b0d
commit a8f1b808ee
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
24 changed files with 605 additions and 296 deletions

View file

@ -34,6 +34,7 @@
- [Some words about dependencies](#some-words-about-dependencies)
- [Some words specific to the frontend](#some-words-specific-to-the-frontend)
- [Some words about style](#some-words-about-style)
- [Troubleshooting and migration to python3.10](#troubleshooting-and-migration-to-python310)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
@ -159,7 +160,7 @@ pytest
OR run against bitcoind in Docker (deprecated):
```
# Pull the bitcoind image if you haven't already:
docker pull registry.gitlab.com/cryptoadvance/specter-desktop/python-bitcoind:v0.20.1
docker pull registry.gitlab.com/cryptoadvance/specter-desktop/python-bitcoind:v0.22.0
# install prerequisites
pip3 install docker
@ -459,3 +460,29 @@ We're aware that currently the app is not very compatible on different browsers
* nice blue #4A90E2
* A designer would probably rant about all these bad choices. Professional help, especially in the frontend, is very much appreciated.
### Troubleshooting and migration to python3.10
We're currently migrating to python3.10 while alos supporting older versions. This is creating some extra challenges for those that want to run 3.10 but don't have 3.10 available in their standard-package. So here are some hints on how to get that going.
`pyenv` is a great tool to granually install. The [installation](https://github.com/pyenv/pyenv#basic-github-checkout) worked great. However, i don't want to pyenv to screw up my existing python setup. So i only use pyenv if i explicitely do (put that in a script):
```
export PYENV_ROOT="$HOME/.pyenv"
command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
echo " --> now do:omething like:"
echo " pyenv shell 3.10.4"
```
So i'm using `pyenv shell` but before you install now a 3.10 version via `pyenv install 3.10.4` make sure to install sqlite3:
```
sudo apt-get install sqlite3 libbz2-dev
```
If you miss that, you might later have issues while pre-commit-hooks kick in, something like `No module named '_sqlite3`.
Now you can switch your shell to use python 3.10 via `pyenv shell 3.10.4` and after that create your extra virtualenv which uses 3.10:
```
python3 -m virtualenv --python=python3.10 .env310
```