ctongfei / progressbar

Terminal-based progress bar for Java / JVM
http://tongfei.me/progressbar/
MIT License
1.07k stars 102 forks source link

Can one disable the "time estimate"? #131

Closed MagnusErikssonAB closed 1 year ago

MagnusErikssonAB commented 2 years ago

For my tests (that do not progress very linearly) the "estimated remaining time" (I assume it is - the second time display after the "/") is very inaccurate and I would prefer to disable it - is this possible? If not it would be a nice feature.

ctongfei commented 2 years ago

Right now it cannot be disabled. There are two ways: (1) enable a way to disable the estimated remaining time; (2) use a fancier method to estimate instead of just doing linear extrapolation as it is right now. Which one do you prefer?

MagnusErikssonAB commented 2 years ago

Short term disabling would fit my needs. Long term one could even consider ability for the user of the library to add a function for calculation that fits the use-case.

Best Regards Magnus

On Fri, Mar 18, 2022 at 7:27 AM Tongfei Chen @.***> wrote:

Right now it cannot be disabled. There are two ways: (1) enable a way to disable the estimated remaining time; (2) use a fancier method to estimate instead of just doing linear extrapolation as it is right now. Which one do you prefer?

— Reply to this email directly, view it on GitHub https://github.com/ctongfei/progressbar/issues/131#issuecomment-1072070996, or unsubscribe https://github.com/notifications/unsubscribe-auth/AWZEDCVY4AOJ2NOIIL5V65TVAQO5HANCNFSM5QTTCJTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you authored the thread.Message ID: @.***>

ctongfei commented 1 year ago

Will be fixed in 0.9.4, and added a new configurable setting in ProgressBarBuilder: you can now use setETAFunction(BiFunction<ProgressState, Duration, Optional<Duration>>) to provide with your own estimator of remaining time (for non-linear progresses).