Commit Graph

2158 Commits

Author SHA1 Message Date
dotlambda
0b59eab01f python3Packages.buildPythonPackage: default to __structuredAttrs = true (#543976) 2026-08-18 12:24:00 -07:00
dotlambda
b59a36d874 python3Packages.pythonMetadataCheckHook: improve (#546373) 2026-08-18 12:06:37 -07:00
Robert Schütz
9d99444486 python3Packages.buildPythonPackage: default to __structuredAttrs = true 2026-08-18 12:06:07 -07:00
Yueh-Shun Li
d0461e5ba7 python3Packages.unittestCheckHook: make discover optional (#550521) 2026-08-17 16:06:53 +00:00
nixpkgs-ci[bot]
b50ee340e0 Merge staging-next into staging 2026-08-14 00:23:05 +00:00
Martin Weinelt
937cdf1063 python311: 3.11.15 -> 3.11.16
https://docs.python.org/release/3.11.16/whatsnew/changelog.html
2026-08-13 15:17:56 +02:00
Martin Weinelt
688b25aceb python312: 3.12.13 -> 3.12.14
https://docs.python.org/release/3.12.14/whatsnew/changelog.html
2026-08-13 15:05:30 +02:00
Stefan Frijters
cc022802b4 python3: enable strictDeps 2026-08-12 20:34:32 +02:00
nixpkgs-ci[bot]
adf7cc8a0b Merge master into staging-next 2026-08-09 00:16:06 +00:00
Sigmanificient
9f90bb0e19 python3Packages.unittestCheckHook: make discover optional 2026-08-08 17:49:17 +02:00
R. Ryantm
a8e87d90d5 pythonDocs.html.python314: 3.14.6 -> 3.14.7 2026-08-08 15:10:44 +00:00
Martin Weinelt
f392f19a94 python313: 3.13.14 -> 3.13.15
https://docs.python.org/release/3.13.15/whatsnew/changelog.html
2026-08-05 18:30:56 +02:00
Martin Weinelt
0ef9e3a240 python314: 3.14.6 -> 3.14.7
https://docs.python.org/release/3.14.7/whatsnew/changelog.html
2026-08-05 18:30:55 +02:00
K900
2f4c2d4476 Merge remote-tracking branch 'origin/staging-next' into staging 2026-08-05 15:42:09 +03:00
Gaétan Lepage
3ca8e3cc3d pkgs/development: fix typos (#549385) 2026-08-05 08:57:03 +00:00
nixpkgs-ci[bot]
c93318c361 Merge staging-next into staging 2026-08-05 00:31:35 +00:00
Martin Weinelt
38464ddcc2 python315: 3.15.0b4 -> 3.15.0rc1
https://docs.python.org/3.15/whatsnew/changelog.html#python-3-15-0rc1
2026-08-04 23:12:45 +02:00
Ben Siraphob
f82dc8ebe9 pkgs/development: fix typos
Assisted-by: Claude Code (claude-opus-5)
2026-08-02 15:56:57 -07:00
nixpkgs-ci[bot]
4758201b3d Merge staging-next into staging 2026-07-28 18:30:07 +00:00
Eman Resu
ec07ae88e0 buildPythonPackage: only override bootstrap hooks once 2026-07-28 13:49:18 -04:00
Robert Schütz
6612bf03f4 python3Packages.pythonMetadataCheckHook: skip only version comparison for unstable version
This way we still compare the pname to the name in METADATA.
2026-07-27 14:10:08 -07:00
Robert Schütz
b40c514e9a python3Packages.pythonMetadataCheckHook: rewrite comparison in Python 2026-07-27 14:10:07 -07:00
Robert Schütz
d3731cb537 python3Packages.pythonMetadataCheckHook: improve error message for mismatched pname 2026-07-27 13:47:57 -07:00
Peder Bergebakken Sundt
85141fe0ee python3Packages.pythonMetadataCheckHook: fix typo 2026-07-27 16:48:01 +02:00
Peder Bergebakken Sundt
fbc1858e72 python3Packages.pythonMetadataCheckHook: avoid leaking internal variables 2026-07-27 16:47:49 +02:00
Eman Resu
5c483d4767 various: partially apply prefix/suffix/infix checks (#543869) 2026-07-26 21:41:24 +00:00
Eman Resu
ac2d0c5710 python3,python2: partially apply hasSuffix 2026-07-20 10:30:08 -04:00
K900
8a4bc4231f Merge remote-tracking branch 'origin/master' into staging-next 2026-07-18 20:16:46 +03:00
Martin Weinelt
ba6feaa09b python315: 3.15.0b4 -> 3.15.0b5
https://docs.python.org/3.15/whatsnew/changelog.html#python-3-15-0-beta-4
2026-07-18 16:21:15 +02:00
K900
1cb2e8437a Merge remote-tracking branch 'origin/master' into staging-next 2026-07-15 21:31:19 +03:00
K900
45ae10c84d Merge remote-tracking branch 'origin/master' into staging-next 2026-07-15 10:52:37 +03:00
Emily
1eaa3c57cb python3: drop x86_64-darwin mention in comment 2026-07-15 03:58:17 +01:00
Emily
fdb820602b treewide: drop simple x86_64-darwin mentions
To reproduce:

    $ nix run nixpkgs/3b32825de172d0bc85664f495edb096b10862524#ast-grep \
        -- scan --update-all --inline-rules '
          id: nix-x86_64-darwin
          language: nix
          rule:
            any:
              - pattern: "\"x86_64-darwin\""
                kind: list_expression > string_expression
              - pattern:
                  context: "{ \"x86_64-darwin\" = $EXPR; }"
                  selector: binding
              - pattern:
                  context: "{ x86_64-darwin = $EXPR; }"
                  selector: binding
          fix:
            template: ""
        ' pkgs
    $ nix run nixpkgs/3b32825de172d0bc85664f495edb096b10862524#ast-grep \
        -- scan --update-all --inline-rules '
          id: json-first-x86_64-darwin
          language: json
          rule:
            kind: object > pair:nth-child(1)
            has:
              pattern: "\"x86_64-darwin\""
              field: key
          fix:
            template: ""
            expandEnd: { regex: "," }
        ' pkgs
    $ nix run nixpkgs/3b32825de172d0bc85664f495edb096b10862524#ast-grep \
        -- scan --update-all --inline-rules '
          id: json-x86_64-darwin
          language: json
          rule:
            kind: object > pair
            has:
              pattern: "\"x86_64-darwin\""
              field: key
          fix:
            template: ""
            expandStart: { regex: "," }
        ' pkgs
    $ git restore pkgs/by-name/om/omnix/package.nix
    $ git diff --name-only -z \
        | nix shell nixpkgs/3b32825de172d0bc85664f495edb096b10862524#gnused \
            -c xargs -0 sed -i '/^$/N; /^\n\? \+$/d'
    $ treefmt
2026-07-15 03:58:16 +01:00
Robert Schütz
006c7936a2 python3Packages.pythonMetadataCheckHook: init 2026-07-08 19:20:37 -07:00
Martin Weinelt
5a6a726fc2 Merge remote-tracking branch 'origin/master' into staging-next 2026-07-04 20:07:10 +02:00
Robert Schütz
ff19be7fd1 python3Packages.pyprojectVersionPatchHook: init 2026-07-04 10:45:05 -07:00
nixpkgs-ci[bot]
b6a05ebc0d Merge staging-next into staging 2026-06-24 18:37:36 +00:00
Martin Weinelt
4361d1c65b python315: 3.15.0b2 -> 3.15.0b3
https://docs.python.org/3.15/whatsnew/changelog.html#python-3-15-0-beta-3
2026-06-24 15:00:18 +02:00
nixpkgs-ci[bot]
09352943f8 Merge staging-next into staging 2026-06-14 00:49:40 +00:00
Arne Keller
9e6dbeec61 pypy3: fix mainProgram attribute for nix run (#530787) 2026-06-13 21:37:34 +00:00
Nicolas Benes
f510bda3df pythonDocs: switch to stable URL, drop pdf-a4
The previous URL did not contain the patch version and therefore there
were hash changes to the fetched files. Switch to a more stable URL.
The pdf-a4 file format seems to be generated only for the .0 patch
release, so it is missing for later releases.
2026-06-13 16:52:56 +02:00
XlNTARO
47e5bac99a pypy3: fix mainProgram attribute for nix run 2026-06-11 19:50:12 +03:00
Martin Weinelt
584d8c9e35 python313: 3.13.13 -> 3.13.14
https://docs.python.org/release/3.13.13/whatsnew/changelog.html

Fixes: CVE-2026-4224, CVE-2026-3644, CVE-2026-2297
2026-06-11 17:53:51 +02:00
Martin Weinelt
2c67d1303c python314: 3.14.5 -> 3.14.6
https://docs.python.org/release/3.14.6/whatsnew/changelog.html
2026-06-11 17:53:22 +02:00
nixpkgs-ci[bot]
e3a2cd0596 Merge staging-next into staging 2026-06-11 13:19:31 +00:00
Emre Sahin
046a0c6211 python3.tests.condaExamplePackage: fix eval warning for buildInputs 2026-06-11 12:07:31 +02:00
nixpkgs-ci[bot]
566982b70a Merge staging-next into staging 2026-06-06 12:29:09 +00:00
nixpkgs-ci[bot]
368e7de99b Merge staging-next into staging 2026-06-05 00:47:55 +00:00
Martin Weinelt
2f6fa7d7fb pythonDocs: init at 3.14, drop 3.10 (#526551) 2026-06-04 22:40:13 +00:00
Jonas Rembser
fa6a2e8f1f python3: include ABI debug suffix d in executable (fixes FT+debug)
When instantiating an environment with the Python interpreter built
with both free threading (aka. without GIL) and `pydebug`, the value
of `passthru.executable` doesn't match any installed file. This was
noticed when building CI pipelines that require the Python interpreter
built with both debug features and free threading.

The cause is that `executable` was built from `libPrefix`, which only
tracks the `t` suffix from `--without-gil` and not the `d` suffix from
`--with-pydebug`. `libPrefix` doubles as the stdlib install directory,
and cpython deliberately shares that directory between debug and
non-debug builds of a given version, so the `d` is intentionally
absent there.

This slipped through because cpython only ever installs a
`python$VERSION -> python$LDVERSION` symlink (e.g. `python3.13 ->
python3.13d`). For debug-only builds the old code happened to ask for
`python3.13`, which is that symlink, so it worked by accident. For
FT+debug, `libPrefix` is `python3.13t`, but cpython installs no such
file; only `python3.13` (symlink) and `python3.13td` (binary).

Fix: append `d` to `executable` (and to the `cp<ver>` wheel ABI tag in
`pythonABITags`) when `enableDebug` is true.

Reproducer for the problem as a bash script:

```bash
set -euo pipefail

nixpkgs="${1:-<nixpkgs>}" # Either custom path if provided, or just <nixpkgs>

read -r -d '' expr <<EOF || true
let
  pkgs = import ${nixpkgs} { };
  py = pkgs.python313FreeThreading.override {
    enableDebug = true;
    self = py;
    pythonAttr = "python313FreeThreading";
  };
in py
EOF

executable=$(nix-instantiate --eval --json --expr "($expr).executable" | tr -d '"')
echo "passthru.executable = ${executable}"

out=$(nix-build --no-out-link --expr "$expr")
echo "store path:           ${out}"

if [[ -e "${out}/bin/${executable}" ]]; then
  echo "result:               OK (binary exists)"
  exit 0
fi

echo "result:               FAIL (${out}/bin/${executable} not found)"
echo "actually installed:"
ls "${out}/bin/" | grep '^python3\.' | sed 's/^/  /'
exit 1
```
2026-06-03 13:22:42 +02:00