Control: retitle -1 testing-pu: aptly/1.3.0+ds1-2.1+deb10u1 Control: tags -1 buster Control: usertag -1 = pu
Since the build-depends golang-github-mattn-go-isatty and golang-golang-x-sys are updated with new version in unstable, aptly needs to be built in testing now. The debdiff is almost same, only the version should be changed to1.3.0+ds1-2.1+deb10u1 Thanks On Thu, Apr 18, 2019 at 1:39 AM Shengjing Zhu <z...@debian.org> wrote: > > Package: release.debian.org > Severity: normal > User: release.debian....@packages.debian.org > Usertags: unblock > > Please unblock package aptly > > * It fixes #911924(support database migration from <= 1.3.0-6) > > As I said in #911924, this should be grave. My justification is that > users should be able to upgrade from stretch, without losting data. > > * Previous NMU includes a patch which has a mistake, which may cause > lost one DB field info. > > unblock aptly/1.3.0+ds1-2.2 > > The debdiff is: > > > diff -Nru aptly-1.3.0+ds1/debian/changelog aptly-1.3.0+ds1/debian/changelog > --- aptly-1.3.0+ds1/debian/changelog 2019-04-05 23:19:14.000000000 +0800 > +++ aptly-1.3.0+ds1/debian/changelog 2019-04-16 00:18:23.000000000 +0800 > @@ -1,3 +1,12 @@ > +aptly (1.3.0+ds1-2.2) unstable; urgency=medium > + > + * Non-maintainer upload. > + * Add patch to fix DB backwards compatibility (Closes: #911924) > + * Fix struct field tag typo > + * Update debian/NEWS about DB compatibility > + > + -- Shengjing Zhu <z...@debian.org> Tue, 16 Apr 2019 00:18:23 +0800 > + > aptly (1.3.0+ds1-2.1) unstable; urgency=medium > > [ Shengjing Zhu ] > diff -Nru aptly-1.3.0+ds1/debian/NEWS aptly-1.3.0+ds1/debian/NEWS > --- aptly-1.3.0+ds1/debian/NEWS 2019-04-05 22:38:08.000000000 +0800 > +++ aptly-1.3.0+ds1/debian/NEWS 2019-04-16 00:18:23.000000000 +0800 > @@ -1,3 +1,13 @@ > +aptly (1.3.0+ds1-2.2) unstable; urgency=medium > + > + This version tries to fix the database backwards compatibility, > + so you don't need to rebuild the database if you upgrade from > + aptly <= 1.3.0-6. > + > + However some fields are missing, like created time of a snapshot. > + > + -- Shengjing Zhu <z...@debian.org> Sat, 13 Apr 2019 23:26:39 +0800 > + > aptly (1.3.0+ds1-2) unstable; urgency=medium > > * The database created by aptly <= 1.3.0-6 is not compatible > diff -Nru > aptly-1.3.0+ds1/debian/patches/Fix-time.Time-msgpack-decoding-backwards-compatibili.patch > > aptly-1.3.0+ds1/debian/patches/Fix-time.Time-msgpack-decoding-backwards-compatibili.patch > --- > aptly-1.3.0+ds1/debian/patches/Fix-time.Time-msgpack-decoding-backwards-compatibili.patch > 1970-01-01 08:00:00.000000000 +0800 > +++ > aptly-1.3.0+ds1/debian/patches/Fix-time.Time-msgpack-decoding-backwards-compatibili.patch > 2019-04-16 00:18:23.000000000 +0800 > @@ -0,0 +1,40 @@ > +From: Shengjing Zhu <z...@debian.org> > +Date: Sat, 13 Apr 2019 22:57:46 +0800 > +Subject: Fix time.Time msgpack decoding backwards compatibility > + > +This allows aptly to decode DB created by old codec library. > + > +Forwarded: https://github.com/aptly-dev/aptly/pull/830 > +--- > + deb/remote.go | 3 ++- > + deb/snapshot.go | 3 ++- > + 2 files changed, 4 insertions(+), 2 deletions(-) > + > +diff --git a/deb/remote.go b/deb/remote.go > +index 167d45f..71eb984 100644 > +--- a/deb/remote.go > ++++ b/deb/remote.go > +@@ -600,7 +600,8 @@ func (repo *RemoteRepo) Decode(input []byte) error { > + decoder := codec.NewDecoderBytes(input, &codec.MsgpackHandle{}) > + err := decoder.Decode(repo) > + if err != nil { > +- if strings.HasPrefix(err.Error(), "codec.decoder: > readContainerLen: Unrecognized descriptor byte: hex: 80") { > ++ if strings.HasPrefix(err.Error(), "codec.decoder: > readContainerLen: Unrecognized descriptor byte: hex: 80") || > ++ strings.Contains(err.Error(), "invalid length of > bytes for decoding time") { > + // probably it is broken DB from go < 1.2, try > decoding w/o time.Time > + var repo11 struct { // nolint: maligned > + UUID string > +diff --git a/deb/snapshot.go b/deb/snapshot.go > +index fc7689c..feef44a 100644 > +--- a/deb/snapshot.go > ++++ b/deb/snapshot.go > +@@ -140,7 +140,8 @@ func (s *Snapshot) Decode(input []byte) error { > + decoder := codec.NewDecoderBytes(input, &codec.MsgpackHandle{}) > + err := decoder.Decode(s) > + if err != nil { > +- if strings.HasPrefix(err.Error(), "codec.decoder: > readContainerLen: Unrecognized descriptor byte: hex: 80") { > ++ if strings.HasPrefix(err.Error(), "codec.decoder: > readContainerLen: Unrecognized descriptor byte: hex: 80") || > ++ strings.Contains(err.Error(), "invalid length of > bytes for decoding time") { > + // probably it is broken DB from go < 1.2, try > decoding w/o time.Time > + var snapshot11 struct { > + UUID string > diff -Nru > aptly-1.3.0+ds1/debian/patches/Fix-UUID-struct-field-not-encoded-in-msgpack.patch > > aptly-1.3.0+ds1/debian/patches/Fix-UUID-struct-field-not-encoded-in-msgpack.patch > --- > aptly-1.3.0+ds1/debian/patches/Fix-UUID-struct-field-not-encoded-in-msgpack.patch > 2019-04-05 23:18:43.000000000 +0800 > +++ > aptly-1.3.0+ds1/debian/patches/Fix-UUID-struct-field-not-encoded-in-msgpack.patch > 2019-04-16 00:18:23.000000000 +0800 > @@ -13,7 +13,7 @@ > 2 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/deb/local.go b/deb/local.go > -index e9fa17c..79cc308 100644 > +index e9fa17c..fb3e404 100644 > --- a/deb/local.go > +++ b/deb/local.go > @@ -14,7 +14,7 @@ import ( > @@ -30,7 +30,7 @@ > DefaultComponent string `codec:",omitempty"` > // Uploaders configuration > - Uploaders *Uploaders `code:",omitempty" json:"-"` > -+ Uploaders *Uploaders `code:"Uploaders,omitempty" json:"-"` > ++ Uploaders *Uploaders `codec:"Uploaders,omitempty" json:"-"` > // "Snapshot" of current list of packages > packageRefs *PackageRefList > } > diff -Nru aptly-1.3.0+ds1/debian/patches/series > aptly-1.3.0+ds1/debian/patches/series > --- aptly-1.3.0+ds1/debian/patches/series 2019-04-05 23:04:23.000000000 > +0800 > +++ aptly-1.3.0+ds1/debian/patches/series 2019-04-16 00:18:23.000000000 > +0800 > @@ -2,3 +2,4 @@ > kjk-lzma.patch > pborman-uuid.patch > Fix-UUID-struct-field-not-encoded-in-msgpack.patch > +Fix-time.Time-msgpack-decoding-backwards-compatibili.patch -- Shengjing Zhu