Commit Graph

1225 Commits

Author SHA1 Message Date
Martin Weinelt
51fcbf5bb7 Merge remote-tracking branch 'origin/master' into staging-next 2022-10-16 00:18:40 +02:00
Artturin
c86122e5bd pythonInterpreters: get self from __splicedPackages
BEFORE:

the python derivation did not contain .nativeDrv and .crossDrv because
it was not from the __splicedPackages set

the python used in mk-python-derivation.nix was for host

```
nix-repl> pkgsCross.aarch64-multiplatform.python3Packages.xpybutil.nativeBuildInputs
[ «derivation /nix/store/bhz39ds4v02hn6x4py4mzjyilw4a589h-python3-aarch64-unknown-linux-gnu-3.10.7.drv» «derivation /nix/store/v880cnh4ml7czmivfbk3cdh93hz9yvbn-hook.drv» «derivation /nix/store/f243ab7wv92gqsmc9h7gr0qcnj0xcgdb-hook.drv» «derivation /nix/store/880lf8895bzn8d94lrr2y7ilgkxq0lc4-python-remove-tests-dir-hook.drv» «derivation /nix/store/fzjnhawfs1wpw58hcd1vxd9y750dc08y-python-remove-bin-bytecode-hook.drv» «derivation /nix/store/n8l59iparx98yfw8g5ydqmzmk3fdic75-setuptools-setup-hook.drv» «deri→
```

AFTER:

the python derivation does contain .nativeDrv and .crossDrv because
it is from the __splicedPackages set

those 2 are what makes nativeBuildInputs and buildInputs function
properly

the python used in mk-python-derivation.nix is for build

```
nix-repl> pkgsCross.aarch64-multiplatform.python3Packages.xpybutil.nativeBuildInputs
[ «derivation /nix/store/hvb9yxgv1133cfhxxd869sibldvv2vdx-python3-3.10.7.drv» «derivation /nix/store/v880cnh4ml7czmivfbk3cdh93hz9yvbn-hook.drv» «derivation /nix/store/f243ab7wv92gqsmc9h7gr0qcnj0xcgdb-hook.drv» «derivation /nix/store/880lf8895bzn8d94lrr2y7ilgkxq0lc4-python-remove-tests-dir-hook.drv» «derivation /nix/store/fzjnhawfs1wpw58hcd1vxd9y750dc08y-python-remove-bin-bytecode-hook.drv» «derivation /nix/store/n8l59iparx98yfw8g5ydqmzmk3fdic75-setuptools-setup-hook.drv» «derivation /nix/store/7vyhynla→
```
2022-10-15 09:35:29 +02:00
Artturin
19d04b5f47 pythonInterpreters: don't use with pkgs 2022-10-15 09:35:29 +02:00
github-actions[bot]
92e8a46d79
Merge staging-next into staging 2022-10-15 06:08:33 +00:00
github-actions[bot]
4f07e7f326
Merge master into staging-next 2022-10-15 06:07:54 +00:00
Martin Weinelt
87761da934
python37: 3.7.14 -> 3.7.15
https://docs.python.org/release/3.7.15/whatsnew/changelog.html
2022-10-14 22:50:59 +02:00
Martin Weinelt
997b80d632
python39: 3.9.14 -> 3.9.15
http://docs.python.org/release/3.9.15/whatsnew/changelog.html
2022-10-14 19:03:55 +02:00
Martin Weinelt
a88ce6dc0b
python310: 3.10.7 -> 3.10.8
https://docs.python.org/release/3.10.8/whatsnew/changelog.html
2022-10-14 19:03:50 +02:00
Martin Weinelt
8444183652
python38: 3.8.14 -> 3.8.15
http://docs.python.org/release/3.8.15/whatsnew/changelog.html
2022-10-14 18:13:25 +02:00
Vladimír Čunát
00a757ed3f
Merge branch 'master' into staging 2022-10-13 08:27:55 +02:00
Alyssa Ross
3dae05bb91 update-python-libraries: enable nix command
Since the Nix command used is an implementation detail of the script,
it's the script that will have to be updated if the command changes,
it's the script that should be opting into this, rather than making
the user do it globally.
2022-10-12 11:38:55 +00:00
Alyssa Ross
6425011efe update-python-libraries: remove old Nix fallback
Since c0972c16dc ("update-python-libraries: add missing dependency nix"),
Nix will be provided as a dependency, so we know we'll always be using
a modern version and no longer need the fallback.
2022-10-12 11:38:55 +00:00
Pascal Bach
17c13ef886 rustpython: unstable-2021-12-09 -> unstable-2022-10-11 2022-10-11 22:59:44 +02:00
Artturin
7e49471316 treewide: optional -> optionals where the argument is a list
the argument to optional should not be list
2022-10-10 15:40:21 +03:00
Artturin
f4ea1208ec treewide: *Flags convert to list from str
*Flags implies a list

