Skip to content

Latest commit

 

History

History
190 lines (139 loc) · 5.43 KB

CHANGELOG.md

File metadata and controls

190 lines (139 loc) · 5.43 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

3.1.0 - 2024-12-28

Added

  • Python 3.13 support
  • An escape utility function
  • Running python -m dahlia now displays the lib version

Changed

  • Improved error message for an invalid marker type (by @cadaniel02)

Fixed

  • Corrected edge case behavior when trying to use a regex character (e.g. ? or $) as a marker
  • Fixed custom color processing

Removed

  • Python 3.8 support

3.0.0 - 2024-06-02

This release follows the Dahlia Specification v1.0.0.

Added

  • Automatic color depth detection (as a consequence, Dahlia's depth parameter can now be None)
  • Style-specific reset codes
  • The &_ escape code
  • The clean_ansi function should now handle way more ANSI escape codes
  • The package can now be executed with python -m dahlia to show the current terminal emulator's capabilities
  • Various performance improvements:
    • String conversions are now approximately ~70% faster
    • A comprehensive benchmark showed an overall library speedup of 20%

Changed

  • The "Blink" style code was changed from &p to &k
  • The custom color syntax was changed from &[#ffaff3] to &#ffaff3; and now supports shorthand 3-digit codes
  • The Dahlia.depth property now returns a Depth | None instead of an int
  • The full reset code is now &R instead of &r
  • The "Hide" style code was changed from &k to &h
  • The no_reset parameter and property was renamed to auto_reset and now defaults to True

Fixed

  • Type checkers no longer complain about non-lowercase depth strings

Removed

  • Dahlia.reset
  • Dahlia.test
  • Dahlia's no_color parameter
  • The CLI tool
  • The &g code
  • The legacy dahlia, dprint, and dinput functions
  • The quantize_ansi utility function

2.3.2 - 2023-04-19

Fixed

  • Dahlia objects with different markers are no longer considered equal

2.3.1 - 2023-02-20

Fixed

  • Python 3.8 compatibility

2.3.0 - 2023-02-16

Added

2.2.2 - 2023-01-03

Added

  • Legacy dinput function

Fixed

  • Corrected legacy dahlia and dinput function typehints

2.2.1 - 2022-12-27

Changed

  • Minor CLI improvements

Fixed

  • Changed the default depth in the Dahlia CLI to 4

2.2.0 - 2022-12-21

Added

  • New format codes:
    • i - invert
    • j - dim
    • k - hide
    • p - blink
  • String and integer literals can now be used to specify the depth, e.g. dprint("&3hi", depth="tty") or Dahlia(depth=24)
  • no_color kwarg (has priority over the NO_COLOR environment variable)

Changed

  • Changed the default depth to LOW (4-bit)

Fixed

  • Fixed encoding background colors for lower color depths

2.1.3 - 2022-12-02

Fixed

  • Added depth 4 as a valid option in the Dahlia CLI
  • Fixed Python 3.8 compatibility
  • Fixed non-HIGH depths failing during conversion

2.1.2 - 2022-12-01

Added

Changed

  • __main__.py:main now uses sys.exit instead of exit
  • Improved project structure

Fixed

  • Fixed 4-bit colors being entirely unused by the __get_ansi function

Also thanks to @Sigmanificient for minor improvements!

2.1.1 - 2022-11-01

Fixed

  • Included dahlia and dprint functions in the module's __all__

2.1.0 - 2022-11-01

Added

  • 4-bit colors
  • Custom marker support
  • Legacy dahlia and dprint functions
  • black and isort as dev dependencies

2.0.0 - 2022-09-24

Added

  • Support for the NO_COLOR environment variable
  • Depth enum for Dahlia construction

Changed

  • Functions dahlia, dprint, and dinput have been replaced by the Dahlia class with methods convert, print, and input, respectively

Removed

  • Global config variable

1.1.0 - 2022-08-12

Added

  • dinput function
  • reset function
  • no_reset parameter for dahlia, dprint, dinput.

1.0.0 - 2022-07-12

Initial release 🎉