Skip to content

v3.0.0

Compare
Choose a tag to compare
@Omikhleia Omikhleia released this 05 Mar 20:18
· 2 commits to main since this release

This is a major release which contains substantial changes to the framebox package.

Fixes

  • Stop defaulting to black in the framebox package (#17)
    All box-related commands now use the current color rather than defaulting to black when some (optional) color arguments are not specified.

Features

  • Add fillstyle option to \roughbox in framebox package, and support more pattern filling options (#15)
    The default style is "hachure", but "solid", "zigzag", "cross-hatch","“dashed" and "zigzag-line” are now also supported.

Migration notes

Regular users might be affected by the following changes:

  • Boxes were always black by default, even if some color was set in the surrounding context. As noted above, they now use the current color. Explicitly specify a color, if you want it otherwise.
  • The Lua implementation of the "rough" drawing algorithm, an updated port of the rough.js JavaScript library, has changed a lot, including how it uses the pseudo-random number generation (PRNG). As a consequence, you are not guaranteed to get the exact same rough boxes, identically stroked or filled, as you did with earlier versions of the module. They should still look good, of course, but the randomness will not be the same.

Regular users should not be affected by the following changes:

  • Several low-level APIs have changed (homogenizing some of the differences between the DefaultPainter and the RoughPainter, which now both admit "none" as fill or stroke option).
    • You shouldn't be affected, unless you developed your own components using these APIs
    • If it is the case, you may need to review your code.
  • The rough.js port to Lua was fully reorganized (files split and moved in different folders)
    • You shouldn't be affected, unless you developed your own components using these files
    • If it is the case, you may need to review your code.
  • Some now useless "compatibility" files have been removed.
    • You shouldn't be affected, unless you are still using fairly old versions of the resilient.sile or markdown.sile collections.
    • If it is the case, consider upgrading to the latest versions.
  • A few undocumented features have been removed.
    • Notably, the framebox packaged had an undocumented experimental \roughunder command.
    • You shouldn't be affected, unless you were using such undocumented and experimental code.