Package: release.debian.org Severity: normal User: release.debian....@packages.debian.org Usertags: unblock
Greetings from the Gothenburg BSP. Please unblock package golang-github-puerkitobio-purell unblock golang-github-puerkitobio-purell/1.1.0-2 Fixes FTBFS (testsuite failure) (Sorry, this also included some minor trivial changes that where already sitting in the salsa git repo for this package.) Regards, Andreas Henriksson diff --git a/debian/changelog b/debian/changelog index a85603e..e233aac 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,15 @@ +golang-github-puerkitobio-purell (1.1.0-2) unstable; urgency=medium + + * Team upload with greetings from Gothenburg BSP. + + [ Alexandre Viau ] + * Point Vcs-* urls to salsa.debian.org. + + [ Andreas Henriksson ] + * Add debian/patches/pr-29.patch (Closes: #926380) + + -- Andreas Henriksson <andr...@fatal.se> Sun, 07 Apr 2019 17:00:51 +0200 + golang-github-puerkitobio-purell (1.1.0-1) unstable; urgency=medium * New upstream release diff --git a/debian/control b/debian/control index a6a5a13..ce8e849 100644 --- a/debian/control +++ b/debian/control @@ -1,6 +1,6 @@ Source: golang-github-puerkitobio-purell Section: devel -Priority: extra +Priority: optional Maintainer: Debian Go Packaging Team <pkg-go-maintain...@lists.alioth.debian.org> Uploaders: Anthony Fok <f...@debian.org> Build-Depends: debhelper (>= 9), @@ -9,10 +9,10 @@ Build-Depends: debhelper (>= 9), golang-github-opennota-urlesc-dev (>= 0.0~git20150208.0.5fa9ff0-3), golang-golang-x-net-dev, golang-golang-x-text-dev -Standards-Version: 3.9.8 +Standards-Version: 4.0.0 Homepage: https://github.com/PuerkitoBio/purell -Vcs-Browser: https://anonscm.debian.org/cgit/pkg-go/packages/golang-github-puerkitobio-purell.git -Vcs-Git: https://anonscm.debian.org/git/pkg-go/packages/golang-github-puerkitobio-purell.git +Vcs-Browser: https://salsa.debian.org/go-team/packages/golang-github-puerkitobio-purell +Vcs-Git: https://salsa.debian.org/go-team/packages/golang-github-puerkitobio-purell.git XS-Go-Import-Path: github.com/PuerkitoBio/purell Package: golang-github-puerkitobio-purell-dev diff --git a/debian/copyright b/debian/copyright index 707eab8..afd538d 100644 --- a/debian/copyright +++ b/debian/copyright @@ -1,4 +1,4 @@ -Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: Purell Source: https://github.com/PuerkitoBio/purell diff --git a/debian/gitlab-ci.yml b/debian/gitlab-ci.yml new file mode 100644 index 0000000..5c8c31b --- /dev/null +++ b/debian/gitlab-ci.yml @@ -0,0 +1,28 @@ + +# auto-generated, DO NOT MODIFY. +# The authoritative copy of this file lives at: +# https://salsa.debian.org/go-team/ci/blob/master/cmd/ci/gitlabciyml.go + +# TODO: publish under debian-go-team/ci +image: stapelberg/ci2 + +test_the_archive: + artifacts: + paths: + - before-applying-commit.json + - after-applying-commit.json + script: + # Create an overlay to discard writes to /srv/gopath/src after the build: + - "rm -rf /cache/overlay/{upper,work}" + - "mkdir -p /cache/overlay/{upper,work}" + - "mount -t overlay overlay -o lowerdir=/srv/gopath/src,upperdir=/cache/overlay/upper,workdir=/cache/overlay/work /srv/gopath/src" + - "export GOPATH=/srv/gopath" + - "export GOCACHE=/cache/go" + # Build the world as-is: + - "ci-build -exemptions=/var/lib/ci-build/exemptions.json > before-applying-commit.json" + # Copy this package into the overlay: + - "GBP_CONF_FILES=:debian/gbp.conf gbp buildpackage --git-no-pristine-tar --git-ignore-branch --git-ignore-new --git-export-dir=/tmp/export --git-no-overlay --git-tarball-dir=/nonexistant --git-cleaner=/bin/true --git-builder='dpkg-buildpackage -S -d --no-sign'" + - "pgt-gopath -dsc /tmp/export/*.dsc" + # Rebuild the world: + - "ci-build -exemptions=/var/lib/ci-build/exemptions.json > after-applying-commit.json" + - "ci-diff before-applying-commit.json after-applying-commit.json" diff --git a/debian/patches/pr-29.patch b/debian/patches/pr-29.patch new file mode 100644 index 0000000..c5f889e --- /dev/null +++ b/debian/patches/pr-29.patch @@ -0,0 +1,76 @@ +From b5f01560a83bfe6f1551df3579f2149ae7f3f54c Mon Sep 17 00:00:00 2001 +From: Martin Angers <martin.n.ang...@gmail.com> +Date: Sat, 16 Feb 2019 16:08:08 -0500 +Subject: [PATCH] fix failing go1.12 test due to control chars causing + url.Parse to fail + +--- + purell_test.go | 41 ++++++++++++++++++++++++----------------- + 1 file changed, 24 insertions(+), 17 deletions(-) + +diff --git a/purell_test.go b/purell_test.go +index 8eb5191..efde722 100644 +--- a/purell_test.go ++++ b/purell_test.go +@@ -4,6 +4,7 @@ import ( + "fmt" + "net/url" + "testing" ++ "unicode" + ) + + type testCase struct { +@@ -746,30 +747,36 @@ func TestDecodeUnnecessaryEscapesAll(t *testing.T) { + for i := 0; i < 256; i++ { + url += fmt.Sprintf("%%%02x", i) + } +- if s, e := NormalizeURLString(url, FlagDecodeUnnecessaryEscapes); e != nil { +- t.Fatalf("Got error %s", e.Error()) +- } else { +- const want = "http://host/%00%01%02%03%04%05%06%07%08%09%0A%0B%0C%0D%0E%0F%10%11%12%13%14%15%16%17%18%19%1A%1B%1C%1D%1E%1F%20!%22%23$%25&'()*+,-./0123456789:;%3C=%3E%3F@ABCDEFGHIJKLMNOPQRSTUVWXYZ[%5C]%5E_%60abcdefghijklmnopqrstuvwxyz%7B%7C%7D~%7F%80%81%82%83%84%85%86%87%88%89%8A%8B%8C%8D%8E%8F%90%91%92%93%94%95%96%97%98%99%9A%9B%9C%9D%9E%9F%A0%A1%A2%A3%A4%A5%A6%A7%A8%A9%AA%AB%AC%AD%AE%AF%B0%B1%B2%B3%B4%B5%B6%B7%B8%B9%BA%BB%BC%BD%BE%BF%C0%C1%C2%C3%C4%C5%C6%C7%C8%C9%CA%CB%CC%CD%CE%CF%D0%D1%D2%D3%D4%D5%D6%D7%D8%D9%DA%DB%DC%DD%DE%DF%E0%E1%E2%E3%E4%E5%E6%E7%E8%E9%EA%EB%EC%ED%EE%EF%F0%F1%F2%F3%F4%F5%F6%F7%F8%F9%FA%FB%FC%FD%FE%FF" +- if s != want { +- t.Errorf("DecodeUnnecessaryEscapesAll:\nwant\n%s\ngot\n%s", want, s) +- } ++ s, err := NormalizeURLString(url, FlagDecodeUnnecessaryEscapes) ++ if err != nil { ++ t.Fatalf("parse error: %s", err) ++ } ++ ++ const want = "http://host/%00%01%02%03%04%05%06%07%08%09%0A%0B%0C%0D%0E%0F%10%11%12%13%14%15%16%17%18%19%1A%1B%1C%1D%1E%1F%20!%22%23$%25&'()*+,-./0123456789:;%3C=%3E%3F@ABCDEFGHIJKLMNOPQRSTUVWXYZ[%5C]%5E_%60abcdefghijklmnopqrstuvwxyz%7B%7C%7D~%7F%80%81%82%83%84%85%86%87%88%89%8A%8B%8C%8D%8E%8F%90%91%92%93%94%95%96%97%98%99%9A%9B%9C%9D%9E%9F%A0%A1%A2%A3%A4%A5%A6%A7%A8%A9%AA%AB%AC%AD%AE%AF%B0%B1%B2%B3%B4%B5%B6%B7%B8%B9%BA%BB%BC%BD%BE%BF%C0%C1%C2%C3%C4%C5%C6%C7%C8%C9%CA%CB%CC%CD%CE%CF%D0%D1%D2%D3%D4%D5%D6%D7%D8%D9%DA%DB%DC%DD%DE%DF%E0%E1%E2%E3%E4%E5%E6%E7%E8%E9%EA%EB%EC%ED%EE%EF%F0%F1%F2%F3%F4%F5%F6%F7%F8%F9%FA%FB%FC%FD%FE%FF" ++ if s != want { ++ t.Errorf("DecodeUnnecessaryEscapesAll:\nwant\n%s\ngot\n%s", want, s) + } + } + + func TestEncodeNecessaryEscapesAll(t *testing.T) { +- var url = "http://host/" ++ const base = "http://host/" ++ var path []byte + + for i := 0; i < 256; i++ { +- if i != 0x25 { +- url += string(i) ++ // Since go1.12, url.Parse fails if the raw URL contains ASCII control characters, ++ // meaning anything < 0x20 and 0x7f (DEL), so do not add those bytes to the constructed url. ++ // See https://github.com/PuerkitoBio/purell/issues/28 ++ if i != 0x25 && !unicode.IsControl(rune(i)) { ++ path = append(path, byte(i)) + } + } +- if s, e := NormalizeURLString(url, FlagEncodeNecessaryEscapes); e != nil { +- t.Fatalf("Got error %s", e.Error()) +- } else { +- const want = "http://host/%00%01%02%03%04%05%06%07%08%09%0A%0B%0C%0D%0E%0F%10%11%12%13%14%15%16%17%18%19%1A%1B%1C%1D%1E%1F%20!%22#$&'()*+,-./0123456789:;%3C=%3E?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[%5C]%5E_%60abcdefghijklmnopqrstuvwxyz%7B%7C%7D~%7F%C2%80%C2%81%C2%82%C2%83%C2%84%C2%85%C2%86%C2%87%C2%88%C2%89%C2%8A%C2%8B%C2%8C%C2%8D%C2%8E%C2%8F%C2%90%C2%91%C2%92%C2%93%C2%94%C2%95%C2%96%C2%97%C2%98%C2%99%C2%9A%C2%9B%C2%9C%C2%9D%C2%9E%C2%9F%C2%A0%C2%A1%C2%A2%C2%A3%C2%A4%C2%A5%C2%A6%C2%A7%C2%A8%C2%A9%C2%AA%C2%AB%C2%AC%C2%AD%C2%AE%C2%AF%C2%B0%C2%B1%C2%B2%C2%B3%C2%B4%C2%B5%C2%B6%C2%B7%C2%B8%C2%B9%C2%BA%C2%BB%C2%BC%C2%BD%C2%BE%C2%BF%C3%80%C3%81%C3%82%C3%83%C3%84%C3%85%C3%86%C3%87%C3%88%C3%89%C3%8A%C3%8B%C3%8C%C3%8D%C3%8E%C3%8F%C3%90%C3%91%C3%92%C3%93%C3%94%C3%95%C3%96%C3%97%C3%98%C3%99%C3%9A%C3%9B%C3%9C%C3%9D%C3%9E%C3%9F%C3%A0%C3%A1%C3%A2%C3%A3%C3%A4%C3%A5%C3%A6%C3%A7%C3%A8%C3%A9%C3%AA%C3%AB%C3%AC%C3%AD%C3%AE%C3%AF%C3%B0%C3%B1%C3%B2%C3%B3%C3%B4%C3%B5%C3%B6%C3%B7%C3%B8%C3%B9%C3%BA%C3%BB%C3%BC%C3%BD%C3%BE%C3%BF" +- if s != want { +- t.Errorf("EncodeNecessaryEscapesAll:\nwant\n%s\ngot\n%s", want, s) +- } ++ s, err := NormalizeURLString(base+string(path), FlagEncodeNecessaryEscapes) ++ if err != nil { ++ t.Fatalf("parse error: %s", err) ++ } ++ ++ const want = "http://host/%20!%22#$&'()*+,-./0123456789:;%3C=%3E?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[%5C]%5E_%60abcdefghijklmnopqrstuvwxyz%7B%7C%7D~%A0%A1%A2%A3%A4%A5%A6%A7%A8%A9%AA%AB%AC%AD%AE%AF%B0%B1%B2%B3%B4%B5%B6%B7%B8%B9%BA%BB%BC%BD%BE%BF%C0%C1%C2%C3%C4%C5%C6%C7%C8%C9%CA%CB%CC%CD%CE%CF%D0%D1%D2%D3%D4%D5%D6%D7%D8%D9%DA%DB%DC%DD%DE%DF%E0%E1%E2%E3%E4%E5%E6%E7%E8%E9%EA%EB%EC%ED%EE%EF%F0%F1%F2%F3%F4%F5%F6%F7%F8%F9%FA%FB%FC%FD%FE%FF" ++ if s != want { ++ t.Errorf("EncodeNecessaryEscapesAll:\nwant\n%s\ngot\n%s", want, s) + } + } diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..4e2f468 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1 @@ +pr-29.patch