Package Details: python37 3.7.17-1

Git Clone URL: https://aur.archlinux.org/python37.git (read-only, click to copy)
Package Base: python37
Description: Major release 3.7 of the Python high-level programming language
Upstream URL: https://www.python.org/
Keywords: python python3
Licenses: custom
Provides: python
Submitter: 5long
Maintainer: greut (jrd)
Last Packager: greut
Votes: 32
Popularity: 0.197558
First Submitted: 2019-11-14 21:23 (UTC)
Last Updated: 2023-06-14 07:53 (UTC)

Dependencies (16)

Required by (12592)

Sources (6)

Latest Comments

« First ‹ Previous 1 .. 4 5 6 7 8 9 10 Next › Last »

5long commented on 2019-11-18 14:45 (UTC)

@MuffinBomber: I'm no expert in building Python. Maybe the test case you are stuck on is a different test case. Not the one removed in https://bugs.python.org/issue34587.

And yes: by removing the line of --enable-optimizations from PKGBUILD, a clean rebuild (with makepkg -Csf) no longer runs the tests on my machine.

MuffinBomber commented on 2019-11-18 11:23 (UTC) (edited on 2019-11-18 11:37 (UTC) by MuffinBomber)

When building the package 'test_socket' gets stuck. Is there a way to solve this or should I just remove the '--enable-optimizations' line and skip the tests completely (while also dealing with slower executing code)?

EDIT: According to https://bugs.python.org/issue34587 that test was removed from 3.7, but somehow it is still present?

Lucki commented on 2019-11-16 14:55 (UTC)

Thanks for your insights. I'm no expert especially with python.

My package doesn't run with 3.8 anymore and upstream is (nearly) dead. Looks like this will be a bigger task to get it run again.

5long commented on 2019-11-16 13:58 (UTC)

@Lucki: I'm not quite sure if this pacakges should claim provides=... in its PKGBUILD.

Python packages are, in a way, built for a specific version of Python. Most of their files are installed into /usr/lib/pythonX.Y and they won't run under a different version of Python. If a package only runs under Python 3.7, I'd suggest it claims python37 as its dependency. The Python version is hard-coded in the package name already.

Another problem is: only Arch's official python package provides /usr/bin/python. Other packages must not do that. Even if python37 does provides=python<3.8, any python scripts starting with #!/usr/bin/python won't run. So the provides=... just become a false promise. This whole situation may be resolved once pacman implements an alternatives system (which is being discussed here: https://lists.archlinux.org/pipermail/pacman-dev/2019-October/023691.html) in the future.

But still, this is my first time writing a "serious" PKGBUILD. And by writing I mean "copying from official repo and python36". What I've said above may very well be wrong. Feel free to point out any mistakes.

Lucki commented on 2019-11-16 12:52 (UTC) (edited on 2019-11-16 12:54 (UTC) by Lucki)

Isn't this providing python<3.8 or similar?

https://wiki.archlinux.org/index.php/PKGBUILD#provides

chrismax commented on 2019-11-16 10:21 (UTC)

@5long Thanks for updating the build file. Now it's working for me without any troubles.

lainproliant commented on 2019-11-15 22:53 (UTC)

@nitrobay Please try what @5long did below. You will need to download the PKGBUILD file yourself, then remove the check() section, then run makepkg -s. I ran into the issue that some post-build unit tests refused to pass, and removing the check() section allowed me to proceed successfully.

nitrobay commented on 2019-11-15 15:05 (UTC)

Even with the very latest version of the aur database, tests are runned despite !test in my makpkg.conf ! Very huge deal I cannot work because I've done the very big mistake of updating everything including python so now the tools used for my work does not work. I will never use arch linux again. It is so stupid you cannot downgrade with it !!!!!!!!! Such a basic feature make the PC unusable. Any update can just break your workflow forever and then you cannot work. I hate arch linux.

5long commented on 2019-11-15 14:05 (UTC)

@ashep: you might wanna manually import the GPG key from the upstream maintainer. See the wiki: https://wiki.archlinux.org/index.php/PKGBUILD#validpgpkeys for how to do it.

Also, if you're using some kind of AUR helper (in my case, it's yay), it should automatically import the GPG key for you.

5long commented on 2019-11-15 14:03 (UTC)

Thanks for all your feed back. I just removed the check() section with 3.7.5-2.

At first I thought that it's up to the users who decide if they would run check() or not when building a package. You can skip the check() phase in makepkg.conf(5). What drives me made the decision is: some of the tests just don't pass and I probably can't fix them anyway.

But still, the tests are gonna run in build() phase since the default build method is "PGO build", which is still kinda slow.