Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump indicatif from 0.16.2 to 0.17.0 #536

Merged
merged 3 commits into from Sep 23, 2022

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Aug 1, 2022

Bumps indicatif from 0.16.2 to 0.17.0.

Release notes

Sourced from indicatif's releases.

0.17.0

indicatif is one of the most popular terminal progress bar libraries in the Rust ecosystem. More than a year after the 0.16.0 release, we're happy to finally release 0.17. In the past year, the indicatif team has grown to two maintainers, since @​chris-laplante joined @​djc as a maintainer. We also now have a Discord channel.

Apart from many small API additions and fixes, particular effort has gone into reducing the overhead for reporting progress. To this end, we've removed some of the explicit rate limiting APIs in favor of a single refresh rate in the ProgressDrawTarget. We now set a rate limit by default (50ms) that should drastically reduce overhead for most applications while being more than enough for most terminal applications. Additionally, position updates are now synchronized by using atomic integer APIs instead of a mutex. In a basic test the simplest possible progress bar is about 95x faster on 0.17.0 compared to 0.16.2.

We've made many changes to the way MultiProgress collections work. You no longer need to explicitly join() the MultiProgress, there are more ways to insert new progress bars into the collection, and many correctness improvements have been made, in part to more effort having gone into testing the crate.

Additionally, we've reduced our dependency footprint, removing lazy_static and regex from our required dependencies.

Additions

Performance

  • Use atomics to track the current position (#390 with follow up in #404, #406, #414)
  • Faster template expansion (without the regex dependency; #319)
  • Draw progress bars into draw states (#361, with follow up in #371)
  • Remove draw limiting from the progress bar state (#380)
  • Simplify ProgressDrawTarget to reduce in-memory size (#277, thanks to @​mibac138)

MultiProgress changes

  • Run MultiProgress drawing on the main thread (#231 and #284, thanks to @​marienz and @​aj-bagwell)
  • Enable inserting progress bars at the end in MultiProgress (#326, thanks to @​omjadas)
  • Add insert_after()/insert_before() methods on MultiProgress (#331, with follow up in #424)
  • MultiProgress: add println() and suspend() methods (#351)
  • MultiProgress: prune zombie progress bars (#438, with follow up in #446)
  • Make is_hidden() work for MultiProgress (#430)
  • Allow vertical alignment in MultiProgress bars (#295, thanks to @​nlinker)

Fixes

  • Expand tabs to spaces to fix formatting (#150)
  • Enable 256 color support in template strings (#283, thanks to @​MoSal)
  • Fix potential panic for hidden draw targets (#286, thanks to @​matthiasbeyer)
  • ProgressFolder shouldn't finish progress bars on completion (#290, thanks to @​mibac138)

... (truncated)

Commits
  • 39ebd5f Add a Discord badge to the README
  • 7c96dcd Bump version to 0.17.0
  • 1d47e1d stateful progress tracking
  • 4cbdcbf Expand tabs => configurable number of spaces to fix #150 (#423)
  • 88d87d4 modify zombie handling code so it doesn't need to alloc
  • af5d925 add render tests for #426
  • 0f33289 MultiProgress: prune 'zombie' progress bars; fixes #426
  • f41eaa9 add InMemoryTerm::reset()
  • de9862b fix: first style of wide elements was ignored
  • 9cb25a7 add sanity check to ensure tests using Ticker acquire the global test lock
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Aug 1, 2022
@sharkdp sharkdp force-pushed the dependabot/cargo/indicatif-0.17.0 branch from efaa8fb to 07c788c Compare August 3, 2022 11:00
@sharkdp
Copy link
Owner

sharkdp commented Aug 3, 2022

Currently blocked by console-rs/indicatif#457

@sharkdp sharkdp force-pushed the dependabot/cargo/indicatif-0.17.0 branch from 07c788c to 51ac04b Compare August 3, 2022 11:09
@sharkdp
Copy link
Owner

sharkdp commented Sep 21, 2022

Now resolved by the new release.

@sharkdp sharkdp force-pushed the dependabot/cargo/indicatif-0.17.0 branch 2 times, most recently from b0e6ab7 to f6894ac Compare September 21, 2022 21:24
dependabot bot and others added 3 commits September 22, 2022 23:34
Bumps [indicatif](https://github.com/console-rs/indicatif) from 0.16.2 to 0.17.0.
- [Release notes](https://github.com/console-rs/indicatif/releases)
- [Commits](console-rs/indicatif@0.16.2...0.17.0)

---
updated-dependencies:
- dependency-name: indicatif
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@sharkdp sharkdp force-pushed the dependabot/cargo/indicatif-0.17.0 branch from f6894ac to a8c1199 Compare September 22, 2022 21:34
@sharkdp sharkdp merged commit 9612427 into master Sep 23, 2022
@sharkdp sharkdp deleted the dependabot/cargo/indicatif-0.17.0 branch September 23, 2022 06:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant