MhankBarBar / termux-wabot

........
GNU General Public License v3.0
255 stars 319 forks source link

Upgrade cfonts to version 3.0.0 #140

Closed depfu[bot] closed 2 years ago

depfu[bot] commented 2 years ago

Here is everything you need to know about this upgrade. Please take a good look at what changed and the test results before merging this pull request.

What changed?

✳️ cfonts (^2.9.0 → ^3.0.0) · Repo

Release Notes

3.0.0

Cfonts has been re-built from scratch in rust and had it's nodejs app aligned to the more correct output that rust produced.

Nodejs

There are some minor changes to the node lib that warranted a new major release:

  • Change to license from GPLv2 to GPLv3
  • letter-spacing is not appended anymore so the line ends at the last letter (which means more letters fit into a line)
  • Alignments are calculated now with ceil rather than floor which means half pixel are not founded up, not down
  • The console font now has it's own font file so we can re-use the same functionality and align across all fonts, also gives us more flexibility later if we want to make changes to the console font
  • Hex colors for background are now supported
  • The ANSI color system has been re-written from scratch giving us more flexibility and art-direction for when we have to convert 16 million colors to just 16
  • chalk as a dependency is removed and replaced with supports-color
  • The lower level ANSI16 colors now always render as ANSI16 and all other levels render depending on the current color support of the consuming console
  • The correct order of env var priority has been set and is being tested: FORCE_COLOR then NO_COLOR
  • letterspace_size has been added to each font file
  • Moved the nodejs implementation into it's own folder ./src -> ./nodejs/src

Rust

The rust implementation comes with a lot of tests as well as an end-to-end test that compares the output of the rust binary to the output of node which is also compared to a fixture. This test is run on three platforms (Linux, macOS and Windows) now with Github Actions.

Does any of this look wrong? Please let us know.

Commits

See the full diff on Github. The new version differs by more commits than we can show here.


Depfu Status

Depfu will automatically keep this PR conflict-free, as long as you don't add any commits to this branch yourself. You can also trigger a rebase manually by commenting with @depfu rebase.

All Depfu comment commands
@​depfu rebase
Rebases against your default branch and redoes this update
@​depfu recreate
Recreates this PR, overwriting any edits that you've made to it
@​depfu merge
Merges this PR once your tests are passing and conflicts are resolved
@​depfu close
Closes this PR and deletes the branch
@​depfu reopen
Restores the branch and reopens this PR (if it's closed)
@​depfu pause
Ignores all future updates for this dependency and closes this PR
@​depfu pause [minor|major]
Ignores all future minor/major updates for this dependency and closes this PR
@​depfu resume
Future versions of this dependency will create PRs again (leaves this PR as is)
depfu[bot] commented 2 years ago

Closed in favor of #142.