forked from pool/perl-JSON
Accepting request 495149 from devel:languages:perl:autoupdate
automatic update OBS-URL: https://build.opensuse.org/request/show/495149 OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl-JSON?expand=0&rev=33
This commit is contained in:
committed by
Git OBS Bridge
parent
550e1fcc1b
commit
64bf3bcfaa
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package perl-JSON
|
||||
#
|
||||
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@@ -17,84 +17,39 @@
|
||||
|
||||
|
||||
Name: perl-JSON
|
||||
Version: 2.90
|
||||
Version: 2.92
|
||||
Release: 0
|
||||
%define cpan_name JSON
|
||||
Summary: JSON (JavaScript Object Notation) encoder/decoder
|
||||
License: Artistic-1.0 or GPL-1.0+
|
||||
Group: Development/Libraries/Perl
|
||||
Url: http://search.cpan.org/dist/JSON/
|
||||
Source: http://www.cpan.org/authors/id/M/MA/MAKAMAKA/%{cpan_name}-%{version}.tar.gz
|
||||
Source0: https://cpan.metacpan.org/authors/id/I/IS/ISHIGAKI/%{cpan_name}-%{version}.tar.gz
|
||||
Source1: cpanspec.yml
|
||||
BuildArch: noarch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildRequires: perl
|
||||
BuildRequires: perl-macros
|
||||
#BuildRequires: perl(JSON)
|
||||
#BuildRequires: perl(JSON::backportPP)
|
||||
#BuildRequires: perl(JSON::PP)
|
||||
#BuildRequires: perl(JSON::XS)
|
||||
#BuildRequires: perl(Tie::IxHash)
|
||||
#BuildRequires: perl(_unicode_handling)
|
||||
Recommends: perl(JSON::XS) >= 2.34
|
||||
%{perl_requires}
|
||||
|
||||
%description
|
||||
*************************** CAUTION **************************************
|
||||
* *
|
||||
* INCOMPATIBLE CHANGE (JSON::XS version 2.90) *
|
||||
* *
|
||||
* JSON.pm had patched JSON::XS::Boolean and JSON::PP::Boolean internally *
|
||||
* on loading time for making these modules inherit JSON::Boolean. *
|
||||
* But since JSON::XS v3.0 it use Types::Serialiser as boolean class. *
|
||||
* Then now JSON.pm breaks boolean classe overload features and *
|
||||
* -support_by_pp if JSON::XS v3.0 or later is installed. *
|
||||
* *
|
||||
* JSON::true and JSON::false returned JSON::Boolean objects. *
|
||||
* For workaround, they return JSON::PP::Boolean objects in this version. *
|
||||
* *
|
||||
* isa_ok(JSON::true, 'JSON::PP::Boolean'); *
|
||||
* *
|
||||
* And it discards a feature: *
|
||||
* *
|
||||
* ok(JSON::true eq 'true'); *
|
||||
* *
|
||||
* In other word, JSON::PP::Boolean overload numeric only. *
|
||||
* *
|
||||
* ok( JSON::true == 1 ); *
|
||||
* *
|
||||
**************************************************************************
|
||||
This module is a thin wrapper for JSON::XS-compatible modules with a few
|
||||
additional features. All the backend modules convert a Perl data structure
|
||||
to a JSON text as of RFC4627 (which we know is obsolete but we still stick
|
||||
to; see below for an option to support part of RFC7159) and vice versa.
|
||||
This module uses JSON::XS by default, and when JSON::XS is not available,
|
||||
this module falls back on JSON::PP, which is in the Perl core since 5.14.
|
||||
If JSON::PP is not available either, this module then falls back on
|
||||
JSON::backportPP (which is actually JSON::PP in a different .pm file)
|
||||
bundled in the same distribution as this module. You can also explicitly
|
||||
specify to use Cpanel::JSON::XS, a fork of JSON::XS by Reini Urban.
|
||||
|
||||
************************** CAUTION ********************************
|
||||
* This is 'JSON module version 2' and there are many differences *
|
||||
* to version 1.xx *
|
||||
* Please check your applications using old version. *
|
||||
* See to 'INCOMPATIBLE CHANGES TO OLD VERSION' *
|
||||
*******************************************************************
|
||||
|
||||
JSON (JavaScript Object Notation) is a simple data format. See to the
|
||||
http://www.json.org/ manpage and 'RFC4627'(the
|
||||
http://www.ietf.org/rfc/rfc4627.txt manpage).
|
||||
|
||||
This module converts Perl data structures to JSON and vice versa using
|
||||
either the JSON::XS manpage or the JSON::PP manpage.
|
||||
|
||||
JSON::XS is the fastest and most proper JSON module on CPAN which must be
|
||||
compiled and installed in your environment. JSON::PP is a pure-Perl module
|
||||
which is bundled in this distribution and has a strong compatibility to
|
||||
JSON::XS.
|
||||
|
||||
This module try to use JSON::XS by default and fail to it, use JSON::PP
|
||||
instead. So its features completely depend on JSON::XS or JSON::PP.
|
||||
|
||||
See to the BACKEND MODULE DECISION manpage.
|
||||
|
||||
To distinguish the module name 'JSON' and the format type JSON, the former
|
||||
is quoted by C<> (its results vary with your using media), and the latter
|
||||
is left just as it is.
|
||||
|
||||
Module name : 'JSON'
|
||||
|
||||
Format type : JSON
|
||||
All these backend modules have slight incompatibilities between them,
|
||||
including extra features that other modules don't support, but as long as
|
||||
you use only common features (most important ones are described below),
|
||||
migration from backend to backend should be reasonably easy. For details,
|
||||
see each backend module you use.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{cpan_name}-%{version}
|
||||
|
Reference in New Issue
Block a user