|
|
9a8a5a8 |
# Run optional test
|
|
|
046e452 |
%if ! (0%{?rhel})
|
|
|
9a8a5a8 |
%bcond_without perl_Eval_Closure_enables_optional_test
|
|
|
046e452 |
%else
|
|
|
046e452 |
%bcond_with perl_Eval_Closure_enables_optional_test
|
|
|
046e452 |
%endif
|
|
|
9a8a5a8 |
|
|
|
917c679 |
Name: perl-Eval-Closure
|
|
|
e47f4ca |
Version: 0.14
|
|
|
f1a25ab |
Release: 8%{?dist}
|
|
|
917c679 |
Summary: Safely and cleanly create closures via string eval
|
|
|
917c679 |
License: GPL+ or Artistic
|
|
|
567ac6e |
URL: https://metacpan.org/release/Eval-Closure
|
|
|
567ac6e |
Source0: https://cpan.metacpan.org/authors/id/D/DO/DOY/Eval-Closure-%{version}.tar.gz
|
|
|
917c679 |
BuildArch: noarch
|
|
|
ddcd1cf |
# Module Build
|
|
|
e47f4ca |
BuildRequires: coreutils
|
|
|
e47f4ca |
BuildRequires: findutils
|
|
|
e47f4ca |
BuildRequires: make
|
|
|
1bee13b |
BuildRequires: perl-interpreter
|
|
|
e47f4ca |
BuildRequires: perl-generators
|
|
|
7b63739 |
BuildRequires: perl(ExtUtils::MakeMaker)
|
|
|
ddcd1cf |
# Module Runtime
|
|
|
ddcd1cf |
BuildRequires: perl(Carp)
|
|
|
ddcd1cf |
BuildRequires: perl(constant)
|
|
|
ddcd1cf |
BuildRequires: perl(Devel::LexAlias) >= 0.05
|
|
|
ddcd1cf |
BuildRequires: perl(Exporter)
|
|
|
ddcd1cf |
BuildRequires: perl(overload)
|
|
|
917c679 |
BuildRequires: perl(Perl::Tidy)
|
|
|
917c679 |
BuildRequires: perl(Scalar::Util)
|
|
|
ddcd1cf |
BuildRequires: perl(strict)
|
|
|
ddcd1cf |
# Test Suite
|
|
|
ddcd1cf |
BuildRequires: perl(B)
|
|
|
e47f4ca |
BuildRequires: perl(blib)
|
|
|
7b63739 |
BuildRequires: perl(File::Spec)
|
|
|
7b63739 |
BuildRequires: perl(IO::Handle)
|
|
|
7b63739 |
BuildRequires: perl(IPC::Open3)
|
|
|
ddcd1cf |
BuildRequires: perl(PadWalker)
|
|
|
917c679 |
BuildRequires: perl(Test::Fatal)
|
|
|
917c679 |
BuildRequires: perl(Test::More) >= 0.88
|
|
|
917c679 |
BuildRequires: perl(Test::Requires)
|
|
|
ddcd1cf |
BuildRequires: perl(warnings)
|
|
|
9a8a5a8 |
%if %{with perl_Eval_Closure_enables_optional_test}
|
|
|
7b63739 |
# Optional Tests
|
|
|
7b63739 |
BuildRequires: perl(Test::Output)
|
|
|
9a8a5a8 |
%endif
|
|
|
ddcd1cf |
# Runtime
|
|
|
ddcd1cf |
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
|
|
|
ddcd1cf |
Requires: perl(Devel::LexAlias) >= 0.05
|
|
|
917c679 |
Requires: perl(Perl::Tidy)
|
|
|
917c679 |
|
|
|
917c679 |
%description
|
|
|
917c679 |
String eval is often used for dynamic code generation. For instance, Moose uses
|
|
|
917c679 |
it heavily, to generate inlined versions of accessors and constructors, which
|
|
|
2dd29b0 |
speeds code up at runtime by a significant amount. String eval is not without
|
|
|
917c679 |
its issues however - it's difficult to control the scope it's used in (which
|
|
|
ddcd1cf |
determines which variables are in scope inside the eval), and it can be quite
|
|
|
ddcd1cf |
slow, especially if doing a large number of evals.
|
|
|
ddcd1cf |
|
|
|
ddcd1cf |
This module attempts to solve both of those problems. It provides an
|
|
|
ddcd1cf |
eval_closure function, which evals a string in a clean environment, other than
|
|
|
ddcd1cf |
a fixed list of specified variables. It also caches the result of the eval, so
|
|
|
ddcd1cf |
that doing repeated evals of the same source, even with a different
|
|
|
ddcd1cf |
environment, will be much faster (but note that the description is part of the
|
|
|
ddcd1cf |
string to be evaled, so it must also be the same (or non-existent) if caching
|
|
|
ddcd1cf |
is to work properly).
|
|
|
917c679 |
|
|
|
917c679 |
%prep
|
|
|
917c679 |
%setup -q -n Eval-Closure-%{version}
|
|
|
917c679 |
|
|
|
917c679 |
%build
|
|
|
ddcd1cf |
perl Makefile.PL INSTALLDIRS=vendor
|
|
|
917c679 |
make %{?_smp_mflags}
|
|
|
917c679 |
|
|
|
917c679 |
%install
|
|
|
917c679 |
make pure_install DESTDIR=%{buildroot}
|
|
|
e47f4ca |
find %{buildroot} -type f -name .packlist -delete
|
|
|
ddcd1cf |
%{_fixperms} %{buildroot}
|
|
|
917c679 |
|
|
|
917c679 |
%check
|
|
|
917c679 |
make test
|
|
|
917c679 |
|
|
|
917c679 |
%files
|
|
|
ddcd1cf |
%license LICENSE
|
|
|
ddcd1cf |
%doc Changes README
|
|
|
ddcd1cf |
%{perl_vendorlib}/Eval/
|
|
|
ddcd1cf |
%{_mandir}/man3/Eval::Closure.3*
|
|
|
917c679 |
|
|
|
917c679 |
%changelog
|
|
|
f1a25ab |
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.14-8
|
|
|
f1a25ab |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
|
f1a25ab |
|
|
|
39ee3e7 |
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.14-7
|
|
|
39ee3e7 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
|
39ee3e7 |
|
|
|
f9c6e14 |
* Thu Jun 28 2018 Jitka Plesnikova <jplesnik@redhat.com> - 0.14-6
|
|
|
f9c6e14 |
- Perl 5.28 rebuild
|
|
|
f9c6e14 |
|
|
|
c7d32e3 |
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.14-5
|
|
|
c7d32e3 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
|
c7d32e3 |
|
|
|
19bded5 |
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.14-4
|
|
|
19bded5 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
|
19bded5 |
|
|
|
927051b |
* Mon Jun 05 2017 Jitka Plesnikova <jplesnik@redhat.com> - 0.14-3
|
|
|
927051b |
- Perl 5.26 rebuild
|
|
|
927051b |
|
|
|
bba7008 |
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.14-2
|
|
|
bba7008 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
|
|
bba7008 |
|
|
|
e47f4ca |
* Sun May 29 2016 Paul Howarth <paul@city-fan.org> - 0.14-1
|
|
|
e47f4ca |
- Update to 0.14
|
|
|
e47f4ca |
- A couple of minor optimizations (GH#8)
|
|
|
e47f4ca |
- BR: perl-generators
|
|
|
e47f4ca |
- Simplify find command using -delete
|
|
|
e47f4ca |
|
|
|
0cb4712 |
* Sun May 15 2016 Jitka Plesnikova <jplesnik@redhat.com> - 0.13-5
|
|
|
0cb4712 |
- Perl 5.24 rebuild
|
|
|
0cb4712 |
|
|
|
3d701e6 |
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.13-4
|
|
|
3d701e6 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
|
|
3d701e6 |
|
|
|
a76720b |
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.13-3
|
|
|
a76720b |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
|
|
a76720b |
|
|
|
f304f4f |
* Sat Jun 06 2015 Jitka Plesnikova <jplesnik@redhat.com> - 0.13-2
|
|
|
f304f4f |
- Perl 5.22 rebuild
|
|
|
f304f4f |
|
|
|
6f0b079 |
* Tue May 12 2015 Jitka Plesnikova <jplesnik@redhat.com> - 0.13-1
|
|
|
6f0b079 |
- Update to 0.13
|
|
|
6f0b079 |
- Fix tests under blead (GH#6)
|
|
|
6f0b079 |
|
|
|
7b63739 |
* Mon Jan 19 2015 Paul Howarth <paul@city-fan.org> - 0.12-1
|
|
|
7b63739 |
- Update to 0.12
|
|
|
7b63739 |
- Fix tests under blead (GH#4)
|
|
|
7b63739 |
|
|
|
ddcd1cf |
* Wed Nov 12 2014 Paul Howarth <paul@city-fan.org> - 0.11-1
|
|
|
ddcd1cf |
- Update to 0.11
|
|
|
ddcd1cf |
- Support lexical subs on 5.18+
|
|
|
ddcd1cf |
- Fix pod links
|
|
|
ddcd1cf |
- Add "alias => 1" option for making closure variables actually alias the
|
|
|
ddcd1cf |
closed over variables (so the variable referenced in the environment
|
|
|
ddcd1cf |
hashref will actually be updated by changes made in the closure)
|
|
|
ddcd1cf |
- Classify buildreqs by usage
|
|
|
ddcd1cf |
- Use %%license
|
|
|
ddcd1cf |
- Make %%files list more explicit
|
|
|
ddcd1cf |
- Update %%description
|
|
|
ddcd1cf |
- Don't need to remove empty directories from the buildroot
|
|
|
ddcd1cf |
|
|
|
01f1a4b |
* Fri Aug 29 2014 Jitka Plesnikova <jplesnik@redhat.com> - 0.08-8
|
|
|
01f1a4b |
- Perl 5.20 rebuild
|
|
|
01f1a4b |
|
|
|
167faf6 |
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.08-7
|
|
|
167faf6 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
|
|
167faf6 |
|
|
|
9cfa5ed |
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.08-6
|
|
|
9cfa5ed |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
|
|
9cfa5ed |
|
|
|
8e90da6 |
* Wed Jul 24 2013 Petr Pisar <ppisar@redhat.com> - 0.08-5
|
|
|
8e90da6 |
- Perl 5.18 rebuild
|
|
|
8e90da6 |
|
|
|
8d70918 |
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.08-4
|
|
|
8d70918 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
|
|
8d70918 |
|
|
|
ad5dd9e |
* Fri Jul 20 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.08-3
|
|
|
ad5dd9e |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
|
|
ad5dd9e |
|
|
|
6fa2366 |
* Wed Jun 13 2012 Petr Pisar <ppisar@redhat.com> - 0.08-2
|
|
|
6fa2366 |
- Perl 5.16 rebuild
|
|
|
6fa2366 |
|
|
|
8e4dc90 |
* Fri Feb 10 2012 Iain Arnell <iarnell@gmail.com> 0.08-1
|
|
|
8e4dc90 |
- update to latest upstream version
|
|
|
8e4dc90 |
|
|
|
2dd29b0 |
* Sat Feb 04 2012 Iain Arnell <iarnell@gmail.com> 0.07-1
|
|
|
2dd29b0 |
- update to latest upstream version
|
|
|
2dd29b0 |
- update description
|
|
|
2dd29b0 |
|
|
|
7055446 |
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.06-3
|
|
|
7055446 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
|
|
7055446 |
|
|
|
7f61134 |
* Wed Jun 29 2011 Marcela Mašláňová <mmaslano@redhat.com> - 0.06-2
|
|
|
7f61134 |
- Perl mass rebuild
|
|
|
7f61134 |
|
|
|
e4f2b24 |
* Tue Jun 07 2011 Iain Arnell <iarnell@gmail.com> 0.06-1
|
|
|
e4f2b24 |
- update to latest upstream version
|
|
|
e4f2b24 |
|
|
|
40b83e8 |
* Wed May 04 2011 Iain Arnell <iarnell@gmail.com> 0.05-1
|
|
|
40b83e8 |
- update to latest upstream version
|
|
|
40b83e8 |
|
|
|
b2e18d3 |
* Wed Apr 20 2011 Iain Arnell <iarnell@gmail.com> 0.04-1
|
|
|
b2e18d3 |
- update to latest upstream version
|
|
|
b2e18d3 |
|
|
|
ebe0237 |
* Thu Mar 03 2011 Iain Arnell <iarnell@gmail.com> 0.03-1
|
|
|
ebe0237 |
- update to latest upstream version
|
|
|
ebe0237 |
|
|
|
bed6eba |
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.02-2
|
|
|
bed6eba |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
|
|
bed6eba |
|
|
|
b081dc6 |
* Fri Jan 28 2011 Iain Arnell <iarnell@gmail.com> 0.02-1
|
|
|
b081dc6 |
- update to latest upstream version
|
|
|
b081dc6 |
|
|
|
917c679 |
* Sun Jan 23 2011 Iain Arnell <iarnell@gmail.com> 0.01-1
|
|
|
917c679 |
- Specfile autogenerated by cpanspec 1.78.
|