Files
perl-Function-Parameters/perl-Function-Parameters.spec
Dirk Stoecker c24ef71a52 Accepting request 1076917 from devel:languages:perl:autoupdate
- updated to 2.002002
   see /usr/share/doc/packages/perl-Function-Parameters/Changes
  2.002002  2023-04-01
            - Work around old versions of ExtUtils::MakeMaker not providing
              is_make_type(), whose version dependency is undocumented (sigh).
            - Restrict GNU syntax for exporting variables to type 'gmake'; should
              fix building on BSD, Solaris, etc.
            - Declare dependency on ExtUtils::MakeMaker 7+ and remove
              compatibility code for older versions.
  2.002001  2023-04-01
            - Fix (hopefully) Windows builds using nmake.exe.
  2.002     2023-04-01
            - Provide //= for default arguments that are also used when the
              caller passes in undef.
            - Provide more type combinators in parameter declarations: In
              addition to | (union types), now ~ & / are also supported (for
              complement types, intersection types, and alternative types,
              respectively).
            - Enable type coercions. If a parameter has a declared type and that
              type supports coercions ($type->has_coercion returns true), call
              its ->coerce($value) method to transform arguments before type
              checking.
            - Enable inline type checks. If a parameter has a declared type and
              that type supports inlining ($type->can_be_inlined returns true),
              its inline code (as provided by ->inline_check('$value')) is baked
              into the function definition instead of a call to ->check($value).
              This may speed up type checks.
            - Move a big chunk of tests to xt/ (author testing only).
            - Remove xt/ from the distribution.
            - Enable parallel testing by default (with -j4).
  2.001006  2023-03-27
            - Work around perl core issue GH#20950 (use re "eval" doesn't capture
              lexical %^H environment like eval() does and stringifies it
              instead) by downgrading the previous hard error to a warning (in
              the new category 'Function::Parameters') and switching
              Function::Parameters off in the affected scope.

OBS-URL: https://build.opensuse.org/request/show/1076917
OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl-Function-Parameters?expand=0&rev=17
2023-04-03 13:22:43 +00:00

66 lines
2.2 KiB
RPMSpec

#
# spec file for package perl-Function-Parameters
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define cpan_name Function-Parameters
Name: perl-Function-Parameters
Version: 2.002002
Release: 0
License: Artistic-1.0 OR GPL-1.0-or-later
Summary: Define functions and methods with parameter lists ("subroutine signatures")
URL: https://metacpan.org/release/%{cpan_name}
Source0: https://cpan.metacpan.org/authors/id/M/MA/MAUKE/%{cpan_name}-%{version}.tar.gz
Source1: cpanspec.yml
BuildRequires: perl
BuildRequires: perl-macros
BuildRequires: perl(ExtUtils::MakeMaker) >= 7.0
BuildRequires: perl(Hash::Util) >= 0.07
BuildRequires: perl(Test::Fatal)
%{perl_requires}
%description
This module provides two new keywords, 'fun' and 'method', for defining
functions and methods with parameter lists. At minimum this saves you from
having to unpack '@_' manually, but this module can do much more for you.
The parameter lists provided by this module are similar to the 'signatures'
feature available in perl v5.20+. However, this module supports all perl
versions starting from v5.14 and it offers far more features than core
signatures. The downside is that you need a C compiler if you want to
install it from source, as it uses Perl's keyword plugin API in order to
work reliably without requiring a source filter.
%prep
%autosetup -n %{cpan_name}-%{version}
%build
perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}"
%make_build
%check
make test
%install
%perl_make_install
%perl_process_packlist
%perl_gen_filelist
%files -f %{name}.files
%doc Changes Makefile_PL_settings.plx README
%changelog