8
0
forked from pool/perl-JSON-Any

Compare commits

...

12 Commits

Author SHA256 Message Date
c3264bba61 Accepting request 1288044 from devel:languages:perl
- Normalize CPAN version
  See https://github.com/openSUSE/cpanspec/issues/47 for details

OBS-URL: https://build.opensuse.org/request/show/1288044
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/perl-JSON-Any?expand=0&rev=15
2025-06-24 18:48:24 +00:00
2789f922cc Normalize CPAN version
See https://github.com/openSUSE/cpanspec/issues/47 for details

OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl-JSON-Any?expand=0&rev=23
2025-06-23 20:34:54 +00:00
25f678adb2 Accepting request 1156552 from devel:languages:perl
- Fix disabling of __perllib_provides

OBS-URL: https://build.opensuse.org/request/show/1156552
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/perl-JSON-Any?expand=0&rev=14
2024-03-09 19:55:26 +00:00
705797521b Fix disabling of __perllib_provides
OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl-JSON-Any?expand=0&rev=21
2024-03-08 22:34:39 +00:00
a87ce081e2 Accepting request 1110671 from devel:languages:perl
OBS-URL: https://build.opensuse.org/request/show/1110671
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/perl-JSON-Any?expand=0&rev=13
2023-09-13 18:44:22 +00:00
f9fe699268 Accepting request 1110565 from devel:languages:perl:autoupdate
- updated to 1.40
   see /usr/share/doc/packages/perl-JSON-Any/Changes
  1.40      2023-09-09 21:59:01Z
      - fix issues on perl 5.39.1 with 'import' subs
      - added support for JSON v3, v4, JSON::XS v4

OBS-URL: https://build.opensuse.org/request/show/1110565
OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl-JSON-Any?expand=0&rev=19
2023-09-12 15:21:39 +00:00
1c06e86dfd Accepting request 312019 from devel:languages:perl
1

OBS-URL: https://build.opensuse.org/request/show/312019
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/perl-JSON-Any?expand=0&rev=12
2015-06-15 15:50:19 +00:00
Stephan Kulow
cf1fc27db5 Accepting request 311956 from devel:languages:perl:autoupdate
automatic update

OBS-URL: https://build.opensuse.org/request/show/311956
OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl-JSON-Any?expand=0&rev=17
2015-06-15 05:29:04 +00:00
a1b3bc02b8 Accepting request 296067 from devel:languages:perl
1

OBS-URL: https://build.opensuse.org/request/show/296067
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/perl-JSON-Any?expand=0&rev=11
2015-04-15 14:23:57 +00:00
Stephan Kulow
baf2a36669 Accepting request 295902 from devel:languages:perl:autoupdate
automatic update

OBS-URL: https://build.opensuse.org/request/show/295902
OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl-JSON-Any?expand=0&rev=15
2015-04-14 06:02:19 +00:00
Stephan Kulow
f84c8cb22c Accepting request 208447 from devel:languages:perl
- updated to 1.32
   Include dep Test::Requires in dist.ini 
   bump minimum version requirement for JSON.pm 
   fix the tests to properly exclude JSON::XS
   A bug came up where JSON::XS and JSON.pm had incompatible revisions
   but installed just fine. This was a problem because JSON.pm will
   silently load JSON::XS in the background and caused explosions.
   We now try to exclude JSON::XS except in the case we're actually
   testing it directly.
   Also we've removed some of the tests for JSON::Syck as it's been
   deprecated. We also add in tests for Cpanel::JSON::XS which got
   missed when it was added as a choice. 
   JSON::XS 3.x is incompatible with JSON.pm < 2.90 in the exact way
   that JSON::Any uses things in the test suite.

