Commit Graph

718 Commits

Author SHA1 Message Date
Miro Hrončok
593224df20 Stop Recommending setuptools and move the pip Recommendation to python3-devel
With modern pip, setuptools is not required on runtime.
Python packages use PEP 517 instead.

Hence, we no longer Recommend setuptools and pip, but pip only.

Users who are impacted may see one of:

    ModuleNotFoundError: No module named 'setuptools'
    ModuleNotFoundError: No module named 'pkg_resoureces'

They can easily recover by installing python3-setuptools or python3-pkg_resources.

Related but not explicitly part of:
https://fedoraproject.org/wiki/Changes/Reduce_dependencies_on_python3-setuptools

Together with this change, we move the pip Recommendation to the python3-devel package.
"Regular users" of Fedora are less likely to need pip and more likely to brick
their systems with it. If they need pip, they can dnf install pip.

Pip (incl. setuptools) still works in environments created with venv or virtualenv.

Not bumping the release because this only affects the package when we
upgrade the main Python in Fedora to 3.10.
2021-04-23 12:57:43 +02:00
Miro Hrončok
19bf595786 Do not require python3-setuptools from python3-devel
See https://fedoraproject.org/wiki/Changes/Reduce_dependencies_on_python3-setuptools

Not bumping the release because this only affects the package in Copr for now,
until we upgrade the main Python in Fedora to 3.10.

Co-authored-by: Tomas Hrnciar <thrnciar@redhat.com>
2021-04-19 13:26:17 +02:00
Tomas Hrnciar
9f5874443d Update to 3.10.0a7 2021-04-06 14:27:52 +02:00
Miro Hrončok
786b31e188 rpmlint: Filter a new way of unversioned Obsoletes warning 2021-03-26 14:29:07 +00:00
Miro Hrončok
a17e94618c rpmlint: library-not-linked-against-libc/shared-lib-without-dependency-information may be a warning 2021-03-26 14:48:26 +01:00
Miro Hrončok
d11fccfd4f rpmlint: Don't report extra tokens at the end of %endif/%else directives 2021-03-26 14:48:26 +01:00
Miro Hrončok
8aff12c51e When flat, don't require/provide python(abi) = 3.10
The regex was broken for two+ digit minor version.

Providing python(abi) = 3.10 confuses the dependency resolution in the
Python 3.10 testing copr.

E.g. python3-sphinx requires `python(abi) = 3.10` and `/usr/bin/python3`.
In certain circumstances, dnf installs python3 and python3.10 from rawhide,
satisfying both of the dependencies.

Running `sphinx-build` hence ends up with:

    Traceback (most recent call last):
      File "/usr/bin/sphinx-build", line 5, in <module>
        from sphinx.cmd.build import main
    ModuleNotFoundError: No module named 'sphinx'
