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