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