slightly relevant:
> stdenv: start deprecating non-list configureFlags https://github.com/NixOS/nixpkgs/pull/173172

the makeInstalledTests function in `nixos/tests/installed-tests/default.nix` isn't available outside of nixpkgs so
it's not a breaking change
2022-10-10 15:30:59 +03:00
Martin Weinelt
829f89581a
Merge pull request #181764 from mweinelt/glibc-without-libcrypt 2022-10-09 21:07:26 +02:00
github-actions[bot]
3b37795067
Merge staging-next into staging 2022-10-09 18:02:10 +00:00
Franz Pletz
194d852242
cpython: fix build with libxcrypt 2022-10-09 18:09:39 +02:00
Ryan Mulligan
c0972c16dc update-python-libraries: add missing dependency nix
nix is needed for nix-prefetch-url
2022-10-09 16:06:59 +00:00
Frederik Rietdijk
69ea4c8696 pythonPackages.buildPython*: also output dist when using wheel
Typically the actual wheel will be unchanged, but it is possible we use
the relax deps hook modifying the wheel.
2022-10-04 15:34:46 +02:00
Frederik Rietdijk
de5951f3c2 pythonPackages.pythonRelaxDepsHook: cleanup unpacked folder
or it will end up in the dist output.
2022-10-04 15:34:46 +02:00
John Ericson
0427e5eca8
Merge pull request #193528 from cidkidnix/android-cpyth
android: cpython: fix stdenv.cc.cc.libllvm
2022-09-29 10:42:44 -04:00
cidkidnix
94d9904072 cpython: fix stdenv.cc.cc.libllvm 2022-09-29 09:05:13 -05:00
Martin Weinelt
68c0ca4416 Merge remote-tracking branch 'origin/master' into staging-next 2022-09-25 21:36:31 +02:00
K900
641f6dd3d1 pythonDocs: fix eval 2022-09-24 10:21:54 +03:00
Artturi
c326b7e088
Merge pull request #192624 from FRidh/hooks-cross 2022-09-23 22:41:36 +03:00
Frederik Rietdijk
7a41be7b2a Python hooks: use spliced packages in hooks
This fixes issues when cross-compiling.
2022-09-23 22:19:52 +03:00
Sandro Jäckel
dfc6e194bc
pythonDocs: bring back pname+version, allow script to be executed from anywhere 2022-09-23 18:43:50 +02:00
Spencer Baugh
52117cce92 pythonDocs: 3.7 -> 3.10
Also include texinfo docs for Python 3 (they aren't generated for
Python 2)

A few minor fixes had to be made to generate.sh as well.
2022-09-23 15:18:59 +02:00
Frederik Rietdijk
86ab83260f Revert "Revert "buildPython*: store dist (wheel/sdist) in dist output""
Most packages were fixed on python-unstable.

This reverts commit 0a4898c21a.
2022-09-20 09:49:55 +02:00
Frederik Rietdijk
8895944c57 Revert "Revert "buildPython*: wrap setuptools in hook for catching conflicts""
Most packages were fixed up on python-unstable branch.

This reverts commit 3ff2d9362c.
2022-09-20 09:49:27 +02:00
Frederik Rietdijk
3ff2d9362c Revert "buildPython*: wrap setuptools in hook for catching conflicts"
Revert for now and fix on python-unstable branch.

This reverts commit 13bb0f49f7.
2022-09-19 10:01:25 +02:00
Frederik Rietdijk
0a4898c21a Revert "buildPython*: store dist (wheel/sdist) in dist output"
Revert for now and fix on python-unstable branch.

This reverts commit adbc59c9d3.
2022-09-19 10:00:42 +02:00
github-actions[bot]
86dee601b1
Merge staging-next into staging 2022-09-13 18:01:48 +00:00
Frederik Rietdijk
13bb0f49f7 buildPython*: wrap setuptools in hook for catching conflicts
By default buildPython* runs a hook for detecting conflicting packages.
This hook needs pkg_resources which is part of setuptools.

