python3Packages.tensorflow-probability: 0.8.0 -> 0.15.0#156027
python3Packages.tensorflow-probability: 0.8.0 -> 0.15.0#156027SuperSandro2000 merged 7 commits intoNixOS:masterfrom
Conversation
pkgs/development/python-modules/tensorflow-probability/default.nix
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Is it required? Broken?
There was a problem hiding this comment.
I added / cleaned up some of the comments. Hope it's all clearer now.
pkgs/development/python-modules/tensorflow-probability/default.nix
Outdated
Show resolved
Hide resolved
4e2ec05 to
b7081cf
Compare
pkgs/development/python-modules/tensorflow-probability/default.nix
Outdated
Show resolved
Hide resolved
pkgs/development/python-modules/tensorflow-probability/default.nix
Outdated
Show resolved
Hide resolved
pkgs/development/python-modules/tensorflow-tensorboard/default.nix
Outdated
Show resolved
Hide resolved
pkgs/development/python-modules/tensorflow-tensorboard/default.nix
Outdated
Show resolved
Hide resolved
b7081cf to
63dbd95
Compare
|
This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch). Result of 3 packages marked as broken and skipped:
1 package failed to build and are new build failure:
|
tensorflow-probability 0.8 was broken and marked as such (in NixOS#108977) because of a dependency on dm-tree, which seems not to have been available. Since dm-tree is now available in nixpkgs (NixOS#152971), tensorflow-probability is easy to fix and to upgrade.
tensorboard is currently not compatible with Python 3.10, but will be in the next release (tensorflow/tensorboard#5478).
The tests in this version of arviz require an older version of TensorFlow Probability than the one packaged in this PR. This also fixes a few missing dependencies.
This version of dm-sonnet depends on an older TensorFlow version than currently packaged.
Several dependencies are missing and finally, this version requires the theano-pymc3 Python package, which is currently not packaged.
|
Since the merging of #154708, building patchPhase = ''
sed -i "s#typing_extensions>=3.7.4.3,<4#typing_extensions>=3.7.4.3#" requirements.txt
'';makes it build (and pass the activated tests) perfectly fine, but it's probably out of scope for this PR, so I'll mark |
63dbd95 to
10752f9
Compare
No, this PR rebuilds under 10 packages which means it goes to master.
If the fix is as simple as that and you only need to commit it, it is a waste of time to mark it broken now and unmark it later and then fix it. We can also throw that into this PR. Also you want to to use postPatch to not break patches and substituteInPlace because it logs if there is no match. postPhase = ''
substituteInPlace requirements.txt \
--replace- "typing_extensions>=3.7.4.3,<4" "typing_extensions>=3.7.4.3"
''; |
arviz v0.11.4 has, according to its requirements.txt, a dependency on typing-extensions < 4. Currently, only typing-extensions v.4.0.1 are available in nixpkgs, while the above version constraint seems unnecessary, see this arviz PR: https://github.com/arviz-devs/arviz/pull/1948/files. This also activates tests that use zarr and to which changes are made in above PR. I thought those changes might be related to unconstraining the typing-extensions version, but looks like they are not.
10752f9 to
ecc46f1
Compare
|
Thanks for the helpful comments! I am now patching |
Motivation for this change
python3Packages.tensorflow-probabilitywas outdated and marked as broken because of an unpackaged dependency (python3Packages.dm-tree).dm-treeis now packaged (#152971), so I updatedtensorflow-probabilityto the most current version.Several
python3Packagesdepend ontensorflow-probability, namelydm-sonnet,arviz, andpymc3and fixingtensorflow-probabilitythus potentially "unbreaks" them. Turns out thatarviztests require an older version oftensorflow-probability,pymc3now is broken for a different reason (missing dependencies),dm-sonnetis broken for a different reason (requires an oldertensorflowversion than the one currently packaged).So I disabled the
arviztests requiringtensorflow-probabilityand markedpymc3anddm-sonnetas broken.Furthermore,
tensorflow-tensorboardis a dependency oftensorflow-probability, but is currently incompatible with Python 3.10. I thus disabledtensorflow-tensorboardfor Python 3.10.I also took the liberty to add the
numba-related tests to the list of tests run forarviz.Finally, unfortunately
tensorflow-probabilityis maintainerless. I would love to get engaged and maintain it, but I feel I don't have the necessary Nix skills quite yet to do / review more difficult changes , especially with regards to the Bazel tooling or the hacking likely required to run the unit tests.This is my first PR here, so please let me know in case I am breaking any protocols or how to improve / do better next time.
Things done
sandbox = trueset innix.conf? (See Nix manual)nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/)nixos/doc/manual/md-to-db.shto update generated release notes