Miro Hrončok
4c1e725938
CI: Adjust setuptools versions to make the CI mockbuilds work on Fedora 36 and 38
...
Related: rhbz#2168193
2023-02-13 16:42:58 +01:00
Karolina Surma
14b3f4b9c3
Filter discovered modules to match the given %pyproject_save_files globs
...
When certain modules are deliberately not included into the built RPM,
they shouldn't be listed in the list of qualified module names which are
used by %pyproject_check_import to test importability of the
distribution.
Related: rhbz#2168193
2023-02-13 16:42:57 +01:00
Miro Hrončok
064e6f283c
%pyproject_save_files: Support License-Files installed into the *Root License Directory* from PEP 369
...
Files still need to be marked as License-File to be considered %license,
but if their path in METADATA is specified relative to dist-info/licenses,
they are correctly recognised.
This makes License-Files specified by hatchling 1.9.0+ marked as %license.
Related: rhbz#2168193
2023-02-13 16:42:39 +01:00
Miro Hrončok
8c8a3ad80b
CI: Invoke mock with --isolation=simple to workaround problems with systemd-nspawn
...
See https://pagure.io/fedora-ci/general/issue/217
Related: rhbz#2117571
2022-08-17 16:57:15 +02:00
Miro Hrončok
a438f38c28
CI: Apply the hack in python-ldap.spec also on RHEL 9
...
Related: rhbz#2117571
2022-08-16 16:31:33 +02:00
Miro Hrončok
804d83af30
CI: On CentOS Stream, use EPEL Next, not EPEL proper
...
Also, make sure to never pull from EPEL's Koji repo,
as is also exposes RHEL packages in the metadata, but they error 403.
[MIRROR] libgcrypt-1.10.0-4.el9_0.x86_64.rpm: Status code: 403 for https://infrastructure.fedoraproject.org/repo/rhel/rhel9/x86_64/rhel-9-for-x86_64-baseos-rpms/Packages/l/libgcrypt-1.10.0-4.el9_0.x86_64.rpm
We just pull from the CentOS Stream Koji repo and EPEL Next Koji repo.
See the mock config for centos-stream+epel-next-9.
Related: rhbz#2117571
2022-08-16 16:31:33 +02:00
Karolina Surma
a81b91497f
CI: Patch httpbin to build it in Rawhide with werkzeug
...
Related: rhbz#2117571
2022-08-11 13:05:53 +02:00
Miro Hrončok
9899e0fa03
Fix CI tests for setuptools 61+
...
Related: rhbz#2117571
2022-08-11 13:05:53 +02:00
Miro Hrončok
589556411f
%pyproject_buildrequires: Support Package information on ELF objects
...
When extension modules are built in %pyproject_buildrequires,
we need to create the package note file.
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2097535
This is tested via python-ldap -- %pyproject_buildrequires -w fails without the fix.
Neither python-markupsafe nor python-mistune can be used as a test
because they only warn when the extension module cannot be built
because they fallback to pure Python.
Related: rhbz#2117571
2022-08-11 13:05:50 +02:00
Owen W. Taylor
681cc65e49
%pyproject_install: pass %{_prefix} explicitly to pip install
...
This makes things work for %{_prefix} other than user, when combined
with a change in python-rpm-macros to the definition of python3_sitelib/python3_sitearch.
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org/thread/KEQMMNJ4HTTHSQLK6P4DJJTVPA36SS3W/
Related: rhbz#2117571
Co-Authored-By: Miro Hrončok <miro@hroncok.cz>
2022-08-11 12:57:19 +02:00
Miro Hrončok
e082e4a71a
CI and docs: Remove Fedora 34 conditionals and mentions
...
Fedora 34 is end of life.
Related: rhbz#2117571
2022-08-11 12:57:01 +02:00
Miro Hrončok
295b331296
CI: Enable hatchling test for Fedora 35 and EPEL 9
...
https://bodhi.fedoraproject.org/updates/FEDORA-2022-c0d0bd9fa8
https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-b15c2993fe
Related: rhbz#2117571
2022-08-11 12:56:14 +02:00
Miro Hrončok
235e0c94a6
Allow building wheels in %pyproject_buildrequires to support other build backends
...
The hook is optional, see https://www.python.org/dev/peps/pep-0517/#prepare-metadata-for-build-wheel
> If a build frontend needs this information and the method is not defined,
> it should call build_wheel and look at the resulting metadata directly.
This is not yet automatically detected because the feature is provisional.
Use `%pyproject_buildrequires -w` to opt-in.
Resolves: rhbz#2060109
2022-05-06 12:19:26 +02:00
Miro Hrončok
a02a1ae59f
CI: More retrying for dnf, apparently 5 times 20 seconds is not enough
...
Related: rhbz#2060109
2022-05-06 12:19:08 +02:00
Miro Hrončok
d7bc2a357f
%pyproject_save_files: Support nested directories in dist-info
...
Related: rhbz#2060109
2022-05-06 12:19:08 +02:00
Miro Hrončok
0b9b782c5c
CI specs: Never use ! ...
as a check
...
See https://lists.fedoraproject.org/archives/list/packaging@lists.fedoraproject.org/thread/TFQGD7CSTD5WVKVT3WDIGF5D6DID5NK6/
Related: rhbz#2060109
2022-05-06 12:18:50 +02:00
Miro Hrončok
44772c3c74
CI: Install EPEL packages via full URL to support running tests on real RHEL
...
Resolves: rhbz#2065590
2022-03-23 16:46:15 +01:00
Miro Hrončok
a9aa69f463
CI: Move one %files section to test different order
...
Related: rhbz#2060109
2022-03-23 15:13:17 +01:00
Miro Hrončok
797cac8d85
CI: Make most of the tests work on EPEL 9
...
Resolves: rhbz#2065590
2022-03-18 10:50:33 +01:00
Miro Hrončok
3e4bfeffd8
CI: Skip some tests that would be to useless with reduced dependencies
...
Resolves: rhbz#2065590
2022-03-18 10:50:33 +01:00
Miro Hrončok
fc08e7cf3e
CI: Determine mock chroot for centos-stream+epel, try not to break Fedora
...
Resolves: rhbz#2065590
2022-03-18 10:50:30 +01:00
Miro Hrončok
76dc49fd1e
CI: Enable EPEL Next
...
The ansible thing that installs packages does that one by one.
Hence, the assumption is that by installing epel-next-release first,
mock should be available next.
Resolves: rhbz#2065590
2022-03-18 10:50:16 +01:00
Miro Hrončok
3c5fe19ca1
CI tests: Workaround python-ldap missing support fro OpenLDAP 2.5+
...
Related: rhbz#2060109
2022-03-02 18:33:45 +01:00
Miro Hrončok
600c6d59a7
CI tests: Sed ipykernel to declare missing dependency on ipython_genutils
...
Related: rhbz#2060109
2022-03-02 18:33:25 +01:00
Karolina Surma
2be56ab379
Include compressed manpages correctly in the RPM package
...
Compressed manpages have different extension than those listed in the RECORD file,
so they were not recognized when %%pyproject_save_files '+auto' flag
was provided.
To enable the path recognition, if the manpage extension matches the one
listed in brp-compres, the extension is removed, and an asterisk is now added
to the manpages filenames.
Source: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_manpages
Related: rhbz#1950291
2022-01-26 11:44:41 +01:00
Miro Hrončok
93cf48f615
%pyproject_buildrequires: Make -r (include runtime) the default, use -R to opt-out
...
See the proposal:
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org/thread/2R6NKELTHAWE6PI3CCZBVW5PMGO5VPDG/
- -N now implies -R
- the macro still guards against -Nr and now also against -Rr
Related: rhbz#1950291
2022-01-26 11:41:43 +01:00
Miro Hrončok
5513c410bf
Define provisional %pyproject_build_lib
...
Related: rhbz#1950291
2022-01-26 11:35:49 +01:00
Miro Hrončok
93fa18572e
CI tests: Update setuptools_scm to fix FTBFS on rawhide
...
Related: rhbz#1950291
2022-01-26 11:33:32 +01:00
Miro Hrončok
67d567b8c6
CI tests: Remove Fedora 33 compatibility shims, as F33 reaches EOL
...
Related: rhbz#1950291
2022-01-26 11:32:53 +01:00
Karolina Surma
d427052f40
Introduce %%pyproject_check_import
...
%%pyproject_save_files newly saves also a list of importable modules.
The list is used by %%pyproject_check_import to invoke the import test
on each module name.
%%pyproject_check_import accepts two options:
-t: filter only top-level modules
-e: exclude module names matching the given glob from the import check
Related: rhbz#1950291
2022-01-26 11:31:17 +01:00
Miro Hrončok
3b7d5da2b4
CI: Update the dns-lexiocn package so it also builds on Fedora 36+
...
Related: rhbz#1950291
2022-01-26 11:19:37 +01:00
Miro Hrončok
e269f4d6e9
Fedora CI: Update pytest so it still builds on Fedora 36 with pluggy 1.0
...
Related: rhbz#1950291
2022-01-26 11:09:14 +01:00
Tomas Hrnciar
bc3b3a778a
Automatically detect LICENSE files and mark them with %license macro
...
Related: rhbz#1950291
2021-08-10 10:52:23 +02:00
Miro Hrončok
309172f9a8
Rename %_pyproject_ghost_distinfo and %_pyproject_record to indicate they are private
...
Related: rhbz#1950291
2021-08-10 10:52:23 +02:00
Miro Hrončok
f190b5b225
%pyproject_buildrequires now fails when it encounters an invalid requirement
...
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1983053
Related: rhbz#1950291
2021-08-10 10:52:23 +02:00
Miro Hrončok
a4b3946fbf
CI tests: Skip failing tests of python-httpbin
...
The tests are failing on Fedora 35+ for reasons beyond pyproject-rpm-macros.
Related: rhbz#1950291
2021-08-10 10:51:48 +02:00
Miro Hrončok
be3e9d3b71
Escape weird paths generated by %pyproject_save_files
...
Related: rhbz#1950291
2021-08-10 10:51:23 +02:00
Miro Hrončok
2e21ac738a
CI tests: Update pytest's patch for Python 3.10.0b4+
...
Related: rhbz#1950291
2021-08-10 10:50:33 +02:00
Tomas Hrnciar
aac0af8401
Generate BuildRequires from file
...
%pyproject_buildrequires macro now accepts multiple file names to load
additional dependencies from them.
New option -N was added to disable automatical generation of requirements
in case package does not use build system. Option -N cannot be used in
combination with options -r, -e, -t, -x.
Co-authored-by: Miro Hrončok <miro@hroncok.cz>
Related: rhbz#1950291
2021-07-09 17:30:46 +02:00
Miro Hrončok
9c60342738
Avoid leaking %{_pyproject_builddir} to pytest collection
...
Resolves https://bugzilla.redhat.com/show_bug.cgi?id=1935212
Requires a %pytest change: https://src.fedoraproject.org/rpms/python-rpm-macros/pull-request/102
Related: rhbz#1950291
2021-06-30 13:08:48 +02:00
Miro Hrončok
73495ac0fe
CI tests: Make python-pytest.spec build with Python 3.10+
...
Preserve compatibility with Fedora 33.
Related: rhbz#1950291
2021-06-30 12:21:50 +02:00
Miro Hrončok
71f414ef2c
Set %_pyproject_wheeldir and %_pyproject_builddir relative to the source tree, not $PWD
...
This allows users to do:
%build
cd somewhere
%pyproject_wheel
cd -
cd somewhere_else
%pyproject_wheel
cd -
%install
%pyproject_install
Without a need to copy paste the wheels to a common location.
This is in fact a breaking change, I'll make sure to adapt the affected packages in Fedora.
Related: rhbz#1950291
2021-06-10 13:49:49 +02:00
Miro Hrončok
1cacdb2b62
Don't leak $TMPDIR outside of pyproject macros
...
During %install, the BRB scripts might be affected by it
Related: rhbz#1950291
2021-05-28 15:23:31 +02:00
Miro Hrončok
18de094680
Cleanup the tests (and docs) for Fedora 32 EOL
...
Related: rhbz#1950291
2021-05-28 15:23:29 +02:00
DistroBaker
cf79782115
Merged update from upstream sources
...
This is an automated DistroBaker update from upstream sources.
If you do not know what this is about or would like to opt out,
contact the OSCI team.
Source: https://src.fedoraproject.org/rpms/pyproject-rpm-macros.git#11021cf250d41ab7d50ed11bbb4f4a0acd77f2f2
2021-02-11 16:56:05 +00:00
DistroBaker
795a9b3332
Merged update from upstream sources
...
This is an automated DistroBaker update from upstream sources.
If you do not know what this is about or would like to opt out,
contact the OSCI team.
Source: https://src.fedoraproject.org/rpms/pyproject-rpm-macros.git#26bb3cb4d123a7f57df5ec56b17ccbf3d415c505
2021-02-04 13:32:12 +00:00
DistroBaker
5919cec39c
Merged update from upstream sources
...
This is an automated DistroBaker update from upstream sources.
If you do not know what this is about or would like to opt out,
contact the OSCI team.
Source: https://src.fedoraproject.org/rpms/pyproject-rpm-macros.git#6a8d86ed709871dc99fda2a02fb9e21d362c637e
2020-12-04 19:01:54 +01:00
Troy Dawson
bdcdcffab9
RHEL 9.0.0 Alpha bootstrap
...
The content of this branch was automatically imported from Fedora ELN
with the following as its source:
https://src.fedoraproject.org/rpms/pyproject-rpm-macros#38ef5fb85baa8d9529853c325ddd5e3fb2ec08a7
2020-11-16 15:10:26 -08:00
DistroBaker
a2bd1e357d
Merged update from upstream sources
...
This is an automated DistroBaker update from upstream sources.
If you do not know what this is about or would like to opt out,
contact the OSCI team.
Source: https://src.fedoraproject.org/rpms/pyproject-rpm-macros.git#6a8d86ed709871dc99fda2a02fb9e21d362c637e
2020-11-04 23:27:14 +01:00
DistroBaker
475528ccb7
Merged update from upstream sources
...
This is an automated DistroBaker update from upstream sources.
If you do not know what this is about or would like to opt out,
contact the OSCI team.
Source: https://src.fedoraproject.org/rpms/pyproject-rpm-macros.git#e9281281f6bd6fb68a16fd92a8b680464909a1fb
2020-10-27 18:24:02 +01:00