View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0005651||GNUnet||other||public||2019-03-16 18:06||2022-02-22 23:09|
|Summary||0005651: CLI list output lack sorting|
|Description||Confusing me most often:|
$ gnunet-transport -in
Peer `3969': tcp tcp.0.46.188.6.64:2086
Peer `7WRD': tcp tcp.0.47.220.150.33:2086
Peer `DSTJ': tcp tcp.0.131.159.74.67:2086
Peer `Y1TA': tcp tcp.0.80.108.54.113:2086
nse # nodes in the network (estimate): 203
nse # flood messages transmitted: 12
transport # requests to create session with invalid address: 10
transport # Addresses given to ATS: 14
fs # query messages sent to other peers: 704
core # bytes of messages of type 1007 received: 104
transport # bytes transmitted via TCP: 20183531
transport # address revalidations started: 55
hostlist # valid HELLOs downloaded from hostlist servers: 18
fs # query plan entries: 972
ats # reservation requests processed: 798
transport # PONGs unicast via reliable transport: 4
nse # peers connected: 5
fs # GET requests received (from other peers): 8260
core # bytes of messages of type 137 received: 62192
Expires: sam fév 16 12:25:25 2019 udp:10:0
Expires: end of time tcp:12:0
Expires: end of time tcp:24:0
Expires: end of time http_client:34:0
Expires: end of time http_client:59:0
Expires: end of time https_client:35:0
Expires: end of time https_client:60:0
Expires: dim mar 17 05:55:35 2019 udp:10:0
Expires: dim mar 17 06:40:08 2019 udp:22:0
Expires: jeu mar 14 05:37:17 2019 udp:22:0
Expires: jeu mar 14 02:50:44 2019 udp:22:0
Expires: mer mar 13 15:12:49 2019 udp:22:0
Expires: dim mar 10 09:47:23 2019 udp:22:0
^-- this one is extra-naughty because it is un-|sort-able.
$ gnunet-config --list
The following sections are available:
Runners-up: ats, cadet, identity.
|Tags||No tags attached.|
I think these are several tickets in one.
You are asking for output which can be sorted and filtered.
You are also asking for sorted output in general.
And you are asking for it for several subsystems and binaries.
My main concern is "listings that could be reasonably expected to be sorted, should be". Indeed, it is about user experience, not binaries.
Maybe there is some order already and this is a documentation issue. I simply don't know how to approach this yet.
||I think we have to sort in 2 categories here. The output of what I call usage() function in my own applications is as far as as I remember the product of two functions: 1 is generic, shared command line functions, 2 is specific command line functions which aren't shared between applications.|
||Nevermind, this was about output of command line functions, not the output of the listing of the functions.|
||Fixing any of these will require quite a bit of extra work as the APIs for various reasons don't return sorted lists, and sorting the output before printf'ing would require buffering everything in memory first. That'll increase memory consumption (bad on embedded systems, extra failure cases) *and* require quite a bit of extra code. So I'm a bit torn whether this is a good idea. Sure, it improves UX a bit, but really in the end command-line tools are more for developers and not "picky" users.|
||I should clarify: i'm asking for further opinions here.|
I agree on the API part. Embedded makes things this this messy.
CLI output is a sure way to troubleshoot your node when the things go unexpected ways. I'm pretty sure tools are obliged to remove unnecessary "unexpectedness". Especially in dire times when you need your answers fast and with as little noise as possible.
An alternative would be a very UX-intensive CLI to all the APIs provided by the GNUnet node. Perhaps it *is* the way to go. Especially if written in a more high-level language.
||This is an old bug so unassigning. IMO the UNIX way is to make it possible to pass output to "sort" whenever it makes sense to be sorted.|
|2019-03-16 18:06||ic.rbow||New Issue|
|2019-03-20 23:55||nikita||Note Added: 0014227|
|2019-03-21 09:29||ic.rbow||Note Added: 0014228|
|2019-04-01 14:00||nikita||Note Added: 0014242|
|2019-04-01 14:01||nikita||Note Added: 0014243|
|2019-06-05 19:01||Christian Grothoff||Target Version||=> 0.11.6|
|2019-06-21 21:24||Christian Grothoff||Note Added: 0014562|
|2019-06-21 21:24||Christian Grothoff||Note Added: 0014563|
|2019-06-21 21:25||Christian Grothoff||Status||new => feedback|
|2019-06-22 19:27||ic.rbow||Note Added: 0014568|
|2019-06-22 19:27||ic.rbow||Status||feedback => new|
|2019-07-07 21:25||Christian Grothoff||Target Version||0.11.6 =>|
|2020-10-29 11:22||schanzen||Assigned To||=> schanzen|
|2020-10-29 11:22||schanzen||Status||new => acknowledged|
|2022-02-22 23:09||schanzen||Note Added: 0018710|
|2022-02-22 23:09||schanzen||Assigned To||schanzen =>|