Change:
Steps to reproduce the behavior: awscli2 New to NixOS, I ran and . Removing and reinstalling the package did not fix the issue. Please run and paste the result. Add a :+1: [reaction] to [issues you find important]. [reaction]: [issues you find important]:
Hello Thank you for reporting the issue. Indeed, I have a PR to upgrade awscli2 to 2.15.29 whose the build is failing now after rebasing it with master: Looks like the issue could be caused by this python-updates PR merged into staging branch: (and then merged into master yesterday: ) Looks like could be the cause. I will take a look.
Indeed, used to check if the installed dependencies meets constraints does only supports simple version numbers (X.Y.Z). And version does not parse and the script fails ( is also not semver compliant, and using ).
I am also experiencing the same issue
Looks like upstream may be trying to avoid this version too for now, they made recently pinning it to . Overriding the package to use (and adding a substitution for 's version string and some test weirdness) seems to let it build -- maybe just worth doing that in your upgrade PR?
Thanks for your help. Indeed, looks like pinning python-dateutil to 2.8.2 is a resolution: Yes, I the fix in my upgrade PR.
This issue has been mentioned on NixOS Discourse. There might be relevant details there:
This issue has been mentioned on NixOS Discourse. There might be relevant details there:
This issue has been mentioned on NixOS Discourse. There might be relevant details there:
The build has just passed on Hydra:
Its arrived in . I think this can be closed now
Yes we can close now :)
Awesome, thank you for your help !

Discussion:
, groff , less , fetchFromGitHub <ins> , fetchpatch </ins> , installShellFiles , nix-update-script , testers

"test_check_link_response_only" # fails on hydra https://hydra.nixos.org/build/242624087/nixlog/1 ]; }); <ins> python-dateutil = prev.python-dateutil.overridePythonAttrs (prev: { version = "2.8.2"; pyproject = null; src = prev.src.override { version = "2.8.2"; hash = "sha256-ASPKzBYnrhnd88J6XeW9Z+5FhvvdZEDZdI+Ku0g9PoY="; }; patches = [ # https://github.com/dateutil/dateutil/pull/1285 (fetchpatch { url = "https://github.com/dateutil/dateutil/commit/f2293200747fb03d56c6c5997bfebeabe703576f.patch"; relative = "src"; hash = "sha256-BVEFGV/WGUz9H/8q+l62jnyN9VDnoSR71DdL+LIkb0o="; }) ]; postPatch = null; }); </ins> ruamel-yaml = prev.ruamel-yaml.overridePythonAttrs (prev: { src = prev.src.override { version = "0.17.21";

in with py.pkgs; buildPythonApplication rec { pname = "awscli2"; <del> version = "2.15.15"; # N.B: if you change this, check if overrides are still up-to-date </del> <ins> version = "2.15.31"; # N.B: if you change this, check if overrides are still up-to-date </ins> pyproject = true; src = fetchFromGitHub { owner = "aws"; repo = "aws-cli"; rev = "refs/tags/${version}"; <del> hash = "sha256-hJuJkCiKgSxfPVgS5II7BwpyQhjaRE2Ct3ZJQq6xWgg="; </del> <ins> hash = "sha256-7qeB3NCYQi7Mke/ZCGe8QUS5qy26btpGjhY/FMNhdkE="; </ins> }; postPatch = '' substituteInPlace pyproject.toml  <del> --replace 'cryptography>=3.3.2,<40.0.2' 'cryptography>=3.3.2'  --replace 'flit_core>=3.7.1,<3.8.1' 'flit_core>=3.7.1'  --replace 'awscrt>=0.19.18,<=0.19.19' 'awscrt>=0.19.18'  --replace 'docutils>=0.10,<0.20' 'docutils>=0.10'  --replace 'prompt-toolkit>=3.0.24,<3.0.39' 'prompt-toolkit>=3.0.24' </del> <ins> --replace-fail 'awscrt>=0.19.18,<=0.19.19' 'awscrt>=0.19.18'  --replace-fail 'cryptography>=3.3.2,<40.0.2' 'cryptography>=3.3.2'  --replace-fail 'distro>=1.5.0,<1.9.0' 'distro>=1.5.0'  --replace-fail 'docutils>=0.10,<0.20' 'docutils>=0.10'  --replace-fail 'prompt-toolkit>=3.0.24,<3.0.39' 'prompt-toolkit>=3.0.24' </ins> substituteInPlace requirements-base.txt  <del> --replace "wheel==0.38.4" "wheel>=0.38.4"  --replace "flit_core==3.8.0" "flit_core>=3.8.0" </del> <ins> --replace-fail "wheel==0.38.4" "wheel>=0.38.4" </ins> # Upstream needs pip to build and install dependencies and validates this # with a configure script, but we don't as we provide all of the packages

sed -i '/pip>=/d' requirements/bootstrap.txt ''; <del> nativeBuildInputs = [ </del> <ins> build-system = [ </ins> installShellFiles flit-core ]; <del> propagatedBuildInputs = [ </del> <ins> dependencies = [ </ins> awscrt bcdoc botocore

]; disabledTestPaths = [ <ins> "tests/dependencies" "tests/unit/botocore" </ins> # Integration tests require networking "tests/integration"