Package: elan

Severity: serious

01234567890123456789012345678901234567890123456789012345678901234567890123456789
elan build-depends on a number of unversioned clap feature packages. Some of
these are virtual packages provided by multiple versions of clap. Some of them
are also cruft physical packages which I would like to see crufted as I belive
they are the cause of spurious puiparts regressions in the testing migration
of rust-clap.

Your cargo dependency on clap is versioned as 2.33.3, per semver this allows
any 2.x version greater than or equal to 2.33.3. Therefore your
build-dependencies should be on librust-clap-3+{feature}-dev (>= 2.33.3).
(replacing {feature} with the requred feature).

Fortunately a couple of the features you use are currently only provided
by clap 2, so this can't cause a FTBFS with the current packages, but
there is theĀ  potential for that to change in the future. Depending explicitly
on the required version also makes it easier to keep track of which software
is using which version of clap

Elan also build-depends on librust-zstd-dev, which was recently updated from
0.11 to 0.12, this means that the Debian dependency is satisfied but the cargo
dependency is not, causing your package to FTBFS. Because your Debian
dependencies did not reflect your cargo dependencies this dependency issue
will only show up in actual rebuild tests, not in mere archive metadata checks.

A debdiff updating the dependencies is attatched, if I get no response
I will likely NMU this in a week or so.

diff -Nru elan-1.4.2/debian/changelog elan-1.4.2/debian/changelog
--- elan-1.4.2/debian/changelog 2022-12-28 17:00:31.000000000 +0000
+++ elan-1.4.2/debian/changelog 2023-01-14 09:59:42.000000000 +0000
@@ -1,3 +1,12 @@
+elan (1.4.2-3.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Build-depend explicitly on clap 2.x
+  * Update cargo dependency for zstd 0.11 and update Debian dependency
+    to match.
+
+ -- Peter Michael Green <plugw...@debian.org>  Sat, 14 Jan 2023 09:59:42 +0000
+
 elan (1.4.2-3) unstable; urgency=medium
 
   * Fix "elan - update for rust-zip 0.6" cherry-pick upstream commit
diff -Nru elan-1.4.2/debian/control elan-1.4.2/debian/control
--- elan-1.4.2/debian/control   2022-12-28 16:26:06.000000000 +0000
+++ elan-1.4.2/debian/control   2023-01-14 09:32:32.000000000 +0000
@@ -25,10 +25,10 @@
  librust-url-dev,
  librust-wait-timeout-dev,
  librust-zip-dev,
- librust-clap+atty-dev,
- librust-clap+strsim-dev,
- librust-clap+vec-map-dev,
- librust-clap+ansi-term-dev,
+ librust-clap-2+atty-dev (>= 2.33.3),
+ librust-clap-2+strsim-dev (>= 2.33.3),
+ librust-clap-2+vec-map-dev (>= 2.33.3),
+ librust-clap-2+ansi-term-dev (>= 2.33.3),
  librust-curl-dev,
  librust-walkdir-dev,
  librust-openssl-dev,
@@ -42,7 +42,7 @@
  librust-backtrace-sys-dev,
  librust-markdown-dev,
  librust-zip+time-dev,
- librust-zstd-dev,
+ librust-zstd-0.12-dev,
  bash-completion
 Standards-Version: 4.6.1.0
 Homepage: https://github.com/leanprover/elan
diff -Nru elan-1.4.2/debian/patches/0002-dependencies.patch 
elan-1.4.2/debian/patches/0002-dependencies.patch
--- elan-1.4.2/debian/patches/0002-dependencies.patch   2022-12-28 
16:49:18.000000000 +0000
+++ elan-1.4.2/debian/patches/0002-dependencies.patch   2023-01-14 
09:34:25.000000000 +0000
@@ -9,10 +9,10 @@
  src/elan-utils/Cargo.toml | 12 ++++--------
  3 files changed, 9 insertions(+), 23 deletions(-)
 
-diff --git a/Cargo.toml b/Cargo.toml
-index fcd4b24..095b144 100644
---- a/Cargo.toml
-+++ b/Cargo.toml
+Index: elan-1.4.2/Cargo.toml
+===================================================================
+--- elan-1.4.2.orig/Cargo.toml
++++ elan-1.4.2/Cargo.toml
 @@ -34,15 +34,15 @@ libc = "0.2.82"
  markdown = "0.3.0"
  rand = "0.8.2"
@@ -44,10 +44,10 @@
  [workspace]
  members = ["src/download", "src/elan-dist", "src/elan-utils"]
  
-diff --git a/src/elan-dist/Cargo.toml b/src/elan-dist/Cargo.toml
-index 319468e..0f881dc 100644
---- a/src/elan-dist/Cargo.toml
-+++ b/src/elan-dist/Cargo.toml
+Index: elan-1.4.2/src/elan-dist/Cargo.toml
+===================================================================
+--- elan-1.4.2.orig/src/elan-dist/Cargo.toml
++++ elan-1.4.2/src/elan-dist/Cargo.toml
 @@ -11,14 +11,13 @@ license = "MIT OR Apache-2.0"
  [dependencies]
  regex = "1.4.3"
@@ -57,7 +57,7 @@
  tar = "0.4.33"
  flate2 = "1.0.14"
 -zstd = "0.9"
-+zstd = "0.11.2"
++zstd = "0.12"
  walkdir = "2.3.1"
  toml = "0.5.8"
 -sha2 = "0.9.3"
@@ -76,10 +76,10 @@
  [target."cfg(not(windows))".dependencies]
  libc = "0.2.88"
  
-diff --git a/src/elan-utils/Cargo.toml b/src/elan-utils/Cargo.toml
-index 19ed717..dc4d443 100644
---- a/src/elan-utils/Cargo.toml
-+++ b/src/elan-utils/Cargo.toml
+Index: elan-1.4.2/src/elan-utils/Cargo.toml
+===================================================================
+--- elan-1.4.2.orig/src/elan-utils/Cargo.toml
++++ elan-1.4.2/src/elan-utils/Cargo.toml
 @@ -14,16 +14,12 @@ libc = "0.2.88"
  rand = "0.8.3"
  remove_dir_all = "0.7.0"

Reply via email to