File perl-Math-Formula.spec of Package perl-Math-Formula

#
# spec file for package perl-Math-Formula
#
# Copyright (c) 2025 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 Math-Formula
Name:           perl-Math-Formula
Version:        0.18
Release:        0
License:        Artistic-1.0 OR GPL-1.0-or-later
Summary:        Expressions on steroids
URL:            https://metacpan.org/release/%{cpan_name}
Source0:        https://cpan.metacpan.org/authors/id/M/MA/MARKOV/%{cpan_name}-%{version}.tar.gz
BuildArch:      noarch
BuildRequires:  perl
BuildRequires:  perl-macros
BuildRequires:  perl(Cpanel::JSON::XS) >= 4.35
BuildRequires:  perl(DateTime)
BuildRequires:  perl(DateTime::Duration)
BuildRequires:  perl(DateTime::Format::Duration::ISO8601) >= 0.006
BuildRequires:  perl(DateTime::TimeZone)
BuildRequires:  perl(DateTime::TimeZone::OffsetOnly)
BuildRequires:  perl(File::Slurper)
BuildRequires:  perl(Log::Report)
BuildRequires:  perl(Test::More) >= 1
BuildRequires:  perl(Test::Pod) >= 1
BuildRequires:  perl(YAML::XS) >= 0.81
BuildRequires:  perl(boolean) >= 0.46
Requires:       perl(Cpanel::JSON::XS) >= 4.35
Requires:       perl(DateTime)
Requires:       perl(DateTime::Duration)
Requires:       perl(DateTime::Format::Duration::ISO8601) >= 0.006
Requires:       perl(DateTime::TimeZone)
Requires:       perl(DateTime::TimeZone::OffsetOnly)
Requires:       perl(File::Slurper)
Requires:       perl(Log::Report)
Requires:       perl(YAML::XS) >= 0.81
Requires:       perl(boolean) >= 0.46
%{perl_requires}

%description
*WARNING:* This is not a programming language: it lacks control structures,
like loops and blocks. This module can be used to offer (very) flexible
configuration (files) for users of your application. See
Math::Formula::Context and Math::Formula::Config.

*What makes Math::Formula special?* Zillions of expression evaluators have
been written in the past. The application where this module was written
for, has special needs which were not served by them. This expression
evaluator can do things which are usually hidden behind library calls.

*Why do I need it?* _My_ application has many kinds of configurable rules,
from different sources. Those rules often use times and durations in them,
to organize processing activities. Each line in my configuration can now be
a smart expression. Declarative programming.

*Interested?* Read more in the "DETAILS" section below.

%prep
%autosetup  -n %{cpan_name}-%{version}

%build
perl Makefile.PL INSTALLDIRS=vendor
%make_build

%check
make test

%install
%perl_make_install
%perl_process_packlist
%perl_gen_filelist

%files -f %{name}.files
%doc ChangeLog README.md

%changelog
openSUSE Build Service is sponsored by