All Versions
16
Latest Version
Avg Release Cycle
47 days
Latest Release
11 days ago

Changelog History
Page 1

  • v0.7.0

    November 29, 2019

    ย Changed

    • ๐Ÿ‘‰ Use Constraint instead of integers to specify the widths of the Table ๐Ÿ“ฑ widget's columns. This will allow more responsive tables.
    Table::new(header, row)
      .widths(&[15, 15, 10])
      .render(f, chunk);
    

    becomes:

    Table::new(header, row)
      .widths(&[
        Constraint::Length(15),
        Constraint::Length(15),
        Constraint::Length(10),
      ])
      .render(f, chunk);
    
    • โฌ†๏ธ Bump crossterm to 0.13.
    • ๐Ÿ‘ท Use Github Actions for CI (Travis and Azure Pipelines integrations have been deleted).

    ย Added

    • โž• Add support for horizontal and vertical margins in Layout.
  • v0.6.2

    July 16, 2019

    ย Added

    • Text implements PartialEq

    ๐Ÿ›  ###ย Fixed

    • Avoid overflow errors in canvas

    ย v0.6.1 - 2019-06-16

    ๐Ÿ›  ###ย Fixed

    • Avoid a division by zero when all values in a barchart are equal to 0.
    • ๐Ÿ›  Fix the inverted cursor position in the curses backend.
    • Ensure that the correct terminal size is returned when using the crossterm backend.
    • Avoid highlighting the separator after the selected item in the Tabs widget.

    ย v0.6.0 - 2019-05-18

    ย Changed

    • โšก๏ธ Update crossterm backend

    ย v0.5.1 - 2019-04-14

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fix a panic in the Sparkline widget
  • v0.6.1

    June 16, 2019

    ๐Ÿ›  Fixed

    • Avoid a division by zero when all values in a barchart are equal to 0.
    • ๐Ÿ›  Fix the inverted cursor position in the curses backend.
    • Ensure that the correct terminal size is returned when using the crossterm
      backend.
    • Avoid highlighting the separator after the selected item in the Tabs widget.
  • v0.6.0

    May 18, 2019

    ๐Ÿ”„ Changed

    • โšก๏ธ Update crossterm backend
  • v0.5.1

    April 14, 2019
  • v0.5.0

    March 10, 2019

    โž• Added

    • โž• Add a new curses backend (with Windows support thanks to pancurses).
    • Add Backend::get_cursor and Backend::set_cursor methods to query and set the position of the cursor.
    • โž• Add more constructors to the Crossterm backend.
    • โž• Add a demo for all backends using a shared UI and application state.
    • โž• Add Ratio as a new variant of layout Constraint. It can be used to define exact ratios constraints.

    ๐Ÿ”„ Changed

    • โž• Add support for multiple modifiers on the same Style by changing Modifier from an enum to a bitflags struct.

    So instead of writing:

    let style = Style::default().modifier(Modifier::Italic);
    

    one should use:

    let style = Style::default().modifier(Modifier::ITALIC);
    // or
    let style = Style::default().modifier(Modifier::ITALIC | Modifier::BOLD);
    

    ๐Ÿ›  Fixed

    • Ensure correct behavoir of the alternate screens with the Crossterm backend.
    • ๐Ÿ›  Fix out of bounds panic when two Buffer are merged.
  • v0.4.0

    February 03, 2019

    โž• Added

    • โž• Add a new canvas shape: Rectangle.
    • ๐Ÿ‘ Official support of Crossterm backend.
    • ๐Ÿ‘‰ Make it possible to choose the divider between Tabs.
    • โž• Add word wrapping on Paragraph.
    • The gauge widget accepts a ratio (f64 between 0 and 1) in addition of a
      percentage.

    ๐Ÿ”„ Changed

    • โฌ†๏ธ Upgrade to Rust 2018 edition.

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fix rendering of double-width characters.
    • ๐Ÿ›  Fix race condition on the size of the terminal and expose a size that is
      safe to use when drawing through Frame::size.
    • Prevent unsigned int overflow on large screens.
  • v0.3.0

    November 04, 2018

    โž• Added

    • โž• Add experimental test backend
  • v0.3.0-beta.3

    September 24, 2018

    ๐Ÿ”„ Changed

    • show_cursor is called when Terminal is dropped if the cursor is hidden.
  • v0.3.0-beta.2

    September 23, 2018

    ๐Ÿ”„ Changed

    • โœ‚ Remove custom termion backends. This is motivated by the fact that termion structs are meant to be combined/wrapped to provide additional ๐Ÿ‘ functionalities to the terminal (e.g AlternateScreen, Mouse support, ...). Thus providing exclusive types do not make a lot of sense and give a false hint that additional features cannot be used together. The recommended approach is now to create your own version of stdout:
    let stdout = io::stdout().into_raw_mode()?;
    let stdout = MouseTerminal::from(stdout);
    let stdout = AlternateScreen::from(stdout);
    

    and then to create the corresponding termion backend:

    let backend = TermionBackend::new(stdout);
    

    The resulting code is more verbose but it works with all combinations of โž• additional termion features.