Skip to content

PSWordCloud v4.0.0

Latest
Compare
Choose a tag to compare
@vexx32 vexx32 released this 14 Sep 02:10
· 75 commits to main since this release

TL;DR: Everything should work a ton better, but custom scaling you've maybe been applying to make up for insufficiencies in the auto-scaling will need to be re-evaluated.

Breaking Changes

  • Removed the -Words alias (it was an alias for -InputObject); it was far too similar to -WordSizes which was a completely separate parameter in a different parameter set.
  • Adjustments to sizing calculations; automatic scaling should be much more consistent.
    • With this change, existing usages that made use of -WordScale to adjust the size of the final cloud will very likely need to be re-evaluated and adjusted accordingly.
    • There should be fewer and more predictable cases where you might need to adjust the automatic scaling, but if you have larger scaling values used to accommodate previous versions' inability to scale properly, you will probably see those calls start to skip a lot of words. Start with the default value of 1 and work from there.

Changes

  • Cap sizes of shorter words so that they scale more consistently and don't end up taking up half of the cloud, which tended to crowd out smaller but longer words.
  • Replaced Task based threading model with threadpool work item queues so we don't risk thread starvation triggering off thousands of jobs, the thread pool will handle things a bit better for us. A fair amount of speedup in plaintext input processing and less overhead, from initial tests.

Internal-Facing Changes

  • Thorough rework of internal code and massive refactor and cleanup.
    • Many segments were moved to their own classes and everything was made much more usable.
  • Nullability annotations enabled and added throughout the project.

See #79 for further details.

Bug Fixes

  • Thoroughly fixed behaviour when drawing clouds containing only a few words. They should now render consistently and functionally, all the way from just a few words to hundreds.

Commit Log

Hash Subject
bde8a28 ✨ major version bump 3 -> 4
4c1d1ff ✨ Major Rework - Placement, sizing, cleanliness, and speed. (#79)
5446a57 ♻️ Replace references to master branch
160c53c 🎨 ♻️ Major EndProcessing() Refactor (#51)
374154b ♻️ Cleanup IEnumerable Usages (#49)
b6bddaa ♻️ Refactor Word Positioning (#48)
f3a0ea7 📝 Add error messages to transform attributes (#47)
f58e86b 📝 add issue config file
41ba1ca ✅ Update reference in test csproj