Commit Graph

156 Commits

Author SHA1 Message Date
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
Hunor Csomortáni 3f5f8e46c1 docs: Don't BuildRequire these macros in Fedora and EPEL 9
`python3-devel` already requires `pyproject-rpm-macros` in Fedora and
EPEL 9. Update the usage docs to reflect this.

Related: rhbz#1950291

Signed-off-by: Hunor Csomortáni <csomh@redhat.com>
2022-01-26 11:40:43 +01:00
Gordon Messmer 2abd0036ea Handle legacy version specifiers that would previously raise exceptions.
Related: rhbz#1950291
2022-01-26 11:36:40 +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 f768e230c1 Require sed, as we use it
Related: rhbz#1950291
2022-01-26 11:34:03 +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
Gordon Messmer f8c2fede5b Sync dependency conversion with upstream pyreq2rpm.
Improve handling of > operator, preventing post-release from satisfying most rpm requirements.
Improve handling of < operator, preventing pre-release from satisfying rpm requirement.
Improve handling of != operator with prefix matching, preventing pre-release from satisfying rpm requirements.

Related: rhbz#1950291
2022-01-26 11:32:17 +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 655f6dda0e %pyproject_buildrequires: Accept installed pre-releases for all requirements
Related: rhbz#1950291
2022-01-26 11:27:08 +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 0d8d5ecd2e %pyproject_save_files: Add a workaround error for spaces and [brackets]
See the added links for details.
We cannot fix this for now,
so we error out early instead of producing a broken filelist.
Related: rhbz#1950291
2022-01-26 11:18:45 +01:00
Miro Hrončok 41fc715cc4 %pyproject_save_files: Expand the namespace error message, also display it with /
Related: rhbz#1950291
2022-01-26 11:11:52 +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
Lukas Zachar 59e1f5b06a Gate rhel-9 on STI tests 2021-08-24 11:38:01 +00:00
Benjamin A. Beasley 21166f584a Change “requirement file” to match “requirements file[s]” elsewhere
Related: rhbz#1950291
2021-08-10 10:52:23 +02:00
Benjamin A. Beasley 4d93e74bf2 Fix two misspellings of “requirements,” one user-visible
Related: rhbz#1950291
2021-08-10 10:52:23 +02: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 1bd13b6928 Fix a typo in README
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
Petr Viktorin a3a1caf32a Split requirements.txt parsing to its own module; test & improve it
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
Fedora Release Engineering 9fb8a6bd2b - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>

Related: rhbz#1950291
2021-08-10 10:52:23 +02:00
Miro Hrončok b3b3c84091 All supported Fedoras can have dependencies on extras
Related: rhbz#1950291
2021-08-10 10:52:23 +02:00
Miro Hrončok cbbb515b42 Explicitly require the "basic" Python RPM macros
Related: rhbz#1950291
2021-08-10 10:52:21 +02:00
Tomas Hrnciar d74e61b485 %pyproject_buildrequires: Fallback to setuptools.build_meta:__legacy__ only if setup.py exists
Fixes: rhbz#1976459

Related: rhbz#1950291
2021-08-10 10:52:05 +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 7602b9a77a %pyproject_buildrequires: Support x.* versions
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1981558

Related: rhbz#1950291
2021-08-10 10:51:46 +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
Mohan Boddu 8365fb6c2c Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
Signed-off-by: Mohan Boddu <mboddu@redhat.com>
2021-08-10 00:06:40 +00: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 dd25ce59a6 Don't accidentally treat "~= X.0" requirement as "~= X"
Don't canonicalize the version twice.

Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1977060

Related: rhbz#1950291
2021-06-30 13:08:48 +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 a8147ee22b Fix a typo
Related: rhbz#1950291
2021-06-30 12:21:50 +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
Major Hayden 9eb47b5d06 Write warning to >&2 instead of /dev/stderr
Writing to /dev/stderr with > or >> does not work properly in a mock chroot.

https://bugzilla.redhat.com/show_bug.cgi?id=1965470

Related: rhbz#1950291
2021-05-28 15:22:58 +02:00
Miro Hrončok 2c0257dc43 Generate BuildRequires on extras in lower case
Fixes: rhbz#1947074
Related: rhbz#1950291
2021-04-22 18:16:02 +02:00
Miro Hrončok cd82d51b8a Handle tox provision (tox.requires / tox.minversion)
Related: rhbz#1950291
2021-04-22 18:15:57 +02:00
Miro Hrončok a9e414dafd Fix the bad %changelog release
Related: rhbz#1950291
2021-04-22 18:15:51 +02:00
Mohan Boddu 40d9278e33 - Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
Signed-off-by: Mohan Boddu <mboddu@redhat.com>
2021-04-16 04:10:31 +00:00
Charalampos Stratakis b9211529e0 Disable tests on RHEL9 to avoid pulling in the test dependencies 2021-03-09 16:13:43 +01: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
Petr Šabata ab4eb9e25e Downstream workaround for the %fedora macro
Signed-off-by: Petr Šabata <contyk@redhat.com>
2020-12-09 19:42:29 +01:00
DistroBaker 9c95955568 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-09 18:15:02 +01:00