2021-03-22 12:44:11 +01:00
Tomas Hrnciar
87f3cf679a Update to 3.10.0a6 2021-03-02 18:03:24 +01:00
Tomas Hrnciar
4a2922475a Update to 3.10.0a5 2021-02-04 11:17:36 +01:00
Fedora Release Engineering
ecc447a2f8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-27 14:27:44 +00:00
Charalampos Stratakis
b8b7372cd5 Compile the debug build with -O0 instead of -Og (rhbz#1818857) 2021-01-19 16:22:16 +01:00
Miro Hrončok
d059157127 Update to 3.10.0a4 2021-01-05 00:29:47 +01:00
Tomas Hrnciar
eb9dd45945 Update to 3.10.0a3 2020-12-08 09:44:22 +01:00
Miro Hrončok
3b24e77f3e BuildRequire make explicitly
See https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2020-12-07 19:35:08 +01:00
Tomas Orsava
443a3d1807 Add comment about BuildRequiring self 2020-11-30 18:49:05 +01:00
Miro Hrončok
b7e6ca08eb Add explicit requirement on tzdata (needed for zoneinfo)
See https://twitter.com/pganssle/status/1327344516475531272

Not bumping a release, tzdata is pulled in transitively, so the impact is minimal.
2020-11-14 18:58:00 +01:00
Miro Hrončok
8e77406a59 Revert "CI: Skip marshalparser tests for now"
This reverts commit 797514b3c7.
2020-11-10 13:34:52 +01:00
Miro Hrončok
a045b8fca0 Drop the no_semantic_interposition %bcond
Since 3.10.0a2, this is the default behavior upstream

See https://bugs.python.org/issue38980
2020-11-04 18:55:04 +01:00
Miro Hrončok
797514b3c7 CI: Skip marshalparser tests for now
Breakage reported upstream https://github.com/fedora-python/marshalparser/issues/10
2020-11-04 10:35:00 +01:00
Miro Hrončok
baff8f4745 Update to 3.10.0a2 2020-11-04 01:52:22 +01:00
Miro Hrončok
13d401b11a Hardcode %{_bindir} into python-config script + remove unreachable error handling
The `dirname $0` breaks the script when it is linked to a different location,
for example the RHEL's /usr/libexec/platform-python-config.

The error handling was never reachable, failed exec ends the script.

See https://src.fedoraproject.org/rpms/python3.9/pull-request/38
2020-10-27 16:06:38 +00:00
Tomas Orsava
0995309f1a Add /usr/bin/2to3-X.Y binary for consistency with pathfixX.Y.py and other binaries 2020-10-22 11:52:04 +02:00
Tomas Orsava
87301192dc Remove old Conflicts from Fedora 31 2020-10-21 15:49:52 +02:00
Miro Hrončok
ab0ca78ac0 Fedora CI: Make marshalparser test optional
marshalparser does not exist yet on Fedora 32.
2020-10-13 22:23:21 +02:00
Miro Hrončok
d20101fdfc Finish initial bootstrap, build Python 3.10 with Python 3.10 2020-10-12 21:03:07 +02:00
Miro Hrončok
d3f7caa77a Initial Python 3.10 package forked from Python 3.9 2020-10-12 10:32:54 +02:00
Miro Hrončok
9ceb5be63d Rpmlint: Filter out python-bytecode-without-source warnings for encodings and pydoc_data 2020-10-09 12:13:10 +02:00
Miro Hrončok
68997e05e0 Update to 3.9.0 final 2020-10-06 08:21:43 +02:00
Miro Hrončok
62490dd1cc Use upstream architecture names on Fedora 34+
https://fedoraproject.org/wiki/Changes/Python_Upstream_Architecture_Names

 - repalce patch 274 witch a sed call
 - update patch 353 to work both ways
 - add a new bcond to control the behavior: legacy_archnames
2020-09-29 10:36:44 +02:00
Miro Hrončok
3dbe18122c Update to 3.9.0rc2
Patch 111 was rebased manually but trivially.
2020-09-17 13:56:42 +02:00
Petr Viktorin
95b9984480 In sys.version and initial REPL message, list the source commit as "default"
We create an artificial Git repo to apply patches.
Python build system thinks that it's building from Git and embeds a bogus
branch name into its version string:

$ python3
Python 3.9.0b5 (heads/master-dirty:24c7f56, Aug  3 2020, 00:00:00)
[GCC 10.2.1 20200804 (Red Hat 10.2.1-2)] on linux
Type "help", "copyright", "credits" or "license" for more information.

Tell configure that Git is not installed. This reverts that part
of sys.version to "default".
2020-08-12 18:34:28 +02:00
Miro Hrončok
5a353698ca Update to 3.9.0rc1
setuptools/pip versions got bumped, all other patches applied cleanly.
2020-08-12 00:04:34 +02:00
Lumir Balhar
898f7432fb Add support for upstream architectures' names
Pythons in RHEL/Fedora use different names for some architectures
than upstream and other distros (for example ppc64 vs. powerpc64).
See patch 274.
That means that an extension built with the default upstream settings
(on other distro or as an manylinux wheel) cannot be found by Python
on RHEL/Fedora because it has a different suffix.
This patch adds the original names to importlib so Python is able
to import extensions with an original architecture name in its
file name.
2020-08-04 14:04:42 +02:00
Miro Hrončok
c8570d6221 Make python3-libs installable without python3
Resolves https://bugzilla.redhat.com/show_bug.cgi?id=1862082
2020-07-31 09:32:33 +00:00
Lumir Balhar
7f73124103 Add marshalparser to CI to test their compatibility 2020-07-31 07:20:54 +02:00
Fedora Release Engineering
d7d969c974 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-29 04:54:50 +00:00
Miro Hrončok
0a4f32de36 Remove redundant empty lines 2020-07-24 19:29:27 +02:00
Lumir Balhar
76d03e29c9 Ship versioned pathfixX.Y.py in main and non-main Python versions
pathfix.py is a cruicial tool when building Python so it's
useful to have it also in non-main Pythons without a conflict
with the main one.

This change is also reflected in %py(3)_shebang_fix macro:
https://src.fedoraproject.org/rpms/python-rpm-macros/pull-request/72
2020-07-24 13:11:04 +02:00
Miro Hrončok
9c094494d8 Use make macros
https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
2020-07-21 18:43:48 +02:00
Miro Hrončok
02c3d0cb2f Update to 3.9.0b5 2020-07-21 11:09:58 +02:00
Miro Hrončok
acc1ca2724 Convert patches to use github.com/fedora-python/importpatches 2020-07-21 11:09:56 +02:00
Marcel Plch
740668aab7 POC: keep only cache for large, autogenerated files
This saves about 2 MiB from the package. When all rpms get extracted,
the comparison is as follows on an ext4 filesystem:

With this patch:
$ du -s usr
195828 usr/

Without this patch:
$ du -s usr
198224 usr/

Which is a difference of 2.396 MiB.

To reduce the filesystem footprint of the Python installation, some
files are now being removed and only one level of their pycache
(non-optimized) is being kept.

These particular files were chosen for their size and the fact that they
are autogenerated, thus hard to read.
2020-07-17 08:44:58 +00:00
Miro Hrončok
0a760f01ca Use %autosetup with git am
Patch 189 is still applied conditionally, so we need to use %autosetup with -N,
to prevent automatic patch application.

Later, the patches are applied automatically up to 188 (with -M for maximum),
patch 189 is applied conditionally,
and finally patches from 190 up are applied (with -m for minimum).

Once patch 189 is reworked to be applicable at all times (or removed), this can be dropped.

While not necessary shorter, this no longer requires adding/removing %patch XYZ
when adding/removing patches.

While at it, we also use git am to apply the patches
since they are all generated from git anyway.
This makes it easier if we ever patch binary files.
2020-07-15 17:19:11 +02:00
Tomas Hrnciar
efdda005ea Update to 3.9.0b4 2020-07-07 12:53:18 +02:00
Miro Hrončok
7367fec47d Define pip/setuptools versions in once place, provide bundled(python3dist(...))
This makes once obvious place where the versions need to be updated.
The twice listed versions were easy to miss.
2020-07-07 11:38:49 +02:00
Miro Hrončok
a971d071bf Workaround: Skip test_gdb on arm
Tracked in https://bugzilla.redhat.com/show_bug.cgi?id=1846390
2020-06-11 15:36:55 +02:00
Miro Hrončok
3332fa2167 Update to 3.9.0b3
No patch changes, this was released immediately after b2.
2020-06-10 09:31:59 +02:00
Miro Hrončok
d860201a1f Update to 3.9.0b2
Patches 349 and 350 already merged.
2020-06-09 11:37:31 +02:00
Lumir Balhar
e8961f714c Switch back to compileall from stdlib
All enhancements from compileall2 are included in Python >= 3.9.
2020-06-05 13:45:13 +02:00
Miro Hrončok
31a41e7f72 Fedora CI: Bring in the config from the python3 component 2020-05-30 09:15:31 +02:00