Before this commit, setuptools was simply added to the build. This meant
that when setuptools was forgotten to be added to the build, the build
and installation would still succeed because of this package from the
hook. During runtime (and cross-compilation) one would notice the
missing package.
2022-09-13 18:48:08 +02:00
Martin Weinelt
1a1cd4b6cd python311: 3.11.0rc1 -> 3.11.0rc2
https://docs.python.org/3.11/whatsnew/changelog.html#python-3-11-0-release-candidate-2
2022-09-13 18:19:34 +02:00
Frederik Rietdijk
adbc59c9d3 buildPython*: store dist (wheel/sdist) in dist output
Store the intermediate artifacts. In time, we should build, install and
test in separate derivations as that reduces circular dependencies,
avoids rebuilds when fixing tests, and makes it possible to use the
wheels for creating say virtualenv's.
2022-09-12 22:15:39 +02:00
github-actions[bot]
5de711e49b
Merge staging-next into staging 2022-09-08 18:01:54 +00:00
github-actions[bot]
60b28ae00d
Merge master into staging-next 2022-09-08 18:01:13 +00:00
Martin Weinelt
d1633b506b
python38: 3.8.13 -> 3.8.14
https://pythoninsider.blogspot.com/2022/09/python-releases-3107-3914-3814-and-3714.html

Fixes: CVE-2020-10735
2022-09-08 00:48:27 +02:00
Martin Weinelt
0f91504e47
python37: 3.7.13 -> 3.7.14
https://pythoninsider.blogspot.com/2022/09/python-releases-3107-3914-3814-and-3714.html

Fixes: CVE-2020-10735
2022-09-08 00:47:59 +02:00
Martin Weinelt
34182bc865
python39: 3.9.13 -> 3.9.14
https://docs.python.org/3.9/whatsnew/changelog.html#python-3-9-14-final
https://pythoninsider.blogspot.com/2022/09/python-releases-3107-3914-3814-and-3714.html

Fixes: CVE-2020-10735
2022-09-08 00:32:19 +02:00
Martin Weinelt
6b6a8fe7c0
python310: 3.10.6 -> 3.10.7
https://docs.python.org/3.10/whatsnew/changelog.html\#python-3-10-7-final
https://pythoninsider.blogspot.com/2022/09/python-releases-3107-3914-3814-and-3714.html

Fixes: CVE-2020-10735
2022-09-08 00:30:12 +02:00
github-actions[bot]
5aa24ca693
Merge staging-next into staging 2022-08-25 00:03:34 +00:00
Martin Weinelt
19f4e14dcf
python3Packages.sphinxHook: run install phase in predist
Run the installSphinxPhase earlier, so install errors are caught early,
before long and expensive test are started.
2022-08-24 23:02:27 +02:00
Martin Weinelt
caf2d010ed
python3Packages.sphinxHook: Rename loop var in source root detection
The loop variable to find the documentation source root was
unnecessarily short, rename it to something meaningful.
2022-08-24 23:02:26 +02:00
Martin Weinelt
8a26deba06
doc/python: integrate sphinxHook docs
Improve the documentation by moving it from the hook script into the
Python section in the manual and adding code examples.
2022-08-24 23:02:24 +02:00
Martin Weinelt
1ee5fcaf0c
python3Packages.sphinxHook: Add support for multiple builders
Removes the up until now unused option to specify a `sphinxOutdir` in
favor of allowing to specify multiple builders, which is for example
useful for generating both documentation and manpages using the hook.

Since the output path cannot be determined from within the package we
automatically generate it and add a diversion for manpages, so they land
in the correct output and path.
2022-08-24 23:00:41 +02:00
ajs124
8dfc998207 python3: pin to openssl_1_1 2022-08-17 20:16:44 +02:00
Winter
e8fbb38a51 pythonPackages.unittestCheckHook: init 2022-08-13 14:09:43 -04:00
Sergei Trofimovich
3ceb8a59a6
Merge pull request #185537 from trofi/decouple-strip-and-separate-debug
setup-hooks/separate-debug-info.sh: don't inhibit strip hook
2022-08-11 08:53:24 +01:00
github-actions[bot]
5ad6c8071e
Merge master into staging-next 2022-08-09 18:01:26 +00:00
github-actions[bot]
194ba77ae3
Merge master into staging-next 2022-08-09 00:02:24 +00:00
Martin Weinelt
7363ab9ebb
python311: 3.11.0b5 -> 3.11.0rc1
https://docs.python.org/3.11/whatsnew/changelog.html#python-3-11-0-beta-5
2022-08-08 23:55:10 +02:00
Martin Weinelt
f1c0f0554a
Merge pull request #183037 from mweinelt/python3.11.0b5 2022-08-08 23:52:28 +02:00
Sergei Trofimovich
b3b672d5a1 setup-hooks/separate-debug-info.sh: don't inhibit strip hook
Before the change separate-debug-info.sh did the stripping itself.
This scheme has a few problems:
1. Stripping happens only on ELF files. *.a and *.o files are skipped.
   Derivations have to do it manually. Usually incorrectly
   as they don't run $RANLIB (true for `glibc` and `musl`).
