36 releases

0.11.3 Mar 15, 2021
0.11.0 Jan 4, 2021
0.10.0 Sep 7, 2020
0.9.1 May 19, 2020
0.1.2 Mar 30, 2018

#217 in Development tools

Download history 73/week @ 2021-04-03 40/week @ 2021-04-10 15/week @ 2021-04-17 47/week @ 2021-04-24 37/week @ 2021-05-01 36/week @ 2021-05-15 1/week @ 2021-05-29 36/week @ 2021-06-05 3/week @ 2021-06-26 3/week @ 2021-07-03 37/week @ 2021-07-17

184 downloads per month

MIT license

7KB
100 lines

See crate docs.


lib.rs:

Shkeleton is a skeleton Rust project which defines some default dependencies and contains some common API's. The idea behind Shkeleton is that you don't need to update all the dependencies by hand for every your library or binary, you could just update Shkeleton version and get all updates.

Dependencies

  • log - logging facade
  • byteorder - dealing with data reading/writing
  • lazy_static - macro to define a lazy static constants
  • array_tool - utilities for dealing with arrays
  • itertools - utilities for dealing with iterators
  • regex - regular expressions
  • url - handling URLs
  • percent_encoding - URL encoding
  • derive_more & derive_deref - more derive implementations
  • chrono - dealing with time and date
  • fstrings - string interpolation macros
  • fehler - exceptions like approach to errors
  • sherr - error signalling and logger helpers
  • log - logging API (through sherr)
  • anyhow - flexible error signalling (through sherr)
  • backtrace - backtrace routines (through sherr)

Features

Shkeleton also defines a few features which extend the dependencies list and APIs.

cli

Additional dependencies:

  • clap - define your command line arguments parser
  • glob - dealing with glob patterns
  • dirs - dealing with system paths
  • fern - logging implementation (through sherr)

concurrency

Additional dependencies:

  • crossbeam - multi-threading utils
  • num_cpus - get the number of CPUs and cores available
  • parking_lot - faster synchronization primitives Concurrency feature also defines a facade for RwLock, which allows to hide an implementation (std::sync::RwLock or parking_lot::RwLock) behind this facade and switch implementation without need to update sources.

deadlock_detection

Enables parking_lot deadlock_detection feature.

Dependencies

~9.5MB
~221K SLoC