Package Details: python-jaxlib 0.5.2-1

Git Clone URL: https://aur.archlinux.org/python-jaxlib.git (read-only, click to copy)
Package Base: python-jaxlib
Description: XLA library for JAX
Upstream URL: https://github.com/jax-ml/jax/
Keywords: deep-learning google jax machine-learning xla
Licenses: Apache-2.0
Groups: jax
Submitter: daskol
Maintainer: daskol
Last Packager: daskol
Votes: 7
Popularity: 0.104219
First Submitted: 2021-01-12 12:50 (UTC)
Last Updated: 2025-03-05 12:01 (UTC)

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 Next › Last »

65a commented on 2023-10-08 19:06 (UTC)

Any fix for this coming soon? I've had to build it locally lately to prevent package updates from burning CPU.

segin commented on 2023-10-06 10:31 (UTC)

Well, you've pushed 0.4.17 and didn't go to a release build, so clearly the dev build was the intended behavior. You had the opportunity to address it, and you didn't.

daskol commented on 2023-10-01 16:05 (UTC) (edited on 2023-10-01 16:06 (UTC) by daskol)

@segin It is not a fix. https://aur.archlinux.org/packages/python-jaxlib#comment-935718

It is not just dash or dot. The issue is that that package version should be release build

$ python -c 'from jaxlib.version import __version__; print(__version__)'
0.4.16

not a nightly build like this.

$ python -c 'from jaxlib.version import __version__; print(__version__)'
0.4.16.dev20231001

segin commented on 2023-10-01 15:14 (UTC) (edited on 2023-10-01 15:15 (UTC) by segin)

@daskol It's a fix. Trust me. Apply it and watch the magic work.

Between "0.4.16" and "dev...", you're using a - when the actual real file on disk will have a . in that place.

Line 38 (excerpted) on the PKGBUILD has "jaxlib-$pkgver-.whl" - instead here do "jaxlib-$pkgver..whl"

Why?

FileNotFoundError: [Errno 2] No such file or directory: '/home/segin/.cache/yay/python-jaxlib/src/jax-jaxlib-v0.4.16/dist/jaxlib-0.4.16-*.whl'

Because the actual file on disk doesn't have a - after the 16, it has a .:

segin@installation-00[10:09]:{~}% ls -l /home/segin/.cache/yay/python-jaxlib/src/jax-jaxlib-v0.4.16/dist/jaxlib-0.4.16.*.whl
-rw-r--r-- 1 segin wheel 71560446 Oct  1 10:07 /home/segin/.cache/yay/python-jaxlib/src/jax-jaxlib-v0.4.16/dist/jaxlib-0.4.16.dev20231001-cp311-cp311-manylinux2014_x86_64.whl
segin@installation-00[10:09]:{~}%  

Literally the issue is a malformed wildcard. I change that one single - to a . and look, ls finds the file!

daskol commented on 2023-09-26 15:03 (UTC)

@segin No, it is not fix. In this case jax.version.__version__ is not $pkgver. Initial intent was to catch dirty releases since lately many packagers ranging from huggingface to google changes release pipelines, way how to version is assigned to package, or makes unfortunate mistakes. If release version is $pkgver then the package must expose the same version $pkgver consistently.

segin commented on 2023-09-26 14:53 (UTC) (edited on 2023-09-26 14:54 (UTC) by segin)

Here's a ONE CHARACTER fix for this bug:

Replace the dash (-) between the package version and the wildcard with a period (.)

In my case, the generated wheel filename is jaxlib-0.4.16.dev20230926-cp311-cp311-manylinux2014_x86_64.whl but the wildcard is trying for jaxlib-0.4.16-*.whl

Right there in the wildcard after the 16 is a - when it should be a .

There, fixed by changing one single byte in the PKGBUILD.

daskol commented on 2023-09-24 13:03 (UTC)

@h3ss I see. I guess the issue is that jaxlib is built with bazel. Its build directory actually is in ~/.cache/bazel and it is not cleans with makepkg -C. I'll try to move ~/.cache/bazel in $srcdir in the future.

h3ss commented on 2023-09-24 12:58 (UTC)

Thanks @daskol! That did the trick, now it builds the wheel as src/jax-jaxlib-v0.4.16/dist/jaxlib-0.4.16-cp311-cp311-manylinux2014_x86_64.whl and makepkg can find it.

Not sure why, but even a cleanbuild with yay wasn't enough, I had to clone from AUR and makepkg -si manually, but when I did it worked just fine.

daskol commented on 2023-09-23 13:25 (UTC)

@h3ss Finally, I've fixed the issue. There was a typo in JAXLIB_RELEASE envvar. 😔