From 38a87b464e2e63b961b18f428f38870e3d1acc39 Mon Sep 17 00:00:00 2001 From: Tim Orling Date: Fri, 18 Nov 2022 09:52:07 -0800 Subject: liburi-perl: upgrade 5.08 -> 5.17 * Author changed back from ETHER to OALDERS * Use CPAN_MIRROR for SRC_URI * Update HOMEPAGE * Update RPEPENDS for -ptest * Patch to skip TODO test cases For changes, see: https://metacpan.org/release/OALDERS/URI-5.17/changes License-Update: whitespace changes (From OE-Core rev: f5aad6f125b88920c7ff8dc749768fd2c3f40a89) Signed-off-by: Tim Orling Signed-off-by: Alexandre Belloni Signed-off-by: Richard Purdie --- .../0001-Skip-TODO-test-cases-that-fail.patch | 110 +++++++++++++++++++++ meta/recipes-devtools/perl/liburi-perl_5.08.bb | 50 ---------- meta/recipes-devtools/perl/liburi-perl_5.17.bb | 56 +++++++++++ 3 files changed, 166 insertions(+), 50 deletions(-) create mode 100644 meta/recipes-devtools/perl/liburi-perl/0001-Skip-TODO-test-cases-that-fail.patch delete mode 100644 meta/recipes-devtools/perl/liburi-perl_5.08.bb create mode 100644 meta/recipes-devtools/perl/liburi-perl_5.17.bb (limited to 'meta/recipes-devtools/perl') diff --git a/meta/recipes-devtools/perl/liburi-perl/0001-Skip-TODO-test-cases-that-fail.patch b/meta/recipes-devtools/perl/liburi-perl/0001-Skip-TODO-test-cases-that-fail.patch new file mode 100644 index 0000000000..68ccd06120 --- /dev/null +++ b/meta/recipes-devtools/perl/liburi-perl/0001-Skip-TODO-test-cases-that-fail.patch @@ -0,0 +1,110 @@ +From 858daa5047b00e7d5aa795302a9fad5504c8f0b9 Mon Sep 17 00:00:00 2001 +From: Tim Orling +Date: Thu, 17 Nov 2022 16:33:20 -0800 +Subject: [PATCH] Skip TODO test cases that fail + +TODO cases report as "not ok" with ptest-runner + +Upstream-Status: Inappropriate [ptest-runner specific] + +Signed-off-by: Tim Orling + +--- + t/escape-char.t | 20 ++++++++++---------- + t/iri.t | 18 +++++++++--------- + t/mailto.t | 12 ++++++------ + 3 files changed, 25 insertions(+), 25 deletions(-) + +diff --git a/t/escape-char.t b/t/escape-char.t +index c6ce79c..5e62ad5 100644 +--- a/t/escape-char.t ++++ b/t/escape-char.t +@@ -6,16 +6,16 @@ use warnings; + use Test::More; + use URI (); + +-TODO: { +- my $str = "http://foo/\xE9"; +- utf8::upgrade($str); +- my $uri = URI->new($str); +- +- local $TODO = 'URI::Escape::escape_char misunderstands utf8'; +- +- # http://foo/%C3%A9 +- is("$uri", 'http://foo/%E9', 'correctly created a URI from a utf8-upgraded string'); +-} ++#TODO: { ++# my $str = "http://foo/\xE9"; ++# utf8::upgrade($str); ++# my $uri = URI->new($str); ++# ++# local $TODO = 'URI::Escape::escape_char misunderstands utf8'; ++# ++# # http://foo/%C3%A9 ++# is("$uri", 'http://foo/%E9', 'correctly created a URI from a utf8-upgraded string'); ++#} + + { + my $str = "http://foo/\xE9"; +diff --git a/t/iri.t b/t/iri.t +index 2eb64b2..9c663c9 100644 +--- a/t/iri.t ++++ b/t/iri.t +@@ -6,7 +6,7 @@ use Test::More; + use Config qw( %Config ); + + if (defined $Config{useperlio}) { +- plan tests=>26; ++ plan tests=>24; + } else { + plan skip_all=>'this perl doesn\'t support PerlIO layers'; + } +@@ -60,17 +60,17 @@ is $u->as_iri, "http://➡.ws/"; + # draft-duerst-iri-bis.txt examples (section 3.7.1): + is(URI->new("http://www.example.org/D%C3%BCrst")->as_iri, "http://www.example.org/D\xFCrst"); + is(URI->new("http://www.example.org/D%FCrst")->as_iri, "http://www.example.org/D%FCrst"); +-TODO: { +- local $TODO = "some chars (like U+202E, RIGHT-TO-LEFT OVERRIDE) need to stay escaped"; +-is(URI->new("http://xn--99zt52a.example.org/%e2%80%ae")->as_iri, "http://\x{7D0D}\x{8C46}.example.org/%e2%80%ae"); +-} ++#TODO: { ++# local $TODO = "some chars (like U+202E, RIGHT-TO-LEFT OVERRIDE) need to stay escaped"; ++#is(URI->new("http://xn--99zt52a.example.org/%e2%80%ae")->as_iri, "http://\x{7D0D}\x{8C46}.example.org/%e2%80%ae"); ++#} + + # try some URLs that can't be IDNA encoded (fallback to encoded UTF8 bytes) + $u = URI->new("http://" . ("ü" x 128)); + is $u, "http://" . ("%C3%BC" x 128); + is $u->host, ("\xC3\xBC" x 128); +-TODO: { +- local $TODO = "should ihost decode UTF8 bytes?"; +- is $u->ihost, ("ü" x 128); +-} ++#TODO: { ++# local $TODO = "should ihost decode UTF8 bytes?"; ++# is $u->ihost, ("ü" x 128); ++#} + is $u->as_iri, "http://" . ("ü" x 128); +diff --git a/t/mailto.t b/t/mailto.t +index 79e9a13..c68cfb2 100644 +--- a/t/mailto.t ++++ b/t/mailto.t +@@ -48,12 +48,12 @@ $u = URI->new('mailto:user+detail@example.com'); + is $u->to, 'user+detail@example.com', 'subaddress with `+` parsed correctly'; + is $u, 'mailto:user+detail@example.com', '... and stringification works'; + +-TODO: { +- local $TODO = "We can't handle quoted local parts without properly parsing the email addresses"; +- $u = URI->new('mailto:"foo bar+baz"@example.com'); +- is $u->to, '"foo bar+baz"@example.com', 'address with quoted local part containing spaces is parsed correctly'; +- is $u, 'mailto:%22foo%20bar+baz%22@example.com', '... and stringification works'; +-} ++#TODO: { ++# local $TODO = "We can't handle quoted local parts without properly parsing the email addresses"; ++# $u = URI->new('mailto:"foo bar+baz"@example.com'); ++# is $u->to, '"foo bar+baz"@example.com', 'address with quoted local part containing spaces is parsed correctly'; ++# is $u, 'mailto:%22foo%20bar+baz%22@example.com', '... and stringification works'; ++#} + + # RFC 5321 (4.1.3) - Address Literals + diff --git a/meta/recipes-devtools/perl/liburi-perl_5.08.bb b/meta/recipes-devtools/perl/liburi-perl_5.08.bb deleted file mode 100644 index 5428c9ddf9..0000000000 --- a/meta/recipes-devtools/perl/liburi-perl_5.08.bb +++ /dev/null @@ -1,50 +0,0 @@ -SUMMARY = "Perl module to manipulate and access URI strings" -DESCRIPTION = "This package contains the URI.pm module with friends. \ -The module implements the URI class. URI objects can be used to access \ -and manipulate the various components that make up these strings." - -HOMEPAGE = "http://search.cpan.org/dist/URI/" -SECTION = "libs" -LICENSE = "Artistic-1.0 | GPL-1.0-or-later" - -LIC_FILES_CHKSUM = "file://LICENSE;md5=c453e94fae672800f83bc1bd7a38b53f" - -DEPENDS += "perl" - -SRC_URI = "http://www.cpan.org/authors/id/E/ET/ETHER/URI-${PV}.tar.gz" - -SRC_URI[md5sum] = "cdbbf8f8ccdec5c162c8505077a35c2c" -SRC_URI[sha256sum] = "7e2c6fe3b1d5947da334fa558a96e748aaa619213b85bcdce5b5347d4d26c46e" - -S = "${WORKDIR}/URI-${PV}" - -EXTRA_CPANFLAGS = "EXPATLIBPATH=${STAGING_LIBDIR} EXPATINCPATH=${STAGING_INCDIR}" - -inherit cpan ptest-perl - -do_compile() { - export LIBC="$(find ${STAGING_DIR_TARGET}/${base_libdir}/ -name 'libc-*.so')" - cpan_do_compile -} - -do_install:prepend() { - # these tests require "-T" (taint) command line option - rm -rf ${B}/t/cwd.t - rm -rf ${B}/t/file.t -} - -RDEPENDS:${PN} += "perl-module-integer perl-module-mime-base64" -RDEPENDS:${PN}-ptest += " \ - libtest-needs-perl \ - perl-module-test-more \ - perl-module-test \ - perl-module-utf8 \ - perl-module-extutils-makemaker \ - perl-module-net-domain \ - perl-module-encode \ - perl-module-extutils-mm-unix \ - perl-module-file-spec-functions \ - perl-module-perlio \ -" - -BBCLASSEXTEND = "native" diff --git a/meta/recipes-devtools/perl/liburi-perl_5.17.bb b/meta/recipes-devtools/perl/liburi-perl_5.17.bb new file mode 100644 index 0000000000..5e15004dd0 --- /dev/null +++ b/meta/recipes-devtools/perl/liburi-perl_5.17.bb @@ -0,0 +1,56 @@ +SUMMARY = "Perl module to manipulate and access URI strings" +DESCRIPTION = "This package contains the URI.pm module with friends. \ +The module implements the URI class. URI objects can be used to access \ +and manipulate the various components that make up these strings." +HOMEPAGE = "https://metacpan.org/dist/URI" +SECTION = "libs" +LICENSE = "Artistic-1.0 | GPL-1.0-or-later" + +LIC_FILES_CHKSUM = "file://LICENSE;md5=d8ca5f628bf2cd180bc4fa044cb8ef41" + +SRC_URI = "${CPAN_MIRROR}/authors/id/O/OA/OALDERS/URI-${PV}.tar.gz \ + file://0001-Skip-TODO-test-cases-that-fail.patch \ + " + +SRC_URI[sha256sum] = "5f7e42b769cb27499113cfae4b786c37d49e7c7d32dbb469602cd808308568f8" + +S = "${WORKDIR}/URI-${PV}" + +EXTRA_CPANFLAGS = "EXPATLIBPATH=${STAGING_LIBDIR} EXPATINCPATH=${STAGING_INCDIR}" + +inherit cpan ptest-perl + +do_compile() { + export LIBC="$(find ${STAGING_DIR_TARGET}/${base_libdir}/ -name 'libc-*.so')" + cpan_do_compile +} + +do_install:prepend() { + # these tests require "-T" (taint) command line option + rm -rf ${B}/t/cwd.t + rm -rf ${B}/t/file.t +} + +RDEPENDS:${PN} += "\ + perl-module-integer \ + perl-module-mime-base64 \ +" + +RDEPENDS:${PN}-ptest += " \ + libtest-fatal-perl \ + libtest-needs-perl \ + libtest-warnings-perl \ + perl-module-encode \ + perl-module-encode-encoding \ + perl-module-extutils-makemaker \ + perl-module-extutils-mm-unix \ + perl-module-file-spec-functions \ + perl-module-net-domain \ + perl-module-perlio \ + perl-module-perlio-encoding \ + perl-module-test \ + perl-module-test-more \ + perl-module-utf8 \ +" + +BBCLASSEXTEND = "native" -- cgit v1.2.3-54-g00ecf