0956915
# Run optional test
0956915
%bcond_without perl_Function_Parameters_enables_optional_test
0956915
2dd0b63
Name:           perl-Function-Parameters
c0c382f
%global cpan_version 2.002004
edf44ec
Version:        2.2.4
05a2c04
Release:        4%{?dist}
2dd0b63
Summary:        Subroutine definitions with parameter lists
e61dc81
License:        GPL-1.0-or-later OR Artistic-1.0-Perl
16fb68a
URL:            https://metacpan.org/release/Function-Parameters
16fb68a
Source0:        https://cpan.metacpan.org/authors/id/M/MA/MAUKE/Function-Parameters-%{cpan_version}.tar.gz
150cf7f
BuildRequires:  coreutils
2dd0b63
BuildRequires:  findutils
e279cb0
BuildRequires:  gcc
2dd0b63
BuildRequires:  make
2dd0b63
BuildRequires:  perl-devel
9ee9321
BuildRequires:  perl-generators
e61dc81
BuildRequires:  perl-interpreter
085b200
BuildRequires:  perl(ExtUtils::MakeMaker) >= 6.76
2dd0b63
BuildRequires:  perl(File::Find)
2dd0b63
BuildRequires:  perl(File::Spec)
2dd0b63
# Run-time:
2dd0b63
BuildRequires:  perl(Carp)
2dd0b63
BuildRequires:  perl(overload)
76a0864
BuildRequires:  perl(Scalar::Util)
e61dc81
BuildRequires:  perl(strict)
e61dc81
BuildRequires:  perl(warnings)
3e6a621
BuildRequires:  perl(warnings::register)
2dd0b63
BuildRequires:  perl(XSLoader)
2dd0b63
# Tests:
2dd0b63
BuildRequires:  perl(constant)
e61dc81
BuildRequires:  perl(FindBin)
76a0864
BuildRequires:  perl(Hash::Util) >= 0.07
2dd0b63
BuildRequires:  perl(integer)
2dd0b63
BuildRequires:  perl(Test::Fatal)
2dd0b63
BuildRequires:  perl(Test::More)
2dd0b63
BuildRequires:  perl(utf8)
0956915
%if %{with perl_Function_Parameters_enables_optional_test}
0956915
# Optional tests:
150cf7f
BuildRequires:  perl(Moose)
150cf7f
BuildRequires:  perl(Moose::Util)
b04429d
BuildRequires:  perl(Moose::Util::TypeConstraints)
150cf7f
BuildRequires:  perl(MooseX::Types)
150cf7f
BuildRequires:  perl(MooseX::Types::Moose)
0956915
BuildRequires:  perl(threads)
b7bd3ea
BuildRequires:  perl(threads::shared)
0956915
%endif
3e6a621
# Dependencies
b04429d
# perl(Moose::Util::TypeConstraints) only used with Moose
2dd0b63
2dd0b63
%description
2dd0b63
This module extends Perl with keywords that let you define functions with
2dd0b63
parameter lists. It uses Perl's keyword plugin API, so it works reliably
2dd0b63
and doesn't require a source filter.
2dd0b63
2dd0b63
%prep
76a0864
%setup -q -n Function-Parameters-%{cpan_version}
2dd0b63
2dd0b63
%build
e61dc81
perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1 OPTIMIZE="%{optflags}"
e61dc81
%{make_build}
2dd0b63
2dd0b63
%install
e61dc81
%{make_install}
e61dc81
find %{buildroot} -type f -name '*.bs' -empty -delete
e61dc81
%{_fixperms} -c %{buildroot}
2dd0b63
2dd0b63
%check
2dd0b63
make test
2dd0b63
2dd0b63
%files
2dd0b63
%doc Changes README
e61dc81
%{perl_vendorarch}/auto/Function/
e61dc81
%{perl_vendorarch}/Function/
e61dc81
%{_mandir}/man3/Function::Parameters.3*
e61dc81
%{_mandir}/man3/Function::Parameters::Info.3*
2dd0b63
2dd0b63
%changelog
05a2c04
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.4-4
05a2c04
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
05a2c04
029af76
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.4-3
029af76
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
029af76
a56ada5
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.4-2
a56ada5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
a56ada5
edf44ec
* Sun Jul 16 2023 Paul Howarth <paul@city-fan.org> - 2.2.4-1
edf44ec
- Update to 2.002004 (rhbz#2223063)
edf44ec
  - Remove 'perl -T' from t/info.t, so we can run on perls compiled without
edf44ec
    support for taint mode; the test didn't actually care about taint anyway
edf44ec
f36cd51
* Tue Jul 11 2023 Jitka Plesnikova <jplesnik@redhat.com> - 2.2.3-2
f36cd51
- Perl 5.38 rebuild
f36cd51
b04429d
* Wed Apr 19 2023 Paul Howarth <paul@city-fan.org> - 2.2.3-1
b04429d
- Update to 2.002003 (rhbz#2188007)
b04429d
  - Fix line numbers after inlined type checks (GH#42)
b04429d
    Previously, the code for type checks was inlined literally, so if a
b04429d
    particular check took 5 lines of code, all the following line numbers in
b04429d
    the source file would be off by 5 (they would be "pushed down" by the
b04429d
    interpolated code); these bad line numbers would show up in error messages
b04429d
    from Perl (including warn and die) as well as __LINE__ and caller (and
b04429d
    thus stack traces)
b04429d
- Drop explicit dependency on perl(Moose::Util::TypeConstraints), which is
b04429d
  only required when using this module in conjunction with Moose, and that
b04429d
  would pull in the dependency anyway
b04429d
150cf7f
* Sun Apr  2 2023 Paul Howarth <paul@city-fan.org> - 2.2.2-1
150cf7f
- Update to 2.002002 (rhbz#2183727)
150cf7f
  - Provide //= for default arguments, which are also used when the caller
150cf7f
    passes in undef
150cf7f
  - Provide more type combinators in parameter declarations: In addition to |
150cf7f
    (union types), now ~ & / are also supported (for
150cf7f
    complement types, intersection types, and alternative types, respectively)
150cf7f
  - Enable type coercions: if a parameter has a declared type and that type
150cf7f
    supports coercions ($type->has_coercion returns true), call its
150cf7f
    ->coerce($value) method to transform arguments before type checking
150cf7f
  - Enable inline type checks: if a parameter has a declared type and that
150cf7f
    type supports inlining ($type->can_be_inlined returns true), its inline
150cf7f
    code (as provided by ->inline_check('$value')) is baked into the function
150cf7f
    definition instead of a call to ->check($value), which may speed up type
150cf7f
    checks
150cf7f
  - Move a big chunk of tests to xt/ (author testing only)
150cf7f
  - Remove xt/ from the distribution
150cf7f
  - Enable parallel testing by default (with -j4)
150cf7f
  - Fix (hopefully) Windows builds using nmake.exe
150cf7f
  - Work around old versions of ExtUtils::MakeMaker not providing
150cf7f
    is_make_type(), whose version dependency is undocumented (sigh)
150cf7f
  - Restrict GNU syntax for exporting variables to type 'gmake'; should fix
150cf7f
    building on BSD, Solaris, etc.
150cf7f
  - Declare dependency on ExtUtils::MakeMaker 7+ and remove compatibility code
150cf7f
    for older versions
150cf7f
3e6a621
* Mon Mar 27 2023 Paul Howarth <paul@city-fan.org> - 2.1.6-1
3e6a621
- Update to 2.001006 (rhbz#2182064)
3e6a621
  - Work around perl core issue GH#20950 (use re "eval" doesn't capture lexical
3e6a621
    %%^H environment like eval() does and stringifies it instead), by
3e6a621
    downgrading the previous hard error to a warning (in the new category
3e6a621
    'Function::Parameters') and switching Function::Parameters off in the
3e6a621
    affected scope
3e6a621
bfb1853
* Fri Jan 27 2023 Paul Howarth <paul@city-fan.org> - 2.1.5-1
bfb1853
- Update to 2.001005 (rhbz#2164971)
bfb1853
  - Fix failures with perl 5.37.5..5.37.6 caused by new internal opcode
bfb1853
    structure for anonymous subs
bfb1853
e61dc81
* Fri Jan 20 2023 Paul Howarth <paul@city-fan.org> - 2.1.4-1
e61dc81
- Update to 2.001004 (rhbz#2162566)
e61dc81
  - Drop Dir::Self test dependency (use FindBin instead)
e61dc81
- Use SPDX-format license tag
e61dc81
- Use %%{make_build} and %%{make_install}
e61dc81
- Make %%files list more explicit
e61dc81
ec13194
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.3-17
ec13194
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
ec13194
6ddc662
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.3-16
6ddc662
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
6ddc662
e2a666b
* Wed Jun 01 2022 Jitka Plesnikova <jplesnik@redhat.com> - 2.1.3-15
e2a666b
- Perl 5.36 rebuild
e2a666b
85c0c4c
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.3-14
85c0c4c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
85c0c4c
ba1a29d
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.3-13
ba1a29d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
ba1a29d
c7f26f6
* Sat May 22 2021 Jitka Plesnikova <jplesnik@redhat.com> - 2.1.3-12
c7f26f6
- Perl 5.34 rebuild
c7f26f6
e953709
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.3-11
e953709
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
e953709
4c65d83
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.3-10
4c65d83
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
4c65d83
78d40ce
* Tue Jun 23 2020 Jitka Plesnikova <jplesnik@redhat.com> - 2.1.3-9
78d40ce
- Perl 5.32 rebuild
78d40ce
c5fe160
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.3-8
c5fe160
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
c5fe160
732d073
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.3-7
732d073
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
732d073
656572c
* Fri May 31 2019 Jitka Plesnikova <jplesnik@redhat.com> - 2.1.3-6
656572c
- Perl 5.30 rebuild
656572c
1b79399
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.3-5
1b79399
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
1b79399
89e2786
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.3-4
89e2786
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
89e2786
59fba90
* Fri Jun 29 2018 Jitka Plesnikova <jplesnik@redhat.com> - 2.1.3-3
59fba90
- Perl 5.28 rebuild
59fba90
7d960eb
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.3-2
7d960eb
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
7d960eb
2e41d23
* Mon Nov 13 2017 Petr Pisar <ppisar@redhat.com> - 2.1.3-1
2e41d23
- 2.001003 bump
2e41d23
b7bd3ea
* Thu Nov 09 2017 Petr Pisar <ppisar@redhat.com> - 2.1.2-1
b7bd3ea
- 2.001002 bump
b7bd3ea
f2acd0b
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.1-3
f2acd0b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
f2acd0b
d615ab0
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.1-2
d615ab0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
d615ab0
0956915
* Mon Jul 03 2017 Petr Pisar <ppisar@redhat.com> - 2.1.1-1
0956915
- 2.001001 bump
0956915
672cc36
* Tue Jun 06 2017 Jitka Plesnikova <jplesnik@redhat.com> - 2.0.7-2
672cc36
- Perl 5.26 rebuild
672cc36
d57612e
* Tue May 16 2017 Petr Pisar <ppisar@redhat.com> - 2.0.7-1
d57612e
- 2.000007 bump
d57612e
9aacd51
* Tue Apr 18 2017 Petr Pisar <ppisar@redhat.com> - 2.0.6-2
9aacd51
- 2.000006 bump
9aacd51
90048cf
* Mon Apr 03 2017 Petr Pisar <ppisar@redhat.com> - 2.0.3-1
90048cf
- 2.000003 bump
90048cf
76a0864
* Tue Mar 28 2017 Petr Pisar <ppisar@redhat.com> - 2.0.2-1
76a0864
- 2.000002 bump
76a0864
085b200
* Fri Mar 17 2017 Petr Pisar <ppisar@redhat.com> - 1.0706-1
085b200
- 1.0706 bump
085b200
157a553
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0705-2
157a553
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
157a553
9ee9321
* Wed Jun 15 2016 Petr Pisar <ppisar@redhat.com> - 1.0705-1
9ee9321
- 1.0705 bump
9ee9321
665da11
* Mon May 16 2016 Jitka Plesnikova <jplesnik@redhat.com> - 1.0704-2
665da11
- Perl 5.24 rebuild
665da11
2ffc7cd
* Mon Feb 15 2016 Petr Pisar <ppisar@redhat.com> - 1.0704-1
2ffc7cd
- 1.0704 bump
2ffc7cd
2dd0b63
* Thu Feb 04 2016 Petr Pisar <ppisar@redhat.com> 1.0703-1
2dd0b63
- Specfile autogenerated by cpanspec 1.78.
e279cb0
- Address mistakes found by review