Skip to content

v3.0.0 - Cross-Platform!

Compare
Choose a tag to compare
@vexx32 vexx32 released this 16 Mar 05:01
· 34 commits to master since this release

Notable Changes

  • The minimum version of PowerShell the module can be imported in is v7. See #33 for why I added this restriction.
  • New-WordCloud should now work on Unix systems. Give it a spin, and let me know if there are any issues!

New Features

Provider-Agnostic Output

-Path will now accept and successfully utilise any PSProvider path, provided that PSProvider supports the Set-Content API. In other words, this: $stuff | New-WordCloud -Path variable:image will actually create or overwrite the $image variable for you and populate it with SVG data.

This essentially means you can write the image data anywhere that PowerShell supports writing with Set-Content, including any custom providers that support it.

New -WordSizes Parameter

Added a -WordSizes parameter that takes a dictionary of words and their relative sizes.
For example:

New-WordCloud -WordSizes @{
    Apple = 10
    Orange = 20
    Banana = 15
    Pomegranate = 12
}

Words are scaled as a % of the largest specified word size, and the cmdlet does its best to fit them all into the given image size.

Bugfixes & Improvements

  • Improved algorithm for cases where New-WordCloud had some issues fitting words in if there were too few words and the words were of too similar size.
  • Improvements to the word splitting & trimming algorithms so we don't get words like 'new when we should be trimming those off.
  • Improvements to the build pipeline & module build script.
  • Added some sanity-check pester tests to the build pipeline.
  • Attempt to convert input objects of other types to string. This isn't a full Out-String (if anyone knows a straightforward way to utilise that API from C# that doesn't involve spinning up subshells just for that, let me know) so it will generally just be using the ToString() conversion for the object.

Commit Log

Hash Subject
8074597 πŸ“ Update version number
4122d6a πŸš€ Enable Mac OS tests (#35)
a3434e1 ♻️ Add -WordSizes parameter and cleanup (#34)
998c162 πŸ› ✨ πŸ”§ Miscellaneous Tweaks for v3.0 Release (#32)
d647e9e ⬆️ Set minimum version to PS7 (#33)
7f38295 πŸš€ Fix CI/CD and Module Build (#30)
bac6966 🚧 Load module DLL directly (#26)
8b7e8c3 πŸ“ Remove FileList entry from manifest