Skip to content

Releases: firelink-data/padder

v1.2.0

09 May 23:58
26813eb
Compare
Choose a tag to compare

Feature-rich minor release 🔥⚡️

This release adds a couple of new nice features to the library!

Firstly, both enum types Symbol and Alignment now have default implementations as Symbol::Whitespace and Alignment::Right respectively.

Secondly, both enums now derive the serde Deserialize and Serialize traits if you enable the "serde" feature when adding the crate to your code. To get an example on how to utililze this, check out one of the examples from the unit tests.

Lastly, a lot of new Symbol enum variants have been added, and full coverage on testing. Added variants are:

  • Underscore
  • Dot
  • Comma
  • Colon
  • Semicolon
  • Hashtag
  • Backslash
  • Forwardslash
  • Asterisk
  • One
  • Two
  • Three
  • Four
  • Five
  • Six
  • Seven
  • Eight
  • Nine

📋 Summary of changes:

Full Changelog: v1.1.0...v1.2.0


Thanks for supporting the development of padder! ❤️ ❤️

v1.1.0

05 May 11:52
95a9df7
Compare
Choose a tag to compare

Stable minor release 🔥⚡️

This release brings some performance enhancing changes, more efficient memory allocation, and some bug fixing.

Previously there existed a bug when truncating using the Alignment::Center mode and the truncate width was uneven. The truncated output became one item too short. This is fixed now.

Previously the output buffer was always allocated unless the source was to be truncated, even if the target width was the same as the original source. This allocation is moved to after the check if diff == 0, saving precious system calls! Run some benchmarks and compare previous release to this release to see improvements in action.

More tests implemented, see codecov for coverage reports.

📋 Changelog:

  • fix(pad): center alignment bug on uneven width (#22)
  • misc(padder): LICENSE update, github-action fixes, crate build settings (#21)
  • feat(padder): implement Source trait for &[T] (#20)
  • build(deps): update env_logger from 0.10.1 to 0.11.0 (#18)
  • [bench] add more benchmarks and generate report (#14)

v1.0.0

19 Dec 16:05
c12bf67
Compare
Choose a tag to compare

First major release 🔥⚡️

This is the first major release of padder.
At face value, it offers any Rust developer an alternative to using the standard library macro format! which has known performance issues due to multiple allocations.

Padder allocates memory once, and then uses that memory for your formatting and padding needs. Check out the docs for examples and more information. The padding trait is currently implemented for string slices &str and generic vectors Vec<T>, with some trait bounds necessary.

Sadly no new contributors for this major release. However, feel free to contribute in any way if you see something that can be added or improved.

📋 Changelog:

  • [build] bump to major release v0.1.1 → v1.0.0 (#13)
  • [docs] udpate description in readme (#11)
  • [feat] trait bounds for char and u8 on Source trait (#10)
  • [docs] update readme short description (#9)
  • [crate] bump package version to 0.1.1 (#8)
  • [docs] fix typo in readme (#7)
  • [feat] document and improve padding functionality (#6)
  • [build] update package description (#5)
  • [docs] add install instructions and badges (#4)
  • [feat] padding, testing, and benchmarking (#3)
  • [git] dependabot config, ci and tests workflows (#2)
  • [build] add ci and tests workflows (#1)