Compare commits
4 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bb82443e24 | ||
|
|
4678cda2b1 | ||
|
|
97127d4cd4 | ||
|
|
513902bd15 |
13 changed files with 69 additions and 261 deletions
1
.fmf/version
Normal file
1
.fmf/version
Normal file
|
|
@ -0,0 +1 @@
|
|||
1
|
||||
4
.gitignore
vendored
4
.gitignore
vendored
|
|
@ -64,3 +64,7 @@
|
|||
/modulemd-2.14.0.tar.xz.asc
|
||||
/modulemd-2.15.0.tar.xz
|
||||
/modulemd-2.15.0.tar.xz.asc
|
||||
/modulemd-2.15.1.tar.xz
|
||||
/modulemd-2.15.1.tar.xz.asc
|
||||
/modulemd-2.15.2.tar.xz
|
||||
/modulemd-2.15.2.tar.xz.asc
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ upstream_tag_template: libmodulemd-{version}
|
|||
actions:
|
||||
get-current-version: ./.packit_version.sh
|
||||
|
||||
synced_files:
|
||||
files_to_sync:
|
||||
- .packit.yml
|
||||
- .make_packit_specfile.sh
|
||||
- libmodulemd.spec
|
||||
|
|
|
|||
|
|
@ -1,15 +1,16 @@
|
|||
--- !Policy
|
||||
product_versions:
|
||||
- fedora-*
|
||||
decision_context: bodhi_update_push_testing
|
||||
- fedora-rawhide
|
||||
decision_context: bodhi_update_push_stable
|
||||
subject_type: koji_build
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
||||
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional}
|
||||
--- !Policy
|
||||
product_versions:
|
||||
- fedora-*
|
||||
decision_context: bodhi_update_push_stable
|
||||
subject_type: koji_build
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional}
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis}
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
||||
|
|
|
|||
|
|
@ -23,8 +23,8 @@
|
|||
%endif
|
||||
|
||||
Name: %{upstream_name}%{?v2_suffix}
|
||||
Version: 2.15.0
|
||||
Release: 14%{?dist}
|
||||
Version: 2.15.2
|
||||
Release: 1%{?dist}
|
||||
Summary: Module metadata manipulation library
|
||||
|
||||
# COPYING: MIT
|
||||
|
|
@ -33,19 +33,14 @@ Summary: Module metadata manipulation library
|
|||
# contrib/release-tools/semver: GPL-3.0-only
|
||||
# modulemd/tests/test_data/f29.yaml: Apache-2.0
|
||||
# modulemd/tests/test_data/f29-updates.yaml: Apache-2.0
|
||||
# xml_specs/reduced/tests/good/module_stream_build_license.xml: MIT AND (MIT AND GPL-3.0-or-later)
|
||||
# xml_specs/reduced/tests/good/module_stream_build_license.xml: MIT AND GPL-3.0-or-later
|
||||
License: MIT
|
||||
SourceLicense: %{license} AND GPL-3.0-only AND GPL-3.0-or-later AND GPL-2.0-or-later AND Apache-2.0
|
||||
URL: https://github.com/fedora-modularity/libmodulemd
|
||||
Source0: %{url}/releases/download/%{version}/modulemd-%{version}.tar.xz
|
||||
Source1: %{url}/releases/download/%{version}/modulemd-%{version}.tar.xz.asc
|
||||
# Key exported from Petr Pisar's keyring
|
||||
Source2: gpgkey-E3F42FCE156830A80358E6E94FD1AEC3365AF7BF.gpg
|
||||
# Fix building with glib2-doc 2.79.0, in upstream after 2.15.0
|
||||
Patch0: modulemd-2.15.0-build-Move-computing-gtk-doc-module-paths-to-the-che.patch
|
||||
Patch1: modulemd-2.15.0-doc-Adapt-GLib-documentation-path-to-GLib-2.79.0.patch
|
||||
# Fix building with glib2-doc 2.80.1, in upstream after 2.15.0,
|
||||
# <https://github.com/fedora-modularity/libmodulemd/pull/619>.
|
||||
Patch2: modulemd-2.15.0-doc-Adapt-GLib-documentation-path-to-GLib-2.80.1.patch
|
||||
|
||||
BuildRequires: gnupg2
|
||||
BuildRequires: meson >= 0.47
|
||||
|
|
@ -194,6 +189,12 @@ mv %{buildroot}%{_mandir}/man1/modulemd-validator.1 \
|
|||
|
||||
|
||||
%changelog
|
||||
* Wed Jun 18 2025 Petr Pisar <ppisar@redhat.com> - 2.15.2-1
|
||||
- 2.15.2 bump
|
||||
|
||||
* Fri May 09 2025 Petr Pisar <ppisar@redhat.com> - 2.15.1-1
|
||||
- 2.15.1 bump
|
||||
|
||||
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.15.0-14
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
||||
|
||||
|
|
|
|||
|
|
@ -1,96 +0,0 @@
|
|||
From 9d2809090cc0cccd7bab67453dc00cf43a289082 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
Date: Fri, 26 Jan 2024 15:44:39 +0100
|
||||
Subject: [PATCH 1/2] build: Move computing gtk-doc module paths to the check
|
||||
place
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
A checks and an application of extra directories for gtkdoc-fixxref
|
||||
were computed independetly. This patch removes the code duplication.
|
||||
It also adds the discovered path to a "meson setup" summary output.
|
||||
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
meson.build | 25 ++++++++++++-------------
|
||||
modulemd/meson.build | 9 +++++----
|
||||
2 files changed, 17 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index a5d1330..0b32f4d 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -67,23 +67,21 @@ sed = find_program('sed')
|
||||
test = find_program('test')
|
||||
|
||||
with_docs = get_option('with_docs')
|
||||
+gtk_doc_referred_paths = []
|
||||
if with_docs
|
||||
gtkdoc = dependency('gtk-doc')
|
||||
glib_docpath = join_paths(glib_prefix, 'share', 'gtk-doc', 'html')
|
||||
|
||||
- glib_index_path = join_paths(glib_docpath, 'glib/index.html')
|
||||
- ret = run_command ([test, '-e', glib_index_path],
|
||||
- check: false)
|
||||
- if ret.returncode() != 0
|
||||
- error('Missing documentation for GLib: @0@'.format(glib_index_path))
|
||||
- endif
|
||||
-
|
||||
- gobject_index_path = join_paths(glib_docpath, 'gobject/index.html')
|
||||
- ret = run_command ([test, '-e', gobject_index_path],
|
||||
- check: false)
|
||||
- if ret.returncode() != 0
|
||||
- error('Missing documentation for GObject: @0@'.format(gobject_index_path))
|
||||
- endif
|
||||
+ foreach referred_module : [ 'glib', 'gobject' ]
|
||||
+ doc_module_path = join_paths(glib_docpath, referred_module)
|
||||
+ doc_index_file = join_paths(doc_module_path, 'index.html')
|
||||
+ ret = run_command ([test, '-e', doc_index_file],
|
||||
+ check: false)
|
||||
+ if ret.returncode() != 0
|
||||
+ error('Missing GTK documentation for @0@: @1@'.format(referred_module, doc_index_file))
|
||||
+ endif
|
||||
+ gtk_doc_referred_paths += [ doc_module_path ]
|
||||
+ endforeach
|
||||
endif
|
||||
|
||||
# Keep with_manpages option a tristate feature for backward compatibility.
|
||||
@@ -198,6 +196,7 @@ summary({'prefix': get_option('prefix'),
|
||||
'datadir': get_option('datadir'),
|
||||
'Python 2 GObject Overrides': gobject_overrides_dir_py2,
|
||||
'Python 3 GObject Overrides': gobject_overrides_dir_py3,
|
||||
+ 'GTK-Doc Referred Paths': gtk_doc_referred_paths,
|
||||
}, section: 'Directories')
|
||||
|
||||
summary({'Custom Python': get_option('python_name'),
|
||||
diff --git a/modulemd/meson.build b/modulemd/meson.build
|
||||
index a816e13..844f135 100644
|
||||
--- a/modulemd/meson.build
|
||||
+++ b/modulemd/meson.build
|
||||
@@ -256,6 +256,10 @@ configure_file(
|
||||
# --- Documenatation --- #
|
||||
|
||||
if with_docs
|
||||
+ fixxref_args = []
|
||||
+ foreach path : gtk_doc_referred_paths
|
||||
+ fixxref_args += [ '--extra-dir=@0@'.format(path) ]
|
||||
+ endforeach
|
||||
gnome.gtkdoc(
|
||||
'modulemd-2.0',
|
||||
install_dir: 'modulemd-2.0',
|
||||
@@ -265,10 +269,7 @@ if with_docs
|
||||
dependencies : [
|
||||
modulemd_dep,
|
||||
],
|
||||
- fixxref_args: [
|
||||
- '--extra-dir=@0@'.format(join_paths(glib_docpath, 'glib')),
|
||||
- '--extra-dir=@0@'.format(join_paths(glib_docpath, 'gobject')),
|
||||
- ],
|
||||
+ fixxref_args: [ fixxref_args ],
|
||||
install : true,
|
||||
)
|
||||
endif
|
||||
--
|
||||
2.43.0
|
||||
|
||||
|
|
@ -1,53 +0,0 @@
|
|||
From 29c339a31b1c753dcdef041e5c2e0e600e48b59d Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
Date: Fri, 26 Jan 2024 17:09:11 +0100
|
||||
Subject: [PATCH 2/2] doc: Adapt GLib documentation path to GLib 2.79.0
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
GLib 2.79.0 switched from gtk-doc to gi-docgen, whose format and
|
||||
installation location are both not compatible. The libmodulemd build
|
||||
script reported an error because of the new location.
|
||||
|
||||
This patch fixes the build failure by using the new location if GLib
|
||||
is 2.79.0 or greater.
|
||||
|
||||
Although the libmodulemd documentation references to GLib remain
|
||||
unresolved now (i.e. names of the functions and the types are not
|
||||
hyperlinks), we keep using the new location because the new GLib
|
||||
*.devhelp2 indices remain there and they can only improve over the
|
||||
time.
|
||||
|
||||
If this expection does not fulfill, libmodulemd will either migrate to
|
||||
gi-docgen, or drop the hard build-time dependency on GLib
|
||||
documentation.
|
||||
|
||||
Reimplements: #611
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
meson.build | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 0b32f4d..6108649 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -70,7 +70,13 @@ with_docs = get_option('with_docs')
|
||||
gtk_doc_referred_paths = []
|
||||
if with_docs
|
||||
gtkdoc = dependency('gtk-doc')
|
||||
- glib_docpath = join_paths(glib_prefix, 'share', 'gtk-doc', 'html')
|
||||
+
|
||||
+ if glib.version().version_compare('<2.79.0')
|
||||
+ glib_docpath = join_paths(glib_prefix, 'share', 'gtk-doc', 'html')
|
||||
+ else
|
||||
+ glib_docpath = join_paths(glib_prefix, 'share', 'doc', 'glib-2.0')
|
||||
+ warning('glib >= 2.79.0 documention might not be properly referred from libmodulemd documentation.')
|
||||
+ endif
|
||||
|
||||
foreach referred_module : [ 'glib', 'gobject' ]
|
||||
doc_module_path = join_paths(glib_docpath, referred_module)
|
||||
--
|
||||
2.43.0
|
||||
|
||||
|
|
@ -1,64 +0,0 @@
|
|||
From f3336199b4e69af3305f156abc7533bed9e9a762 Mon Sep 17 00:00:00 2001
|
||||
From: Dominique Leuenberger <dimstar@opensuse.org>
|
||||
Date: Wed, 15 May 2024 08:35:00 +0200
|
||||
Subject: [PATCH] doc: Adapt GLib documentation path to GLib 2.80.1
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
With GLib 2.80.1 (commit 548ec9f1), the installation paths for the documentation
|
||||
have changed once again:
|
||||
|
||||
The `gi-docgen` tool is not designed to be used like that. In
|
||||
particular, when nesting documentation directories, the generated
|
||||
`*.devhelp2` files (needed by Devhelp to show the documentation) are
|
||||
nested one directory level too deep for Devhelp to find them, and hence
|
||||
are useless, and the documentation doesn’t show up in this common
|
||||
documentation viewer.
|
||||
|
||||
So, change the installed documentation directory hierarchy:
|
||||
* `${PREFIX}/share/doc/glib-2.0/gio` → `${PREFIX}/share/doc/gio-2.0`
|
||||
* `${PREFIX}/share/doc/glib-2.0/glib-unix` →
|
||||
`${PREFIX}/share/doc/glib-unix-2.0`
|
||||
* `${PREFIX}/share/doc/glib-2.0/gobject` →
|
||||
`${PREFIX}/share/doc/gobject-2.0`
|
||||
* etc.
|
||||
* `${PREFIX}/share/doc/glib-2.0/glib` → `${PREFIX}/share/doc/glib-2.0`
|
||||
|
||||
https://gitlab.gnome.org/GNOME/glib/-/issues/3287
|
||||
Reimplements #618
|
||||
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
meson.build | 11 +++++++++--
|
||||
1 file changed, 9 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 6108649..fab704f 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -73,12 +73,19 @@ if with_docs
|
||||
|
||||
if glib.version().version_compare('<2.79.0')
|
||||
glib_docpath = join_paths(glib_prefix, 'share', 'gtk-doc', 'html')
|
||||
+ glib_modules = ['glib', 'gobject' ]
|
||||
else
|
||||
- glib_docpath = join_paths(glib_prefix, 'share', 'doc', 'glib-2.0')
|
||||
warning('glib >= 2.79.0 documention might not be properly referred from libmodulemd documentation.')
|
||||
+ if glib.version().version_compare('<2.80.1')
|
||||
+ glib_docpath = join_paths(glib_prefix, 'share', 'doc', 'glib-2.0')
|
||||
+ glib_modules = ['glib', 'gobject' ]
|
||||
+ else
|
||||
+ glib_docpath = join_paths(glib_prefix, 'share', 'doc')
|
||||
+ glib_modules = ['glib-2.0', 'gobject-2.0' ]
|
||||
+ endif
|
||||
endif
|
||||
|
||||
- foreach referred_module : [ 'glib', 'gobject' ]
|
||||
+ foreach referred_module : glib_modules
|
||||
doc_module_path = join_paths(glib_docpath, referred_module)
|
||||
doc_index_file = join_paths(doc_module_path, 'index.html')
|
||||
ret = run_command ([test, '-e', doc_index_file],
|
||||
--
|
||||
2.45.0
|
||||
|
||||
5
plans/sanity.fmf
Normal file
5
plans/sanity.fmf
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
summary: Sanity tests
|
||||
discover:
|
||||
how: fmf
|
||||
execute:
|
||||
how: tmt
|
||||
4
sources
4
sources
|
|
@ -1,2 +1,2 @@
|
|||
SHA512 (modulemd-2.15.0.tar.xz) = 79032eb591cd3b778cb348040150ec4d1ccb8e2890d02c7b7a04f9b1bd376d32c5ae0e2c6dfb8056595fae5e54ea8365de06fe969a0f04b979abad3ff0882033
|
||||
SHA512 (modulemd-2.15.0.tar.xz.asc) = 07439efcd7d7ca1e67110a13902f2abd978c93872c383dcfde8d78accf9471787877d69fef8dc06ce65fbde3463b7e5201c7d550acbb530062d9990713d8c63a
|
||||
SHA512 (modulemd-2.15.2.tar.xz) = d1785f6982ed19292103d741e3e94581e9789737be6f8e90d19218296f3aeb87d6589f3247744f8eab4f714d298d1508312b119624a8c32086c720becfa4cdc5
|
||||
SHA512 (modulemd-2.15.2.tar.xz.asc) = 282ff35f15418e95aae09d9bff8084aa0b6f2732cea3934a84a1bd4ddd8e50c8375466acb6a39a6e632f4bbbefd49735b7f56e9304d52521786e245f52feae24
|
||||
|
|
|
|||
|
|
@ -1,32 +0,0 @@
|
|||
---
|
||||
- hosts: localhost
|
||||
tags:
|
||||
- classic
|
||||
roles:
|
||||
- role: standard-test-source
|
||||
|
||||
- hosts: localhost
|
||||
tags:
|
||||
- classic
|
||||
tasks:
|
||||
- name: Make sure fedpkg and selinux bindings are installed
|
||||
shell: dnf -y install fedpkg python3-libselinux libmodulemd-devel --skip-broken
|
||||
- name: Copy a spec file to /tmp
|
||||
copy:
|
||||
src: "{{ playbook_dir }}/../libmodulemd.spec"
|
||||
dest: /tmp/libmodulemd.spec
|
||||
- name: Install build deps
|
||||
shell: dnf -y builddep /tmp/libmodulemd.spec
|
||||
|
||||
- hosts: localhost
|
||||
tags:
|
||||
- classic
|
||||
roles:
|
||||
- role: standard-test-basic
|
||||
tests:
|
||||
- configure:
|
||||
run: meson setup -Daccept_overflowed_buildorder=true -Drpmio=enabled -Dskip_introspection=false -Dtest_installed_lib=true -Dwith_py2=false -Dwith_py3=true /tmp/build "{{ tenv_workdir }}source"
|
||||
- build:
|
||||
run: ninja -C /tmp/build
|
||||
- unittests:
|
||||
run: meson test -C /tmp/build
|
||||
15
tests/upstream-tests.fmf
Normal file
15
tests/upstream-tests.fmf
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
summary: Upstream tests
|
||||
component: libmodulemd
|
||||
require:
|
||||
- bash
|
||||
- dnf5
|
||||
- dnf5-command(builddep)
|
||||
- fedpkg
|
||||
- libmodulemd
|
||||
- koji
|
||||
- meson
|
||||
- ninja
|
||||
- rpm
|
||||
- rpmdevtools
|
||||
duration: 10m
|
||||
test: ./upstream-tests.sh
|
||||
26
tests/upstream-tests.sh
Executable file
26
tests/upstream-tests.sh
Executable file
|
|
@ -0,0 +1,26 @@
|
|||
#!/bin/bash
|
||||
set -ex
|
||||
DIR=$(mktemp -d)
|
||||
pushd "$DIR"
|
||||
|
||||
SRCRPM=$(rpm -q --qf '%{sourcerpm}' libmodulemd)
|
||||
koji download-build -a src "$SRCRPM"
|
||||
rpmdev-extract "$SRCRPM"
|
||||
|
||||
NAME=$(rpm -q --qf %{name} "$SRCRPM")
|
||||
VERSION=$(rpm -q --qf %{version} "$SRCRPM")
|
||||
pushd "${SRCRPM//.rpm}"
|
||||
dnf -y builddep "$NAME".spec
|
||||
fedpkg prep
|
||||
|
||||
meson setup -Daccept_overflowed_buildorder=true -Drpmio=enabled \
|
||||
-Dskip_introspection=false -Dtest_installed_lib=true \
|
||||
-Dwith_py2=false -Dwith_py3=true \
|
||||
./build "${NAME}-${VERSION}-build/modulemd-${VERSION}"
|
||||
ninja -C ./build
|
||||
meson test -C ./build
|
||||
|
||||
popd
|
||||
|
||||
popd
|
||||
rm -r "$DIR"
|
||||
Loading…
Add table
Add a link
Reference in a new issue