Commit Graph

1102 Commits

Author SHA1 Message Date
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