Bug#1037351: hippotat: ftbfs with rust-base64 0.21

2023-06-12 Thread Ian Jackson
Peter Green writes ("Bug#1037351: hippotat: ftbfs with rust-base64 0.21"):
> hippotat FTBFS with the new version of rust-base64.

Thanks for the report.

> I attach a patch which makes the package build.
> I have not tested it beyond that (and the build said it was
> skipping tests due to lack of unshare).

Unfortunately the automatic tests are not suitable for running in
Debian CI.  Running them via autopkgtest is nontrivial and probably
not possible for people other than me :-/.

I'm hoping trixie will bring some new tooling that will help with
that.

> Also your clean target is horriblly broken, I filtered the
> debdiff to get rid of a huge volume of junk.

I confess I don't often use `make clean`.  I normally use `git clean`.

> I may or may not NMU this later.

I will probably fix this myself fairly soon.

Since AFAICT you haven't written a formal Signed-off-by, would you
mind confirming the statements in DEVELOPER-CERTIFICATE (copy
below) ?  (If you don't want to make that confirmation I will rewrite
the patch myself.)

Thanks,
Ian.

Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.


Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or

(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or

(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.

(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.



-- 
Ian JacksonThese opinions are my own.  

Pronouns: they/he.  If I emailed you from @fyvzl.net or @evade.org.uk,
that is a private address which bypasses my fierce spamfilter.



Bug#1037351: hippotat: ftbfs with rust-base64 0.21

2023-06-11 Thread Peter Green

sorry i over-filtered the debdiff, I think this one is correctly filtered.
diff -Nru hippotat-1.1.7/Cargo.toml hippotat-1.1.7+nmu1/Cargo.toml
--- hippotat-1.1.7/Cargo.toml   2023-01-12 18:50:36.0 +
+++ hippotat-1.1.7+nmu1/Cargo.toml  2023-06-11 19:36:36.0 +
@@ -30,7 +30,7 @@
 # versions specified here are mostly just guesses at what is needed
 # (or currently available):
 backtrace = "0.3"
-base64 = "0.13" # 0.20 has substantially incompatible API (there's no 0.14)
+base64 = "0.21" # 0.20 has substantially incompatible API (there's no 0.14)
 clap = { version = "3", features = ["derive"] }
 easy-ext = "1"
 educe = "0.4"
diff -Nru hippotat-1.1.7/client/client.rs hippotat-1.1.7+nmu1/client/client.rs
--- hippotat-1.1.7/client/client.rs 2023-01-12 18:50:36.0 +
+++ hippotat-1.1.7+nmu1/client/client.rs2023-06-11 19:36:38.0 
+
@@ -71,7 +71,7 @@
   //dbg!(DumpHex());
   let mut token = time_t;
   write!(token, " ").unwrap();
-  base64::encode_config_buf(hmac, BASE64_CONFIG,  token);
+  BASE64_CONFIG.encode_string(hmac,  token);
 
   let req_num = { *req_num += 1; *req_num };
 
diff -Nru hippotat-1.1.7/debian/changelog hippotat-1.1.7+nmu1/debian/changelog
--- hippotat-1.1.7/debian/changelog 2023-01-12 18:50:36.0 +
+++ hippotat-1.1.7+nmu1/debian/changelog2023-06-11 19:36:38.0 
+
@@ -1,3 +1,11 @@
+hippotat (1.1.7+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Bump base64 dependency to 0.21 and fix code to build with it.
+  * Make debian dependency on base64 match the versioing in Cargo.toml.
+
+ -- Peter Michael Green   Sun, 11 Jun 2023 19:36:38 +
+
 hippotat (1.1.7) unstable; urgency=medium
 
   Build system:
diff -Nru hippotat-1.1.7/debian/control hippotat-1.1.7+nmu1/debian/control
--- hippotat-1.1.7/debian/control   2023-01-12 18:50:36.0 +
+++ hippotat-1.1.7+nmu1/debian/control  2023-06-11 19:36:29.0 +
@@ -9,7 +9,7 @@
moreutils, libssl-dev (>= 1.1), pkg-config,
 # debian/update-build-deps manages these:
 librust-backtrace-dev ,
-librust-base64-dev ,
+librust-base64-0.21-dev ,
 librust-clap-3+derive-dev ,
 librust-easy-ext-dev ,
 librust-educe-dev ,
diff -Nru hippotat-1.1.7/server/sweb.rs hippotat-1.1.7+nmu1/server/sweb.rs
--- hippotat-1.1.7/server/sweb.rs   2023-01-12 18:50:36.0 +
+++ hippotat-1.1.7+nmu1/server/sweb.rs  2023-06-11 19:36:38.0 +
@@ -121,7 +121,7 @@
   let time_t = u64::from_str_radix(time_t, 16).context("parse time_t")?;
   let l = io::copy(
  base64::read::DecoderReader::new( hmac_b64.as_bytes(),
-  BASE64_CONFIG),
+  _CONFIG),
   hmac_got[..]
   ).context("parse b64 token")?;
   let l = l.try_into()?;
diff -Nru hippotat-1.1.7/src/prelude.rs hippotat-1.1.7+nmu1/src/prelude.rs
--- hippotat-1.1.7/src/prelude.rs   2023-01-12 18:50:36.0 +
+++ hippotat-1.1.7+nmu1/src/prelude.rs  2023-06-11 19:36:38.0 +
@@ -83,6 +83,7 @@
 
 pub const MAX_OVERHEAD: usize = 2_000;
 
-pub use base64::STANDARD as BASE64_CONFIG;
+pub use base64::engine::Engine;
+pub use base64::engine::general_purpose::STANDARD as BASE64_CONFIG;
 
 pub fn default() -> T { Default::default() }


Bug#1037351: hippotat: ftbfs with rust-base64 0.21

2023-06-11 Thread Peter Green

Package: hippotat
Version: 1.1.7
Tags: trixie, sid, ftbfs, patch

hippotat FTBFS with the new version of rust-base64.

I attach a patch which makes the package build.
I have not tested it beyond that (and the build said it was
skipping tests due to lack of unshare).

Also your clean target is horriblly broken, I filtered the
debdiff to get rid of a huge volume of junk.

I may or may not NMU this later.
diff -Nru hippotat-1.1.7/debian/cargo_home/config 
hippotat-1.1.7+nmu1/debian/cargo_home/config
--- hippotat-1.1.7/debian/cargo_home/config 1970-01-01 00:00:00.0 
+
+++ hippotat-1.1.7+nmu1/debian/cargo_home/config2023-06-11 
19:36:38.0 +
@@ -0,0 +1,8 @@
+[source.crates-io]
+replace-with = "dh-cargo-registry"
+
+[source.dh-cargo-registry]
+directory = "/usr/share/cargo/registry"
+
+[build]
+rustflags = ['-C', 'debuginfo=2', '--cap-lints', 'warn', '-C', 
'linker=x86_64-linux-gnu-gcc', '-C', 'link-arg=-Wl,-z,relro']
diff -Nru hippotat-1.1.7/debian/changelog hippotat-1.1.7+nmu1/debian/changelog
--- hippotat-1.1.7/debian/changelog 2023-01-12 18:50:36.0 +
+++ hippotat-1.1.7+nmu1/debian/changelog2023-06-11 19:36:38.0 
+
@@ -1,3 +1,11 @@
+hippotat (1.1.7+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Bump base64 dependency to 0.21 and fix code to build with it.
+  * Make debian dependency on base64 match the versioing in Cargo.toml.
+
+ -- Peter Michael Green   Sun, 11 Jun 2023 19:36:38 +
+
 hippotat (1.1.7) unstable; urgency=medium
 
   Build system:
diff -Nru hippotat-1.1.7/debian/control hippotat-1.1.7+nmu1/debian/control
--- hippotat-1.1.7/debian/control   2023-01-12 18:50:36.0 +
+++ hippotat-1.1.7+nmu1/debian/control  2023-06-11 19:36:29.0 +
@@ -9,7 +9,7 @@
moreutils, libssl-dev (>= 1.1), pkg-config,
 # debian/update-build-deps manages these:
 librust-backtrace-dev ,
-librust-base64-dev ,
+librust-base64-0.21-dev ,
 librust-clap-3+derive-dev ,
 librust-easy-ext-dev ,
 librust-educe-dev ,