]>
Commit | Line | Data |
---|---|---|
991bc1cf | 1 | =============== |
2f04e9c1 XL |
2 | Immediate goals |
3 | =============== | |
4 | ||
991bc1cf XL |
5 | See end of this document for "eventual goals". |
6 | ||
2f04e9c1 | 7 | |
f830d4fb | 8 | Remove old libraries |
991bc1cf | 9 | ==================== |
f830d4fb XL |
10 | |
11 | Should file a RM request to ftpmasters for these old crates: | |
12 | ||
e1b6b398 | 13 | (no old crates, yay!) |
f830d4fb XL |
14 | |
15 | ||
a2580473 | 16 | Ready for upload (Request For Sponsor) |
991bc1cf | 17 | ====================================== |
08a31d39 | 18 | |
e1b6b398 XL |
19 | If you do not have upload rights, simply ``touch src/$crate/debian/RFS`` in |
20 | your crate's directory, commit and push it, and a DD or DM will get around to | |
21 | it at some point. | |
e1a9d897 | 22 | |
e1b6b398 | 23 | To list all packages under RFS, run ``dev/list-rfs.sh``. |
e1a9d897 XL |
24 | |
25 | If your update breaks semver compatibility, please first check the reverse | |
26 | dependencies by running:: | |
66ea1140 XL |
27 | |
28 | $ aptitude search '~Dlibrust-$cratename' | |
29 | ||
e1a9d897 XL |
30 | and try to verify that they won't be broken by your update, by building them. |
31 | If they are broken, then: | |
66ea1140 | 32 | |
e1b6b398 | 33 | 1. Document the problem in ``debian/BLOCK``. |
66ea1140 | 34 | 2. File an issue upstream to report that they should update to the new library |
e1a9d897 XL |
35 | 3. Write a patch if you can get that working, and document it. |
36 | ||
a2580473 | 37 | |
a57a3361 | 38 | Unblocking testing migrations |
991bc1cf XL |
39 | ============================= |
40 | ||
41 | Run ``dev/rust-excuses.mk refresh all`` to see these in a nice graph. | |
a57a3361 | 42 | |
e1b6b398 XL |
43 | Run ``dev/rust-regressions.sh`` to analyse autopkgtest regressions. |
44 | ||
45 | From the excuses graph, find the lowest crates i.e. those with no arrows going | |
46 | outwards to other crates. Then run ``dev/list-rdeps.sh @ $lowest_crotes`` to | |
47 | see which of its rdeps are broken, and need to be fixed. | |
48 | ||
a847058b | 49 | |
2e78543b | 50 | New packages |
991bc1cf | 51 | ============ |
a847058b | 52 | |
2e78543b | 53 | Use ``dev/list-remaining-deps.sh`` to help you figure out what's missing. |
4a17a770 | 54 | |
2e78543b | 55 | rustfmt-nightly |
991bc1cf | 56 | --------------- |
721491ce | 57 | |
e1374b64 | 58 | * rustc-ap-syntax |
5c55c542 | 59 | * rustc-ap-rustc_data_structures (prepared) |
776fa542 SL |
60 | * rustc-ap-graphviz (needs nightly) |
61 | * rustc-ap-rustc-cratesio-shim (needs nightly) | |
62 | * rustc-ap-rustc-errors (depends on the rest of the list here) | |
e1374b64 SL |
63 | * rustc-ap-rustc-target |
64 | * rustc-ap-serialize (to be uploaded, dep issue?!) | |
65 | * rustc-ap-syntax-pos | |
776fa542 | 66 | * rustc-ap-serialize (fails because of usage of nightly feature) |
e1374b64 | 67 | |
87ad78fe SL |
68 | bat update |
69 | ---------- | |
70 | ||
71 | Needs syntect => onig => onig-sys => bindgen 0.55 (for librust-bindgen-0.51+runtime-dev) | |
72 | Disabling syntect in bat causes: | |
73 | error[E0433]: failed to resolve: use of undeclared type or module `syntect` | |
74 | --> src/terminal.rs:4:5 | |
75 | ||
76 | ||
2e78543b | 77 | bingrep |
991bc1cf | 78 | ------- |
e9673348 | 79 | |
e9673348 SL |
80 | * hexplay |
81 | * metagoblin | |
991bc1cf | 82 | |
05270f6b SL |
83 | tokei |
84 | ----- | |
85 | ||
86 | needs handlebars | |
87 | which needs pest | |
88 | which needs ucd-trie | |
1a206c8a | 89 | |
0467017f XL |
90 | librsvg |
91 | ------- | |
92 | ||
93 | see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=907629 | |
94 | ||
95 | [ ] alga | |
96 | [ ] c_vec | |
0467017f XL |
97 | [ ] criterion |
98 | [ ] criterion-plot | |
99 | [ ] criterion-stats | |
0467017f XL |
100 | [ ] downcast-rs |
101 | [ ] handlebars | |
102 | [ ] itertools-num | |
103 | [ ] matrixmultiply | |
104 | [ ] nalgebra | |
105 | [ ] num-traits-0.1.43 | |
106 | [ ] pest_derive | |
107 | [ ] quote-0.3.15 | |
108 | [ ] rand-0.4.2 | |
109 | [ ] rawpointer | |
0467017f XL |
110 | [ ] syn-0.11.11 |
111 | [ ] synom | |
0467017f XL |
112 | [ ] unicode-xid-0.0.4 |
113 | ||
114 | ||
296a4fd8 SL |
115 | bench |
116 | ----- | |
117 | * criterion | |
296a4fd8 | 118 | * criteron-plot |
296a4fd8 | 119 | |
718b98af NBS |
120 | rustup |
121 | ------ | |
122 | ||
123 | * rustup (not available as a crate) | |
124 | * git-testament | |
125 | * git-testament-derive | |
126 | * markdown | |
127 | * pipeline | |
718b98af | 128 | * retry |
718b98af | 129 | * xz2 |
718b98af | 130 | |
51429d78 FG |
131 | tokio/futures/hyper with async/await |
132 | ------------------------------------ | |
133 | ||
134 | *dependency tree* | |
135 | ||
83c9b597 FG |
136 | * futures 0.3.4 |
137 | * futures-executor 0.3.4 | |
138 | * futures-util 0.3.4 | |
139 | * futures-task 0.3.4 | |
140 | * futures-channel 0.3.4 | |
141 | * futures-core 0.3.4 | |
142 | * future-sink 0.3.4 | |
143 | * futures-io 0.3.4 | |
144 | * futures-macro 0.3.4 | |
51429d78 FG |
145 | * pin-utils 0.1.0-alpha.4 |
146 | * proc-macro-nested 0.1.3 | |
147 | ||
148 | * tokio-macros 0.2.3 | |
149 | ||
150 | * tokio 0.2.10 | |
151 | * bytes 0.5.3 (outdated) | |
83c9b597 | 152 | * futures-core 0.3.4 (see above) |
51429d78 FG |
153 | * pin-project-lite 0.1.1 |
154 | * tokio-macros 0.2.3 | |
155 | ||
156 | * tokio-tls 0.3.0 | |
157 | * tokio 0.2.10 (+ subset of dependencies) | |
158 | ||
159 | * tokio-util 0.2.0 | |
160 | * tokio 0.2.10 (+ subset of dependencies) | |
83c9b597 | 161 | * futures-sink 0.3.4 (see above) |
51429d78 FG |
162 | |
163 | * hyper 0.13.1 | |
83c9b597 | 164 | * futures-* 0.3.4 (see above) |
51429d78 | 165 | * h2 0.2.1 |
83c9b597 | 166 | * futures-* 0.3.4 (see above) |
51429d78 FG |
167 | * http 0.2.0 |
168 | * bytes 0.5.3 (needed for tokio anyway) | |
169 | * tokio 0.2.10 (see above) | |
170 | * tokio-util 0.2.0 (see above) | |
83c9b597 | 171 | * http-body 0.3.4 |
51429d78 FG |
172 | * http 0.2.0 (+ deps) |
173 | * pin-project 0.4.7 | |
174 | * pin-project-internal 0.4.7 | |
175 | * tokio 0.2.10 (see above) | |
176 | * tower-service 0.3.0 | |
177 | * want 0.3.0 | |
178 | * mio 0.6.21 | |
179 | * iovec 0.1.4 | |
180 | ||
181 | *rdeps outside of tokio/futures/hyper* | |
182 | ||
183 | * bcder (recently packaged, not yet compatible with bytes 0.5) | |
184 | * bufstream (dead upstream, no rdeps) | |
6f05837a | 185 | * buffered-reader |
51429d78 | 186 | * bzip2 (no upstream support yet, no rdeps for future/tokio features) |
6f05837a FG |
187 | * cargo |
188 | * debcargo | |
51429d78 FG |
189 | * flate2 (no upstream support (yet), no rdeps for future/tokio features) |
190 | * gstreamer-* (new upstream version is compatible, updated, no non-gstreamer rdeps, needs glib update, which triggers: | |
191 | * atk | |
192 | * cairo-rs | |
193 | * gdk | |
194 | * gdk-pixbuf | |
195 | * gio | |
196 | * gtk | |
197 | * pangocairo | |
198 | * pango | |
199 | * and their respective sys crates | |
6f05837a FG |
200 | * hdrhistogram |
201 | * mio-extras | |
51429d78 | 202 | * mio-extras (no rdeps, compatible) |
6f05837a | 203 | * mio-named-pipes |
51429d78 | 204 | * mio-named-pipes (no rdeps except tokio-process, compatible) |
6f05837a | 205 | * mio-uds |
51429d78 | 206 | * mio-uds (rdeps: signal-hook, tokio-uds, tokio-signal) |
6f05837a FG |
207 | * object |
208 | * ogg | |
51429d78 | 209 | * pcap (no rdeps, can be dropped) |
6f05837a | 210 | * protobuf |
51429d78 | 211 | * reqwest (updated, needs updated hyper-tls, new wasm-bindgen-futures, updated web-sys/js-sys/webasm) |
6f05837a FG |
212 | * rspotify |
213 | * sequoia-openpgp | |
51429d78 FG |
214 | * signal-hook (updated version not yet released, single rdep "tokio-signal" got merged into tokio and only uses signal-hook-registry now -> patched to remove dependency) |
215 | * string (relaxed dep on bytes) | |
6f05837a | 216 | * syntect |
51429d78 | 217 | * want (updated) |
6f05837a | 218 | * zip |
51429d78 FG |
219 | |
220 | *old crates to be removed* | |
221 | ||
222 | * futures-cpupool (no rdeps outside of futures/tokio/hyper, merged into futures-executor) | |
223 | * tokio-async-await (merged into tokio-macros) | |
224 | * tokio-buf (dropped upstream, rdeps no longer need it after updating) | |
225 | * tokio-codec (merged into tokio-util) | |
226 | * tokio-core (only 1 rdep: pcap, can be dropped after pcap was dropped, merged into tokio) | |
227 | * tokio-current-thread (merged into tokio) | |
228 | * tokio-executor (merged into tokio) | |
229 | * tokio-fs (merged into tokio) | |
230 | * tokio-io (merged into tokio, see above for rdeps bufstream, bzip2, flate2) | |
231 | * tokio-process (merged into tokio) | |
232 | * tokio-reactor (renamed to tokio-net, merged into tokio, see above for rdep signal-hook) | |
233 | * tokio-signal (merged into tokio) | |
234 | * tokio-sync (merged into tokio) | |
235 | * tokio-tcp (merged into tokio) | |
236 | * tokio-threadpool (merged into tokio) | |
237 | * tokio-timer (merged into tokio) | |
238 | * tokio-uds (merged into tokio) | |
239 | * tokio-udp (merged into tokio) | |
240 | ||
241 | *incompatible rdeps with no futher rdeps, dead upstream, to be removed* | |
242 | ||
243 | * pcap (replaced by pcap-sys) | |
244 | * bufstream: https://github.com/alexcrichton/bufstream/issues/13 | |
245 | ||
246 | *NEW, installable as-is* | |
247 | ||
83c9b597 FG |
248 | * pin-utils (NEW) |
249 | * proc-macro-nested (NEW) | |
51429d78 FG |
250 | * futures-sink |
251 | * futures-task | |
252 | * futures-io | |
253 | * futures-macro | |
254 | * tokio-macros | |
255 | * pin-project-lite | |
83c9b597 | 256 | * tower-service (NEW) |
51429d78 | 257 | * pin-project-internal + pin-project |
83c9b597 | 258 | * paste-impl (NEW) + paste |
51429d78 FG |
259 | * webasm-bindgen-futures |
260 | ||
261 | *NEW, with dependency within transition* | |
262 | ||
263 | * futures-channel (after futures-core/futures-sink) | |
264 | * futures-util (after futures-channel, proc-macro-nested, pin-utils) | |
265 | * futures-executor (after futures-core, futures-task, futures-util) | |
266 | * tokio-tls (after tokio) | |
267 | * tokio-util (after tokio, bytes, futures-core, futures-sink, pin-project-lite) | |
268 | ||
0cfe2570 AS |
269 | fractal |
270 | ------- | |
271 | ||
272 | * gspell | |
273 | * gspell-sys | |
274 | * gstreamer-editing-services | |
275 | * gstreamer-player | |
276 | * html2pango | |
277 | * letter-avatar | |
278 | * loggerv | |
279 | * mdl | |
280 | * secret-service (WIP) | |
281 | * sourceview4 | |
51429d78 | 282 | |
991bc1cf XL |
283 | ============== |
284 | Eventual goals | |
285 | ============== | |
286 | ||
287 | Binary crates worth packaging (please add if you know more): | |
288 | ||
e1b6b398 XL |
289 | - bench - simple benchmarking |
290 | - bingrep - Grep through binaries from various OSs and architectures. | |
291 | - brewstillery - Brewer's, vinter's and distiller's calculator (GTK). | |
a6fd8adf | 292 | - cargo-deb - Create Debian packages from Cargo projects |
ad1e69c4 AS |
293 | - cargo-debstatus - Print the status of crate’s dependencies in Debian |
294 | * blocked on postgres | |
908974bc | 295 | - cargo-download - Download sources of a crate |
991bc1cf | 296 | - cargo-edit - Cargo editing subcommands (add, rm, upgrade) |
3eafad0d WS |
297 | - diskonaut - interactive disk usage tui tool |
298 | - fractal - Matrix messaging client (GTK, https://wiki.gnome.org/Apps/Fractal) | |
e1b6b398 | 299 | - hg - Rust implement of hg |
991bc1cf | 300 | - jql - JSON Query Language CLI tool. |
a6fd8adf | 301 | - meli - terminal mail client (https://meli.delivery/) |
3eafad0d | 302 | - podcasts - Podcasts app (GTK, https://wiki.gnome.org/Apps/Podcasts) |
ad1e69c4 AS |
303 | - recode_rs - CLI tool converting between the character encodings. |
304 | - resvg - SVG renderer (in Debian; packaged separately, but doesn’t build anymore) | |
e1b6b398 | 305 | - rural - User-friendly command-line HTTP tool |
3eafad0d | 306 | - rust-analyzer - modular rust compiler frontend with LSP |
991bc1cf | 307 | - rustfmt-nightly - rust coding style |
718b98af | 308 | - rustup - installing and managing multiple rust toolchains |
3eafad0d | 309 | - shortwave - Internet radio client (GTK, https://gitlab.gnome.org/World/Shortwave) |
e1b6b398 | 310 | - tmux-hints - Find matches (e.g. urls) and navigate them by keyboard |
3eafad0d | 311 | - viu - Command-line image viewer |
e1b6b398 | 312 | - xsv - Command line program for manipulating CSV files |
3eafad0d | 313 | - zola - static site generator (https://www.getzola.org/) |
991bc1cf XL |
314 | |
315 | To see lists of interesting binary crates, you can run something like:: | |
316 | ||
317 | $ apt-get install koji-client | |
318 | $ koji -p fedora search package 'rust-*' | cut -b6- | dev/filter-binary-crates.sh | |
319 | ||
e1b6b398 XL |
320 | Current output (on 2020-01-17), minus stuff already in Debian, is: |
321 | ||
322 | afterburn | |
323 | alloc-no-stdlib | |
324 | alloc-stdlib | |
325 | askalono-cli | |
326 | brotli | |
327 | brotli-decompressor | |
328 | cargo-c | |
329 | comrak | |
330 | coreos-installer | |
331 | ffsend | |
332 | heatseeker | |
333 | jql | |
334 | lsd | |
335 | multipart | |
336 | open | |
337 | permutate | |
338 | pretty-git-prompt | |
339 | qrcode | |
340 | skim | |
341 | starship | |
342 | varlink-cli | |
343 | varlink_generator | |
991bc1cf XL |
344 | |
345 | Sccache is also helpful for reducing the build-time of things like firefox and thunderbird | |
346 | ||
347 | - sccache https://github.com/mozilla/sccache | |
348 | ||
349 | There are also more binaries here: | |
350 | ||
351 | https://github.com/rust-unofficial/awesome-rust |