Permalink
Commits on Mar 22, 2018
  1. Overload ne operator for JSON::PP::Boolean (#107)

    tevfik1903 authored and rurban committed Mar 22, 2018
    to provide consistency with eq operator
    currently:
    . $true eq "true" evaluates to true
    . $true ne "true" also evaluates to true
    which is confusing
Commits on Mar 3, 2018
  1. Add a missing semicolon to a documentation example (#104)

    choroba authored and rurban committed Mar 3, 2018
Commits on Feb 27, 2018
  1. Release 4.01: with indent_length

    rurban committed Feb 27, 2018
Commits on Feb 25, 2018
  1. Add the ability to change the indent length when pretty printing (#103)

    rouzier authored and rurban committed Feb 25, 2018
Commits on Feb 4, 2018
  1. abstract He_IS_SVKEY

    rurban committed Feb 4, 2018
    from cperl.
Commits on Feb 3, 2018
  1. Release 4.01: Fix centos7 locale crash

    rurban committed Feb 3, 2018
    NULL as locale char* for "C" is invalid on glibc/centos7.
    freelocale(NULL) is invalid ditto.
    
    Closes #101
Commits on Feb 2, 2018
  1. Public release 4.00

    rurban committed Feb 2, 2018
    no changes from 3.99_03
Commits on Jan 31, 2018
  1. Release 3.99_03: fix uselocale()

    rurban committed Jan 31, 2018
    Probe for uselocale and xlocale.h with <5.22 threaded.
    
    Should we use the thread-safe code even with unthreaded perls?
    Only if our perl might be called with a child.
    But this might race with the global process locale all times,
    because perl_init sets the locale already.
    
    Closes #99
  2. Release 3.99_02

    rurban committed Jan 30, 2018
    Fix setlocale LC_NUMERIC race
    with non-C locales, where the threads differ
    in the LC_NUMERIC locale. If xlocale.h for uselocale is available.
    Closes #99 pali
  3. Document boolean negation without ! overload

    rurban committed Jan 31, 2018
    via encode JSON_TYPE_BOOL.
    Closes #95
Commits on Jan 30, 2018
  1. Pre-release 3.99_01

    rurban committed Jan 30, 2018
  2. Release 4.00

    rurban committed Jan 6, 2018
    Added Cpanel::JSON::XS::Type as 2nd optional encode argument. (#94 pali)
    Removed calling get magic hooks twice in encode.
    For benchmarks see #94 (comment)
    <1% slowdown for types, overall 15-20% faster then JSON::XS.
    
    Fixes Type for 5.6
    
    Test and sort the MANIFEST
  3. minor fixups

    rurban committed Jan 6, 2018
    tyepsv is usually undef (!SvOK)
    protect from empty typesv av_fetch
  4. Fix inlining of true() and false() functions prior to perl 5.10

    pali authored and rurban committed Aug 10, 2017
    Those functions bless objects of JSON::PP::Boolean package in BEGIN block
    and for perl pre-5.10 support it is needed to define JSON::PP::Boolean
    package before those functions also in BEGIN block. Otherwise overloaded
    operators would not work.
  5. Do not report POD coverage errors

    pali authored and rurban committed Aug 1, 2017
  6. Disable inlining of true() and false() functions prior to perl 5.10

    pali authored and rurban committed Aug 1, 2017
    For unknown reason overload does not work on inlined objects.
  7. Add GoodData into list of allowed words

    pali authored and rurban committed Jul 31, 2017
  8. Include all contributors into META

    pali authored and rurban committed Jul 31, 2017
    List of contributors is taken from git log.
  9. Implement Cpanel::JSON::XS::Type module which provides JSON type defi…

    pali authored and rurban committed Jul 31, 2017
    …nitions for encode_json()
  10. Make true() and false() real constant functions which will be inlined

    pali authored and rurban committed Jul 31, 2017
    Result must be lexically-scoped scalar which has no other references
    otherwise function would not be inlined.
  11. Do not process get magic on sv in encode_hk() more times

    pali authored and rurban committed Jul 31, 2017
    SvPV() already process get magic.
  12. Do not process get magic on sv in encode_rv()

    pali authored and rurban committed Jul 31, 2017
Commits on Dec 31, 2017
  1. Improve XS code

    rurban committed Dec 31, 2017
    Fix Coverity CID#165553 Structurally dead code
    Put a sole return; at the end to avoid adding a generated
    PUTBACK;return with our new ExtUtils::ParseXS
Commits on Dec 17, 2017
  1. Release 3.0240

    rurban committed Dec 17, 2017
  2. decode_str allow_squote: no Logically dead code

    rurban committed Dec 17, 2017
    allow_squote is only set with endstr=0x27
    and checked at the beginning. so the later check against it
    is dead code. Detected by Coverity cid #165321 in cperl
    
    This simplifies the check in the common case, and adds the squote check
    to the end.
Commits on Nov 20, 2017
  1. Add is_bool test

    rurban committed Nov 20, 2017
    see the upstream bug in makamaka/JSON-PP#34
    where a wrong is_bool check casued the string "JSON::PP::Boolean"
    to qualify is_bool returning true.
    Thanks to http://blogs.perl.org/users/leo_lapworth/2017/11/metahack-2.html
Commits on Aug 28, 2017
  1. Release 3.0239

    rurban committed Aug 28, 2017
    Fix windows compilation
  2. fix compilation failure (GH #97) (#98)

    mauke authored and rurban committed Aug 28, 2017
    #define STR_INF2 "inf.0"
Commits on Aug 25, 2017
  1. Release 3.0238

    rurban committed Aug 25, 2017
    Fixed locale-insensitive numeric conversion #96
    setlocale() is probed via HAS_SETLOCALE.
    POSIX is in core forever
  2. fix locale sprintf %g conversions

    rurban committed Aug 25, 2017
    Several locales use a comma instead of a dot, when converting
    a double to a string. Bypass that on older perls.
    Closes #96