| @@ -13,18 +13,28 @@ test = false · 12 unmodified lines |
| 13 | 13 | |
| 14 | 14 | [features] |
| 15 | 15 | default = [] |
| 16 | | −## Data structures implement `serde::Serialize` and `serde::Deserialize`. |
| 17 | | −serde1 = ["git-commitgraph/serde1", "git-repository/serde1", "serde_json", "serde"] |
| 18 | 16 | |
| 19 | | −# async or blocking tooling |
| 17 | +#! ### Tools |
| 18 | +## Discover all git repositories within a directory. Particularly useful with [skim](https://github.com/lotabout/skim). |
| 19 | +organize = ["git-url", "jwalk"] |
| 20 | +## Derive the amount of time invested into a git repository akin to [git-hours](https://github.com/kimmobrunfeldt/git-hours). |
| 21 | +estimate-hours = ["itertools", "rayon", "fs-err"] |
| 22 | + |
| 23 | +#! ### Mutually Exclusive Networking |
| 24 | +#! If both are set, _blocking-client_ will take precedence, allowing `--all-features` to be used. |
| 25 | + |
| 26 | +## If set, the client used to connect to git servers will use a blocking API. It supports more transports and is what most would want. |
| 20 | 27 | blocking-client = ["git-repository/blocking-network-client"] |
| 28 | +## The client to connect to git servers will be async, while supporting only the 'git' transport itself. |
| 29 | +## It's the most limited and can be seen as example on how to use custom transports for custom servers. |
| 21 | 30 | async-client = ["git-repository/async-network-client", "async-trait", "futures-io", "async-net", "async-io", "futures-lite", "blocking"] |
| 22 | 31 | |
| 32 | +#! ### Other |
| 33 | +## Data structures implement `serde::Serialize` and `serde::Deserialize`. |
| 34 | +serde1 = ["git-commitgraph/serde1", "git-repository/serde1", "serde_json", "serde"] |
| 35 | +## Functions dealing with time may include the local timezone offset, not just UTC with the offset being zero. |
| 23 | 36 | local-time-support = ["git-repository/local-time-support"] |
| 24 | 37 | |
| 25 | | −# tools |
| 26 | | −organize = ["git-url", "jwalk"] |
| 27 | | −estimate-hours = ["itertools", "rayon", "fs-err"] |
| 28 | 38 | |
| 29 | 39 | [dependencies] |
| 30 | 40 | # deselect everything else (like "performance") as this should be controllable by the parent application. |
| @@ -56,5 +66,7 @@ rayon = { version = "1.5.0", optional = true } · 25 unmodified lines |
| 56 | 66 | itertools = { version = "0.10.1", optional = true } |
| 57 | 67 | fs-err = { version = "2.6.0", optional = true } |
| 58 | 68 | |
| 69 | +document-features = { version = "0.1.0", optional = true } |
| 70 | + |
| 59 | 71 | [package.metadata.docs.rs] |
| 60 | | −features = ["blocking-client", "organize", "estimate-hours", "serde1"] |
| 72 | +features = ["document-features", "blocking-client", "organize", "estimate-hours", "serde1"] |