2. Stripping happens on all paths. Ideally only `stripDebugList` paths
   should be considered.
3. Host strip is called on Target files.

This change offloads stripping logic to strip hook. This strips more
files for `glibc` and `musl`. Now we can remove most $STRIP calls
from individual derivations.

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2022-08-07 12:49:37 +01:00
github-actions[bot]
4bbe802309
Merge staging-next into staging 2022-08-06 12:01:56 +00:00
Frederik Rietdijk
2270b66d75 pythonPackagesExtensions: override all Python package sets at once
Python package sets can be overridden by overriding an interpreter
and passing in `packageOverrides = self: super: {...};`. This is fine
in case you need a single interpreter, however, it does not help you
when you want to override all sets.

With this change it is possible to override all sets at once by
appending a list of "extensions" to `pythonPackagesExtensions`.

From reading the implementation you might wonder why a list is used, and
not
`lib.composeExtensions`? The reason is the latter requires knowledge of
the library function. This approach should be easier for most users
as it is similar to how we append to lists of e.g. inputs or patches
when overriding a derivation.
2022-08-06 09:39:39 +02:00
Martin Weinelt
b4ba441d7c
python310: 3.10.5 -> 3.10.6
https://docs.python.org/3.10/whatsnew/changelog.html#python-3-10-6-final
https://pythoninsider.blogspot.com/2022/08/python-3106-is-available.html
https://www.python.org/downloads/release/python-3106/
2022-08-03 14:15:27 +02:00
Martin Weinelt
afda166636
python311: 3.11.0b4 -> 3.11.0b5
https://pythoninsider.blogspot.com/2022/07/python-3110b5-is-now-available.html
https://www.python.org/downloads/release/python-3110b5/
2022-07-27 02:11:53 +02:00
Martin Weinelt
c7dbac1666 python3Packages.sphinxHook: run post install
This allows importing and inspecting the build result, which is required
for the psycopg (3.x) package.
2022-07-21 22:35:25 +02:00
Martin Weinelt
802ec5de4b
python311: 3.11.0b3 -> 3.11.0b4
https://www.python.org/downloads/release/python-3110b4/
https://pythoninsider.blogspot.com/2022/07/python-3110b4-is-now-available.html
2022-07-12 12:50:27 +02:00
Martin Weinelt
62b05d9742 Merge remote-tracking branch 'origin/master' into staging-next 2022-06-27 23:50:37 +02:00
Matthieu Coudron
de50d08d73 buildPythonPackage: document why we always propagate python
python applications should not propagate python in PATH but we do it
nevertheless to avoid rebuilds see https://github.com/NixOS/nixpkgs/issues/170887
for an explanation.
2022-06-27 21:02:27 +02:00
github-actions[bot]
5cbc2787df
Merge staging-next into staging 2022-06-19 06:01:44 +00:00
github-actions[bot]
05f221fbe3
Merge master into staging-next 2022-06-19 06:01:10 +00:00
Adam Joseph
b21933faab cpython: have powerpc64le use "ppc64le" to follow PEP600
The PEP600 standard gives Python's naming scheme for various
architectures; it follows the convention which was in use by Fedora in
2014.  According to PEP600, the architecture name for Power PC is
`ppc64le`, not `powerpc64le`.  This is also how python3 declares its
"supported wheels" under Debian on PowerPC, as checked with `pip debug
--verbose`

  $ pip debug --verbose | grep powerpc
  $ pip debug --verbose | grep ppc | head
  cp39-cp39-manylinux_2_31_ppc64le
  cp39-cp39-manylinux_2_30_ppc64le
  cp39-cp39-manylinux_2_29_ppc64le
  cp39-cp39-manylinux_2_28_ppc64le
  cp39-cp39-manylinux_2_27_ppc64le
  cp39-cp39-manylinux_2_26_ppc64le
  cp39-cp39-manylinux_2_25_ppc64le
  cp39-cp39-manylinux_2_24_ppc64le
  cp39-cp39-manylinux_2_23_ppc64le

