Miro Hrončok
03e6d054b8
CI specs: Never use ! ...
as a check (followup)
...
This is a followup of 6015300d34
This particular instance was not discovered before due to the macro.
2023-01-14 23:57:54 +01:00
Miro Hrončok
d311a522b7
CI: Adjust %toxenv tests for tox 4
2023-01-14 23:57:54 +01:00
Miro Hrončok
2c69069593
CI: Manually BR pkg_resources from dns-lexicon to fix FTBFS
...
setuptools (pkg_resources) were transitively pulled in by tox
2023-01-14 23:57:54 +01:00
Miro Hrončok
d06c69a096
Adjust %pyproject_buildrequires tests for tox 4
...
Fixes: https://bugzilla.redhat.com/2160687
2023-01-14 23:57:52 +01:00
Miro Hrončok
e5c4bb2455
CI: Keep patches near the specs to ease using the script from other dist-gits
...
That way, if a package (such as python-tox) uses it,
the patches in dist-git are available.
In the future, it also allows us to add patches without URLs to our tested spec files.
2023-01-09 17:27:31 +01:00
Ralf Ertzinger
25a125d3ac
Remove dead code in pyproject_requirements_txt.py
...
This removes some code from pyproject_requirements_txt.py that serves no
purpose (assigns to a variable that is never used).
2023-01-01 17:50:30 +01:00
Miro Hrončok
f21e684a67
Use %py3_test_envvars in %tox when available
...
The new %py3_test_envvars macro was added
to remove duplication of environment variables used in %check.
We reuse it in %tox to gain support e.g. for PYTEST_XDIST_AUTO_NUM_WORKERS.
However, we keep support for platforms where the macro is not yet available,
not to be forced to backport %py3_test_envvars everywhere right away.
Technically, this should change little, but it sets CFLAGS and LDFLAGS now,
hence a new Y version.
2022-12-15 19:52:09 +01:00
Miro Hrončok
cb40ce3612
CI: Adjust setuptools versions to make the CI mockbuilds work on Fedora 36 and 38
2022-12-15 18:40:24 +01:00
Miro Hrončok
8b3af75e2f
Reorder %pyproject_buildrequires arguments for a nicer usage string
...
Before:
usage: %pyproject_buildrequires [-w] [-R] [-e TOXENVS] [-t] [-x EXTRAS] [-N] [REQUIREMENTS.TXT ...]
After:
usage: %pyproject_buildrequires [-x EXTRAS] [-t] [-e TOXENVS] [-w] [-R] [-N] [REQUIREMENTS.TXT ...]
The order was determined as:
0. suppressed options
1. extras, the easiest way to specify test deps (x)
2. tox related options (te)
3. build wheel, as it is provisional (w)
4. "disablers" (RN)
5. varargs are always listed last
Previous order was pretty much random.
2022-10-12 14:47:59 +02:00
Miro Hrončok
222ec5f4f5
Make %pyproject_buildrequires and %pyproject_save_files argparser errors nicer to macro users
...
Before:
%pyproject_buildrequires bogus_arg
usage: pyproject_buildrequires.py [-h] [-r] [-w] [--wheeldir PATH] [-R]
[-e TOXENVS] [-t] [-x EXTRAS]
[--generate-extras] [-p PYTHON3_PKGVERSION]
[-N]
[requirement_files ...]
pyproject_buildrequires.py: error: argument requirement_files: can't open 'bogus_arg': ...
%pyproject_save_files
...
usage: pyproject_save_files.py [-h] --output-files OUTPUT_FILES
--output-modules OUTPUT_MODULES --buildroot
BUILDROOT --sitelib SITELIB --sitearch SITEARCH
--python-version PYTHON_VERSION
--pyproject-record PYPROJECT_RECORD --prefix
PREFIX
varargs [varargs ...]
pyproject_save_files.py: error: the following arguments are required: varargs
After:
%pyproject_buildrequires bogus_arg
usage: %pyproject_buildrequires [-w] [-R] [-e TOXENVS] [-t] [-x EXTRAS] [-N]
[REQUIREMENTS.TXT ...]
%pyproject_buildrequires: error: argument REQUIREMENTS.TXT: can't open 'bogus_arg': ...
%pyproject_save_files
...
usage: %pyproject_save_files MODULE_GLOB [MODULE_GLOB ...] [+auto]
%pyproject_save_files: error: the following arguments are required: MODULE_GLOB
2022-10-12 14:47:54 +02:00
Karolina Surma
516e1511a7
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.
Resolves: https://bugzilla.redhat.com/2127958
2022-10-03 13:22:48 +02:00
Miro Hrončok
92ad52e5d4
%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.
2022-09-19 18:22:03 +02:00
Miro Hrončok
a3e31cca28
Docs: Remove one more forgotten %pyproject_buildrequires -r example
2022-09-12 22:34:49 +02:00
Miro Hrončok
66558cf4d1
Docs: Only mention -r for good measure, but don't mention it elsewhere
...
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2123167
2022-09-01 09:56:28 +02:00
Miro Hrončok
e218a30e09
Update rpmlintrc with filters for rpmlint 2.2
2022-09-01 07:47:22 +00:00
Otto Liljalaakso
dd0f198400
Fix typo in function name 'evaluate_all_environamnets'
...
The function is only used internally in these macros,
so name change should not break any users.
2022-08-30 23:44:09 +03:00
Miro Hrončok
b2bb5439dc
CI: Invoke mock with --isolation=simple to workaround problems with systemd-nspawn
...
See https://pagure.io/fedora-ci/general/issue/217
2022-08-17 16:57:03 +02:00
Miro Hrončok
db73e5a026
CI: Apply the hack in python-ldap.spec also on RHEL 9
2022-08-16 16:33:33 +02:00
Miro Hrončok
c839a6f8aa
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.
2022-08-16 16:33:19 +02:00
Karolina Surma
3d854401bd
CI: Patch httpbin to build it in Rawhide with werkzeug
2022-08-10 09:12:40 +02:00
Karolina Surma
fa49bf2efb
Don't fail %pyproject_save_files '*' if no modules are present
...
Users invoking %pyproject_save_files with glob: '*' don't care about the
files in the Python package, hence it shouldn't error when no modules
are detected.
There may be legitimate reasons to create a package without Python
modules in it, hence we shouldn't be blocking this possibility.
2022-08-09 11:11:06 +02:00
Karolina Surma
bc3755d9e4
Fix typo in License-File
...
PEP 639 defines License-File field.
2022-08-03 13:22:01 +02:00
Fedora Release Engineering
799a0b24f0
Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
...
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-22 15:51:22 +00:00
Maxwell G
6cf05c0288
Preserve mtimes
...
Note that the mtimes are artificially created by git,
but at least this way they are consistent when a single SRPM is rebuilt.
2022-07-15 14:00:57 +02:00
Maxwell G
b02df7ef0d
Use the %pytest macro
...
This macro is defined in python3-rpm-macros, so there's no problem using
it here. In fact, let's BuildRequire the macros we use.
2022-07-15 14:00:42 +02:00
Maxwell G
f331bdb966
Allign specfile to 16 characters
2022-07-15 09:22:08 +00:00
Miro Hrončok
111dd87a26
Fix CI tests for setuptools 61+
2022-07-14 23:50:38 +02:00
Miro Hrončok
5b7df3cdd7
%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.
2022-06-17 11:03:18 +02:00
Benjamin A. Beasley
1996e90259
%pyproject_build_lib: support setuptools 62.1.0 and later
2022-06-16 08:00:09 -04:00
Miro Hrončok
fcd4ecbffe
Fix bogus date in changelog
2022-06-09 13:47:10 +02:00
Owen W. Taylor
946c8726cf
%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/
Co-Authored-By: Miro Hrončok <miro@hroncok.cz>
2022-06-08 14:11:27 +02:00
Miro Hrončok
e31d5d5683
CI and docs: Remove Fedora 34 conditionals and mentions
...
Fedora 34 is end of life.
2022-06-06 05:51:34 +00:00
Miro Hrončok
07577de8ad
Use tomllib from the standard library on Python 3.11+
2022-06-02 11:34:14 +02:00
Miro Hrončok
dbe0eb9497
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
2022-05-06 14:02:36 +02:00
Miro Hrončok
b8063c003e
Markdown: Make the [prepare-metadata-for-build-wheel hook] link work in Pagure
...
(It works as it in on GitLab.)
2022-05-06 12:46:08 +02:00
Miro Hrončok
40f6765e0e
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.
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2076994
2022-04-29 12:42:37 +02:00
Miro Hrončok
1642d25ee2
%_pyproject_wheeldir is absolute since 29157c19b0
2022-04-29 11:40:15 +02:00
Miro Hrončok
2998811594
CI: More retrying for dnf, apparently 5 times 20 seconds is not enough
2022-04-27 10:34:30 +02:00
Miro Hrončok
6d0900f5b5
%pyproject_save_files: Support nested directories in dist-info
2022-04-27 10:34:03 +02:00
Miro Hrončok
6015300d34
CI specs: Never use ! ...
as a check
...
See https://lists.fedoraproject.org/archives/list/packaging@lists.fedoraproject.org/thread/TFQGD7CSTD5WVKVT3WDIGF5D6DID5NK6/
2022-04-12 14:58:09 +02:00
Miro Hrončok
8e9b0a2a0d
CI: Move one %files section to test different order
2022-03-22 18:59:53 +01:00
Miro Hrončok
ae639fc020
Prefix paths of intermediate files (such as %{pyproject_files}) with NVRA
...
Apparently, when you repeatedly run `rpmbuild -ba`, files in %_builddir are not cleaned.
This way, we at least make sure the files are unique between different NVRAs,
so 2 unrelated builds don't share the files between each other.
Keeping files contained in the build subdirectory is the more common way of doing this,
but we cannot technically do that, because we don't know what's it gonna be (before %prep).
Should be backwards compatible, as we only modify underscore-prefixed macros and %{pyproject_files},
where the exact value should not matter to the packagers.
2022-03-22 18:22:11 +01:00
Miro Hrončok
50b5e637bf
CI: Make most of the tests work on EPEL 9
2022-03-17 17:59:38 +01:00
Miro Hrončok
ed8ae6b328
CI: Determine mock chroot for centos-stream+epel, try not to break Fedora
2022-03-17 17:03:02 +01:00
Miro Hrončok
60d3234b01
Release final version 1.0.0
...
There are no code changes.
2022-03-01 17:13:12 +01:00
Lumir Balhar
3deb3f4147
Updated compatibility with tox4
2022-02-22 23:50:22 +00:00
Miro Hrončok
b88716ab8b
CI tests: Workaround python-ldap missing support fro OpenLDAP 2.5+
2022-02-22 20:49:52 +01:00
Miro Hrončok
e82e802470
CI tests: Sed ipykernel to declare missing dependency on ipython_genutils
2022-02-22 20:35:52 +01:00
Miro Hrončok
5cffd20919
Make the whitespace identical to c9s to avoid further conflicts
2022-02-02 21:24:10 +01:00
Miro Hrončok
8d63af8708
Disable certain rpminspect inspections not relevant to this package
2022-01-27 11:48:39 +00:00