OBS-URL: https://build.opensuse.org/request/show/208447
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/perl-JSON-Any?expand=0&rev=9
2013-11-26 18:25:45 +00:00
Stephan Kulow
70de8369cb Accepting request 184510 from devel:languages:perl
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/184510
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/perl-JSON-Any?expand=0&rev=7
2013-07-30 10:05:49 +00:00
5 changed files with 168 additions and 30 deletions

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3989c07fd74ece8e98d40370550c12d62885b3e62f0ac023f4dac3cfb0aac1ed
size 26783

3
JSON-Any-1.40.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:083256255a48094fd9ac1239e0fea8a10a2383a9cd1ef4b1c7264ede1b4400ab
size 40670

23
cpanspec.yml Normal file
View File

@@ -0,0 +1,23 @@
---
#description_paragraphs: 3
#no_testing: broken upstream
#sources:
# - source1
# - source2
#patches:
# foo.patch: -p1
# bar.patch:
#preamble: |-
# BuildRequires: gcc-c++
#post_prep: |-
# hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s, *,,g'`
# sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL
#post_install: |-
# sed on %{name}.files
#license: SUSE-NonFree
#skip_noarch: 1
#custom_build: |-
#./Build build flags=%{?_smp_mflags} --myflag
#custom_test: |-
#startserver && make test
#ignore_requires: Bizarre::Module

View File

@@ -1,3 +1,40 @@
-------------------------------------------------------------------
Mon Jun 23 20:34:49 UTC 2025 - Tina Müller <tina.mueller@suse.com>
- Normalize CPAN version
See https://github.com/openSUSE/cpanspec/issues/47 for details
-------------------------------------------------------------------
Fri Mar 8 22:34:35 UTC 2024 - Tina Müller <tina.mueller@suse.com>
- Fix disabling of __perllib_provides
-------------------------------------------------------------------
Sun Sep 10 03:06:47 UTC 2023 - Tina Müller <timueller+perl@suse.de>
- updated to 1.40
see /usr/share/doc/packages/perl-JSON-Any/Changes
1.40 2023-09-09 21:59:01Z
- fix issues on perl 5.39.1 with 'import' subs
- added support for JSON v3, v4, JSON::XS v4
-------------------------------------------------------------------
Sun Jun 14 08:15:38 UTC 2015 - coolo@suse.com
- updated to 1.39
see /usr/share/doc/packages/perl-JSON-Any/Changes
1.39 2015-06-10 04:37:49Z
- mark this distribution as deprecated in metadata
- drop dependency on namespace::clean
-------------------------------------------------------------------
Mon Apr 13 19:30:04 UTC 2015 - coolo@suse.com
- updated to 1.38
see /usr/share/doc/packages/perl-JSON-Any/Changes
-------------------------------------------------------------------
Tue Nov 26 07:34:04 UTC 2013 - coolo@suse.com

View File