Let's adjust the `pythonHostPlatform` expression in
cpython/default.nix to pass the architecture using the naming scheme
Python expects.

Verified on a Raptor Computing Systems Talos II.  Without this commit,
PyQt5 fails to build, failing with "unsupported wheel".  With this
commit, it builds successfully.
2022-06-19 07:46:29 +02:00
github-actions[bot]
46b42d9734
Merge staging-next into staging 2022-06-16 23:27:58 +00:00
github-actions[bot]
ccdd0f7af6
Merge master into staging-next 2022-06-16 23:27:22 +00:00
Artturin
843b988680 python3: fix wrong platform libs when cross-compiling
see https://github.com/NixOS/nixpkgs/pull/169475#issuecomment-1129517328

patch by adisbladis

Co-authored-by: adisbladis <adisbladis@gmail.com>
2022-06-16 16:49:18 +03:00
Thiago Kenji Okada
5f51c12a38
Merge pull request #176721 from thiagokokada/pythonRelaxDepsHook-fix
pythonRelaxDepsHook: fix usage in packages with `-` in pname
2022-06-16 10:43:58 +01:00
github-actions[bot]
8c2f449ebc
Merge staging-next into staging 2022-06-15 00:02:51 +00:00
github-actions[bot]
4e74812c3a
Merge master into staging-next 2022-06-15 00:02:12 +00:00
Martin Weinelt
0b63d22aab
Merge pull request #173998 from mweinelt/cpython311 2022-06-15 01:28:11 +02:00
Martin Weinelt
a5c5302ddd
python311: 3.11.0b1 -> 3.11.0b3
https://www.python.org/downloads/release/python-3110b2/
https://pythoninsider.blogspot.com/2022/05/python-3110b2-is-now-available.html

With updated darwin-libutil.patch provided by Randy Eckenrode.

Co-Authored-By: Randy Eckenrode <randy@largeandhighquality.com>
2022-06-15 01:18:26 +02:00
Martin Weinelt
08615ec689
python310: 3.10.4 -> 3.10.5
https://docs.python.org/release/3.10.5/whatsnew/changelog.html#python-3-10-5-final
2022-06-14 15:39:54 +02:00
Thiago Kenji Okada
15491e727d pythonRelaxDepsHook: correct handles multiple wheels 2022-06-12 11:48:52 +01:00
Thiago Kenji Okada
61223d51de pythonRelaxDepsHook: fix usage in packages with - in pname 2022-06-07 21:24:48 +01:00
Martin Weinelt
f1ac3fa330
python3Minimal: 3.9 -> 3.10 2022-06-06 11:46:06 -07:00
Sandro Jäckel
cca70b7324 python-minimal: don't clean meta.maintainer
Every package should have a maintainer and we should not throw it away if we arleady have one.
Also in reality the maintainer of python3 is also the one of python3-minimal
2022-06-06 09:00:59 +02:00
github-actions[bot]
ebcaa0d01c
Merge master into staging-next 2022-06-01 12:01:27 +00:00
Martin Weinelt
a9377b6919
Merge pull request #164174 from ReplayCoding/fix/python-llvm-pgo 2022-06-01 11:07:54 +02:00
github-actions[bot]
f82caaee74
Merge staging-next into staging 2022-05-26 00:02:58 +00:00
Tobias Mayer
1e447d7898 pkgsStatic.python3: fix build
GCC does not come with a `libgcc_eh.a` for the target platform if
it was built without `--enable-shared`. That flag was removed with
c6dd11ca39, meaning we should no longer
attempt to link against that lib.
2022-05-24 18:03:33 +02:00
Martin Weinelt
736fdef658
Merge pull request #174005 from mweinelt/cpython 2022-05-23 16:44:37 +02:00
Martin Weinelt
85dfb11907
python311: 3.11.0a7 -> 3.11.0b1
https://www.python.org/downloads/release/python-3110b1/
https://blog.python.org/2022/05/python-3110b1-is-now-available.html
2022-05-22 16:14:33 +02:00
Martin Weinelt
761ecd1061
python39: 3.9.12 -> 3.9.13
https://www.python.org/downloads/release/python-3913/
https://blog.python.org/2022/05/python-3913-is-now-available.html
2022-05-22 15:42:31 +02:00
Artturin
6b46fa896e python3Minimal: enable strictDeps
remove unused let binding from the main expr

verified that cross-compiling still works
2022-05-22 16:40:36 +03:00
Artturin
f002ffed9a treewide: enable strictDeps in bootstrap packages 2022-05-22 16:40:26 +03:00
Malo Bourgon
44d5d31d98 Revert "pythonPackages: set mainProgram to pname by default"
It's now the case that `nix run` checks `pname` as well as `name`, so
this is no longer needed. See:
a2473823d7

