314aa24
Name:		perl-perl5i
314aa24
Summary:	Fix as much of Perl 5 as possible in one pragma
6eaa8f1
Version:	2.13.2
390c531
Release:	14%{?dist}
314aa24
License:	GPL+ or Artistic
314aa24
URL:		https://metacpan.org/release/perl5i
314aa24
Source0:	http://cpan.metacpan.org/authors/id/M/MS/MSCHWERN/perl5i-v%{version}.tar.gz
7673ce0
Patch0:		perl5i-v2.13.2-coercion.patch
314aa24
# Module Build
7673ce0
BuildRequires:	coreutils
7673ce0
BuildRequires:	gcc
7673ce0
BuildRequires:	perl-devel
9f3acc7
BuildRequires:	perl-generators
7673ce0
BuildRequires:	perl-interpreter >= 4:5.10.0
314aa24
BuildRequires:	perl(lib)
314aa24
BuildRequires:	perl(Module::Build) >= 0.36
314aa24
# Module Runtime
7673ce0
BuildRequires:	perl(:VERSION) >= 5.10.0
314aa24
BuildRequires:	perl(CLASS) >= 1.00
314aa24
BuildRequires:	perl(Capture::Tiny) >= 0.06
314aa24
BuildRequires:	perl(Carp)
314aa24
BuildRequires:	perl(Carp::Fix::1_25) >= 1.000000
314aa24
BuildRequires:	perl(Child) >= 0.009
314aa24
BuildRequires:	perl(Data::Dumper)
314aa24
BuildRequires:	perl(DateTime) >= 0.47
314aa24
BuildRequires:	perl(DateTime::Format::Epoch) >= 0.11
314aa24
BuildRequires:	perl(DateTime::TimeZone::Tzfile) >= 0.002
314aa24
BuildRequires:	perl(Devel::Declare::MethodInstaller::Simple) >= 0.006009
314aa24
BuildRequires:	perl(Digest::MD5) >= 2.36
314aa24
BuildRequires:	perl(Digest::SHA) >= 5.45
314aa24
BuildRequires:	perl(Encode)
390c531
BuildRequires:	perl(English)
314aa24
BuildRequires:	perl(File::chdir) >= 0.1002
314aa24
BuildRequires:	perl(File::Spec)
314aa24
BuildRequires:	perl(Hash::FieldHash) >= 0.06
314aa24
BuildRequires:	perl(Hash::Merge::Simple) >= 0.04
7fa109f
BuildRequires:	perl(Hash::StoredIterator) >= 0.007
7530079
BuildRequires:	perl(Import::Into) >= 1.002003
314aa24
BuildRequires:	perl(IO::Handle)
314aa24
BuildRequires:	perl(IPC::System::Simple) >= 1.18
6eaa8f1
BuildRequires:	perl(JSON::MaybeXS) >= 1.003005
314aa24
BuildRequires:	perl(List::MoreUtils) >= 0.22
314aa24
BuildRequires:	perl(Modern::Perl) >= 1.03
314aa24
BuildRequires:	perl(Module::Load) >= 0.16
314aa24
BuildRequires:	perl(Object::ID) >= v0.1.0
7fa109f
BuildRequires:	perl(Path::Tiny) >= 0.036
314aa24
BuildRequires:	perl(Perl6::Caller) >= 0.100
314aa24
BuildRequires:	perl(POSIX)
314aa24
BuildRequires:	perl(Scalar::Util)
314aa24
BuildRequires:	perl(Sub::Name)
314aa24
BuildRequires:	perl(Taint::Util) >= 0.06
314aa24
BuildRequires:	perl(Text::Wrap) >= 2009.0305
314aa24
BuildRequires:	perl(Time::y2038)
314aa24
BuildRequires:	perl(Try::Tiny) >= 0.02
314aa24
BuildRequires:	perl(Want) >= 0.18
314aa24
BuildRequires:	perl(YAML::Any) >= 0.70
7530079
BuildRequires:	perl(autobox) >= 2.80
314aa24
BuildRequires:	perl(autobox::Core) >= 1.0
314aa24
BuildRequires:	perl(autobox::List::Util) >= 20090629
314aa24
BuildRequires:	perl(autobox::dump) >= 20090426
314aa24
BuildRequires:	perl(autodie) >= 2.12
314aa24
BuildRequires:	perl(autovivification) >= 0.06
314aa24
BuildRequires:	perl(base)
314aa24
BuildRequires:	perl(constant)
314aa24
BuildRequires:	perl(if)
314aa24
BuildRequires:	perl(indirect) >= 0.24
314aa24
BuildRequires:	perl(mro)
314aa24
BuildRequires:	perl(open)
314aa24
BuildRequires:	perl(overload)
314aa24
BuildRequires:	perl(parent) >= 0.221
314aa24
BuildRequires:	perl(true::VERSION) >= 0.16
7530079
BuildRequires:	perl(utf8::all) >= 0.015
314aa24
BuildRequires:	perl(version) >= 0.77
314aa24
# Test Suite
314aa24
BuildRequires:	perl(Config)
314aa24
BuildRequires:	perl(Exporter)
314aa24
BuildRequires:	perl(ExtUtils::CBuilder) >= 0.26
314aa24
BuildRequires:	perl(File::Temp)
314aa24
BuildRequires:	perl(IPC::Open3)
314aa24
BuildRequires:	perl(PerlIO)
314aa24
BuildRequires:	perl(Test::More) >= 0.88
7fa109f
BuildRequires:	perl(Test::Most)
314aa24
BuildRequires:	perl(Test::Output) >= 0.16
314aa24
BuildRequires:	perl(Test::Warn) >= 0.11
314aa24
# Runtime
314aa24
Requires:	perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
314aa24
Requires:	perl(CLASS) >= 1.00
314aa24
Requires:	perl(Capture::Tiny) >= 0.06
314aa24
Requires:	perl(Carp::Fix::1_25) >= 1.000000
314aa24
Requires:	perl(Child) >= 0.009
314aa24
Requires:	perl(Data::Dumper)
314aa24
Requires:	perl(DateTime) >= 0.47
314aa24
Requires:	perl(DateTime::Format::Epoch) >= 0.11
314aa24
Requires:	perl(DateTime::TimeZone::Tzfile) >= 0.002
314aa24
Requires:	perl(Devel::Declare::MethodInstaller::Simple) >= 0.006009
314aa24
Requires:	perl(Digest::MD5) >= 2.36
314aa24
Requires:	perl(Digest::SHA) >= 5.45
390c531
Requires:	perl(English)
314aa24
Requires:	perl(File::chdir) >= 0.1002
314aa24
Requires:	perl(File::Spec)
314aa24
Requires:	perl(Hash::FieldHash) >= 0.06
314aa24
Requires:	perl(Hash::Merge::Simple) >= 0.04
7fa109f
Requires:	perl(Hash::StoredIterator) >= 0.007
7530079
Requires:	perl(Import::Into) >= 1.002003
314aa24
Requires:	perl(IPC::System::Simple) >= 1.18
6eaa8f1
Requires:	perl(JSON::MaybeXS) >= 1.003005
314aa24
Requires:	perl(List::MoreUtils) >= 0.22
314aa24
Requires:	perl(Modern::Perl) >= 1.03
314aa24
Requires:	perl(Module::Load) >= 0.16
314aa24
Requires:	perl(Object::ID) >= v0.1.0
7fa109f
Requires:	perl(Path::Tiny) >= 0.036
314aa24
Requires:	perl(Perl6::Caller) >= 0.100
314aa24
Requires:	perl(Taint::Util) >= 0.06
314aa24
Requires:	perl(Text::Wrap) >= 2009.0305
314aa24
Requires:	perl(Try::Tiny) >= 0.02
314aa24
Requires:	perl(Want) >= 0.18
314aa24
Requires:	perl(YAML::Any) >= 0.70
7530079
Requires:	perl(autobox) >= 2.80
314aa24
Requires:	perl(autobox::Core) >= 1.0
314aa24
Requires:	perl(autobox::List::Util) >= 20090629
314aa24
Requires:	perl(autobox::dump) >= 20090426
314aa24
Requires:	perl(autodie) >= 2.12
314aa24
Requires:	perl(autovivification) >= 0.06
314aa24
Requires:	perl(if)
314aa24
Requires:	perl(indirect) >= 0.24
314aa24
Requires:	perl(parent) >= 0.221
314aa24
Requires:	perl(true::VERSION) >= 0.16
7530079
Requires:	perl(utf8::all) >= 0.015
314aa24
314aa24
# Filter underspecified dependencies
314aa24
%global __requires_exclude ^perl\\(CLASS\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(Carp::Fix::1_25\\)$
7530079
%global __requires_exclude %__requires_exclude|^perl\\(Devel::Declare::MethodInstaller::Simple\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(Hash::FieldHash\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(Hash::StoredIterator\\)$
7530079
%global __requires_exclude %__requires_exclude|^perl\\(Import::Into\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(Module::Load\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(Try::Tiny\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(Want\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(autobox\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(autobox::Core\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(autobox::List::Util\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(autobox::dump\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(autodie\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(autovivification\\)$
314aa24
%global __requires_exclude %__requires_exclude|^perl\\(parent\\)$
314aa24
314aa24
%description
314aa24
Perl 5 has a lot of warts. There's a lot of individual modules and techniques
314aa24
out there to fix those warts. perl5i aims to pull the best of them together
314aa24
into one module so you can turn them on all at once.
7673ce0
314aa24
This includes adding features, changing existing core functions and changing
314aa24
defaults. It will likely not be 100%% backwards compatible with Perl 5, though
314aa24
it will be 99%%, perl5i will try to have a lexical effect.
7673ce0
314aa24
Please add to this imaginary world and help make it real, either by telling
314aa24
me what Perl looks like in your imagination
314aa24
(http://github.com/schwern/perl5i/issues) or make a fork (forking on github is
314aa24
like a branch you control) and implement it yourself.
314aa24
314aa24
%prep
314aa24
%setup -q -n perl5i-v%{version}
314aa24
7673ce0
# Fix coercion warnings in 0.pm and 1.pm as per existing fixes in 2.pm
7673ce0
%patch0
7673ce0
314aa24
%build
7fa109f
perl Build.PL --installdirs=vendor --optimize="%{optflags}"
314aa24
./Build
314aa24
314aa24
%install
7fa109f
./Build install --destdir=%{buildroot} --create_packlist=0
7673ce0
%{_fixperms} -c %{buildroot}
314aa24
314aa24
%check
314aa24
./Build test
314aa24
314aa24
%files
7fa109f
%license LICENSE
7fa109f
%doc Changes README
314aa24
%{_bindir}/perl5i
314aa24
%{perl_vendorlib}/perl5i.pm
314aa24
%{perl_vendorlib}/perl5i/
314aa24
%doc %{perl_vendorlib}/perl5ifaq.pod
7530079
%{_mandir}/man3/perl5i.3*
7530079
%{_mandir}/man3/perl5i::Meta.3*
7530079
%{_mandir}/man3/perl5i::Signature.3*
7530079
%{_mandir}/man3/perl5i::latest.3*
7530079
%{_mandir}/man3/perl5ifaq.3*
314aa24
314aa24
%changelog
390c531
* Mon Mar  9 2020 Paul Howarth <paul@city-fan.org> - 2.13.2-14
390c531
- This package uses English
390c531
d8bf168
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.13.2-13
d8bf168
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
d8bf168
07efd9a
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.13.2-12
07efd9a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
07efd9a
353c1b1
* Fri May 31 2019 Jitka Plesnikova <jplesnik@redhat.com> - 2.13.2-11
353c1b1
- Perl 5.30 rebuild
353c1b1
ebb1517
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.13.2-10
ebb1517
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
ebb1517
26dd6a1
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.13.2-9
26dd6a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
26dd6a1
43908c5
* Fri Jun 29 2018 Jitka Plesnikova <jplesnik@redhat.com> - 2.13.2-8
43908c5
- Perl 5.28 rebuild
43908c5
7673ce0
* Wed Feb 21 2018 Paul Howarth <paul@city-fan.org> - 2.13.2-7
7673ce0
- Fix coercion warnings in 0.pm and 1.pm as per existing fixes in 2.pm
7673ce0
- BR: coreutils, gcc and perl-devel
7673ce0
dd4590d
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.13.2-6
dd4590d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
dd4590d
f97d795
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.13.2-5
f97d795
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
f97d795
bf1f9db
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.13.2-4
bf1f9db
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
bf1f9db
98c73ea
* Tue Jun 06 2017 Jitka Plesnikova <jplesnik@redhat.com> - 2.13.2-3
98c73ea
- Perl 5.26 rebuild
98c73ea
7ad71ae
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.13.2-2
7ad71ae
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
7ad71ae
6eaa8f1
* Sun Jun 12 2016 Paul Howarth <paul@city-fan.org> - 2.13.2-1
6eaa8f1
- Update to 2.13.2
6eaa8f1
  - Prevent 'perl5i -e' from segfaulting (GH#269)
6eaa8f1
  - Fix stat() and lstat() for Perl 5.24 (GH#291)
6eaa8f1
  - Spelling fixes from Debian (GH#294)
6eaa8f1
  - "siganture" typo fixes (GH#295)
6eaa8f1
  - extra_compiler_flags are passed through when building the perl5i executable
6eaa8f1
  - Kwalitee fixups (GH#289)
6eaa8f1
  - Now testing against Perl 5.22 (GH#292)
6eaa8f1
  - Now using JSON::MaybeXS instead of JSON (GH#288)
6eaa8f1
5741ef9
* Mon May 16 2016 Jitka Plesnikova <jplesnik@redhat.com> - 2.13.1-6
5741ef9
- Perl 5.24 rebuild
5741ef9
9f3acc7
* Thu Apr 28 2016 Jitka Plesnikova <jplesnik@redhat.com> - 2.13.1-5
9f3acc7
- Fixed stat() and lstat() calls for perl 5.23.3+
9f3acc7
ab73ec0
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.13.1-4
ab73ec0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
ab73ec0
f2bb66d
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.13.1-3
f2bb66d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
f2bb66d
ae20b2f
* Mon Jun 08 2015 Jitka Plesnikova <jplesnik@redhat.com> - 2.13.1-2
ae20b2f
- Perl 5.22 rebuild
ae20b2f
7530079
* Wed Jan  7 2015 Paul Howarth <paul@city-fan.org> - 2.13.1-1
7530079
- Update to 2.13.1
7530079
  - Upgrade utf8::all requirement to get consistent @ARGV behaviour
7530079
  - The latest autodie is recommended for load time and memory usage
7530079
    improvements (GH#284)
7530079
  - Change how we import utf8::all so @ARGV is translated appropriately
7530079
    (GH#279)
7530079
  - Update autobox to avoid segfaults during global destruction (GH#283,
7530079
    CPAN RT#71777)
7530079
22b9e1a
* Tue Sep  9 2014 Paul Howarth <paul@city-fan.org> - 2.13.0-4
22b9e1a
- Add upstream fix for compatibility with utf8::all ≳ 0.013 (#1134872)
22b9e1a
72852d7
* Mon Sep 01 2014 Jitka Plesnikova <jplesnik@redhat.com> - 2.13.0-3
72852d7
- Perl 5.20 rebuild
72852d7
07644e1
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.13.0-2
07644e1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
07644e1
7fa109f
* Thu Jul 24 2014 Paul Howarth <paul@city-fan.org> - 2.13.0-1
7fa109f
- Update to 2.13.0
7fa109f
  - $scalar->path will return a Path::Tiny object using the contents of
7fa109f
    $scalar, which makes working with files much, much easier (GH#229, GH#247)
7fa109f
  - The project has moved to the evalEmpire organization to allow broader
7fa109f
    project admin options (http://github.com/evalEmpire/perl5i)
7fa109f
  - Added a project rationale (GH#226, GH#252)
7fa109f
  - Fixed a crash if the perl5i command line is fed a null byte
7fa109f
    (GH#269, GH#273)
7fa109f
  - Stop using deprecated Hash::StoreIterator::eech() (GH#270)
7fa109f
  - The methods() meta method now ignores subroutines declared with func()
7fa109f
    (GH#222, GH#253)
7fa109f
- Use %%license
7fa109f
81e522c
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.12.0-4
81e522c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
81e522c
314aa24
* Thu Sep 12 2013 Paul Howarth <paul@city-fan.org> - 2.12.0-3
314aa24
- Add missing dependencies (#998496)
314aa24
  - BR: perl(lib) for the build process
314aa24
  - BR: perl(Carp), perl(Data::Dumper), perl(Encode), perl(File::Spec),
314aa24
    perl(if), perl(IO::Handle), perl(POSIX), perl(Scalar::Util) and
314aa24
    perl(Sub::Name) for the module
314aa24
  - BR: perl(Config), perl(Exporter), (File::Temp) and perl(PerlIO) for the
314aa24
    test suite
314aa24
  - R: perl(Data::Dumper), perl(File::Spec) and perl(if) for runtime
314aa24
314aa24
* Mon Aug 19 2013 Paul Howarth <paul@city-fan.org> - 2.12.0-2
314aa24
- Sanitize for Fedora submission
314aa24
314aa24
* Fri Aug 16 2013 Paul Howarth <paul@city-fan.org> - 2.12.0-1
314aa24
- Initial RPM version