Skip to content

Releases: Nukesor/comfy-table

v7.2.2

13 Jan 02:28
9040cd2

Choose a tag to compare

[7.2.2] - 2026-01-13

Fix

  • Minor performance improvements
  • Fixed an edge-case, where multiple LowerBoundary constraints weren't uphold.
  • Fixed an issue where tables were misformatted when no vertical border styling was specified. #198

[7.2.1] - 2025-09-11

Misc

  • Adjust a single test case to not fail in 0x0 sized tty-environments. !186

v7.2.0

28 Aug 21:47
5962fbe

Choose a tag to compare

[7.2.0] - 2025-08-25

Chore

  • Switch to Rust 2024 edition. This bumps the MSRV to 1.85 and thereby no longer supports the wasm32-wasi target.

Fix

  • Also update the crossterm dependency to 0.29 for windows !181.

v7.1.4

07 Feb 20:11
28b0798

Choose a tag to compare

[7.1.4] - 2025-02-07

Fix

  • Handle UTF-8 graphemes when truncating cells. #167
  • Respect UTF-8 zero-width joiner and variation selection characters when splitting words. #168 by tisonkun

Change

  • Remove strum dependency. #169 by tisonkun
  • Introduce the unicode-segmentation library in the scope of #167 and #168.
  • The new changes for correct UTF-8 handling have a performance hit of up to ~67%.
    However, this will be most likely unnoticable for most people.
    The benchmark table with 10 columns and 500 rows slowed down from 15ms to 25ms.
    For "normal" tables, the performance hit is negligible.

Chore

  • Bump ansi-str

v7.1.3

14 Nov 17:37
cd9ba5f

Choose a tag to compare

[7.1.3] - 2024-11-24

Fix

  • Bump crossterm to 0.28 on Windows as well

v7.1.2

13 Nov 15:21
e35f019

Choose a tag to compare

[7.1.2] - 2024-11-24

Chore

  • Bump crossterm to 0.28
  • Bump unicode-width to 0.2

v7.1.1

05 Apr 20:51
1db4db9

Choose a tag to compare

[7.1.1] - 2024-04-05

Fix

  • Fix string width calculation with ANSI escape sequences by switching to the ansi-str crate.
    The previous implementation didn't respect OSC 8 hyperlink style ANSI sequences.
    Implemented by dsully in #137.
  • custom_styling feature now requires tty feature as it should.

v7.1.0

21 Oct 10:54
ef14a13

Choose a tag to compare

[7.1.0] - 2023-10-21

Added

  • Add helper methods (col,row)_count and is_empty. The first set of methods return the number of columns and rows
    respectively. The method is_empty returns if the table is empty (contains no data rows). Implemented by
    Techassi in #119.

Chore

  • Bump crossterm dependency

v7.0.1

16 Jun 11:38
69b2ccb

Choose a tag to compare

[7.0.1] - 2023-06-16

Fix

  • Fix a panic when working with extreme paddings, where (padding.left + padding.right) > u16::MAX.
  • Fix a panic when working with extremely long content, where (content_width + padding) > u16::MAX.
  • Properly enforce lower boundary constraints.
    Previously, "normal" columns were allocated before lower boundaries were respected.
    This could lead to scenarios, where the table would grow beyond the specified size, when there was a lower boundary.
  • Fix calculation of column widths for empty columns.
    The minimum content width for a column is 1 char, but the column_max_content_widths function on the table returned a 0 width for fully empty columns.
    This resulted in tables becoming larger than specified if there were any empty columns.

Misc

  • Extend property tests, which lead to the discovery of some bugs.

v7.0.0

06 Jun 15:41
15ad292

Choose a tag to compare

[7.0.0] - 2023-06-06

Breaking

  • The Color and Attribute enum are no longer re-exported from crossterm by default.
    Previously, when updating comfy-table, crossterm needed to be upgraded as well, since the compile would otherwise fail due to type incompatibilies.

    To fix this, these enums are now mirrored and internally mapped to their crossterm equivalents, which allows us to safely bump crossterm whenever a new version is released.
    This change will only affect you if your projects explicitly use crossterm and comfy-table at the same time and feed crossterm's native types into comfy-table.

    If one wants the old behavior for convenience reasons, this can be enabled via a feature flag.
    However, this is also a opt-in to potential breaking changes on minor/patch versions.

  • Bump minimum version to v1.64

Added

  • reexport_crossterm feature flag to enable old crossterm re-export.

v6.2.0

26 May 15:02
09339c5

Choose a tag to compare

[6.2.0] - 2023-05-26

Added

  • Add support for custom ansi styling inside of cells. This feature is hidden behind the feature flag custom_styling. Implemented by blueforesticarus in #93.
  • Add helper functions add_row[s]_if, which filtering of rows by a predicate. Implemented by Techassi in #106.

Maintenance

  • Bump dependencies