This reverts commit baf91ea7d9.
2022-05-10 11:51:54 -07:00
github-actions[bot]
ee7e3f30f3
Merge staging-next into staging 2022-05-04 00:02:57 +00:00
Frederik Rietdijk
ab62fad9d5
Merge pull request #136100 from KAction/sphinx-hook
New hook: sphinxHook to build documentation into different formats/outputs
2022-05-03 20:07:37 +02:00
Thiago Kenji Okada
e19019fe32 pythonRelaxDepsHook: init
We have a common pattern here in nixpkgs for Python applications: when a
Python package ships with either a requirements.txt or setup.py file, we
generally end up having to modify its version restriction, otherwise we have
build failures since we package only one specific version of each package
normally.

However, this end up being done in a completely ad-hoc way: some people
use substituteInPlace, some others use sed, others uses patches, etc.
In many cases, the code ends up being buggy, so it may work in one
version and breaks on the next one. We can instead implement one
standard way of doing this, and trying to be a correct as possible.

So this is what this commit does: it implements a new build hook, that
when called will automatically patch the wheel file. This is one of the
most generic ways to patch Python dependencies, and should work in
multiple cases.
2022-04-30 13:19:30 +01:00
Dmitry Bogatov
6b8b02cef7
python3.pkgs.sphinxHook: new package
This hook takes care of building and installing html documentation from Sphinx
sources.
2022-04-29 08:45:38 -04:00
github-actions[bot]
413490ab0d
Merge staging-next into staging 2022-04-26 06:01:45 +00:00
github-actions[bot]
f8c265f433
Merge master into staging-next 2022-04-26 06:01:08 +00:00
Thiago Kenji Okada
d6d8c43d11 pythonInterpreters.graalpython37: remove 2022-04-25 17:53:06 +01:00
Sergei Trofimovich
a649d4f038 python: use whitespace to split possible existing options
Noticed option globbing when tried to enable parallelism by default
locally for most packages by default. python3Packages.yt-dlp failed as:

    python3.9-yt-dlp> /nix/store/5mywvxdjkk1q6srwwwgdkzc37ibla801-python3.9-setuptools-61.2.0/lib/python3.9/site-packages/setuptools/dist.py:516: UserWarning: Normalizing '2022.04.08' to '2022.4.8'
    python3.9-yt-dlp>   warnings.warn(tmpl.format(**locals()))
    python3.9-yt-dlp> invalid command name 'build_lazy_extractors--parallel'

The change adds leading whitespace everywhere where options might
already be present.
2022-04-24 14:28:26 +02:00
Phillip Cloud
52248e4466 python: enable opt-in parallel build_ext builds for setuptools 2022-04-22 18:25:12 +02:00
github-actions[bot]
cbc56d5cc3
Merge staging-next into staging 2022-04-21 18:02:06 +00:00
adisbladis
881ea516cf python3: Whitelist config options when overriding interpreter
In the case of cross compilation we don't want pass through build
inputs from the cross platform, but we do want to pass on config options.
2022-04-21 14:50:28 +02:00
Frederik Rietdijk
ba02fd0434 python3: fix overriding of interpreters, closes #163639
Overriding the interpreters did not work correctly. When overriding
packages would end up twice in the build time closure: one corresponding
to the overridden interpreter and one corresponding to the original
interpreter. The reason is that the override was not applied to the
interpreters in the spliced package sets.
2022-04-21 14:50:28 +02:00
Atemu
7f802c7046 python-wrapper: use makeBinaryWrapper
A "python" made with the wrapper is likely to be used as a shebang. On macOS,
this requires a binary rather than another shebang'd script.
2022-04-20 21:59:47 +02:00
Vladimír Čunát
d5d94127fd
Merge branch 'staging-next' into staging
Minor conflicts; I hope I didn't mess up:
	pkgs/development/tools/misc/binutils/default.nix
	pkgs/games/openjk/default.nix
2022-04-14 09:53:21 +02:00
Martin Weinelt
66beaa9225
cpython: update patches for 3.11a7 on darwin 2022-04-14 01:33:33 +02:00
Martin Weinelt
52843aefea python39: 3.10.3 -> 3.10.4
https://www.python.org/downloads/release/python-3104/
https://docs.python.org/release/3.10.4/whatsnew/changelog.html
2022-04-12 18:27:46 +02:00
Martin Weinelt
0c57648722 python39: 3.9.11 -> 3.9.12
https://www.python.org/downloads/release/python-3912/
https://docs.python.org/release/3.9.12/whatsnew/changelog.html
2022-04-12 18:27:46 +02:00
Martin Weinelt
24ce3fcf7c
python311: 3.11.0a6 -> 3.11.0a7
https://www.python.org/downloads/release/python-3110a7/

