Merge ~juliank/ubuntu/+source/rust-sequoia-sqv:ubuntu/devel into ubuntu/+source/rust-sequoia-sqv:ubuntu/devel

Proposed by Julian Andres Klode
Status: Needs review
Proposed branch: ~juliank/ubuntu/+source/rust-sequoia-sqv:ubuntu/devel
Merge into: ubuntu/+source/rust-sequoia-sqv:ubuntu/devel
Diff against target: 1414 lines (+1361/-16)
4 files modified
debian/control (+2/-13)
debian/patches/remove-dependencies.patch (+1303/-0)
debian/patches/series (+1/-1)
debian/rules (+55/-2)
Reviewer Review Type Date Requested Status
Lukas Märdian (community) Needs Fixing
git-ubuntu import Pending
Review via email: mp+479448@code.launchpad.net

Description of the change

Vendorize the dependencies. We deviate from the previous progress here that removes unused crates to simply emptying them, like cargo-vendor-filterer does, such as to avoid having to patch all the other crates that depend on them.

To post a comment you must log in.
d84750a... by Julian Andres Klode

Use cargo-vendor-filterer directly

I just packed it, hooray

Revision history for this message
Lukas Märdian (slyon) wrote :

Hi Julian,

thank you very much for getting sequoia in shape for Ubuntu! This generally LGTM and IMO is a good example of how we do Rust packaging in Ubuntu main. It follows best-practices from https://github.com/canonical/ubuntu-mir/blob/main/vendoring/Rust.md – especially the .orig-rust-vendor.tar.xz vendoring tarball.

A small nitpick (non-blocking): You might want to add a debian/README.source file, describing of how the vendoring tarball is created and how (vendored) dependencies can be updated. (Along the lines of https://git.launchpad.net/ubuntu/+source/s390-tools/tree/debian/README.source)

Another non-blocking nitpick can be found in-line below.

The one blocking issue I discovered is that it FTBFS with the following error:
[...]
  run pkg_config fail: Could not run `PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 pkg-config --libs --cflags openssl`
  The pkg-config command could not be found.
[...]

Adding "pkgconf" as a B-D (to find openssl system lib) fixes this. And you should probably do that.

Once that pkg-config issue is fixed. Feel free to upload!

review: Needs Fixing

Unmerged commits

d84750a... by Julian Andres Klode

Use cargo-vendor-filterer directly

I just packed it, hooray

600a48a... by Julian Andres Klode

Vendor the crates

Instead of the previous approach of deleting the unwanted crates and
then patching all the other crates to remove the dependencies on them,
we simply empty the crates, similar to `cargo-vendor-filterer`, this
way we can save all the patching :)

The list of unwanted crates can be calculated by running

    debian/rules vendor-filterer

Assuming you have `cargo-vendor-filterer` installed.

Our patching is slightly different when it comes to custom build
scripts and links: We don't patch Cargo.toml to remove them, instead
we simply create an empty build.rs which is sufficient.

Remove relax-deps.patch from the series as we do not need to relax
the deps when vendoring crates.

c56da13... by Julian Andres Klode

d/p/remove-dependencies.patch: Remove unused crypto backends

