Hello community, here is the log from the commit of package perl-Encode for openSUSE:Factory checked in at 2018-04-26 13:37:49 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-Encode (Old) and /work/SRC/openSUSE:Factory/.perl-Encode.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "perl-Encode" Thu Apr 26 13:37:49 2018 rev:5 rq:599886 version:2.98 Changes: -------- --- /work/SRC/openSUSE:Factory/perl-Encode/perl-Encode.changes 2018-02-27 16:57:48.376370678 +0100 +++ /work/SRC/openSUSE:Factory/.perl-Encode.new/perl-Encode.changes 2018-04-26 13:37:57.880226845 +0200 @@ -1,0 +2,6 @@ +Mon Apr 23 05:23:09 UTC 2018 - coolo@suse.com + +- updated to 2.98 + see /usr/share/doc/packages/perl-Encode/Changes + +------------------------------------------------------------------- Old: ---- Encode-2.97.tar.gz New: ---- Encode-2.98.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-Encode.spec ++++++ --- /var/tmp/diff_new_pack.U6qcrK/_old 2018-04-26 13:37:58.968186970 +0200 +++ /var/tmp/diff_new_pack.U6qcrK/_new 2018-04-26 13:37:58.968186970 +0200 @@ -17,7 +17,7 @@ Name: perl-Encode -Version: 2.97 +Version: 2.98 Release: 0 %define cpan_name Encode Summary: Character Encodings in Perl ++++++ Encode-2.97.tar.gz -> Encode-2.98.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Encode-2.97/Changes new/Encode-2.98/Changes --- old/Encode-2.97/Changes 2018-02-21 13:14:35.000000000 +0100 +++ new/Encode-2.98/Changes 2018-04-22 11:03:09.000000000 +0200 @@ -1,8 +1,22 @@ # Revision history for Perl extension Encode. # -# $Id: Changes,v 2.97 2018/02/21 12:14:33 dankogai Exp dankogai $ +# $Id: Changes,v 2.98 2018/04/22 09:02:00 dankogai Exp $ # -$Revision: 2.97 $ $Date: 2018/02/21 12:14:33 $ +$Revision: 2.98 $ $Date: 2018/04/22 09:02:00 $ +! t/truncated_utf8.t + Resolved: RT125131: truncated_utf8.t TODO test pass in blead + https://rt.cpan.org/Ticket/Display.html?id=125131 +! Encode.xs + Pulled: Remove XS functions _bytes_to_utf8() and _utf8_to_bytes() + https://github.com/dankogai/p5-encode/pull/133 +! Unicode/Unicode.xs + Pulled: Automatically compute length in attr() macro + https://github.com/dankogai/p5-encode/pull/132 +! Encode.xs + Pulled: Fix compile warnings on 64bit MS VS2017 + https://github.com/dankogai/p5-encode/pull/131 + +2.97 2018/02/21 12:14:33 ! Encode.xs Pulled: New perls that fixes https://github.com/dankogai/p5-encode/issues/129 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Encode-2.97/Encode.pm new/Encode-2.98/Encode.pm --- old/Encode-2.97/Encode.pm 2018-02-21 13:14:35.000000000 +0100 +++ new/Encode-2.98/Encode.pm 2018-04-22 11:03:09.000000000 +0200 @@ -1,5 +1,5 @@ # -# $Id: Encode.pm,v 2.97 2018/02/21 12:14:24 dankogai Exp $ +# $Id: Encode.pm,v 2.98 2018/04/22 09:03:00 dankogai Exp $ # package Encode; use strict; @@ -7,7 +7,7 @@ use constant DEBUG => !!$ENV{PERL_ENCODE_DEBUG}; our $VERSION; BEGIN { - $VERSION = sprintf "%d.%02d", q$Revision: 2.97 $ =~ /(\d+)/g; + $VERSION = sprintf "%d.%02d", q$Revision: 2.98 $ =~ /(\d+)/g; require XSLoader; XSLoader::load( __PACKAGE__, $VERSION ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Encode-2.97/Encode.xs new/Encode-2.98/Encode.xs --- old/Encode-2.97/Encode.xs 2018-02-21 13:14:37.000000000 +0100 +++ new/Encode-2.98/Encode.xs 2018-04-22 11:03:09.000000000 +0200 @@ -1,5 +1,5 @@ /* - $Id: Encode.xs,v 2.43 2018/02/21 12:14:33 dankogai Exp dankogai $ + $Id: Encode.xs,v 2.44 2018/04/22 09:02:00 dankogai Exp $ */ #define PERL_NO_GET_CONTEXT @@ -20,17 +20,6 @@ encode_method(). 1 is recommended. 2 restores NI-S original */ #define ENCODE_XS_USEFP 1 -#define UNIMPLEMENTED(x,y) static y x (SV *sv, char *encoding) { \ - Perl_croak_nocontext("panic_unimplemented"); \ - PERL_UNUSED_VAR(sv); \ - PERL_UNUSED_VAR(encoding); \ - return (y)0; /* fool picky compilers */ \ - } -/**/ - -UNIMPLEMENTED(_encoded_utf8_to_bytes, I32) -UNIMPLEMENTED(_encoded_bytes_to_utf8, I32) - #ifndef SvIV_nomg #define SvIV_nomg SvIV #endif @@ -67,16 +56,6 @@ } static void -call_failure(SV * routine, U8 * done, U8 * dest, U8 * orig) -{ - /* Exists for breakpointing */ - PERL_UNUSED_VAR(routine); - PERL_UNUSED_VAR(done); - PERL_UNUSED_VAR(dest); - PERL_UNUSED_VAR(orig); -} - -static void utf8_safe_downgrade(pTHX_ SV ** src, U8 ** s, STRLEN * slen, bool modify) { if (!modify) { @@ -164,7 +143,7 @@ static SV * encode_method(pTHX_ const encode_t * enc, const encpage_t * dir, SV * src, U8 * s, STRLEN slen, - int check, STRLEN * offset, SV * term, int * retcode, + IV check, STRLEN * offset, SV * term, int * retcode, SV *fallback_cb) { STRLEN tlen = slen; @@ -472,7 +451,7 @@ UV uv; STRLEN ulen; SV *fallback_cb; - int check; + IV check; U8 *d; STRLEN dlen; char esc[UTF8_MAXLEN * 6 + 1]; @@ -683,7 +662,7 @@ U8 *e; SV *dst; bool renewed = 0; - int check; + IV check; bool modify; dSP; INIT: @@ -744,7 +723,7 @@ U8 *s; U8 *e; SV *dst; - int check; + IV check; bool modify; INIT: SvGETMAGIC(src); @@ -848,7 +827,7 @@ SV * term SV * check_sv PREINIT: - int check; + IV check; SV *fallback_cb; bool modify; encode_t *enc; @@ -886,7 +865,7 @@ SV * src SV * check_sv PREINIT: - int check; + IV check; SV *fallback_cb; bool modify; encode_t *enc; @@ -917,7 +896,7 @@ SV * src SV * check_sv PREINIT: - int check; + IV check; SV *fallback_cb; bool modify; encode_t *enc; @@ -988,102 +967,6 @@ PROTOTYPES: ENABLE -I32 -_bytes_to_utf8(sv, ...) -SV * sv -PREINIT: - SV * encoding; -INIT: - encoding = items == 2 ? ST(1) : Nullsv; -CODE: - if (encoding) - RETVAL = _encoded_bytes_to_utf8(sv, SvPV_nolen(encoding)); - else { - STRLEN len; - U8* s = (U8*)SvPV(sv, len); - U8* converted; - - converted = bytes_to_utf8(s, &len); /* This allocs */ - sv_setpvn(sv, (char *)converted, len); - SvUTF8_on(sv); /* XXX Should we? */ - Safefree(converted); /* ... so free it */ - RETVAL = len; - } -OUTPUT: - RETVAL - -I32 -_utf8_to_bytes(sv, ...) -SV * sv -PREINIT: - SV * to; - SV * check; -INIT: - to = items > 1 ? ST(1) : Nullsv; - check = items > 2 ? ST(2) : Nullsv; -CODE: - if (to) { - RETVAL = _encoded_utf8_to_bytes(sv, SvPV_nolen(to)); - } else { - STRLEN len; - U8 *s = (U8*)SvPV(sv, len); - - RETVAL = 0; - if (SvTRUE(check)) { - /* Must do things the slow way */ - U8 *dest; - /* We need a copy to pass to check() */ - U8 *src = s; - U8 *send = s + len; - U8 *d0; - - New(83, dest, len, U8); /* I think */ - d0 = dest; - - while (s < send) { - if (*s < 0x80){ - *dest++ = *s++; - } else { - STRLEN ulen; - UV uv = *s++; - - /* Have to do it all ourselves because of error routine, - aargh. */ - if (!(uv & 0x40)){ goto failure; } - if (!(uv & 0x20)) { ulen = 2; uv &= 0x1f; } - else if (!(uv & 0x10)) { ulen = 3; uv &= 0x0f; } - else if (!(uv & 0x08)) { ulen = 4; uv &= 0x07; } - else if (!(uv & 0x04)) { ulen = 5; uv &= 0x03; } - else if (!(uv & 0x02)) { ulen = 6; uv &= 0x01; } - else if (!(uv & 0x01)) { ulen = 7; uv = 0; } - else { ulen = 13; uv = 0; } - - /* Note change to utf8.c variable naming, for variety */ - while (ulen--) { - if ((*s & 0xc0) != 0x80){ - goto failure; - } else { - uv = (uv << 6) | (*s++ & 0x3f); - } - } - if (uv > 256) { - failure: - call_failure(check, s, dest, src); - /* Now what happens? */ - } - *dest++ = (U8)uv; - } - } - RETVAL = dest - d0; - sv_usepvn(sv, (char *)dest, RETVAL); - SvUTF8_off(sv); - } else { - RETVAL = (utf8_to_bytes(s, &len) ? len : 0); - } - } -OUTPUT: - RETVAL - bool is_utf8(sv, check = 0) SV * sv @@ -1141,7 +1024,7 @@ BOOT: { - HV *stash = gv_stashpvn("Encode", strlen("Encode"), GV_ADD); + HV *stash = gv_stashpvn("Encode", (U32)strlen("Encode"), GV_ADD); newCONSTSUB(stash, "DIE_ON_ERR", newSViv(ENCODE_DIE_ON_ERR)); newCONSTSUB(stash, "WARN_ON_ERR", newSViv(ENCODE_WARN_ON_ERR)); newCONSTSUB(stash, "RETURN_ON_ERR", newSViv(ENCODE_RETURN_ON_ERR)); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Encode-2.97/META.json new/Encode-2.98/META.json --- old/Encode-2.97/META.json 2018-02-21 13:15:13.000000000 +0100 +++ new/Encode-2.98/META.json 2018-04-22 11:03:52.000000000 +0200 @@ -45,7 +45,7 @@ "url" : "https://github.com/dankogai/p5-encode" } }, - "version" : "2.97", + "version" : "2.98", "x_contributors" : [ "Alex Davies <alex.davies@talktalk.net>", "Alex Kapranoff <alex@kapranoff.ru>", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Encode-2.97/META.yml new/Encode-2.98/META.yml --- old/Encode-2.97/META.yml 2018-02-21 13:15:13.000000000 +0100 +++ new/Encode-2.98/META.yml 2018-04-22 11:03:52.000000000 +0200 @@ -24,7 +24,7 @@ parent: '0.221' resources: repository: https://github.com/dankogai/p5-encode -version: '2.97' +version: '2.98' x_contributors: - 'Alex Davies <alex.davies@talktalk.net>' - 'Alex Kapranoff <alex@kapranoff.ru>' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Encode-2.97/Unicode/Unicode.xs new/Encode-2.98/Unicode/Unicode.xs --- old/Encode-2.97/Unicode/Unicode.xs 2018-02-21 13:14:37.000000000 +0100 +++ new/Encode-2.98/Unicode/Unicode.xs 2018-04-22 11:03:09.000000000 +0200 @@ -1,5 +1,5 @@ /* - $Id: Unicode.xs,v 2.17 2018/02/08 00:26:15 dankogai Exp $ + $Id: Unicode.xs,v 2.18 2018/04/22 09:02:00 dankogai Exp $ */ #define PERL_NO_GET_CONTEXT @@ -123,8 +123,8 @@ PROTOTYPES: DISABLE -#define attr(k, l) (hv_exists((HV *)SvRV(obj),k,l) ? \ - *hv_fetch((HV *)SvRV(obj),k,l,0) : &PL_sv_undef) +#define attr(k) (hv_exists((HV *)SvRV(obj),"" k "",sizeof(k)-1) ? \ + *hv_fetch((HV *)SvRV(obj),"" k "",sizeof(k)-1,0) : &PL_sv_undef) void decode(obj, str, check = 0) @@ -133,9 +133,9 @@ IV check CODE: { - SV *sve = attr("endian", 6); + SV *sve = attr("endian"); U8 endian = *((U8 *)SvPV_nolen(sve)); - SV *svs = attr("size", 4); + SV *svs = attr("size"); int size = SvIV(svs); int ucs2 = -1; /* only needed in the event of surrogate pairs */ SV *result = newSVpvn("",0); @@ -209,7 +209,7 @@ } #if 1 /* Update endian for next sequence */ - sv = attr("renewed", 7); + sv = attr("renewed"); if (SvTRUE(sv)) { (void)hv_store((HV *)SvRV(obj),"endian",6,newSVpv((char *)&endian,1),0); } @@ -229,7 +229,7 @@ U8 *d; if (issurrogate(ord)) { if (ucs2 == -1) { - SV *sv = attr("ucs2", 4); + SV *sv = attr("ucs2"); ucs2 = SvTRUE(sv); } if (ucs2 || size == 4) { @@ -351,9 +351,9 @@ IV check CODE: { - SV *sve = attr("endian", 6); + SV *sve = attr("endian"); U8 endian = *((U8 *)SvPV_nolen(sve)); - SV *svs = attr("size", 4); + SV *svs = attr("size"); const int size = SvIV(svs); int ucs2 = -1; /* only needed if there is invalid_ucs2 input */ const STRLEN usize = (size > 0 ? size : 1); @@ -399,7 +399,7 @@ enc_pack(aTHX_ result,size,endian,BOM_BE); #if 1 /* Update endian for next sequence */ - sv = attr("renewed", 7); + sv = attr("renewed"); if (SvTRUE(sv)) { (void)hv_store((HV *)SvRV(obj),"endian",6,newSVpv((char *)&endian,1),0); } @@ -416,7 +416,7 @@ if (size != 4 && invalid_ucs2(ord)) { if (!issurrogate(ord)) { if (ucs2 == -1) { - SV *sv = attr("ucs2", 4); + SV *sv = attr("ucs2"); ucs2 = SvTRUE(sv); } if (ucs2 || ord > 0x10FFFF) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Encode-2.97/t/truncated_utf8.t new/Encode-2.98/t/truncated_utf8.t --- old/Encode-2.97/t/truncated_utf8.t 2017-05-17 03:51:40.000000000 +0200 +++ new/Encode-2.98/t/truncated_utf8.t 2018-04-19 18:27:07.000000000 +0200 @@ -45,7 +45,7 @@ is($str2, ("x" x 1023) . ("\x{fffd}" x 3) . "x"); TODO: { - local $TODO = "bug in perlio"; + local $TODO = "bug in perlio" if $] < 5.027009; my $str = ("x" x 1023) . "\xfd\xfe\xff"; open my $fh, '<:encoding(UTF-8)', \$str; my $str2 = <$fh>;