https://pythoninsider.blogspot.com/2022/04/the-last-python-311-alpha-3110a7-is.html
2022-04-12 05:14:23 +02:00
Martin Weinelt
bf1914e12a Merge remote-tracking branch 'origin/staging-next' into staging 2022-04-05 04:05:02 +02:00
github-actions[bot]
120925b5cb
Merge master into staging-next 2022-04-05 00:02:06 +00:00
Robert Hensing
200175a701 config.allowAliases: Define as option
This simplifies usages and makes the default value consistent.

In a few cases, the default value was interpreted to be `false`,
but this is useless, because virtually nobody will explicitly
set `allowAliases = true;`.
2022-04-01 11:33:10 +02:00
Nicolas Benes
2f027dff0b python: remove ncurses flag
It seems the additional linker flags were added in 9d3b0a2 (May 2008) as
a workaround for readline support. They were kept since then, but it
also means that `python3-config` outputs these flags

```console
$ python3-config --libs
 -lpthread -ldl -lcrypt -lncurses -lutil -lm -lm
```

while other GNU/Linux distros do not. For example, Debian 11:

```console
$ sudo apt install python3-dev
$ python3-config --libs
 -lcrypt -lpthread -ldl  -lutil -lm -lm
```

This change removes the `-lncurses` flag and aligns Nix/NixOS with other
distros.
2022-03-29 13:39:33 +02:00
github-actions[bot]
838f421cf3
Merge staging-next into staging 2022-03-17 12:02:05 +00:00
Martin Weinelt
5117b2ee8c python310: 3.10.2 -> 3.10.3
https://www.python.org/downloads/release/python-3103/
2022-03-17 07:40:52 +01:00
Martin Weinelt
88deb06a96 python39: 3.9.10 -> 3.9.11
https://www.python.org/downloads/release/python-3911/
2022-03-17 07:40:52 +01:00
Martin Weinelt
c91c73a714 python37: 3.7.12 -> 3.7.13
https://www.python.org/downloads/release/python-3713/
2022-03-17 07:39:01 +01:00
Martin Weinelt
d56ccde39a python38: 3.8.12 -> 3.8.13
https://www.python.org/downloads/release/python-3813/
2022-03-17 07:39:01 +01:00
github-actions[bot]
2eac3106df
Merge staging-next into staging 2022-03-17 00:02:45 +00:00
Martin Weinelt
37a035335c
Merge pull request #163916 from mweinelt/python311 2022-03-16 21:05:37 +01:00
zowoq
6431086967 Merge remote-tracking branch 'origin/staging-next' into staging
Conflicts:
	pkgs/development/python-modules/symengine/default.nix
2022-03-16 16:03:43 +10:00
Vladimír Čunát
f48c1fda6b
Merge branch 'master' into staging-next
Conflict in pkgs/development/libraries/libvirt/default.nix
required manual adjustments.  The fetched patch is already in src.
I checked that libvirt builds.
2022-03-15 09:52:04 +01:00
ReplayCoding
42f6c2c7ed python: fix enableOptimizations with clang 2022-03-14 15:57:16 -07:00
Jonathan Ringer
7f5915b048 update-python-libraries.py: Always use ref/tags/ for specifying rev
Avoids situations where a branch and tag share the same
label. Github will silently return a non-valid artifact and
will fail the build.

Since all github releases correspond to an annotated tag, it's
safe to assume that if we found a release for a tag, that the
tag will exist.
2022-03-14 00:29:09 +01:00
Martin Weinelt
69b06bceab
python311: 3.11.0a4 -> 3.11.0a6
https://pythoninsider.blogspot.com/2022/03/python-3110a6-is-available.html
https://pythoninsider.blogspot.com/2022/02/python-3110a5-is-available.html
2022-03-13 00:04:29 +01:00
ajs124
fd9c3674b9 pypy27_prebuilt: remove unneeded openssl_1_0_2 dependency
they ship their own openssl

