v3.0.0 - Cross-Platform!
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 theToString()
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 |