This avoids `cargo vendor` even downloading them

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/debian/control b/debian/control
2index 6c38562..2029532 100644
3--- a/debian/control
4+++ b/debian/control
5@@ -5,19 +5,7 @@ Build-Depends: debhelper-compat (= 13),
6 dh-sequence-cargo,
7 cargo:native,
8 rustc:native (>= 1.70),
9- libstd-rust-dev,
10- librust-anyhow-1+default-dev (>= 1.0.18-~~),
11- librust-chrono-0.4+default-dev (>= 0.4.10-~~),
12- librust-clap-4+default-dev,
13- librust-clap-4+derive-dev,
14- librust-clap-4+string-dev,
15- librust-clap-4+wrap-help-dev,
16- librust-clap-complete-4+default-dev,
17- librust-clap-mangen-0.2+default-dev,
18- librust-sequoia-openpgp-1+crypto-openssl-dev,
19- librust-sequoia-openpgp-1-dev,
20- librust-sequoia-policy-config-0.7+default-dev,
21- librust-sequoia-policy-config-0.7+default-dev | librust-sequoia-policy-config-0.6+default-dev,
22+ libssl-dev,
23 bash-completion
24 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
25 XSBC-Original-Maintainer: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
26@@ -30,6 +18,7 @@ Vcs-Git: https://salsa.debian.org/rust-team/debcargo-conf.git [src/sequoia-sqv]
27 Vcs-Browser: https://salsa.debian.org/rust-team/debcargo-conf/tree/master/src/sequoia-sqv
28 Homepage: https://sequoia-pgp.org/
29 X-Cargo-Crate: sequoia-sqv
30+XS-Vendored-Sources-Rust: aho-corasick@1.1.3, anstream@0.6.13, anstyle-parse@0.2.3, anstyle-query@1.0.2, anstyle@1.0.6, anyhow@1.0.76, ascii-canvas@3.0.0, assert_cmd@2.0.13, autocfg@1.2.0, base64@0.22.0, bit-set@0.5.3, bit-vec@0.6.3, bitflags@2.5.0, block-buffer@0.10.4, bstr@1.9.1, buffered-reader@1.3.1, cc@1.0.94, cfg-if@1.0.0, chrono@0.4.38, clap@4.4.18, clap_builder@4.4.18, clap_complete@4.4.10, clap_derive@4.4.7, clap_lex@0.6.0, clap_mangen@0.2.19, colorchoice@1.0.0, crunchy@0.2.2, crypto-common@0.1.6, difflib@0.4.0, digest@0.10.7, dirs-next@2.0.0, dirs-sys-next@0.1.2, doc-comment@0.3.3, dyn-clone@1.0.17, either@1.11.0, ena@0.14.2, equivalent@1.0.1, errno@0.3.8, fixedbitset@0.4.2, float-cmp@0.9.0, foreign-types-shared@0.1.1, foreign-types@0.3.2, generic-array@0.14.7, hashbrown@0.14.3, heck@0.4.1, iana-time-zone@0.1.60, idna@0.5.0, indexmap@2.2.6, itertools@0.11.0, lalrpop-util@0.20.2, lalrpop@0.20.2, lazy_static@1.4.0, libc@0.2.153, linux-raw-sys@0.4.13, lock_api@0.4.11, log@0.4.21, memchr@2.7.2, memsec@0.6.3, new_debug_unreachable@1.0.6, normalize-line-endings@0.3.0, num-traits@0.2.18, once_cell@1.19.0, openssl-macros@0.1.1, openssl-sys@0.9.102, openssl@0.10.64, parking_lot@0.12.1, parking_lot_core@0.9.9, petgraph@0.6.4, phf_shared@0.10.0, pkg-config@0.3.30, precomputed-hash@0.1.1, predicates-core@1.0.6, predicates-tree@1.0.9, predicates@3.1.0, proc-macro2@1.0.81, quote@1.0.36, regex-automata@0.4.6, regex-syntax@0.8.3, regex@1.10.4, roff@0.2.1, rustix@0.38.32, same-file@1.0.6, scopeguard@1.2.0, sequoia-openpgp@1.20.0, sequoia-policy-config@0.6.0, serde@1.0.198, sha1collisiondetection@0.3.4, siphasher@0.3.11, smallvec@1.13.2, string_cache@0.8.7, strsim@0.10.0, syn@2.0.60, term@0.7.0, terminal_size@0.3.0, termtree@0.4.1, thiserror-impl@1.0.58, thiserror@1.0.58, tiny-keccak@2.0.2, tinyvec@1.6.0, tinyvec_macros@0.1.1, toml@0.5.11, typenum@1.17.0, unicode-bidi@0.3.15, unicode-ident@1.0.12, unicode-normalization@0.1.23, unicode-xid@0.2.4, utf8parse@0.2.1, vcpkg@0.2.15, version_check@0.9.4, wait-timeout@0.2.0, walkdir@2.5.0, xxhash-rust@0.8.10
31 Rules-Requires-Root: no
32
33 Package: sqv
34diff --git a/debian/patches/remove-dependencies.patch b/debian/patches/remove-dependencies.patch
35new file mode 100644
36index 0000000..7fbd1af
37--- /dev/null
38+++ b/debian/patches/remove-dependencies.patch
39@@ -0,0 +1,1303 @@
40+Description: Remove unused dependencies from Cargo.toml
41+ This avoids having to rebuild them. Cargo.lock is recreated automatically by
42+ cargo, but we ship the diff here so it works
43+Author: Julian Andres Klode <juliank@ubuntu.com>
44+Forwarded: not-needed
45+diff --git a/Cargo.lock b/Cargo.lock
46+index fccfe2c..68b8276 100644
47+--- a/Cargo.lock
48++++ b/Cargo.lock
49+@@ -2,42 +2,6 @@
50+ # It is not intended for manual editing.
51+ version = 3
52+
53+-[[package]]
54+-name = "aead"
55+-version = "0.5.2"
56+-source = "registry+https://github.com/rust-lang/crates.io-index"
57+-checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0"
58+-dependencies = [
59+- "crypto-common",
60+- "generic-array",
61+-]
62+-
63+-[[package]]
64+-name = "aes"
65+-version = "0.8.4"
66+-source = "registry+https://github.com/rust-lang/crates.io-index"
67+-checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0"
68+-dependencies = [
69+- "cfg-if",
70+- "cipher",
71+- "cpufeatures",
72+- "zeroize",
73+-]
74+-
75+-[[package]]
76+-name = "aes-gcm"
77+-version = "0.10.3"
78+-source = "registry+https://github.com/rust-lang/crates.io-index"
79+-checksum = "831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1"
80+-dependencies = [
81+- "aead",
82+- "aes",
83+- "cipher",
84+- "ctr",
85+- "ghash",
86+- "subtle",
87+-]
88+-
89+ [[package]]
90+ name = "aho-corasick"
91+ version = "1.1.3"
92+@@ -146,44 +110,12 @@ version = "1.2.0"
93+ source = "registry+https://github.com/rust-lang/crates.io-index"
94+ checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
95+
96+-[[package]]
97+-name = "base16ct"
98+-version = "0.2.0"
99+-source = "registry+https://github.com/rust-lang/crates.io-index"
100+-checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
101+-
102+ [[package]]
103+ name = "base64"
104+ version = "0.22.0"
105+ source = "registry+https://github.com/rust-lang/crates.io-index"
106+ checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51"
107+
108+-[[package]]
109+-name = "base64ct"
110+-version = "1.6.0"
111+-source = "registry+https://github.com/rust-lang/crates.io-index"
112+-checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"
113+-
114+-[[package]]
115+-name = "bindgen"
116+-version = "0.68.1"
117+-source = "registry+https://github.com/rust-lang/crates.io-index"
118+-checksum = "726e4313eb6ec35d2730258ad4e15b547ee75d6afaa1361a922e78e59b7d8078"
119+-dependencies = [
120+- "bitflags 2.5.0",
121+- "cexpr",
122+- "clang-sys",
123+- "lazy_static",
124+- "lazycell",
125+- "peeking_take_while",
126+- "proc-macro2",
127+- "quote",
128+- "regex",
129+- "rustc-hash",
130+- "shlex",
131+- "syn",
132+-]
133+-
134+ [[package]]
135+ name = "bit-set"
136+ version = "0.5.3"
137+@@ -220,40 +152,6 @@ dependencies = [
138+ "generic-array",
139+ ]
140+
141+-[[package]]
142+-name = "block-padding"
143+-version = "0.3.3"
144+-source = "registry+https://github.com/rust-lang/crates.io-index"
145+-checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93"
146+-dependencies = [
147+- "generic-array",
148+-]
149+-
150+-[[package]]
151+-name = "blowfish"
152+-version = "0.9.1"
153+-source = "registry+https://github.com/rust-lang/crates.io-index"
154+-checksum = "e412e2cd0f2b2d93e02543ceae7917b3c70331573df19ee046bcbc35e45e87d7"
155+-dependencies = [
156+- "byteorder",
157+- "cipher",
158+-]
159+-
160+-[[package]]
161+-name = "botan"
162+-version = "0.10.7"
163+-source = "registry+https://github.com/rust-lang/crates.io-index"
164+-checksum = "350081af1a3c6883f8a1f863ac553bfe6922589aad60008a70947765ed57c53e"
165+-dependencies = [
166+- "botan-sys",
167+-]
168+-
169+-[[package]]
170+-name = "botan-sys"
171+-version = "0.10.5"
172+-source = "registry+https://github.com/rust-lang/crates.io-index"
173+-checksum = "9f49dde1b8ebd2996cc41c55c39f6ef8b54e38148d8973aeba0792b87b1621ca"
174+-
175+ [[package]]
176+ name = "bstr"
177+ version = "1.9.1"
178+@@ -281,55 +179,12 @@ version = "3.16.0"
179+ source = "registry+https://github.com/rust-lang/crates.io-index"
180+ checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
181+
182+-[[package]]
183+-name = "byteorder"
184+-version = "1.5.0"
185+-source = "registry+https://github.com/rust-lang/crates.io-index"
186+-checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
187+-
188+-[[package]]
189+-name = "camellia"
190+-version = "0.1.0"
191+-source = "registry+https://github.com/rust-lang/crates.io-index"
192+-checksum = "3264e2574e9ef2b53ce6f536dea83a69ac0bc600b762d1523ff83fe07230ce30"
193+-dependencies = [
194+- "byteorder",
195+- "cipher",
196+-]
197+-
198+-[[package]]
199+-name = "cast5"
200+-version = "0.11.1"
201+-source = "registry+https://github.com/rust-lang/crates.io-index"
202+-checksum = "26b07d673db1ccf000e90f54b819db9e75a8348d6eb056e9b8ab53231b7a9911"
203+-dependencies = [
204+- "cipher",
205+-]
206+-
207+ [[package]]
208+ name = "cc"
209+ version = "1.0.94"
210+ source = "registry+https://github.com/rust-lang/crates.io-index"
211+ checksum = "17f6e324229dc011159fcc089755d1e2e216a90d43a7dea6853ca740b84f35e7"
212+
213+-[[package]]
214+-name = "cexpr"
215+-version = "0.6.0"
216+-source = "registry+https://github.com/rust-lang/crates.io-index"
217+-checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
218+-dependencies = [
219+- "nom",
220+-]
221+-
222+-[[package]]
223+-name = "cfb-mode"
224+-version = "0.8.2"
225+-source = "registry+https://github.com/rust-lang/crates.io-index"
226+-checksum = "738b8d467867f80a71351933f70461f5b56f24d5c93e0cf216e59229c968d330"
227+-dependencies = [
228+- "cipher",
229+-]
230+-
231+ [[package]]
232+ name = "cfg-if"
233+ version = "1.0.0"
234+@@ -350,28 +205,6 @@ dependencies = [
235+ "windows-targets 0.52.5",
236+ ]
237+
238+-[[package]]
239+-name = "cipher"
240+-version = "0.4.4"
241+-source = "registry+https://github.com/rust-lang/crates.io-index"
242+-checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad"
243+-dependencies = [
244+- "crypto-common",
245+- "inout",
246+- "zeroize",
247+-]
248+-
249+-[[package]]
250+-name = "clang-sys"
251+-version = "1.7.0"
252+-source = "registry+https://github.com/rust-lang/crates.io-index"
253+-checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1"
254+-dependencies = [
255+- "glob",
256+- "libc",
257+- "libloading",
258+-]
259+-
260+ [[package]]
261+ name = "clap"
262+ version = "4.4.18"
263+@@ -432,62 +265,24 @@ dependencies = [
264+ "roff",
265+ ]
266+
267+-[[package]]
268+-name = "cmac"
269+-version = "0.7.2"
270+-source = "registry+https://github.com/rust-lang/crates.io-index"
271+-checksum = "8543454e3c3f5126effff9cd44d562af4e31fb8ce1cc0d3dcd8f084515dbc1aa"
272+-dependencies = [
273+- "cipher",
274+- "dbl",
275+- "digest",
276+-]
277+-
278+ [[package]]
279+ name = "colorchoice"
280+ version = "1.0.0"
281+ source = "registry+https://github.com/rust-lang/crates.io-index"
282+ checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
283+
284+-[[package]]
285+-name = "const-oid"
286+-version = "0.9.6"
287+-source = "registry+https://github.com/rust-lang/crates.io-index"
288+-checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
289+-
290+ [[package]]
291+ name = "core-foundation-sys"
292+ version = "0.8.6"
293+ source = "registry+https://github.com/rust-lang/crates.io-index"
294+ checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
295+
296+-[[package]]
297+-name = "cpufeatures"
298+-version = "0.2.12"
299+-source = "registry+https://github.com/rust-lang/crates.io-index"
300+-checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
301+-dependencies = [
302+- "libc",
303+-]
304+-
305+ [[package]]
306+ name = "crunchy"
307+ version = "0.2.2"
308+ source = "registry+https://github.com/rust-lang/crates.io-index"
309+ checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
310+
311+-[[package]]
312+-name = "crypto-bigint"
313+-version = "0.5.5"
314+-source = "registry+https://github.com/rust-lang/crates.io-index"
315+-checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76"
316+-dependencies = [
317+- "generic-array",
318+- "rand_core",
319+- "subtle",
320+- "zeroize",
321+-]
322+-
323+ [[package]]
324+ name = "crypto-common"
325+ version = "0.1.6"
326+@@ -495,76 +290,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
327+ checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
328+ dependencies = [
329+ "generic-array",
330+- "rand_core",
331+ "typenum",
332+ ]
333+
334+-[[package]]
335+-name = "ctr"
336+-version = "0.9.2"
337+-source = "registry+https://github.com/rust-lang/crates.io-index"
338+-checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835"
339+-dependencies = [
340+- "cipher",
341+-]
342+-
343+-[[package]]
344+-name = "curve25519-dalek"
345+-version = "4.1.2"
346+-source = "registry+https://github.com/rust-lang/crates.io-index"
347+-checksum = "0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348"
348+-dependencies = [
349+- "cfg-if",
350+- "cpufeatures",
351+- "curve25519-dalek-derive",
352+- "digest",
353+- "fiat-crypto",
354+- "platforms",
355+- "rustc_version",
356+- "subtle",
357+- "zeroize",
358+-]
359+-
360+-[[package]]
361+-name = "curve25519-dalek-derive"
362+-version = "0.1.1"
363+-source = "registry+https://github.com/rust-lang/crates.io-index"
364+-checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
365+-dependencies = [
366+- "proc-macro2",
367+- "quote",
368+- "syn",
369+-]
370+-
371+-[[package]]
372+-name = "dbl"
373+-version = "0.3.2"
374+-source = "registry+https://github.com/rust-lang/crates.io-index"
375+-checksum = "bd2735a791158376708f9347fe8faba9667589d82427ef3aed6794a8981de3d9"
376+-dependencies = [
377+- "generic-array",
378+-]
379+-
380+-[[package]]
381+-name = "der"
382+-version = "0.7.9"
383+-source = "registry+https://github.com/rust-lang/crates.io-index"
384+-checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0"
385+-dependencies = [
386+- "const-oid",
387+- "pem-rfc7468",
388+- "zeroize",
389+-]
390+-
391+-[[package]]
392+-name = "des"
393+-version = "0.8.1"
394+-source = "registry+https://github.com/rust-lang/crates.io-index"
395+-checksum = "ffdd80ce8ce993de27e9f063a444a4d53ce8e8db4c1f00cc03af5ad5a9867a1e"
396+-dependencies = [
397+- "cipher",
398+-]
399+-
400+ [[package]]
401+ name = "difflib"
402+ version = "0.4.0"
403+@@ -578,9 +306,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
404+ checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
405+ dependencies = [
406+ "block-buffer",
407+- "const-oid",
408+ "crypto-common",
409+- "subtle",
410+ ]
411+
412+ [[package]]
413+@@ -610,116 +336,18 @@ version = "0.3.3"
414+ source = "registry+https://github.com/rust-lang/crates.io-index"
415+ checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
416+
417+-[[package]]
418+-name = "dsa"
419+-version = "0.6.3"
420+-source = "registry+https://github.com/rust-lang/crates.io-index"
421+-checksum = "48bc224a9084ad760195584ce5abb3c2c34a225fa312a128ad245a6b412b7689"
422+-dependencies = [
423+- "digest",
424+- "num-bigint-dig",
425+- "num-traits",
426+- "pkcs8",
427+- "rfc6979",
428+- "sha2",
429+- "signature",
430+- "zeroize",
431+-]
432+-
433+ [[package]]
434+ name = "dyn-clone"
435+ version = "1.0.17"
436+ source = "registry+https://github.com/rust-lang/crates.io-index"
437+ checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125"
438+
439+-[[package]]
440+-name = "eax"
441+-version = "0.5.0"
442+-source = "registry+https://github.com/rust-lang/crates.io-index"
443+-checksum = "9954fabd903b82b9d7a68f65f97dc96dd9ad368e40ccc907a7c19d53e6bfac28"
444+-dependencies = [
445+- "aead",
446+- "cipher",
447+- "cmac",
448+- "ctr",
449+- "subtle",
450+-]
451+-
452+-[[package]]
453+-name = "ecb"
454+-version = "0.1.2"
455+-source = "registry+https://github.com/rust-lang/crates.io-index"
456+-checksum = "1a8bfa975b1aec2145850fcaa1c6fe269a16578c44705a532ae3edc92b8881c7"
457+-dependencies = [
458+- "cipher",
459+-]
460+-
461+-[[package]]
462+-name = "ecdsa"
463+-version = "0.16.9"
464+-source = "registry+https://github.com/rust-lang/crates.io-index"
465+-checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca"
466+-dependencies = [
467+- "der",
468+- "digest",
469+- "elliptic-curve",
470+- "rfc6979",
471+- "signature",
472+- "spki",
473+-]
474+-
475+-[[package]]
476+-name = "ed25519"
477+-version = "2.2.3"
478+-source = "registry+https://github.com/rust-lang/crates.io-index"
479+-checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53"
480+-dependencies = [
481+- "pkcs8",
482+- "signature",
483+-]
484+-
485+-[[package]]
486+-name = "ed25519-dalek"
487+-version = "2.1.1"
488+-source = "registry+https://github.com/rust-lang/crates.io-index"
489+-checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871"
490+-dependencies = [
491+- "curve25519-dalek",
492+- "ed25519",
493+- "rand_core",
494+- "serde",
495+- "sha2",
496+- "subtle",
497+- "zeroize",
498+-]
499+-
500+ [[package]]
501+ name = "either"
502+ version = "1.11.0"
503+ source = "registry+https://github.com/rust-lang/crates.io-index"
504+ checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2"
505+
506+-[[package]]
507+-name = "elliptic-curve"
508+-version = "0.13.8"
509+-source = "registry+https://github.com/rust-lang/crates.io-index"
510+-checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47"
511+-dependencies = [
512+- "base16ct",
513+- "crypto-bigint",
514+- "digest",
515+- "ff",
516+- "generic-array",
517+- "group",
518+- "hkdf",
519+- "pem-rfc7468",
520+- "pkcs8",
521+- "rand_core",
522+- "sec1",
523+- "subtle",
524+- "zeroize",
525+-]
526+-
527+ [[package]]
528+ name = "ena"
529+ version = "0.14.2"
530+@@ -745,28 +373,6 @@ dependencies = [
531+ "windows-sys 0.52.0",
532+ ]
533+
534+-[[package]]
535+-name = "fastrand"
536+-version = "2.0.2"
537+-source = "registry+https://github.com/rust-lang/crates.io-index"
538+-checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984"
539+-
540+-[[package]]
541+-name = "ff"
542+-version = "0.13.0"
543+-source = "registry+https://github.com/rust-lang/crates.io-index"
544+-checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449"
545+-dependencies = [
546+- "rand_core",
547+- "subtle",
548+-]
549+-
550+-[[package]]
551+-name = "fiat-crypto"
552+-version = "0.2.7"
553+-source = "registry+https://github.com/rust-lang/crates.io-index"
554+-checksum = "c007b1ae3abe1cb6f85a16305acd418b7ca6343b953633fee2b76d8f108b830f"
555+-
556+ [[package]]
557+ name = "fixedbitset"
558+ version = "0.4.2"
559+@@ -805,7 +411,6 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
560+ dependencies = [
561+ "typenum",
562+ "version_check",
563+- "zeroize",
564+ ]
565+
566+ [[package]]
567+@@ -821,33 +426,6 @@ dependencies = [
568+ "wasm-bindgen",
569+ ]
570+
571+-[[package]]
572+-name = "ghash"
573+-version = "0.5.1"
574+-source = "registry+https://github.com/rust-lang/crates.io-index"
575+-checksum = "f0d8a4362ccb29cb0b265253fb0a2728f592895ee6854fd9bc13f2ffda266ff1"
576+-dependencies = [
577+- "opaque-debug",
578+- "polyval",
579+-]
580+-
581+-[[package]]
582+-name = "glob"
583+-version = "0.3.1"
584+-source = "registry+https://github.com/rust-lang/crates.io-index"
585+-checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
586+-
587+-[[package]]
588+-name = "group"
589+-version = "0.13.0"
590+-source = "registry+https://github.com/rust-lang/crates.io-index"
591+-checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63"
592+-dependencies = [
593+- "ff",
594+- "rand_core",
595+- "subtle",
596+-]
597+-
598+ [[package]]
599+ name = "hashbrown"
600+ version = "0.14.3"
601+@@ -860,24 +438,6 @@ version = "0.4.1"
602+ source = "registry+https://github.com/rust-lang/crates.io-index"
603+ checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
604+
605+-[[package]]
606+-name = "hkdf"
607+-version = "0.12.4"
608+-source = "registry+https://github.com/rust-lang/crates.io-index"
609+-checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7"
610+-dependencies = [
611+- "hmac",
612+-]
613+-
614+-[[package]]
615+-name = "hmac"
616+-version = "0.12.1"
617+-source = "registry+https://github.com/rust-lang/crates.io-index"
618+-checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e"
619+-dependencies = [
620+- "digest",
621+-]
622+-
623+ [[package]]
624+ name = "iana-time-zone"
625+ version = "0.1.60"
626+@@ -901,15 +461,6 @@ dependencies = [
627+ "cc",
628+ ]
629+
630+-[[package]]
631+-name = "idea"
632+-version = "0.5.1"
633+-source = "registry+https://github.com/rust-lang/crates.io-index"
634+-checksum = "075557004419d7f2031b8bb7f44bb43e55a83ca7b63076a8fb8fe75753836477"
635+-dependencies = [
636+- "cipher",
637+-]
638+-
639+ [[package]]
640+ name = "idna"
641+ version = "0.5.0"
642+@@ -930,16 +481,6 @@ dependencies = [
643+ "hashbrown",
644+ ]
645+
646+-[[package]]
647+-name = "inout"
648+-version = "0.1.3"
649+-source = "registry+https://github.com/rust-lang/crates.io-index"
650+-checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5"
651+-dependencies = [
652+- "block-padding",
653+- "generic-array",
654+-]
655+-
656+ [[package]]
657+ name = "itertools"
658+ version = "0.11.0"
659+@@ -993,15 +534,6 @@ name = "lazy_static"
660+ version = "1.4.0"
661+ source = "registry+https://github.com/rust-lang/crates.io-index"
662+ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
663+-dependencies = [
664+- "spin",
665+-]
666+-
667+-[[package]]
668+-name = "lazycell"
669+-version = "1.3.0"
670+-source = "registry+https://github.com/rust-lang/crates.io-index"
671+-checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
672+
673+ [[package]]
674+ name = "libc"
675+@@ -1009,22 +541,6 @@ version = "0.2.153"
676+ source = "registry+https://github.com/rust-lang/crates.io-index"
677+ checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
678+
679+-[[package]]
680+-name = "libloading"
681+-version = "0.8.3"
682+-source = "registry+https://github.com/rust-lang/crates.io-index"
683+-checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19"
684+-dependencies = [
685+- "cfg-if",
686+- "windows-targets 0.52.5",
687+-]
688+-
689+-[[package]]
690+-name = "libm"
691+-version = "0.2.8"
692+-source = "registry+https://github.com/rust-lang/crates.io-index"
693+-checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
694+-
695+ [[package]]
696+ name = "libredox"
697+ version = "0.1.3"
698+@@ -1057,16 +573,6 @@ version = "0.4.21"
699+ source = "registry+https://github.com/rust-lang/crates.io-index"
700+ checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
701+
702+-[[package]]
703+-name = "md-5"
704+-version = "0.10.6"
705+-source = "registry+https://github.com/rust-lang/crates.io-index"
706+-checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf"
707+-dependencies = [
708+- "cfg-if",
709+- "digest",
710+-]
711+-
712+ [[package]]
713+ name = "memchr"
714+ version = "2.7.2"
715+@@ -1079,98 +585,18 @@ version = "0.6.3"
716+ source = "registry+https://github.com/rust-lang/crates.io-index"
717+ checksum = "0fa0916b001582d253822171bd23f4a0229d32b9507fae236f5da8cad515ba7c"
718+
719+-[[package]]
720+-name = "minimal-lexical"
721+-version = "0.2.1"
722+-source = "registry+https://github.com/rust-lang/crates.io-index"
723+-checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
724+-
725+-[[package]]
726+-name = "nettle"
727+-version = "7.4.0"
728+-source = "registry+https://github.com/rust-lang/crates.io-index"
729+-checksum = "44e6ff4a94e5d34a1fd5abbd39418074646e2fa51b257198701330f22fcd6936"
730+-dependencies = [
731+- "getrandom",
732+- "libc",
733+- "nettle-sys",
734+- "thiserror",
735+- "typenum",
736+-]
737+-
738+-[[package]]
739+-name = "nettle-sys"
740+-version = "2.3.0"
741+-source = "registry+https://github.com/rust-lang/crates.io-index"
742+-checksum = "b495053a10a19a80e3a26bf1212e92e29350797b5f5bdc58268c3f3f818e66ec"
743+-dependencies = [
744+- "bindgen",
745+- "cc",
746+- "libc",
747+- "pkg-config",
748+- "tempfile",
749+- "vcpkg",
750+-]
751+-
752+ [[package]]
753+ name = "new_debug_unreachable"
754+ version = "1.0.6"
755+ source = "registry+https://github.com/rust-lang/crates.io-index"
756+ checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086"
757+
758+-[[package]]
759+-name = "nom"
760+-version = "7.1.3"
761+-source = "registry+https://github.com/rust-lang/crates.io-index"
762+-checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
763+-dependencies = [
764+- "memchr",
765+- "minimal-lexical",
766+-]
767+-
768+ [[package]]
769+ name = "normalize-line-endings"
770+ version = "0.3.0"
771+ source = "registry+https://github.com/rust-lang/crates.io-index"
772+ checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"
773+
774+-[[package]]
775+-name = "num-bigint-dig"
776+-version = "0.8.4"
777+-source = "registry+https://github.com/rust-lang/crates.io-index"
778+-checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151"
779+-dependencies = [
780+- "byteorder",
781+- "lazy_static",
782+- "libm",
783+- "num-integer",
784+- "num-iter",
785+- "num-traits",
786+- "rand",
787+- "smallvec",
788+- "zeroize",
789+-]
790+-
791+-[[package]]
792+-name = "num-integer"
793+-version = "0.1.46"
794+-source = "registry+https://github.com/rust-lang/crates.io-index"
795+-checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
796+-dependencies = [
797+- "num-traits",
798+-]
799+-
800+-[[package]]
801+-name = "num-iter"
802+-version = "0.1.44"
803+-source = "registry+https://github.com/rust-lang/crates.io-index"
804+-checksum = "d869c01cc0c455284163fd0092f1f93835385ccab5a98a0dcc497b2f8bf055a9"
805+-dependencies = [
806+- "autocfg",
807+- "num-integer",
808+- "num-traits",
809+-]
810+-
811+ [[package]]
812+ name = "num-traits"
813+ version = "0.2.18"
814+@@ -1178,7 +604,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
815+ checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
816+ dependencies = [
817+ "autocfg",
818+- "libm",
819+ ]
820+
821+ [[package]]
822+@@ -1187,12 +612,6 @@ version = "1.19.0"
823+ source = "registry+https://github.com/rust-lang/crates.io-index"
824+ checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
825+
826+-[[package]]
827+-name = "opaque-debug"
828+-version = "0.3.1"
829+-source = "registry+https://github.com/rust-lang/crates.io-index"
830+-checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381"
831+-
832+ [[package]]
833+ name = "openssl"
834+ version = "0.10.64"
835+@@ -1231,18 +650,6 @@ dependencies = [
836+ "vcpkg",
837+ ]
838+
839+-[[package]]
840+-name = "p256"
841+-version = "0.13.2"
842+-source = "registry+https://github.com/rust-lang/crates.io-index"
843+-checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b"
844+-dependencies = [
845+- "ecdsa",
846+- "elliptic-curve",
847+- "primeorder",
848+- "sha2",
849+-]
850+-
851+ [[package]]
852+ name = "parking_lot"
853+ version = "0.12.1"
854+@@ -1266,21 +673,6 @@ dependencies = [
855+ "windows-targets 0.48.5",
856+ ]
857+
858+-[[package]]
859+-name = "peeking_take_while"
860+-version = "0.1.2"
861+-source = "registry+https://github.com/rust-lang/crates.io-index"
862+-checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
863+-
864+-[[package]]
865+-name = "pem-rfc7468"
866+-version = "0.7.0"
867+-source = "registry+https://github.com/rust-lang/crates.io-index"
868+-checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412"
869+-dependencies = [
870+- "base64ct",
871+-]
872+-
873+ [[package]]
874+ name = "petgraph"
875+ version = "0.6.4"
876+@@ -1300,57 +692,12 @@ dependencies = [
877+ "siphasher",
878+ ]
879+
880+-[[package]]
881+-name = "pkcs1"
882+-version = "0.7.5"
883+-source = "registry+https://github.com/rust-lang/crates.io-index"
884+-checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f"
885+-dependencies = [
886+- "der",
887+- "pkcs8",
888+- "spki",
889+-]
890+-
891+-[[package]]
892+-name = "pkcs8"
893+-version = "0.10.2"
894+-source = "registry+https://github.com/rust-lang/crates.io-index"
895+-checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
896+-dependencies = [
897+- "der",
898+- "spki",
899+-]
900+-
901+ [[package]]
902+ name = "pkg-config"
903+ version = "0.3.30"
904+ source = "registry+https://github.com/rust-lang/crates.io-index"
905+ checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
906+
907+-[[package]]
908+-name = "platforms"
909+-version = "3.4.0"
910+-source = "registry+https://github.com/rust-lang/crates.io-index"
911+-checksum = "db23d408679286588f4d4644f965003d056e3dd5abcaaa938116871d7ce2fee7"
912+-
913+-[[package]]
914+-name = "polyval"
915+-version = "0.6.2"
916+-source = "registry+https://github.com/rust-lang/crates.io-index"
917+-checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25"
918+-dependencies = [
919+- "cfg-if",
920+- "cpufeatures",
921+- "opaque-debug",
922+- "universal-hash",
923+-]
924+-
925+-[[package]]
926+-name = "ppv-lite86"
927+-version = "0.2.17"
928+-source = "registry+https://github.com/rust-lang/crates.io-index"
929+-checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
930+-
931+ [[package]]
932+ name = "precomputed-hash"
933+ version = "0.1.1"
934+@@ -1387,15 +734,6 @@ dependencies = [
935+ "termtree",
936+ ]
937+
938+-[[package]]
939+-name = "primeorder"
940+-version = "0.13.6"
941+-source = "registry+https://github.com/rust-lang/crates.io-index"
942+-checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6"
943+-dependencies = [
944+- "elliptic-curve",
945+-]
946+-
947+ [[package]]
948+ name = "proc-macro2"
949+ version = "1.0.81"
950+@@ -1414,35 +752,6 @@ dependencies = [
951+ "proc-macro2",
952+ ]
953+
954+-[[package]]
955+-name = "rand"
956+-version = "0.8.5"
957+-source = "registry+https://github.com/rust-lang/crates.io-index"
958+-checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
959+-dependencies = [
960+- "rand_chacha",
961+- "rand_core",
962+-]
963+-
964+-[[package]]
965+-name = "rand_chacha"
966+-version = "0.3.1"
967+-source = "registry+https://github.com/rust-lang/crates.io-index"
968+-checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
969+-dependencies = [
970+- "ppv-lite86",
971+- "rand_core",
972+-]
973+-
974+-[[package]]
975+-name = "rand_core"
976+-version = "0.6.4"
977+-source = "registry+https://github.com/rust-lang/crates.io-index"
978+-checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
979+-dependencies = [
980+- "getrandom",
981+-]
982+-
983+ [[package]]
984+ name = "redox_syscall"
985+ version = "0.4.1"
986+@@ -1492,66 +801,12 @@ version = "0.8.3"
987+ source = "registry+https://github.com/rust-lang/crates.io-index"
988+ checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
989+
990+-[[package]]
991+-name = "rfc6979"
992+-version = "0.4.0"
993+-source = "registry+https://github.com/rust-lang/crates.io-index"
994+-checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
995+-dependencies = [
996+- "hmac",
997+- "subtle",
998+-]
999+-
1000+-[[package]]
1001+-name = "ripemd"
1002+-version = "0.1.3"
1003+-source = "registry+https://github.com/rust-lang/crates.io-index"
1004+-checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f"
1005+-dependencies = [
1006+- "digest",
1007+-]
1008+-
1009+ [[package]]
1010+ name = "roff"
1011+ version = "0.2.1"
1012+ source = "registry+https://github.com/rust-lang/crates.io-index"
1013+ checksum = "b833d8d034ea094b1ea68aa6d5c740e0d04bad9d16568d08ba6f76823a114316"
1014+
1015+-[[package]]
1016+-name = "rsa"
1017+-version = "0.9.6"
1018+-source = "registry+https://github.com/rust-lang/crates.io-index"
1019+-checksum = "5d0e5124fcb30e76a7e79bfee683a2746db83784b86289f6251b54b7950a0dfc"
1020+-dependencies = [
1021+- "const-oid",
1022+- "digest",
1023+- "num-bigint-dig",
1024+- "num-integer",
1025+- "num-traits",
1026+- "pkcs1",
1027+- "pkcs8",
1028+- "rand_core",
1029+- "signature",
1030+- "spki",
1031+- "subtle",
1032+- "zeroize",
1033+-]
1034+-
1035+-[[package]]
1036+-name = "rustc-hash"
1037+-version = "1.1.0"
1038+-source = "registry+https://github.com/rust-lang/crates.io-index"
1039+-checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
1040+-
1041+-[[package]]
1042+-name = "rustc_version"
1043+-version = "0.4.0"
1044+-source = "registry+https://github.com/rust-lang/crates.io-index"
1045+-checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
1046+-dependencies = [
1047+- "semver",
1048+-]
1049+-
1050+ [[package]]
1051+ name = "rustix"
1052+ version = "0.38.32"
1053+@@ -1586,83 +841,31 @@ version = "1.2.0"
1054+ source = "registry+https://github.com/rust-lang/crates.io-index"
1055+ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
1056+
1057+-[[package]]
1058+-name = "sec1"
1059+-version = "0.7.3"
1060+-source = "registry+https://github.com/rust-lang/crates.io-index"
1061+-checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc"
1062+-dependencies = [
1063+- "base16ct",
1064+- "der",
1065+- "generic-array",
1066+- "pkcs8",
1067+- "subtle",
1068+- "zeroize",
1069+-]
1070+-
1071+-[[package]]
1072+-name = "semver"
1073+-version = "1.0.22"
1074+-source = "registry+https://github.com/rust-lang/crates.io-index"
1075+-checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
1076+-
1077+ [[package]]
1078+ name = "sequoia-openpgp"
1079+ version = "1.20.0"
1080+ source = "registry+https://github.com/rust-lang/crates.io-index"
1081+ checksum = "06f82708c8568218b8544b4abbba1f6483067dca0a946a54991c1d3f424dcade"
1082+ dependencies = [
1083+- "aes",
1084+- "aes-gcm",
1085+ "anyhow",
1086+ "base64",
1087+- "block-padding",
1088+- "blowfish",
1089+- "botan",
1090+ "buffered-reader",
1091+- "camellia",
1092+- "cast5",
1093+- "cfb-mode",
1094+ "chrono",
1095+- "cipher",
1096+- "des",
1097+- "digest",
1098+- "dsa",
1099+ "dyn-clone",
1100+- "eax",
1101+- "ecb",
1102+- "ecdsa",
1103+- "ed25519",
1104+- "ed25519-dalek",
1105+ "getrandom",
1106+- "idea",
1107+ "idna",
1108+ "lalrpop",
1109+ "lalrpop-util",
1110+ "lazy_static",
1111+ "libc",
1112+- "md-5",
1113+ "memsec",
1114+- "nettle",
1115+- "num-bigint-dig",
1116+ "once_cell",
1117+ "openssl",
1118+ "openssl-sys",
1119+- "p256",
1120+- "rand",
1121+- "rand_core",
1122+ "regex",
1123+ "regex-syntax",
1124+- "ripemd",
1125+- "rsa",
1126+ "sha1collisiondetection",
1127+- "sha2",
1128+ "thiserror",
1129+- "twofish",
1130+- "typenum",
1131+- "win-crypto-ng",
1132+- "winapi",
1133+- "x25519-dalek",
1134+ "xxhash-rust",
1135+ ]
1136+
1137+@@ -1721,38 +924,10 @@ version = "0.3.4"
1138+ source = "registry+https://github.com/rust-lang/crates.io-index"
1139+ checksum = "1f606421e4a6012877e893c399822a4ed4b089164c5969424e1b9d1e66e6964b"
1140+ dependencies = [
1141+- "const-oid",
1142+ "digest",
1143+ "generic-array",
1144+ ]
1145+
1146+-[[package]]
1147+-name = "sha2"
1148+-version = "0.10.8"
1149+-source = "registry+https://github.com/rust-lang/crates.io-index"
1150+-checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
1151+-dependencies = [
1152+- "cfg-if",
1153+- "cpufeatures",
1154+- "digest",
1155+-]
1156+-
1157+-[[package]]
1158+-name = "shlex"
1159+-version = "1.3.0"
1160+-source = "registry+https://github.com/rust-lang/crates.io-index"
1161+-checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
1162+-
1163+-[[package]]
1164+-name = "signature"
1165+-version = "2.2.0"
1166+-source = "registry+https://github.com/rust-lang/crates.io-index"
1167+-checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de"
1168+-dependencies = [
1169+- "digest",
1170+- "rand_core",
1171+-]
1172+-
1173+ [[package]]
1174+ name = "siphasher"
1175+ version = "0.3.11"
1176+@@ -1765,22 +940,6 @@ version = "1.13.2"
1177+ source = "registry+https://github.com/rust-lang/crates.io-index"
1178+ checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
1179+
1180+-[[package]]
1181+-name = "spin"
1182+-version = "0.5.2"
1183+-source = "registry+https://github.com/rust-lang/crates.io-index"
1184+-checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
1185+-
1186+-[[package]]
1187+-name = "spki"
1188+-version = "0.7.3"
1189+-source = "registry+https://github.com/rust-lang/crates.io-index"
1190+-checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d"
1191+-dependencies = [
1192+- "base64ct",
1193+- "der",
1194+-]
1195+-
1196+ [[package]]
1197+ name = "string_cache"
1198+ version = "0.8.7"
1199+@@ -1800,12 +959,6 @@ version = "0.10.0"
1200+ source = "registry+https://github.com/rust-lang/crates.io-index"
1201+ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
1202+
1203+-[[package]]
1204+-name = "subtle"
1205+-version = "2.5.0"
1206+-source = "registry+https://github.com/rust-lang/crates.io-index"
1207+-checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
1208+-
1209+ [[package]]
1210+ name = "syn"
1211+ version = "2.0.60"
1212+@@ -1817,18 +970,6 @@ dependencies = [
1213+ "unicode-ident",
1214+ ]
1215+
1216+-[[package]]
1217+-name = "tempfile"
1218+-version = "3.10.1"
1219+-source = "registry+https://github.com/rust-lang/crates.io-index"
1220+-checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
1221+-dependencies = [
1222+- "cfg-if",
1223+- "fastrand",
1224+- "rustix",
1225+- "windows-sys 0.52.0",
1226+-]
1227+-
1228+ [[package]]
1229+ name = "term"
1230+ version = "0.7.0"
1231+@@ -1909,15 +1050,6 @@ dependencies = [
1232+ "serde",
1233+ ]
1234+
1235+-[[package]]
1236+-name = "twofish"
1237+-version = "0.7.1"
1238+-source = "registry+https://github.com/rust-lang/crates.io-index"
1239+-checksum = "a78e83a30223c757c3947cd144a31014ff04298d8719ae10d03c31c0448c8013"
1240+-dependencies = [
1241+- "cipher",
1242+-]
1243+-
1244+ [[package]]
1245+ name = "typenum"
1246+ version = "1.17.0"
1247+@@ -1951,16 +1083,6 @@ version = "0.2.4"
1248+ source = "registry+https://github.com/rust-lang/crates.io-index"
1249+ checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
1250+
1251+-[[package]]
1252+-name = "universal-hash"
1253+-version = "0.5.1"
1254+-source = "registry+https://github.com/rust-lang/crates.io-index"
1255+-checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea"
1256+-dependencies = [
1257+- "crypto-common",
1258+- "subtle",
1259+-]
1260+-
1261+ [[package]]
1262+ name = "utf8parse"
1263+ version = "0.2.1"
1264+@@ -2058,19 +1180,6 @@ version = "0.2.92"
1265+ source = "registry+https://github.com/rust-lang/crates.io-index"
1266+ checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
1267+
1268+-[[package]]
1269+-name = "win-crypto-ng"
1270+-version = "0.5.1"
1271+-source = "registry+https://github.com/rust-lang/crates.io-index"
1272+-checksum = "99abfb435a71e54ab2971d8d8c32f1a7e006cdbf527f71743b1d45b93517bb92"
1273+-dependencies = [
1274+- "cipher",
1275+- "doc-comment",
1276+- "rand_core",
1277+- "winapi",
1278+- "zeroize",
1279+-]
1280+-
1281+ [[package]]
1282+ name = "winapi"
1283+ version = "0.3.9"
1284+@@ -2250,39 +1359,8 @@ version = "0.52.5"
1285+ source = "registry+https://github.com/rust-lang/crates.io-index"
1286+ checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
1287+
1288+-[[package]]
1289+-name = "x25519-dalek"
1290+-version = "2.0.1"
1291+-source = "registry+https://github.com/rust-lang/crates.io-index"
1292+-checksum = "c7e468321c81fb07fa7f4c636c3972b9100f0346e5b6a9f2bd0603a52f7ed277"
1293+-dependencies = [
1294+- "curve25519-dalek",
1295+- "rand_core",
1296+- "zeroize",
1297+-]
1298+-
1299+ [[package]]
1300+ name = "xxhash-rust"
1301+ version = "0.8.10"
1302+ source = "registry+https://github.com/rust-lang/crates.io-index"
1303+ checksum = "927da81e25be1e1a2901d59b81b37dd2efd1fc9c9345a55007f09bf5a2d3ee03"
1304+-
1305+-[[package]]
1306+-name = "zeroize"
1307+-version = "1.7.0"
1308+-source = "registry+https://github.com/rust-lang/crates.io-index"
1309+-checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
1310+-dependencies = [
1311+- "zeroize_derive",
1312+-]
1313+-
1314+-[[package]]
1315+-name = "zeroize_derive"
1316+-version = "1.4.2"
1317+-source = "registry+https://github.com/rust-lang/crates.io-index"
1318+-checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
1319+-dependencies = [
1320+- "proc-macro2",
1321+- "quote",
1322+- "syn",
1323+-]
1324+diff --git a/Cargo.toml b/Cargo.toml
1325+index 16b6c6c..e78a065 100644
1326+--- a/Cargo.toml
1327++++ b/Cargo.toml
1328+@@ -98,13 +98,8 @@ default-features = false
1329+ version = "0.6"
1330+
1331+ [features]
1332+-crypto-botan = ["sequoia-openpgp/crypto-botan"]
1333+-crypto-botan2 = ["sequoia-openpgp/crypto-botan2"]
1334+-crypto-cng = ["sequoia-openpgp/crypto-cng"]
1335+-crypto-nettle = ["sequoia-openpgp/crypto-nettle"]
1336+ crypto-openssl = ["sequoia-openpgp/crypto-openssl"]
1337+-crypto-rust = ["sequoia-openpgp/crypto-rust"]
1338+-default = ["crypto-nettle"]
1339++default = ["crypto-openssl"]
1340+
1341+ [badges.gitlab]
1342+ repository = "sequoia-pgp/sequoia"
1343diff --git a/debian/patches/series b/debian/patches/series
1344index bdddf05..89a4dbc 100644
1345--- a/debian/patches/series
1346+++ b/debian/patches/series
1347@@ -1 +1 @@
1348-relax-deps.patch
1349+remove-dependencies.patch
1350diff --git a/debian/rules b/debian/rules
1351index 59b895d..666fa6f 100755
1352--- a/debian/rules
1353+++ b/debian/rules
1354@@ -14,5 +14,58 @@ execute_after_dh_auto_configure:
1355 %:
1356 dh $@ --buildsystem cargo --with bash-completion
1357
1358-override_dh_auto_install:
1359- dh_auto_install -- --features=crypto-openssl --no-default-features
1360+export CARGO = /usr/share/cargo/bin/cargo
1361+export CARGO_VENDOR_DIR = rust-vendor
1362+export CARGO_HOME = $(CURDIR)/debian/cargo_home
1363+
1364+include /usr/share/rustc/architecture.mk
1365+export DEB_HOST_RUST_TYPE DEB_HOST_GNU_TYPE
1366+
1367+VENDOR_TARBALL = $(DEB_SOURCE)_$(DEB_VERSION_UPSTREAM).orig-$(CARGO_VENDOR_DIR).tar.xz
1368+
1369+vendor-tarball-quick-check:
1370+ if [ -e ../$(VENDOR_TARBALL) ]; then echo "../$(VENDOR_TARBALL) already exists, bailing!"; exit 1; fi
1371+
1372+vendor-deps-cargo:
1373+ if QUILT_PATCHES=debian/patches quilt applied | grep vendor-remove-unused-deps ; then \
1374+ echo "Detecting patch on vendor dir applied, aborting."; \
1375+ exit 1; \
1376+ fi
1377+ # We need to have the dependencies removed in the top-level Cargo.toml or we vendor too much
1378+ QUILT_PATCHES=debian/patches quilt applied | grep remove-dependencies.patch || QUILT_PATCHES=debian/patches quilt push remove-dependencies.patch
1379+ rm -rf $(CARGO_VENDOR_DIR)
1380+ # Deliberately don't use the wrapper, as it expects the configure step
1381+ # to have occurred already.
1382+ # If you have to modify the path here, don't forget to change the README.source doc
1383+ # as well.
1384+ env -i cargo-vendor-filterer -F crypto-openssl --no-default-features --tier 2 --platform '*-*-linux-gnu' --platform '*-*-linux-gnueabi' $(CARGO_VENDOR_DIR)
1385+
1386+vendor-deps: vendor-deps-cargo
1387+ # Remove unused and undesirable data files (e.g. test data for vendored crates)
1388+ # The sequioia creates have a custom build script that uses the tests, so we keep them.
1389+ mv $(CARGO_VENDOR_DIR)/sequoia-policy-config/tests $(CARGO_VENDOR_DIR)/sequoia-policy-config/tests.bak
1390+ mv $(CARGO_VENDOR_DIR)/sequoia-openpgp/tests $(CARGO_VENDOR_DIR)/sequoia-openpgp/tests.bak
1391+ rm -r \
1392+ $(CARGO_VENDOR_DIR)/*/test-data \
1393+ $(CARGO_VENDOR_DIR)/*/tests
1394+ mv $(CARGO_VENDOR_DIR)/sequoia-policy-config/tests.bak $(CARGO_VENDOR_DIR)/sequoia-policy-config/tests
1395+ mv $(CARGO_VENDOR_DIR)/sequoia-openpgp/tests.bak $(CARGO_VENDOR_DIR)/sequoia-openpgp/tests
1396+ # Remove the checksum files to allow us to patch the crates to remove extraneous dependencies
1397+ for crate in $(CARGO_VENDOR_DIR)/*; do \
1398+ sed -i 's/^{"files":.*"package":"\([a-z0-9]\+\)"}$$/{"files":{},"package":"\1"}/' $$crate/.cargo-checksum.json; \
1399+ done
1400+ # Cleanup temp files
1401+ rm -rf $(CARGO_HOME)
1402+
1403+vendor-tarball: vendor-tarball-quick-check vendor-deps
1404+ tar --sort=name --mtime=@0 --owner=0 --group=0 --numeric-owner --pax-option=exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime -caf ../$(VENDOR_TARBALL) $(CARGO_VENDOR_DIR)
1405+
1406+override_dh_auto_configure:
1407+ DEB_CARGO_CRATE=sequoia-sqv_$(shell dpkg-parsechangelog --show-field Version) \
1408+ $(CARGO) prepare-debian $(CARGO_VENDOR_DIR)
1409+# /usr/share/cargo/bin/dh-cargo-vendored-sources
1410+ dh_auto_configure
1411+
1412+override_dh_clean:
1413+ dh_clean
1414+ rm -rf $(CARGO_HOME)

Subscribers

People subscribed via source and target branches