as of this commit, that is actually openssl 1.1.1m, the same version we have in openssl_1_1
maybe the package should still be marked as vulnerable, because they ship their own openssl
2022-02-22 03:55:37 +01:00
ajs124
04a1e43685 pypy27_prebuilt: 7.3.6 -> 7.3.8 2022-02-22 03:52:09 +01:00
Frederik Rietdijk
e3ae569a2c
Merge pull request #157775 from veprbl/pr/darwin_python310_fix
python3: revert some old darwin hacks
2022-02-06 13:33:59 +01:00
Dmitry Kalinkin
68d828f64c
python3: don't hardcode -msse2 on darwin
The -msse2 flag was hardcoded back when python32 was added in
47d86a83 ('Adding Python 3.2').
2022-02-02 18:22:09 -05:00
Dmitry Kalinkin
c7c3187d98
python3: don't patch out -Wl,-stack_size,1000000
The original motivation behind removing that was to appease a consumer
of python-config's output. That issue was probably resolved by now, so
let's bring the build in sync with what python is doing by default.

This reverts b7819e38 ('python3.x: Patch extra stack size on darwin')
2022-02-02 18:21:55 -05:00
Dmitry Kalinkin
49a0059a59
python3: unset MACOSX_DEPLOYMENT_TARGET
Setting an old target conflicts with the -stack_size,1000000 linker
flag. This fixes build of python310.

This reverts ce59dec5 ('python34: as a workaround, explicitly set MACOSX_DEPLOYMENT_TARGET')
2022-02-02 18:21:30 -05:00
Jonathan Ringer
69382d41d5 python311: 3.11a2 -> 3.11a4 2022-01-31 06:47:51 -08:00
github-actions[bot]
189be4ddc1
Merge staging-next into staging 2022-01-29 00:02:04 +00:00
Martin Weinelt
323d8534da
Merge pull request #156804 from jonringer/python-update-sri-hash 2022-01-28 21:54:35 +01:00
Jonathan Ringer
47c82c04ae
update-python-libraries: use sri-hash 2022-01-26 15:10:22 -08:00
Sandro Jäckel
be1fef9258 cpython: mime-types -> mailcap 2022-01-26 14:30:10 -08:00
github-actions[bot]
9c32e7cb2a
Merge staging-next into staging 2022-01-15 18:01:47 +00:00
github-actions[bot]
ed9751296d
Merge master into staging-next 2022-01-15 18:01:07 +00:00
Frederik Rietdijk
2ced686d5b pythonInterpreters.pypy38_prebuilt: 7.3.6 -> 7.3.7
Change python language version and attribute.
2022-01-15 17:40:54 +01:00
Frederik Rietdijk
731db1820d pythonInterpreters.pypy27_prebuilt: 7.3.3 -> 7.3.6 2022-01-15 17:40:54 +01:00
Frederik Rietdijk
8dabcce399 python310: 3.10.1 -> 3.10.2 2022-01-15 12:31:14 +01:00
Frederik Rietdijk
0ffdadc271 python39: 3.9.9 -> 3.9.10 2022-01-15 12:31:14 +01:00
github-actions[bot]
a08e4e2a8a
Merge master into staging-next 2022-01-14 06:01:24 +00:00
Jonathan Ringer
b316efff4b update-python-libraries: skip replacing 'rev' when set to variable
It's common for fetchFromGitHub to have `rev = version;`, in which
it will inherit the version. So no replacement is required.
2022-01-13 18:55:44 -08:00
Jonathan Ringer
ce0a907730 update-python-libraries: support pyproject and flit formats
Generally, this is determined by the fetcher. The
notable exception would be the "wheel" format.
2022-01-13 18:55:44 -08:00
Robert Scott
4aaf4c256b
Merge pull request #151066 from zhaofengli/libffi-testsuite
libffi: Run test suite
2021-12-28 01:07:58 +00:00
Martin Weinelt
76488857ab python310: 3.10.0 -> 3.10.1 2021-12-26 19:31:43 -08:00
Emily
cafbe8171c
python: conditionalize redundant Darwin patch (#137858) 2021-12-25 17:11:35 -05:00
Jonathan Ringer
6635f5b208
Merge remote-tracking branch 'origin/master' into staging-next
- Fix which python interpreters are exposed

Conflicts:
	pkgs/top-level/all-packages.nix
2021-12-22 00:31:14 -08:00
Michael Raskin
d2204261a3 pypy37: reinit 2021-12-22 00:51:45 +01:00
Dmitry Kalinkin
da8f155b2a
Merge branch 'master' into staging-next
Conflicts:
	pkgs/development/python-modules/sphinxext-opengraph/default.nix
2021-12-18 10:18:14 -05:00