]> git.proxmox.com Git - debcargo-conf.git/blame - TODO.rst
indexmap: update to 1.6.2
[debcargo-conf.git] / TODO.rst
CommitLineData
991bc1cf 1===============
2f04e9c1
XL
2Immediate goals
3===============
4
991bc1cf
XL
5See end of this document for "eventual goals".
6
2f04e9c1 7
f830d4fb 8Remove old libraries
991bc1cf 9====================
f830d4fb
XL
10
11Should file a RM request to ftpmasters for these old crates:
12
e1b6b398 13(no old crates, yay!)
f830d4fb
XL
14
15
a2580473 16Ready for upload (Request For Sponsor)
991bc1cf 17======================================
08a31d39 18
e1b6b398
XL
19If you do not have upload rights, simply ``touch src/$crate/debian/RFS`` in
20your crate's directory, commit and push it, and a DD or DM will get around to
21it at some point.
e1a9d897 22
e1b6b398 23To list all packages under RFS, run ``dev/list-rfs.sh``.
e1a9d897
XL
24
25If your update breaks semver compatibility, please first check the reverse
26dependencies by running::
66ea1140
XL
27
28 $ aptitude search '~Dlibrust-$cratename'
29
e1a9d897
XL
30and try to verify that they won't be broken by your update, by building them.
31If they are broken, then:
66ea1140 32
e1b6b398 331. Document the problem in ``debian/BLOCK``.
66ea1140 342. File an issue upstream to report that they should update to the new library
e1a9d897
XL
353. Write a patch if you can get that working, and document it.
36
a2580473 37
a57a3361 38Unblocking testing migrations
991bc1cf
XL
39=============================
40
41Run ``dev/rust-excuses.mk refresh all`` to see these in a nice graph.
a57a3361 42
e1b6b398
XL
43Run ``dev/rust-regressions.sh`` to analyse autopkgtest regressions.
44
45From the excuses graph, find the lowest crates i.e. those with no arrows going
46outwards to other crates. Then run ``dev/list-rdeps.sh @ $lowest_crotes`` to
47see which of its rdeps are broken, and need to be fixed.
48
a847058b 49
2e78543b 50New packages
991bc1cf 51============
a847058b 52
2e78543b 53Use ``dev/list-remaining-deps.sh`` to help you figure out what's missing.
4a17a770 54
2e78543b 55rustfmt-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
68bat update
69----------
70
71Needs syntect => onig => onig-sys => bindgen 0.55 (for librust-bindgen-0.51+runtime-dev)
72Disabling syntect in bat causes:
73error[E0433]: failed to resolve: use of undeclared type or module `syntect`
74 --> src/terminal.rs:4:5
75
76
2e78543b 77bingrep
991bc1cf 78-------
e9673348 79
e9673348
SL
80* hexplay
81* metagoblin
991bc1cf 82
05270f6b
SL
83tokei
84-----
85
86needs handlebars
87which needs pest
88which needs ucd-trie
1a206c8a 89
0467017f
XL
90librsvg
91-------
92
93see 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
115bench
116-----
117* criterion
296a4fd8 118 * criteron-plot
296a4fd8 119
718b98af
NBS
120rustup
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
131tokio/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
269fractal
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==============
284Eventual goals
285==============
286
287Binary 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
315To 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
320Current 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
345Sccache is also helpful for reducing the build-time of things like firefox and thunderbird
346
347- sccache https://github.com/mozilla/sccache
348
349There are also more binaries here:
350
351https://github.com/rust-unofficial/awesome-rust