in multiple spots within the code base are lots of #[cfg(feature = "cli")] annotations. often times, this were included to conditional compile the several progress widgets for cli.
instead of that, we can create a very neat abstraction over all of these widgets (within a dedicated crate), and if the crate isn't being compiled with the cli feature, it should do nothing. that should make a lot of the code easier, and reduce code-duplication.
future improvement (although not top priority) could be keep counters as the progress bar is increased in the case where the crate isn't being compiled with the cli feature flag.
i started a rough draft in toks/mockable-interactive-widgets branch, which still has lots of rough edges.
in multiple spots within the code base are lots of
#[cfg(feature = "cli")]annotations. often times, this were included to conditional compile the several progress widgets for cli.instead of that, we can create a very neat abstraction over all of these widgets (within a dedicated crate), and if the crate isn't being compiled with the
clifeature, it should do nothing. that should make a lot of the code easier, and reduce code-duplication.future improvement (although not top priority) could be keep counters as the progress bar is increased in the case where the crate isn't being compiled with the
clifeature flag.i started a rough draft in toks/mockable-interactive-widgets branch, which still has lots of rough edges.