9682042
Name:           perl-Protocol-HTTP2
e1c55a5
Version:        1.11
e1c55a5
Release:        1%{?dist}
9682042
Summary:        HTTP/2 protocol implementation (RFC 7540)
d21ffab
License:        GPL-1.0-or-later OR Artistic-1.0-Perl
64fd67d
URL:            https://metacpan.org/release/Protocol-HTTP2
64fd67d
Source0:        https://cpan.metacpan.org/authors/id/C/CR/CRUX/Protocol-HTTP2-%{version}.tar.gz
9682042
BuildArch:      noarch
d21ffab
BuildRequires:  coreutils
d21ffab
BuildRequires:  findutils
9682042
BuildRequires:  perl-devel
9682042
BuildRequires:  perl-generators
a88eab3
BuildRequires:  perl-interpreter
22cf3fd
BuildRequires:  perl(Config)
9682042
BuildRequires:  perl(Module::Build::Tiny) >= 0.035
9682042
BuildRequires:  perl(strict)
9682042
# Run-time:
9682042
BuildRequires:  perl(:VERSION) >= 5.8.5
9682042
BuildRequires:  perl(Carp)
9682042
BuildRequires:  perl(constant)
9682042
BuildRequires:  perl(Exporter)
9682042
BuildRequires:  perl(MIME::Base64) >= 3.11
9682042
BuildRequires:  perl(Scalar::Util)
9682042
BuildRequires:  perl(Time::HiRes)
9682042
BuildRequires:  perl(warnings)
9682042
# Tests:
9682042
BuildRequires:  perl(AnyEvent)
9682042
BuildRequires:  perl(AnyEvent::Handle)
9682042
BuildRequires:  perl(AnyEvent::Socket)
9682042
BuildRequires:  perl(AnyEvent::TLS)
9682042
BuildRequires:  perl(Data::Dumper)
9682042
BuildRequires:  perl(lib)
9682042
BuildRequires:  perl(Net::SSLeay) >= 1.45
9682042
BuildRequires:  perl(Test::LeakTrace)
9682042
BuildRequires:  perl(Test::More) >= 0.98
9682042
BuildRequires:  perl(Test::TCP)
9682042
Requires:       perl(MIME::Base64) >= 3.11
9682042
9682042
# Remove under-specified dependencies
22cf3fd
%global __requires_exclude %{?__requires_exclude:%{__requires_exclude}|}^perl\\((MIME::Base64|Net::SSLeay|Test::More)\\)$
22cf3fd
# Hide private modules
22cf3fd
%global __requires_exclude %{__requires_exclude}|^perl\\((PH2ClientServerTest|PH2Test)\\)
22cf3fd
%global __provides_exclude %{?__provides_exclude:%{__provides_exclude}|}^perl\\((PH2ClientServerTest|PH2Test)\\)
9682042
9682042
%description
9682042
Protocol::HTTP2 is Perl HTTP/2 protocol implementation (RFC 7540) with
9682042
stateful decoders/encoders of HTTP/2 frames. You may use this module to
9682042
implement your own HTTP/2 client/server/intermediate on top of your favorite
9682042
event loop over plain or TLS socket.
9682042
22cf3fd
%package tests
22cf3fd
Summary:        Tests for %{name}
22cf3fd
Requires:       %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
22cf3fd
Requires:       perl-Test-Harness
22cf3fd
Requires:       perl(Net::SSLeay) >= 1.45
22cf3fd
Requires:       perl(Test::More) >= 0.98
22cf3fd
22cf3fd
%description tests
22cf3fd
Tests from %{name}. Execute them
22cf3fd
with "%{_libexecdir}/%{name}/test".
22cf3fd
9682042
%prep
4181a08
%autosetup -p1 -n Protocol-HTTP2-%{version}
22cf3fd
# Help generators to recognize Perl scripts
22cf3fd
for F in t/*.t; do
22cf3fd
    perl -i -MConfig -ple 'print $Config{startperl} if $. == 1 && !s{\A#!\s*perl}{$Config{startperl}}' "$F"
22cf3fd
    chmod +x "$F"
22cf3fd
done 
9682042
9682042
%build
9682042
perl Build.PL --installdirs=vendor
9682042
./Build
9682042
9682042
%install
d21ffab
./Build install --destdir=%{buildroot} --create_packlist=0
d21ffab
find %{buildroot}%{_mandir} -type f -empty -delete
d21ffab
%{_fixperms} %{buildroot}/*
22cf3fd
# Install tests
22cf3fd
mkdir -p %{buildroot}%{_libexecdir}/%{name}
22cf3fd
cp -a t %{buildroot}%{_libexecdir}/%{name}
22cf3fd
mkdir -p %{buildroot}%{_libexecdir}/%{name}/examples
22cf3fd
cp -a examples/test.{key,crt} %{buildroot}%{_libexecdir}/%{name}/examples
22cf3fd
cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF'
22cf3fd
#!/bin/sh
22cf3fd
cd %{_libexecdir}/%{name} && exec prove -I . -j "$(getconf _NPROCESSORS_ONLN)"
22cf3fd
EOF
22cf3fd
chmod +x %{buildroot}%{_libexecdir}/%{name}/test
9682042
9682042
%check
22cf3fd
export HARNESS_OPTIONS=j$(perl -e 'if ($ARGV[0] =~ /.*-j([0-9][0-9]*).*/) {print $1} else {print 1}' -- '%{?_smp_mflags}')
9682042
./Build test
9682042
9682042
%files
9682042
%license LICENSE
9682042
%doc Changes examples README.md
d21ffab
%dir %{perl_vendorlib}/Protocol
d21ffab
%{perl_vendorlib}/Protocol/HTTP2
d21ffab
%{perl_vendorlib}/Protocol/HTTP2.pm
d21ffab
%{_mandir}/man3/Protocol::HTTP2.*
d21ffab
%{_mandir}/man3/Protocol::HTTP2::*
9682042
22cf3fd
%files tests
22cf3fd
%{_libexecdir}/%{name}
22cf3fd
9682042
%changelog
e1c55a5
* Tue May 21 2024 Petr Pisar <ppisar@redhat.com> - 1.11-1
e1c55a5
- 1.11 bump
e1c55a5
bc27598
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.10-15
bc27598
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
bc27598
ddf16b4
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.10-14
ddf16b4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
ddf16b4
4181a08
* Tue Aug 08 2023 Petr Pisar <ppisar@redhat.com> - 1.10-13
4181a08
- Adapt tests to OpenSSL 3.1.0 (TLS 1.0 moved to security level 0)
4181a08
  (upstream bug #16)
d21ffab
- Convert a license tag to SPDX
22cf3fd
- Package the tests
4181a08
1150e22
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.10-12
1150e22
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
1150e22
8b9898b
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.10-11
8b9898b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
8b9898b
6747b35
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.10-10
6747b35
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
6747b35
bd1cbf8
* Wed Jun 01 2022 Jitka Plesnikova <jplesnik@redhat.com> - 1.10-9
bd1cbf8
- Perl 5.36 rebuild
bd1cbf8
5a49a63
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.10-8
5a49a63
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
5a49a63
ce52a8f
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.10-7
ce52a8f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
ce52a8f
df050c1
* Fri May 21 2021 Jitka Plesnikova <jplesnik@redhat.com> - 1.10-6
df050c1
- Perl 5.34 rebuild
df050c1
88db79c
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.10-5
88db79c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
88db79c
d06bf0e
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.10-4
d06bf0e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
d06bf0e
18d53be
* Tue Jun 23 2020 Jitka Plesnikova <jplesnik@redhat.com> - 1.10-3
18d53be
- Perl 5.32 rebuild
18d53be
06ad960
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.10-2
06ad960
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
06ad960
2ba2b62
* Tue Nov 12 2019 Petr Pisar <ppisar@redhat.com> - 1.10-1
2ba2b62
- 1.10 bump
2ba2b62
cad29e1
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.09-5
cad29e1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
cad29e1
71483dc
* Fri May 31 2019 Jitka Plesnikova <jplesnik@redhat.com> - 1.09-4
71483dc
- Perl 5.30 rebuild
71483dc
ee59c1d
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.09-3
ee59c1d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
ee59c1d
76b8c1f
* Mon Aug 06 2018 Petr Pisar <ppisar@redhat.com> - 1.09-2
76b8c1f
- Do not package empty manual pages (CPAN RT#125985)
76b8c1f
a88eab3
* Mon Aug 06 2018 Petr Pisar <ppisar@redhat.com> - 1.09-1
a88eab3
- 1.09 bump
a88eab3
4aabb9a
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.08-6
4aabb9a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
4aabb9a
7190f74
* Fri Jun 29 2018 Jitka Plesnikova <jplesnik@redhat.com> - 1.08-5
7190f74
- Perl 5.28 rebuild
7190f74
dc3fc33
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.08-4
dc3fc33
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
dc3fc33
b674555
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.08-3
b674555
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
b674555
4c048bf
* Mon Jun 05 2017 Jitka Plesnikova <jplesnik@redhat.com> - 1.08-2
4c048bf
- Perl 5.26 rebuild
4c048bf
9682042
* Fri Mar 10 2017 Petr Pisar <ppisar@redhat.com> 1.08-1
9682042
- Specfile autogenerated by cpanspec 1.78.