Git log: commit 6283276d1aee4e1f68f8ec4281458f095680363d
Author: Peter Pentchev <roam@debian.org>
Date: Wed Dec 18 03:15:56 2024 +0200
Prepare to upload libmodulemd/2.15.0-1 to unstable
commit 1c03bac4534d24a698486436bb5cdd5900d43431
Author: Peter Pentchev <roam@debian.org>
Date: Wed Dec 18 03:10:34 2024 +0200
Update the Debian packaging for libmodulemd-2.15.0
commit 914ef5668de9b0282e3a70868a9d255dd024d0e5
Merge: 76d830c bfde7f2
Author: Peter Pentchev <roam@debian.org>
Date: Wed Dec 18 02:59:04 2024 +0200
Merge libmodulemd-2.15.0 into the Debian branch
commit 76d830c8a9fa2c9ab3b69c76d6f8be64ded91397
Author: Peter Pentchev <roam@debian.org>
Date: Wed Dec 18 02:48:25 2024 +0200
Update the changelog file
commit f69ddb9540dcaa71c9cc166e919d6e43fabda322
Author: Peter Pentchev <roam@debian.org>
Date: Wed Dec 18 02:47:21 2024 +0200
Use debputy's X-Style: black
commit a185439b05cd93de48ea2817aa740bbf53c1f49d
Author: Peter Pentchev <roam@debian.org>
Date: Wed Dec 18 00:39:51 2024 +0200
Let debhelper take care of some dependencies automatically
commit 91289521640995f20c75f69941c7d80130ce1ca3
Author: Peter Pentchev <roam@debian.org>
Date: Tue Dec 17 23:33:18 2024 +0200
Use dh compat level 14, use X-DH-Compat
commit acfea4107ef5ad077285502bf02207fd554dd315
Author: Peter Pentchev <roam@debian.org>
Date: Tue Dec 17 23:11:00 2024 +0200
Use dh-package-notes to record ELF metadata
commit 71def7641c7f66593603e495948379d2ee6e408e
Author: Peter Pentchev <roam@debian.org>
Date: Tue Dec 17 23:05:06 2024 +0200
Declare dpkg-build-api v1, drop the implied R-R-R: no
commit 0307c85d1090530528a634dce16a98721766ceba
Author: Peter Pentchev <roam@debian.org>
Date: Tue Dec 17 22:57:03 2024 +0200
Include dpkg's default.mk for completeness
commit 577baa1ae8d7513eeb05e2944fc53c2f4453804a
Author: Peter Pentchev <roam@debian.org>
Date: Tue Dec 17 22:55:21 2024 +0200
Use ${gir:Provides} on libmodulemd-dev
commit 5500379a6ec6a1dfd529b7bd531c5710669b17b4
Author: Peter Pentchev <roam@debian.org>
Date: Tue Dec 17 21:36:20 2024 +0200
Build-depend on pkgconf instead of pkg-config
commit ea3ad97e3a52814b161bc895a4816dede993af1c
Author: Peter Pentchev <roam@debian.org>
Date: Tue Dec 17 21:25:04 2024 +0200
Add the years 2023 and 2024 to my debian/* copyright notice
commit 738beea70925c58bdb9fed2de471b4f5a0cf530d
Author: Peter Pentchev <roam@debian.org>
Date: Tue Dec 17 21:24:48 2024 +0200
Declare compliance with Policy 4.7.0 with no changes
commit 1ac8e31ef1363b3f4e2c998f2ae185837a6c7a2e
Author: Peter Pentchev <roam@debian.org>
Date: Tue Dec 17 21:15:30 2024 +0200
Bump the timeout for the autopkgtests, just as for the unit tests
Closes: #1090354
commit bfde7f2d04fbb22e26c9eb843e4ccc478762dd8d
Author: Petr Písař <ppisar@redhat.com>
Date: Wed May 10 14:50:24 2023 +0200
Initialize automaticly freed variables where the function could return before the first assignment
GCC 13.1.1 warned on some places like this:
In file included from /usr/include/glib-2.0/glib.h:117,
from ../modulemd/modulemd-translation-entry.c:14:
In function ‘g_autoptr_cleanup_generic_gfree’,
inlined from ‘modulemd_translation_entry_parse_yaml’ at ../modulemd/modulemd-translation-entry.c:39
8:21:
/usr/include/glib-2.0/glib/glib-autocleanups.h:30:3: warning: ‘value’ may be used uninitialized [-Wmaybe-uninitialized]
30 | g_free (*pp);
| ^~~~~~~~~~~~
../modulemd/modulemd-translation-entry.c: In function ‘modulemd_translation_entry_parse_yaml’:
../modulemd/modulemd-translation-entry.c:398:21: note: ‘value’ was declared here
398 | g_autofree gchar *value;
| ^~~~~
Automatic variables with a cleanup attribute are automatically
deinicialized when they go out of scope, but they are not
automatically initialized when defined.
This patch adds the missing initialization.
commit 9f0c09029d6cf35faf460a2c1408ff8d1915bd15
Author: Petr Písař <ppisar@redhat.com>
Date: Fri May 5 14:00:42 2023 +0200
doc: NEWS for 2.15.0
commit 5341acf8174fa2d8ab37c9bdf880c7be2725f986
Author: Petr Písař <ppisar@redhat.com>
Date: Tue May 9 12:28:36 2023 +0200
Replace "whitelist" with allowed_build_names
This change is implemented only in internal variable names.
Specification and public functions were left intact.
We could deprecate the function names, but then they would not match
a keyword from the specification and that would be confusing.
commit 44fc1863da7aa500aac0ad1cb49d308078f74439
Author: Petr Písař <ppisar@redhat.com>
Date: Tue May 9 11:15:35 2023 +0200
Replace "master" word with less evocative synonyms
The few occurances in a specification of older formats, e.g.
modulemd-packager-v2 are left intact because those are constants of
the respective formats. There were not updated in commit
dc09c4b97f454be228fee6cf217292f06d3f9a2f on purpose to preserve
compatibility.
commit b9ba941bda1b3368f249bb52d8d03e514d915e0a
Author: Petr Písař <ppisar@redhat.com>
Date: Fri May 5 11:54:00 2023 +0200
Convert license identifiers to an SPDX format
Various places exampled a license YAML subtree with license
identifiers in Callaway's Fedora notation. To make the examples better
understandible and because Fedora is adopting SPDX, this patch changes
the examples into SPDX notation.
commit 1b5f74e5491eda9210a1897b2a6d4f0fe61ca99b
Author: Petr Písař <ppisar@redhat.com>
Date: Fri May 5 11:53:10 2023 +0200
Correct a typo in a comment
commit feefc5ce455982bb0a385be48c68ba6e7bd5b927
Author: Petr Písař <ppisar@redhat.com>
Date: Fri Apr 28 17:56:43 2023 +0200
Lessen quoting for git commit IDs
Commit IDs in ref fields starting with a digit were unnecesarily
quoted (ref: "26ca0c0"). This patch augments detecting numbers to
hopefully anything what YAML 1.2.2 considers an integer or a float.
That enables only quoting values which indeed can be interpreted as
numbers and thus are endangered of loosing characters insignificant
for numbers (1.20 -> 1.2).
This adds also an extensive tests to what a number-like string looks
like.
commit 6a4612555114a12526ddd7092608eee020146051
Author: Petr Písař <ppisar@redhat.com>
Date: Fri Apr 21 14:38:09 2023 +0200
Auto-quote values in obsoletes, streams, translations
commit cb8d47e560f564210e72c94121cf30d1baf66105
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Apr 18 18:06:56 2023 +0200
Auto-quote all values in modulemd-defaults-v1 documents
This patch enhances serialization of modulemd-defaults-v1 with respect
to number-like values. Now these fields are quoted when necessary:
module name, profile name, intent name. That means all fileds of
modulemd-defaults-v1 are guarded if necessary.
Default stream name was left always quoted not to disturb previous
serializations. We can turn it into autoquoting when requested.
commit 3002371a61dabd9f7a512346063dce26cd59a339
Author: Petr Písař <ppisar@redhat.com>
Date: Thu Apr 13 16:49:06 2023 +0200
Double-quote strings in scalar values only when they look like a number
Commit da8e77d4cc037b87c9600b2fd9921830e0a9b443 started to quote many
YAML scalars just in case they could be mistaken for numbers. This
caused quoting on places where not necessary. E.g.:
license:
module:
- "MIT"
That was disturbing and broke DNF tests which compare serialized YAML
documents as strings.
This patch introduces an inteligency into the quoting: Only strings
which could be mistaken for a number (1.0 versus "1.0") are quoted
now. This approach should restore brevity and provide more stability
into the YAML serialization.
Note that this patch only corrects overquoting which was introduced in
da8e77d4cc037b87c9600b2fd9921830e0a9b443 commit. Autoquoting of other
fields, including thorough tests, will be implemented in subsequent
commits.
https://github.com/fedora-modularity/libmodulemd/pull/587
commit 8827603d16a2911af971acd68508be501c21b3e2
Author: Petr Písař <ppisar@redhat.com>
Date: Wed Apr 5 15:54:08 2023 +0200
CI: EndBug/add-and-commit@v9 removed "token" input argument
A token is now inherited. I'm not sure whether cwd is processed
before loading github_token. If it is, the github_token override could
be removed. It looks safer to keep it there.
commit 31beacbc359c4c83fd434a248c5900e86b9a676c
Author: Petr Písař <ppisar@redhat.com>
Date: Mon Apr 3 17:21:22 2023 +0200
CI: Move uraimo/run-on-arch-action from v2.0.7 to v2
v2.0.7 used node12 image which is depreacated and will be removed.
This patch moves to v2 (v2.5.0 now) which uses node16.
<https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/>
commit af11a6eefb07d86f06c630f0f5b1d40a81a467e5
Author: Petr Písař <ppisar@redhat.com>
Date: Mon Apr 3 16:53:14 2023 +0200
CI: Move EndBug/add-and-commit from v6 to v9
v6 used depracated node12 image which will be removed. This patch
moves to v9 which uses node16.
<https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/>
commit 708d89f8deae4dab2bb2c792ff499b67f6894166
Author: Petr Písař <ppisar@redhat.com>
Date: Mon Apr 3 16:28:59 2023 +0200
CI: Move actions/checkout from v2 to v3 tag
v2 used node12 image which is deprecated and will be removed. This
patch moves actions/checkout to v3 which uses node16.
<https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/>
commit 0d1d7e485c6c13f2cc2e4b92279a17dd88fa6c92
Author: Petr Písař <ppisar@redhat.com>
Date: Wed Mar 29 15:13:47 2023 +0200
Add a support for decompressing Zstandard-compressed YAML files
Magic numbers and file name extension of Zstandard archives are taken
from RFC 8878. File extensions were consuleted with crearerepo_c
<https://github.com/rpm-software-management/createrepo_c/pull/345>.
Decompression is implemented with rpmio, which added the support in
rpm-4.14.0. Zstandard support in rpmio is checked at run-time.
NOTE: Only standardized "zst" file name extension is suppored.
I believe that createrepo_c won't implement nonstandard "zstd"
extension
<https://github.com/rpm-software-management/createrepo_c/pull/345>.
NOTE: Version bumped to 2.15 because this adds a new feature and
enhances API.
TODO: Check interoperability with crearerepo_c when it receives the
support.
TODO: Deprecate MODULEMD_COMPRESSION_TYPE_SENTINEL and remove it on
next ABI break. This end of enum prevents from adding new enum values
in natural order. E.g. if an application uses
MODULEMD_COMPRESSION_TYPE_SENTINEL for whatever reason, inserting
a value before it would change MODULEMD_COMPRESSION_TYPE_SENTINEL
value which is an ABI break. Funilly that value is not used anywhere
in libmodulemd code. Only in tests to iterate over the enum.
https://github.com/fedora-modularity/libmodulemd/issues/606
commit ce1ff53735d0cd3273413d9d259aa06c3d0798de
Author: Petr Písař <ppisar@redhat.com>
Date: Wed Mar 29 10:22:30 2023 +0200
CI: Enable tests on Mandriva
A local test shows a compiler -pthread option should work again with:
lib64glib2.0-devel-2.76.1-1.x86_64
glibc-devel-2.37-1.x86_64
<https://github.com/OpenMandrivaAssociation/distribution/issues/2698>
commit e143f2d8ac788461c2a0316fb88727b39f7e2290
Author: Petr Písař <ppisar@redhat.com>
Date: Wed Mar 29 10:20:11 2023 +0200
CI: Remove -Dlibmgic meson options from CI
71ecb126c242f8f3b7c0b0b8192f1321f5d6c227 commit obsoleted the libmgic
meson option. A use was found in CI. This patch removes it.
commit b528e34bd9eee5531f44b7b19bebaadb49b10d55
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Mar 28 17:53:37 2023 +0200
CI: Remove an architecture from ci-docs.sh and ci-autoformat.sh
Previsou 305c1630a2d4757bfc93f521540a5e43c9e862ad commit changed
fedora:32 into fedora:latest in two CI scripts. Those scripts actually
refers to fedora:${release}-${arch}. For an unknown reason Quay
repository does not have the architecture suffixed to floating tags
(latest and rawhide). Hence fetching fedora-latest-x86_64 failed:
+ m4 -D__IMAGE__=quay.io/fedora/fedora:latest-x86_64 -D__OS__=fedora -D__RELEASE__=latest /home/runner/work/libmodulemd/libmodulemd/.ci/fedora/Dockerfile.deps.tmpl
+ /home/runner/work/libmodulemd/libmodulemd/.ci/retry-command.sh /usr/bin/buildah bud --layers=true -f /home/runner/work/libmodulemd/libmodulemd/.ci/fedora/Dockerfile.deps.latest -t fedora-modularity/libmodulemd-deps-fedora:latest .
STEP 1/4: FROM quay.io/fedora/fedora:latest-x86_64
Trying to pull quay.io/fedora/fedora:latest-x86_64...
error creating build container: initializing source docker://quay.io/fedora/fedora:latest-x86_64: reading manifest latest-x86_64 in quay.io/fedora/fedora: manifest unknown: manifest unknown
"buildah bud" subcommand has an --arch option which could be utilized.
But "uname -m" (x86_64) does not match Quay architectures (amd64).
Because these two scripts do not do cross-architecture builds,
leaving a default (hopefully host architecture) is enough. Thus this
patch simple removes the architecture suffixes from the tags.
(I suspect that a similar issues exists for CI scripts using
fedora:rawhide. But I will address them later when proved that this
patch works.)
commit 305c1630a2d4757bfc93f521540a5e43c9e862ad
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Mar 28 16:59:07 2023 +0200
CI: Change hard-coded fedora:32 to fedora:latest
.ci/ci-docs.sh fails on pulling nonexistent fedora:32 container image.
It seems that the version nummber is not used for anything but the
image tag. The same applies to .ci/ci-autoformat.sh (which is not
unused).
This patch replaces Fedora "32" version with a floating tag "latest".
Other option would be "rawhide".
commit 29ef06572cfbfddc90f13ab9e53a3f3644aa6c15
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Mar 28 15:11:20 2023 +0200
Code auto-formatting
ubuntu-22.04 formatters are more picky. Apply their changes.
commit 6f39c11dca9aa8204f722eba08f26faf16415310
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Mar 28 14:57:36 2023 +0200
CI: Remove disabling seccomp for a container manager
When glibc-2.34 started to use clone3() syscall, seccomp policy became
violated and glib2 fork+exec functions failed. This discrepancy was
worked around with passing "--security-opt seccomp=unconfined" option
to a container manager.
Now when Microsoft fixed the policy in ubuntu-22.04 images
(ubuntu-20.04 remains broken) and we moved to ubuntu-22.04, the
workaround is not needed. This patch removes it.
<https://github.com/actions/runner-images/issues/3812>
commit 3d9a471e1bf54600eb675f2c6f5afa16fc811f60
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Mar 28 14:16:18 2023 +0200
CI: Run tests on ubuntu-latest
.github/workflows/multiarch.yaml tests started to fail in glib2:
Exec failed with: Failed to close file descriptor for child process (Operation not permitted)
That's the 2-year-old GitHub bug
<https://github.com/actions/runner-images/issues/3812>. Some other
projects which run ubuntu-latest reported that the bug is already
fixed. We used ubuntu-20.04. ubuntu-latest is ubuntu-22.04 now. Try that.
commit 71ecb126c242f8f3b7c0b0b8192f1321f5d6c227
Author: Petr Písař <ppisar@redhat.com>
Date: Wed Mar 22 14:45:55 2023 +0100
Remove an optional dependency on file library (libmagic)
Magic library carries a large database (9 MB). libmodulemd used that
library to detect 3 compresssion formats. Thus depending on that
library was perceived as too expensive.
This patch reimplements the detection of the 3 compression formats
without using magic library.
Because detection of plain text is inherently unreliable (with and
without libmagic), this patch changes modulemd_detect_compression() to
simply return MODULEMD_COMPRESSION_TYPE_NO_COMPRESSION (a plain text)
if the file is not compressed in one of the 3 supported formats. That
also applies to an empty file which was previously reported as
MODULEMD_COMPRESSION_TYPE_UNKNOWN_COMPRESSION (an uknown compression).
This change is considered harmless as a parser error will be reported
later when the file is passed to a YAML parser.
Note that this patch preserves a detection by a file name suffix, which
still takes a precedence over a detection by a file content.
commit abeec3e118bf7c71ca6aaf66862be42af81c7e29
Author: Petr Písař <ppisar@redhat.com>
Date: Thu Jul 8 14:41:32 2021 +0200
CI: Remove compatibility code for meson < 0.55.0
In commit 6d3e284d11ab4b56e23bc3dea9d8327a17b02e87 we increased
minimal meson version to 0.55. Also long ago in
0761d0b11e7f9b56c691d207f02c0a5ef0aa7cc9 we moved CI for Mageia from
Mageia 7 (EOL 2021-06-30) to Mageia 8.
commit c5198bffdb82c8b626b14cd6abcd6c729df4be9b
Author: Petr Písař <ppisar@redhat.com>
Date: Wed Feb 1 15:33:47 2023 +0100
Remove tautological mesion version conditions
In commit 6d3e284d11ab4b56e23bc3dea9d8327a17b02e87 we increased
minimal meson version to 0.55. This patch simplfies the build script
by removing unnecessary version checks.
https://github.com/fedora-modularity/libmodulemd/pull/605
commit 6d3e284d11ab4b56e23bc3dea9d8327a17b02e87
Author: Matt Jolly <Matt.Jolly@footclan.ninja>
Date: Fri Jan 27 16:03:09 2023 +1100
Increase Meson version to 0.55 and remove deprecated meson functions
meson-0.55.0 is required for gnome.generate_gir().
meson.source_root(), meson.build_root(), glib.get_pkgconfig_variable() were deprecated.
error() supports variadic arguments since meson-0.58.0.
The oldest supported distribution is EPEL 7 with meson-0.55.1 now.
This patch is based on <https://github.com/fedora-modularity/libmodulemd/pull/604>.
commit 4662d88b038739294ac0b641156e5bbb06b60368
Author: Libmodulemd CI <github-actions@github.com>
Date: Wed Jan 11 15:35:49 2023 +0000
Code auto-formatting
Signed-off-by: Libmodulemd CI <github-actions@github.com>
commit 3f1996d5de29a36b39b1a6bf6dcb73d5a25d11de
Author: Petr Písař <ppisar@redhat.com>
Date: Wed Jan 11 16:20:11 2023 +0100
Fix warnings about passing unsigned char * to strcmp()
It seems that glib optimized g_str_equal() to a macro expanding to
strcmp(). strcmp() expects arguments of char * type while yaml.h types
strings as unsigned char *.
This patch fixes it by casting to const gchar * because the code
invokes glib's g_str_equal().
commit 28a0e157d79822c08bbc5dab0989e15d2d95f874
Author: Petr Písař <ppisar@redhat.com>
Date: Wed Jan 11 15:50:13 2023 +0100
Spec: YAML: Clarify when a content license can be missing
If a module does not contain any artifacts, then there is no content
license.
commit 13f97b49a77bea340fde23c48edd5c418ee4b6d0
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Jan 10 15:56:07 2023 +0100
Spec: XML: Fix a typo in the format (comunity)
commit b29b4e07dca6e27bcb1ef2b3b7194b9e08fb151e
Author: Petr Písař <ppisar@redhat.com>
Date: Wed Dec 7 12:33:24 2022 +0100
Spec: XML: Add a top-level README
Reasons, plan, current status.
commit 52ee820fcee2985e01fd0bb675cd845400ce3873
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Dec 6 18:36:15 2022 +0100
Spec: XML: Remove intents
Never used, not supported by DNF.
commit 4df1550418bfb171d4fadbb14c64daa04ecb700f
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Dec 6 17:32:02 2022 +0100
Spec: XML: Remove RPM checksums
Never used.
commit 8bd4f5b12f4bf8e966cd53e5b355b6a5adf1a8d4
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Dec 6 17:09:04 2022 +0100
Spec: XML: Remove service levels
Never used. Replaced with module obsoletes.
commit b35c0409538e6e70c59fef5fc4af8da63f688508
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Dec 6 16:55:25 2022 +0100
Spec: XML: Dependencies without conflict elements cannot conflict implicitly
This patch removes a logical error. The original wording probably
meant a conflict with any stream of the module.
commit 504177519495a016e7d6bd7f3c7ca43ee618b9a2
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Dec 6 16:49:12 2022 +0100
Spec: XML: Remove dependencies-or level and flatten dependencies-and
DNF does not implement dependencies-or and states an implementation
would be difficult.
commit 8562ee1391b96b3cf49bcc8fd1e4d1f753c18b09
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Dec 6 15:33:40 2022 +0100
Spec: XML: Split specification into complete and reduced
Complete specification covers all features of YAML format.
Reduced specification strip features deemed as unnecessary.
commit b93a253c1a3d9fd40d62f87c13c316dec9cbb6fe
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Dec 6 15:30:50 2022 +0100
Spec: XML: Recommend sorting module names, streams, versions
commit 2a492b8c854183f55c088c18be7abe53ff558008
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Dec 6 15:12:29 2022 +0100
Spec: XML: Reorganize files
flat.xml removed, tests grouped, files renamed, documentation added.
commit 7613f41309a5a13ef6345bfd5c7c033f698ac3d6
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Dec 6 14:22:38 2022 +0100
Spec: XML: Split version of the format to version and revision
Incompatible changes, e.g. augmenting an alphabet for context values,
or repurposing an element, will increase /index/@version value.
Compatible changes, e.g. adding a new attribute or, or removing
a nonmandatory element, will increase /index/@revision value.
Originally, I wanted the express incompatible changes with XML
namespace, but that would be a hassle for implementators. Thus
I resorted to a new attribute.
XML Schemata will be released for each seperate revision. The schemata
are strict.
commit ebe92e5cb9ce00130aa5d6f0db9bb3503bf789b7
Author: Petr Písař <ppisar@redhat.com>
Date: Fri Dec 2 15:58:29 2022 +0100
Spec: XML: Limit maximal length of identifiers to 255 characters
Ideintifiers like a module name, stream, profile, intent, package
name, package release, architecture does not make sense to be too
large.
Also people indexing them in a database need a reasonable limit as
popular relation databases sets a limit for a string type.
commit 99e3a966be73b73b3c4e90bacd761fca1b2f2ae7
Author: Petr Písař <ppisar@redhat.com>
Date: Fri Dec 2 15:22:47 2022 +0100
Spec: XML: Relax license syntax
Various distribution can use various notations. Altough it seems that
SPDX is becoming prevalent.
commit 45965b2984b7a7ad6af624e702632a92033af029
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Nov 8 14:49:42 2022 +0100
Spec: XML: Multiple service levels are allowed
But their name must be unique.
Service level overlaps with an obsolete. Service level is not used now
and might me removed in the future.
commit 829399a6106f7a151f7db4cf2a02617e6974c2ae
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Nov 8 14:24:08 2022 +0100
Spec: XML: Service level end expressed as a timestamp
It used to be a date (year-month-day triplet). Now it is a timestamp
to unify with other time fields over the specification.
A conversion from YAML should use the last second of the day.
commit 634cd6bd5d8188c68bff862934a0be2ef22c41d7
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Nov 8 13:59:28 2022 +0100
Spec: XML: Prevent from duplicate licenses
commit fbbc1d396e084ec780f7eebb256847f86c4fad6c
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Nov 8 13:46:22 2022 +0100
Spec: XML: Tests for licenses
At least one module license and any number of content licenses.
commit ba7a1e6840c699add706cdc341fdc41757d69e65
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Nov 8 13:13:31 2022 +0100
Spec: XML: nevra checksums are attributes now
XML Schema is unable to express that an attribute depends on another
attribute while the element has the same name. (I.e. that <checksum
type="sha256" value="abcd"/> is to short value.)
Changing the checksum elements into differently named attributes
solves it. It also makes obvious that a single package cannot have
different checksum values of the same algorithms. (Technically it can,
before and after signing a package. But that's exactly the reason why
people want to remove these checksums from the format.)
commit b6087f0a7a6c39d781469ae27ddbcb06c0381bb8
Author: Petr Písař <ppisar@redhat.com>
Date: Tue Oct 25 14:09:31 2022 +0200
Spec: XML: Intent is an arbitrary string
This feature is implemented in subscription manager without
internationalization in mind. In Anaconda at wrong place, after
package installation. And completely ignored by DNF.
From the scarse examples I got, it seems it's an arbitrary string.
commit d2a278a27dfd4b9f3d0b8252b1e3393e2a662427
Author: Petr Písař <ppisar@redhat.com>
Date: Thu Oct 20 15:59:57 2022 +0200
Spec: XML: Obsolete and service level date-times are inclusive
Up to that date, inclusive, the support exists. The next second there
is no support.
commit 3d8204f8448d70ff2433c5e081552a6236447472
Author: Petr Písař <ppisar@redhat.com>
Date: Thu Oct 20 15:36:32 2022 +0200
Spec: XML: Build summaries and licenses are single-line, other texts multi-line
A module build description, a profile description, an obsolete message
and their translations can be multi-line.
An implementation detail: libxml2-2.9.14 accepts new-lines in
normalizedString type. Therefore I used a regular expression
contstraint.