Skip to content
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

CI Broken: Debian Bookworm and Fedora-37 can't install PySide2 via Pypi #330

Closed
deeplow opened this issue Feb 1, 2023 · 3 comments · Fixed by #333
Closed

CI Broken: Debian Bookworm and Fedora-37 can't install PySide2 via Pypi #330

deeplow opened this issue Feb 1, 2023 · 3 comments · Fixed by #333
Assignees
Milestone

Comments

@deeplow
Copy link
Contributor

deeplow commented Feb 1, 2023

In both Fedora 37 and Debian Bookworm, doing pip install fails. The reason for this is because they both have python 3.11 which our project doesn't support via poetry.

@deeplow deeplow added this to the 0.4.1 milestone Feb 1, 2023
@deeplow
Copy link
Contributor Author

deeplow commented Feb 1, 2023

@apyrgio I tried following your suggestion of building from debian's source from source (which is supposed to support python3.11). I needed to install cmake and qt5-qtbase-devel and even like that it failed. It has to build submodules which are in the sources/ subdirectoy, but it's having issues building them.

There are some other quirks to get to to fail early, but in general, it is not easy to go this route. And my guess it that it won't be very stable.

@deeplow
Copy link
Contributor Author

deeplow commented Feb 1, 2023

A way easier solution is to use install and use python3.10 on those systems.

deeplow added a commit that referenced this issue Feb 1, 2023
In both Fedora 37 and Debian Bookworm, doing pip install fails. The
reason for this is because they both have python 3.11 which our project
doesn't support via poetry.

By installing python 3.10 this allows us to do `poetry install` in a
distro with python 3.11. Bumping the project's python version was not a
viable solution since PySide2 version from Pypi does not support
python 3.11.

Fixes #330
@deeplow deeplow self-assigned this Feb 1, 2023
@deeplow
Copy link
Contributor Author

deeplow commented Feb 6, 2023

After discussing with @apyrgio, we'll be using PySide6 exclusively in the development environment but when shipping to linux distros, we'll use PySide2. It will be tested anyways in QA before any release. This will ease these dependency issues.

apyrgio added a commit that referenced this issue Feb 6, 2023
Drop PySide2 from our dependencies (previously used only on Linux
environments) and use PySide6 in all dev environments. The reason is
that PySide2 (from PyPI) does not support Python 3.11, and the variants
that do (Fedora/Debian packages) need to backport fixes from PySide6.

Our original attempt was to build PySide2 wheels for Python 3.11 but
it was not simple, nor maintainable. So, we were left with two options:

1. Install Python 3.10 in dev environments that have Python 3.11 by
   default.
2. Use PySide6 in all of our environments.

In both cases, we break package parity with the user's system, since we
are not testing Dangerzone under the same conditions. However, since
option (2) is forwards-compatible with where we want to move the
project (use Qt6 and PySide6), we chose that one.

Fixes #330
apyrgio added a commit that referenced this issue Feb 7, 2023
Drop PySide2 from our dependencies (previously used only on Linux
environments) and use PySide6 in all dev environments. The reason is
that PySide2 (from PyPI) does not support Python 3.11, and the variants
that do (Fedora/Debian packages) need to backport fixes from PySide6.

Our original attempt was to build PySide2 wheels for Python 3.11 but
it was not simple, nor maintainable. So, we were left with two options:

1. Install Python 3.10 in dev environments that have Python 3.11 by
   default.
2. Use PySide6 in all of our environments.

In both cases, we break package parity with the user's system, since we
are not testing Dangerzone under the same conditions. However, since
option (2) is forwards-compatible with where we want to move the
project (use Qt6 and PySide6), we chose that one.

Fixes #330
apyrgio added a commit that referenced this issue Feb 7, 2023
Drop PySide2 from our dependencies (previously used only on Linux
environments) and use PySide6 in all dev environments. The reason is
that PySide2 (from PyPI) does not support Python 3.11, and the variants
that do (Fedora/Debian packages) need to backport fixes from PySide6.

Our original attempt was to build PySide2 wheels for Python 3.11 but
it was not simple, nor maintainable. So, we were left with two options:

1. Install Python 3.10 in dev environments that have Python 3.11 by
   default.
2. Use PySide6 in all of our environments.

In both cases, we break package parity with the user's system, since we
are not testing Dangerzone under the same conditions. However, since
option (2) is forwards-compatible with where we want to move the
project (use Qt6 and PySide6), we chose that one.

Fixes #330
apyrgio added a commit that referenced this issue Feb 7, 2023
Drop PySide2 from our dependencies (previously used only on Linux
environments) and use PySide6 in all dev environments. The reason is
that PySide2 (from PyPI) does not support Python 3.11, and the variants
that do (Fedora/Debian packages) need to backport fixes from PySide6.

Our original attempt was to build PySide2 wheels for Python 3.11 but
it was not simple, nor maintainable. So, we were left with two options:

1. Install Python 3.10 in dev environments that have Python 3.11 by
   default.
2. Use PySide6 in all of our environments.

In both cases, we break package parity with the user's system, since we
are not testing Dangerzone under the same conditions. However, since
option (2) is forwards-compatible with where we want to move the
project (use Qt6 and PySide6), we chose that one.

Fixes #330
apyrgio added a commit that referenced this issue Feb 7, 2023
Drop PySide2 from our dependencies (previously used only on Linux
environments) and use PySide6 in all dev environments. The reason is
that PySide2 (from PyPI) does not support Python 3.11, and the variants
that do (Fedora/Debian packages) need to backport fixes from PySide6.

Our original attempt was to build PySide2 wheels for Python 3.11 but
it was not simple, nor maintainable. So, we were left with two options:

1. Install Python 3.10 in dev environments that have Python 3.11 by
   default.
2. Use PySide6 in all of our environments.

In both cases, we break package parity with the user's system, since we
are not testing Dangerzone under the same conditions. However, since
option (2) is forwards-compatible with where we want to move the
project (use Qt6 and PySide6), we chose that one.

Fixes #330
apyrgio added a commit that referenced this issue Feb 7, 2023
Drop PySide2 from our dependencies (previously used only on Linux
environments) and use PySide6 in all dev environments. The reason is
that PySide2 (from PyPI) does not support Python 3.11, and the variants
that do (Fedora/Debian packages) need to backport fixes from PySide6.

Our original attempt was to build PySide2 wheels for Python 3.11 but
it was not simple, nor maintainable. So, we were left with two options:

1. Install Python 3.10 in dev environments that have Python 3.11 by
   default.
2. Use PySide6 in all of our environments.

In both cases, we break package parity with the user's system, since we
are not testing Dangerzone under the same conditions. However, since
option (2) is forwards-compatible with where we want to move the
project (use Qt6 and PySide6), we chose that one.

Fixes #330
@apyrgio apyrgio closed this as completed in 16375bf Feb 7, 2023
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 a pull request may close this issue.

1 participant