Hacker News new | ask | show | jobs
by 41b696ef1113 1490 days ago
Fair question. Noting that I am a Python person who has only tooled around with Rust a bit, a few packages I think warrant inclusion because the base options are too anemic:

  - Command line parsing (more feature rich the manually iterating over args)
  - (De)Compression: tar, zip, gzip, bzip2
  - CSV parser
  - Date time 
  - Hashing: md5, sha1, sha256
  - HTTP requests
  - Logging
  - Random generation: ints, floats, sampling, uuids
  - Regex
  - SQLite bindings
  - (De)serialization: json, ini, toml, yaml
  - System niceties: where is user home?, # of cpus?
Appreciating some of these are quite complex, and probably best left to a crate that has more leeway in experimentation/breaking APIs.

Edit: tried to make the formatting less bad

1 comments

Maybe some of these can be chalked up to language philosophy or APIs as you said, but many of these would be welcome additions in my eyes.

I think regex, time, and crates like num_cpus would especially be nice to have. There's plenty of those types of crates where it feels like you can't compile a single project without seeing it float by as you build the dependencies.