@@ -1,7 +1,7 @@
#
# spec file for package perl-JSON-Any
#
# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
# 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
@@ -12,46 +12,124 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: perl-JSON-Any
Version: 1.32
Release: 0
%define cpan_name JSON-Any
Summary: Wrapper Class for the various JSON classes.
License: Artistic-1.0 or GPL-1.0+
Group: Development/Libraries/Perl
Url: http://search.cpan.org/dist/JSON-Any/
Source: http://www.cpan.org/authors/id/P/PE/PERIGRIN/%{cpan_name}-%{version}.tar.gz
Name: perl-JSON-Any
Version: 1.400.0
Release: 0
# 1.40 -> normalize -> 1.400.0
%define cpan_version 1.40
License: Artistic-1.0 OR GPL-1.0-or-later
Summary: (DEPRECATED) Wrapper Class for the various JSON classes
URL: https://metacpan.org/release/%{cpan_name}
Source0: https://cpan.metacpan.org/authors/id/E/ET/ETHER/%{cpan_name}-%{cpan_version}.tar.gz
Source1: cpanspec.yml
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: perl
BuildRequires: perl-macros
BuildRequires: perl(Test::Requires)
BuildRequires: perl(Test::Without::Module) >= 0.17
#BuildRequires: perl(Devel::StringInfo)
#BuildRequires: perl(Dist::Zilla::Plugin::MakeMaker::Awesome)
#BuildRequires: perl(JSON)
#BuildRequires: perl(JSON::XS)
#BuildRequires: perl(Moose)
#BuildRequires: perl(namespace::autoclean)
BuildRequires: perl(CPAN::Meta::Requirements) >= 2.121
BuildRequires: perl(Module::Metadata)
BuildRequires: perl(Test::Fatal)
BuildRequires: perl(Test::More) >= 0.88
BuildRequires: perl(Test::Needs)
BuildRequires: perl(Test::Warnings) >= 0.9
BuildRequires: perl(Test::Without::Module)
Provides: perl(JSON::Any) = %{version}
%undefine __perllib_provides
%{perl_requires}
%description
Wrapper Class for the various JSON classes.
This module tries to provide a coherent API to bring together the various
JSON modules currently on CPAN. This module will allow you to code to any
JSON API and have it work regardless of which JSON module is actually
installed.
use JSON::Any;
my $j = JSON::Any->new;
$json = $j->objToJson({foo=>'bar', baz=>'quux'});
$obj = $j->jsonToObj($json);
or
$json = $j->encode({foo=>'bar', baz=>'quux'});
$obj = $j->decode($json);
or
$json = $j->Dump({foo=>'bar', baz=>'quux'});
$obj = $j->Load($json);
or
$json = $j->to_json({foo=>'bar', baz=>'quux'});
$obj = $j->from_json($json);
or without creating an object:
$json = JSON::Any->objToJson({foo=>'bar', baz=>'quux'});
$obj = JSON::Any->jsonToObj($json);
On load, JSON::Any will find a valid JSON module in your @INC by looking
for them in this order:
Cpanel::JSON::XS
JSON::XS
JSON::PP
JSON
JSON::DWIW
And loading the first one it finds.
You may change the order by specifying it on the 'use JSON::Any' line:
use JSON::Any qw(DWIW XS CPANEL JSON PP);
Specifying an order that is missing modules will prevent those module from
being used:
use JSON::Any qw(CPANEL PP); # same as JSON::MaybeXS
This will check in that order, and will never attempt to load JSON::XS,
JSON.pm/JSON, or JSON::DWIW. This can also be set via the
'$ENV{JSON_ANY_ORDER}' environment variable.
JSON::Syck has been deprecated by its author, but in the attempt to still
stay relevant as a "Compatibility Layer" JSON::Any still supports it. This
support however has been made optional starting with JSON::Any 1.19. In
deference to a bug request starting with JSON.pm 1.20, JSON::Syck and other
deprecated modules will still be installed, but only as a last resort and
will now include a warning.
use JSON::Any qw(Syck XS JSON);
or
$ENV{JSON_ANY_ORDER} = 'Syck XS JSON';
At install time, JSON::Any will attempt to install JSON::PP as a reasonable
fallback if you do not appear have *any* backends installed on your system.
WARNING: If you call JSON::Any with an empty list
use JSON::Any ();
It will skip the JSON package detection routines and will die loudly that
it couldn't find a package.
%prep
%setup -q -n %{cpan_name}-%{version}
find . -type f -print0 | xargs -0 chmod 644
%autosetup -n %{cpan_name}-%{cpan_version} -p1
%build
%{__perl} Makefile.PL INSTALLDIRS=vendor
%{__make} %{?_smp_mflags}
perl Makefile.PL INSTALLDIRS=vendor
%make_build
%check
%{__make} test
make test
%install
%perl_make_install
@@ -59,7 +137,7 @@ find . -type f -print0 | xargs -0 chmod 644
%perl_gen_filelist
%files -f %{name}.files
%defattr(-,root,root,755)
%doc CHANGES LICENSE README weaver.ini xt
%doc Changes CONTRIBUTING README
%license LICENCE
%changelog