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

Added support for multiple progress bars displayed simultaneously #69

Merged
merged 11 commits into from
Apr 24, 2020

Commits on Jan 29, 2020

  1. Resolve ctongfei#60

    mordechaim authored and ctongfei committed Jan 29, 2020
    Configuration menu
    Copy the full SHA
    705d3b9 View commit details
    Browse the repository at this point in the history
  2. update documentations

    ctongfei committed Jan 29, 2020
    Configuration menu
    Copy the full SHA
    246f08a View commit details
    Browse the repository at this point in the history
  3. version bump

    ctongfei committed Jan 29, 2020
    Configuration menu
    Copy the full SHA
    4d6c6fe View commit details
    Browse the repository at this point in the history

Commits on Apr 7, 2020

  1. Added support for multiple progress bars displayed simultaneously (st…

    …arted from multiple threads / concurrently)
    
     - defaults to "single line" behavior when terminal does not support moving cursor
     - using ScheduledThreadPoolExecutor with single daemon thread (that does not prevent the JVM from exiting)
       - simplifies thread-safety and ensures only single thread is moving cursor
    vehovsky committed Apr 7, 2020
    Configuration menu
    Copy the full SHA
    21910f7 View commit details
    Browse the repository at this point in the history
  2. - synchronization fix for terminals without capability to move cursor

     - moving cursor up/down only based on the fact how many active progress bars are currently being rendered (instead of getting current cursor position in order to attempt to "re-render" correct line in console - which breaks instantly on terminal re-size)
    vehovsky authored and Martin Vehovsky committed Apr 7, 2020
    Configuration menu
    Copy the full SHA
    4e2d0fc View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ac46d59 View commit details
    Browse the repository at this point in the history

Commits on Apr 10, 2020

  1. terminal utils refactoring and cleanup

     - no need for entering terminal raw mode (needed when asking terminal for cursor position)
     - basic terminal info (width / cursor movement support) are now public - helps when writing custom ProgressBarConsumer
    vehovsky committed Apr 10, 2020
    Configuration menu
    Copy the full SHA
    7429cef View commit details
    Browse the repository at this point in the history

Commits on Apr 11, 2020

  1. - ensure same thread that renders last progress status also closes th…

    …e consumer
    
      - currently was not the case and could cause display issue in terminals without cursor movement support (when multiple progress bars were started in parallel)
        - as the final "new line" was being writen to PrintStream from different thread
    - other refactorings
    vehovsky committed Apr 11, 2020
    Configuration menu
    Copy the full SHA
    7fbc131 View commit details
    Browse the repository at this point in the history

Commits on Apr 12, 2020

  1. Creating terminal is relatively expensive, usually takes between 5-10ms

     - ensure new terminal is not created on every progress bar re-render
     - at the same time ensure only single instance of Terminal was build
       - every ProgressBar can't hold instance of Terminal, although it's possible to create multiple instances of Terminal, subsequent instance are created as "dumb" until the first instance is closed
    vehovsky committed Apr 12, 2020
    Configuration menu
    Copy the full SHA
    1dbaf8b View commit details
    Browse the repository at this point in the history
  2. potential NPE fix

    vehovsky committed Apr 12, 2020
    Configuration menu
    Copy the full SHA
    4684ee4 View commit details
    Browse the repository at this point in the history

Commits on Apr 22, 2020

  1. Configuration menu
    Copy the full SHA
    6df1ef7 View commit details
    Browse the repository at this point in the history