Compare commits

...

No commits in common. "c8s" and "c10s" have entirely different histories.
c8s ... c10s

7 changed files with 232 additions and 31 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

3
.gitignore vendored
View File

@ -1,2 +1 @@
SOURCES/JSON-2.97001.tar.gz
/JSON-2.97001.tar.gz
/JSON-[0-9.]*.tar.gz

15
gating.yaml Normal file
View File

@ -0,0 +1,15 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
# RHEL
--- !Policy
product_versions:
- rhel-*
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

View File

@ -1,73 +1,243 @@
# Upstream has switched back to five-digit versions temporarily
%global rpm_version 2.97
%global temp_version_suffix 001
Name: perl-JSON
Summary: Parse and convert to JSON (JavaScript Object Notation)
Version: %{rpm_version}%{?temp_version_suffix:.%{temp_version_suffix}}
Release: 2%{?dist}
License: GPL+ or Artistic
Source0: http://search.cpan.org/CPAN/authors/id/I/IS/ISHIGAKI/JSON-%{rpm_version}%{?temp_version_suffix}.tar.gz
URL: http://search.cpan.org/dist/JSON/
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
Version: 4.10
Release: 7%{?dist}
License: GPL-1.0-or-later OR Artistic-1.0-Perl
URL: https://metacpan.org/release/JSON
Source0: https://cpan.metacpan.org/modules/by-module/JSON/JSON-%{version}.tar.gz
BuildArch: noarch
# Build
BuildRequires: coreutils
BuildRequires: findutils
BuildRequires: make
BuildRequires: perl-generators
BuildRequires: perl-interpreter
BuildRequires: perl(base)
BuildRequires: perl(Config)
BuildRequires: perl(ExtUtils::MakeMaker)
BuildRequires: perl(lib)
BuildRequires: perl(:VERSION) >= 5.5.30
# Module
BuildRequires: perl(B)
BuildRequires: perl(bytes)
BuildRequires: perl(Carp)
BuildRequires: perl(constant)
BuildRequires: perl(Data::Dumper)
BuildRequires: perl(Encode)
BuildRequires: perl(Exporter)
BuildRequires: perl(ExtUtils::MakeMaker)
BuildRequires: perl(File::Spec)
BuildRequires: perl(Math::BigFloat)
BuildRequires: perl(Math::BigInt)
BuildRequires: perl(lib)
BuildRequires: perl(overload)
BuildRequires: perl(Scalar::Util)
BuildRequires: perl(strict)
BuildRequires: perl(warnings)
# subs not used
# Tests
BuildRequires: perl(charnames)
BuildRequires: perl(Data::Dumper)
BuildRequires: perl(Test::More)
BuildRequires: perl(Test::Pod)
BuildRequires: perl(Tie::Array)
BuildRequires: perl(Tie::Hash)
BuildRequires: perl(Tie::IxHash)
BuildRequires: perl(utf8)
BuildRequires: perl(vars)
# Optional tests
BuildRequires: perl(JSON::XS) >= 4.00
BuildRequires: perl(Types::Serialiser)
# Dependencies
Requires: perl(B)
Requires: perl(Encode)
Requires: perl(Math::BigFloat)
Requires: perl(Math::BigInt)
Suggests: perl(Scalar::Util)
Requires: perl(warnings)
%{?perl_default_filter}
%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}perl\\(JSON::(Backend::PP|backportPP::Boolean|Boolean|PP|PP::IncrParser)\\)
%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}perl\\(JSON::(backportPP|backportPP::Boolean)\\)
%{?perl_default_subpackage_tests}
%description
This module converts between JSON (JavaScript Object Notation) and Perl
data structure into each other. For JSON, see http://www.crockford.com/JSON/.
%package tests
Summary: Tests for %{name}
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: coreutils
Requires: perl-Test-Harness
Requires: perl(Tie::IxHash)
%description tests
Tests from %{name}. Execute them
with "%{_libexecdir}/%{name}/test".
%prep
%setup -q -n JSON-%{rpm_version}%{?temp_version_suffix}
%setup -q -n JSON-%{version}
# make rpmlint happy...
find . -type f -exec chmod -c -x {} +
find t/ -type f -exec perl -pi -e 's|^#! perl|#!%{__perl}|' {} +
sed -i 's/\r//' README t/*
# Help generators to recognize Perl scripts
for F in t/*.t; do
perl -i -MConfig -ple 'print $Config{startperl} if $. == 1' "$F"
chmod +x "$F"
done
%build
%{__perl} Makefile.PL INSTALLDIRS=vendor
make %{?_smp_mflags}
/usr/bin/perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1
%{make_build}
%install
make pure_install DESTDIR=%{buildroot}
find %{buildroot} -type f -name .packlist -delete
%{make_install}
# Install tests
mkdir -p %{buildroot}%{_libexecdir}/%{name}
cp -a t %{buildroot}%{_libexecdir}/%{name}
cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF'
#!/bin/bash
# t/20_unknown.t writes to CWD
DIR=$(mktemp -d)
cp -a %{_libexecdir}/%{name}/t "$DIR"
unset PERL_JSON_BACKEND PERL_JSON_DEBUG PERL_JSON_PP_USE_B
pushd "$DIR"
prove -I . -j "$(getconf _NPROCESSORS_ONLN)"
popd
rm -r "$DIR"
EOF
chmod +x %{buildroot}%{_libexecdir}/%{name}/test
# Correct permissions
%{_fixperms} -c %{buildroot}
%check
make test
unset PERL_JSON_BACKEND PERL_JSON_DEBUG PERL_JSON_PP_USE_B
export HARNESS_OPTIONS=j$(perl -e 'if ($ARGV[0] =~ /.*-j([0-9][0-9]*).*/) {print $1} else {print 1}' -- '%{?_smp_mflags}')
%{make_build} test
%files
%doc Changes README
%{perl_vendorlib}/*
%{_mandir}/man3/*
%files tests
%{_libexecdir}/%{name}
%changelog
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 4.10-7
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 4.10-6
- Bump release for June 2024 mass rebuild
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.10-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.10-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4.10-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4.10-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Mon Oct 10 2022 Paul Howarth <paul@city-fan.org> - 4.10-1
- Update to 4.10
- Updated backportPP with JSON::PP 4.12
- Use SPDX-format license tag
* Mon Aug 1 2022 Paul Howarth <paul@city-fan.org> - 4.09-1
- Update to 4.09
- Updated backportPP with JSON::PP 4.11
- Fix a test to pass under perl with core bool support
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.07-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Jun 24 2022 Paul Howarth <paul@city-fan.org> - 4.07-1
- Update to 4.07
- Updated backportPP with JSON::PP 4.10
* Tue May 31 2022 Jitka Plesnikova <jplesnik@redhat.com> - 4.06-2
- Perl 5.36 rebuild
* Sun May 22 2022 Paul Howarth <paul@city-fan.org> - 4.06-1
- Update to 4.06
- Updated backportPP with JSON::PP 4.09
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.05-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Jan 14 2022 Paul Howarth <paul@city-fan.org> - 4.05-1
- Update to 4.05
- Removed VERSION section in pod (GH#52)
* Sat Dec 18 2021 Paul Howarth <paul@city-fan.org> - 4.04-1
- Update to 4.04
- Updated backportPP with JSON::PP 4.07
- Use author-independent source URL
- Classify buildreqs by usage
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.03-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri May 21 2021 Jitka Plesnikova <jplesnik@redhat.com> - 4.03-4
- Perl 5.34 rebuild
* Mon Feb 22 2021 Petr Pisar <ppisar@redhat.com> - 4.03-3
- Package tests manually
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.03-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Sun Jan 24 2021 Emmanuel Seyman <emmanuel@seyman.fr> - 4.03-1
- Update to 4.03
- Use %%{make_install} instead of "make pure_install"
- Use %%{make_build} instead of make
- Replace calls to %%{__perl} with /usr/bin/perl
- Pass NO_PACKLIST and NO_PERLLOCAL to Makefile.PL
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.02-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jun 23 2020 Jitka Plesnikova <jplesnik@redhat.com> - 4.02-6
- Perl 5.32 rebuild
* Thu Mar 12 2020 Petr Pisar <ppisar@redhat.com> - 4.02-5
- Specify all dependencies
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.02-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.02-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri May 31 2019 Jitka Plesnikova <jplesnik@redhat.com> - 4.02-2
- Perl 5.30 rebuild
* Sat Feb 23 2019 Paul Howarth <paul@city-fan.org> - 4.02-1
- Update to 4.02
- Fix a test that broke if perl was compiled with -Dquadmath (CPAN RT#128589)
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.01-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sun Jan 20 2019 Emmanuel Seyman <emmanuel@seyman.fr> - 4.01-1
- Update to 4.01
* Fri Dec 7 2018 Paul Howarth <paul@city-fan.org> - 4.00-1
- Update to 4.00
- BACKWARD INCOMPATIBILITY: As JSON::XS 4.0 changed its policy and enabled
allow_nonref by default, JSON::PP, and thus JSON, also enabled allow_nonref
by default
- Updated backportPP with JSON::PP 4.00
- Allow PERL_JSON_PP_USE_B environmental variable to restore old number
detection behavior for compatibility
- RPM version resynced with upstream
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.97.001-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Thu Jun 28 2018 Jitka Plesnikova <jplesnik@redhat.com> - 2.97.001-3
- Perl 5.28 rebuild
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.97.001-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

5
plans/sanity.fmf Normal file
View File

@ -0,0 +1,5 @@
summary: Sanity tests
discover:
how: fmf
execute:
how: tmt

View File

@ -1 +1 @@
SHA512 (JSON-2.97001.tar.gz) = 42fe08c1d7b8f689592a28c17dd7853a90c4236e64a9be175a635af005da48e06c436e80dac905893e2232ca8efee3832f6ad51992fd4ca851f8f0fd796860df
SHA512 (JSON-4.10.tar.gz) = 2aa0c40fbff23d3df84cfa729d00a32a69e06ea83d082b25b7223f90cb157fa3c2e72342fadcd2ebe09b5848a0e3a7d2caec6d1753e95952a56e3e9367f343e3

11
tests/upstream-tests.fmf Normal file
View File

@ -0,0 +1,11 @@
summary: Upstream tests
component: perl-JSON
require: perl-JSON-tests
test: /usr/libexec/perl-JSON/test
enabled: true
tag:
- rhel-buildroot
adjust:
- enabled: false
when: distro < rhel-10 or distro < centos-stream-10
continue: false