diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/.gitignore b/.gitignore index 8c87364..962743e 100644 --- a/.gitignore +++ b/.gitignore @@ -67,3 +67,16 @@ iso-codes-3.19.tar.bz2 /iso-codes-iso-codes-4.2.tar.gz /iso-codes-iso-codes-4.3.tar.gz /iso-codes-iso-codes-4.4.tar.gz +/iso-codes-iso-codes-4.5.0.tar.gz +/iso-codes-iso-codes-4.6.0.tar.gz +/iso-codes-v4.9.0.tar.gz +/iso-codes-v4.10.0.tar.gz +/iso-codes-v4.11.0.tar.gz +/iso-codes-v4.12.0.tar.gz +/iso-codes-v4.13.0.tar.gz +/iso-codes-v4.15.0.tar.gz +/iso-codes-v4.16.0.tar.gz +/iso-codes-v4.17.0.tar.gz +/iso-codes-v4.18.0.tar.gz +/iso-codes-v4.19.0.tar.gz +/iso-codes-v4.20.1.tar.gz diff --git a/iso-codes.spec b/iso-codes.spec index 41ac01a..f7eb53a 100644 --- a/iso-codes.spec +++ b/iso-codes.spec @@ -1,13 +1,14 @@ Name: iso-codes Summary: ISO code lists and translations -Version: 4.4 +Version: 4.20.1 Release: 2%{?dist} -License: LGPLv2+ +License: LGPL-2.1-or-later URL: https://salsa.debian.org/iso-codes-team/iso-codes -Source0: https://salsa.debian.org/iso-codes-team/%{name}/-/archive/%{name}-%{version}/%{name}-%{name}-%{version}.tar.gz +Source0: https://salsa.debian.org/iso-codes-team/%{name}/-/archive/v%{version}/%{name}-v%{version}.tar.gz BuildRequires: gettext BuildRequires: python3 +BuildRequires: meson BuildArch: noarch # for /usr/share/xml @@ -27,20 +28,27 @@ This package contains the pkg-config files for development when building programs that use %{name}. %prep -%autosetup -n %{name}-%{name}-%{version} +%autosetup -n %{name}-v%{version} + +# The '&' character is not getting parsed using xmllint +# Change it to "and" word +sed -i 's/ & / and /g' data/iso_3166-2.json %build -%configure -%make_build +%meson +%meson_build %install -%make_install INSTALL="%{__install} -p" +%meson_install + +%check +%meson_test %find_lang %{name} --all-name %files -f %{name}.lang -%doc ChangeLog.md README.md -%license COPYING +%doc CHANGELOG.md README.md +%license LICENSES/LGPL-2.1-or-later.txt %dir %{_datadir}/xml/iso-codes %{_datadir}/xml/iso-codes/*.xml %{_datadir}/iso-codes @@ -49,6 +57,94 @@ when building programs that use %{name}. %{_datadir}/pkgconfig/iso-codes.pc %changelog +* Fri Jan 02 2026 Parag Nemade - 4.20.1-2 +- Upstream moved to meson build system + +* Fri Jan 02 2026 Parag Nemade - 4.20.1-1 +- Update to 4.20.1 version (#2426701) + +* Fri Nov 14 2025 Parag Nemade - 4.19.0-1 +- Update to 4.19.0 version (#2413657) + +* Thu Jul 24 2025 Fedora Release Engineering - 4.18.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Sat Apr 12 2025 Parag Nemade - 4.18.0-1 +- Update to 4.18.0 version (#2359183) + +* Fri Jan 17 2025 Fedora Release Engineering - 4.17.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Mon Sep 16 2024 Parag Nemade - 4.17.0-1 +- Update to 4.17.0 version (#2312301) + +* Thu Jul 18 2024 Fedora Release Engineering - 4.16.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Fri Jul 12 2024 Parag Nemade - 4.16.0-4 +- Fix xmllint error for iso_3166-2.xml file + +* Wed Jan 24 2024 Fedora Release Engineering - 4.16.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Jan 20 2024 Fedora Release Engineering - 4.16.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Jan 15 2024 Parag Nemade - 4.16.0-1 +- Update to 4.16.0 version (#2258341) + +* Thu Jul 20 2023 Fedora Release Engineering - 4.15.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Fri Apr 28 2023 Parag Nemade - 4.15.0-1 +- Update to 4.15.0 version (#2190318) + +* Tue Feb 28 2023 Parag Nemade - 4.13.0-1 +- Update to 4.13.0 version (#2173897) + +* Thu Jan 19 2023 Fedora Release Engineering - 4.12.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Fri Dec 02 2022 Parag Nemade - 4.12.0-2 +- Update license tag to SPDX format + +* Thu Nov 10 2022 Parag Nemade - 4.12.0-1 +- Update to 4.12.0 version (#2140456) + +* Mon Jul 25 2022 Parag Nemade - 4.11.0-1 +- Update to 4.11.0 version (#2110786) + +* Thu Jul 21 2022 Fedora Release Engineering - 4.10.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Thu Jun 02 2022 Parag Nemade - 4.10.0-1 +- Update to 4.10.0 version (#2092413) + +* Thu Jan 20 2022 Fedora Release Engineering - 4.9.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Tue Jan 04 2022 Parag Nemade - 4.9.0-1 +- Update to 4.9.0 version (#2036757) + +* Fri Nov 05 2021 Parag Nemade - 4.8.0-1 +- Update to 4.8.0 version (#2019880) +- Adjust upstream tarball Source URL + +* Thu Jul 22 2021 Fedora Release Engineering - 4.6.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Mon Mar 08 2021 Parag Nemade - 4.6.0-1 +- Update to 4.6.0 version (#1936377) + +* Tue Jan 26 2021 Fedora Release Engineering - 4.5.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Jul 28 2020 Fedora Release Engineering - 4.5.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed May 20 2020 Parag Nemade - 4.5.0-1 +- Update to 4.5.0 version (#1837748) + * Wed Jan 29 2020 Fedora Release Engineering - 4.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild diff --git a/plans/iso-codes.fmf b/plans/iso-codes.fmf new file mode 100644 index 0000000..c1627f9 --- /dev/null +++ b/plans/iso-codes.fmf @@ -0,0 +1,5 @@ +summary: Basic smoke test +discover: + how: fmf +execute: + how: tmt diff --git a/sources b/sources index 42ef98e..0f9fd89 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (iso-codes-iso-codes-4.4.tar.gz) = d22ecdef75cd07b59ea0dbc87d25eb254676ab83297c1a43dbad9d3471ba355630f5588b4590972526f9e885b2e1ec307303ac0bb94b2dd5c707377c1cfa64d8 +SHA512 (iso-codes-v4.20.1.tar.gz) = 2b5690b109da3d4f969c62f1a9653f6a12f6529794b97d0c834d708ff9a407bc0193047992b2acea7525f4638a68dbd9a6dceec8b0b0d08f23a2fd2e3124b1d2 diff --git a/tests/main.fmf b/tests/main.fmf new file mode 100644 index 0000000..6fd6f26 --- /dev/null +++ b/tests/main.fmf @@ -0,0 +1,7 @@ +test: ./runtests.sh +duration: 10m +framework: beakerlib +require: + - iso-codes + - python3-jsonschema + - rpm-build diff --git a/tests/run_test.sh b/tests/run_test.sh new file mode 100755 index 0000000..8e7fb00 --- /dev/null +++ b/tests/run_test.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +# If one of the commands below returns non-zero then exit immediately +set -e + +echo "Let's check the upstream data files timestamp" +ls data/iso*.json -l +echo "Validating json data files written with correct syntax" +python3 bin/validate_json_data.py +retval=$? +if [ $retval -ne 0 ]; then + echo "FAILED: Validation of data files" +else + echo "PASSED: Validation of data files" +fi + +echo "Let's check timestamp of newly generated data files" +ls data/iso*.json -l diff --git a/tests/runtests.sh b/tests/runtests.sh new file mode 100755 index 0000000..d12439c --- /dev/null +++ b/tests/runtests.sh @@ -0,0 +1,41 @@ +#!/bin/bash +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +NAME=iso-codes + +rlJournalStart + rlPhaseStartSetup + rlAssertRpm ${NAME} + rlShowPackageVersion ${NAME} + rlRun -t -l "VERSION=$(rpm -q ${NAME} --queryformat='%{version}')" 0 "Get VERSION" + rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory" + rlRun "pushd $tmp" + rlFetchSrcForInstalled "${NAME}" + rlRun "rpm --define '_topdir $tmp' -i *src.rpm" + rlRun -t -l "mkdir BUILD" 0 "Creating BUILD directory" + rlRun -t -l "rpmbuild --noclean --nodeps --define '_topdir $tmp' -bp $tmp/SPECS/*spec" + if [ -d BUILD/${NAME}-${VERSION}-build ]; then + rlRun -t -l "pushd BUILD/${NAME}-${VERSION}-build/${NAME}-v${VERSION}" + else + rlRun -t -l "pushd BUILD/${NAME}-v${VERSION}" + fi + rlPhaseEnd + + rlPhaseStartTest + rlRun "set -o pipefail" + rlRun "ls data/iso*.json -l" + rlRun "python3 bin/validate_json_data.py" + rlRun "retval=$?" + rlRun "echo Test return value is $retval" + rlRun "ls data/iso*.json -l" + rlRun "retval2=$?" + rlRun "echo $retval2" + rlRun "popd" 0 + rlPhaseEnd + + rlPhaseStartCleanup + rlRun "popd" + rlRun "rm -r $tmp" 0 "Remove tmp directory" + rlPhaseEnd +rlJournalEnd +