Notable Changes
- Literally hundreds of new koans, both in old and new topics. We're well over 600 individual koans at present, and we'll still be adding more!
- New Commands:
Show-Karma: A pretty koan completion status display command, taking the place ofMeasure-Karma.Get-Karma: Outputs a summary object of your PSKoans progress, including current topic progress information. Store your data as you progress to keep a log, or design your own pretty views using the same information used inShow-Karma!Get-PSKoanSetting/Set-PSKoanSetting: Directly get and set persistent settings for your PSKoans module!- Currently available settings:
KoanLocation: Change the folder location that PSKoans reads from and stores your koan library in!Editor: Change the default editor that PSKoans opens your library in when you callShow-Karma -Meditate! Full paths or executables available from$env:PATHlocations are both supported!
- Settings are stored in
~/.config/PSKoans/config.json
- Currently available settings:
- Utility commands, with many thanks to @indented-automation for his black-magic wizardry for these gems:
Get-PSKoan: Lists the koan topics available!Update-PSKoan: Updates all your koan files, adding any missing koans in your topic files, and copies new topic files over! You can also target specific topics to update with-TopicReset-PSKoan: Reset individual koan topics, context blocks, or individual koanItblocks by name! Call without parameters to do a full reset of your koan topics. You will be prompted for confirmation before any changes are made to each topic.
- Updated Commands:
Show-Advice- Handles advice topic names like koan topic names -
.Advicesuffix no longer needed. - New advice topics thanks to @sudoblark!
- Handles advice topic names like koan topic names -
Get-PSKoanLocation/Set-PSKoanLocation: Gets or sets theKoanLocationsetting viaGet-PSKoanSetting/Set-PSKoanSetting
- Retired Commands:
Measure-Karma: Retained as an alias to the newShow-Karma
Full Changelog
Community Contributions
A huge thank-you to all the folks from the community who helped make this update a hundred times better than it would otherwise be!
Special thanks go to @thomasrayner, @indented-automation, and @sudoblark for their hard work and immense contributions to the PSKoans topic library. (And especially for being willing to put up with me through some very thorough code reviews!)
| Commit | Name | Subject |
|---|---|---|
| 493be4a | @A298B112 | Fix Select-Object -Unique koan (#221) |
| c8c4893 | @BrandonLundt | Typos identified in Issue #190 (#201) |
| 3320e2c | @BrandonLundt | Changed out-file parameter and updated Out-String koan (#198) |
| 8db3533 | @BrandonLundt | Removed -Recurse, updated Regex Pattern, added help (#200) |
| 8a4e35a | @BrandonLundt | 🎨 ♻️ Fixed typos, split ErrorRecord describe into two Contexts (#199) |
| 1edc1b9 | @BrandonLundt | 🔧 Clarify AboutPSProviders->FileSystemProvider Koan. (#189) |
| f1bad6f | @cyberd3mon | ➕ A couple of qoutes of wisdom added. (#300) |
| 09f013c | @EVWorth | Fixes auto-succeeding pester tests in AboutComparison and AboutStrings (#214) |
| 7eaca0a | @gep13 | 📝 Remove double space (#269) |
| 4c5e590 | @IISResetMe | Fix #177 (unpredictable test expectations in AboutWhereObject) (#219) |
| 508fada | @indented-automation | ✨ Updates AboutStrings with new examples (#299) |
| 594d53a | @indented-automation | ✨ Adds Koans: AboutClasses (#296) |
| 09e37fb | @indented-automation | ✨ Adds about enumerations koans (#263) |
| 0628f3c | @indented-automation | 🐛 Fixes Detailed parameter (#268) |
| db83193 | @indented-automation | ✨ Adds examples to AboutArrays (#257) |
| 302263e | @indented-automation | ✨ Adds module topic support & refactor init (#251) |
| 1bb9e9d | @indented-automation | Updates AboutSelectObject (#247) |
| 89632fb | @indented-automation | ✨ Adds bitwise operator and binary koans (#245) |
| 9c2c5f7 | @indented-automation | ✅ Adds new koan validation tests (#246) |
| 1a4c496 | @indented-automation | ✨ Adds Koan Update and Reset commands (#223) |
| 21f8e42 | @indented-automation | ✨ Adds OFS to AboutStrings (#204) |
| 3933d71 | @johnheusinger | ✨ Add a few bits of wisdom (#293) |
| d0726f5 | @manoj2994 | ✅ Write Tests for *-Advice Cmdlets #278 (#283) |
| 54beee2 | @robdy | ✨ Add specific error for Show-Advice (#287) |
| 31f0494 | @robdy | 🐛 Fix bug with VSCode opening empty file (#289) |
| 785883c | @robdy | 🐛 Fix fun advices filenames (#285) |
| b1fbf7e | @sudoblark | ✨ Port of PowerShell Intro Training into PSKoans (#241) |
| defad7f | @thomasrayner | ✨ New topic: Regular Expressions (#281) |
| ce875f3 | @tomlarse | 🔧 Fix divide by zero on some systems (#192) |
| f67a246 | @tomlarse | Moved $Aliases to the correct scope (#173) |
| 3fb8b44 | @usrme | 🐛 Check for PSKoan directory before opening (#274) |
| b9a2415 | @usrme | 🐛 Fix Show-Advice requiring full basename for snippet (#276) |
| 5cd6b86 | @vercellone | 🔧 Fixes #191 AboutPSObjects (#228) |
| 2b01ba4 | @vercellone | 📦 Enforce a single LF at EOF (#232) |
All Other Changes
| Commit | Subject |
|---|---|
| 4a66dfa | 🚀 Fix nupkg generation for PRs |
| b03bc1a | 🚀 Allow tests to publish on failed tests |
| e2ca569 | 📝 Use relative path for workspace folder |
| 4f378d2 | 🐛 Properly Rethrow Get-Karma errors in Show-Karma (#302) |
| 29fd4d1 | 🐛 Update-PSKoan - Fix Yes to All for ShouldProcess Prompts (#292) |
| f6ad6b8 | 🎨 ♻️ Style Pass (#295) |
| be71464 | ✨ 🎨 Add meditation prompts (#294) |
| c7c536d | ✨ Add -PipelineVariable koan & update AboutLoopsAndPipelines (#291) |
| 9bc1a72 | ✨ Persist koan settings (#248) |
| 41ea730 | 🚧 🎨 Rework Koan Order (#277) |
| 4f2e142 | 📝 Update Contributing.md (#271) |
| dd8b268 | 🐛 🎨 Update AboutDiscovery (#270) |
| d8fa6ca | 🚀 Refactor job / task layout (#266) |
| 9d046f5 | 🚀 Dry-Run Module Publishing in CI (#265) |
| 11d0143 | 🚀 Add Code Coverage Reports (#259) |
| da66f06 | 🐛 Show-Karma - Properly handle completion of topics (#250) |
| 47e75aa | ✨ add CSV koans (#240) |
| edb870b | 📝 Update readme and meditation prompt (#243) |
| 9690b0a | 🎨 Use longer-form blank for dummy type name (#244) |
| 8300057 | 🔧 Update all references to $env:PATH (#239) |
| 0cf03c8 | ✨ Add Get-Karma function, rename Measure-Karma to Show-Karma (#238) |
| 5e5c174 | ✨ Implement first Katas (#237) |
| dff3296 | 🔧 🎨 Fix #179 AboutPSProviders (#235) |
| 39aefd4 | 🚀 Add multi-platform building and testing (#236) |
| adbd525 | 🔧 🎨 Fix Outstanding koan issues (#233) |
| 48060a7 | 🔧 Remove nonexistent Measure-Object parameter -Count (#229) |
| 60fe30d | ✅ Publish Test Results to Azure Pipelines (#230) |
| 9e01282 | Update AboutStringBuilder koans (#225) |
| 2fbcaf4 | Add Hidden Parameters to Get-Blank (#220) |
| 768ba4d | 🔧 About redirection fixes (#209) |
| 3070afd | ✨ Add extension recommendations (#208) |
| b160923 | 🔧 AboutHashtables Fixes (#187) |
| e0a54b0 | 📦 Automatically generate external help during build (#167) |
| 757d80d | Add -Detailed parameter for Measure-Karma (#166) |
| 34173b8 | ♻️ Refactor AboutSplatting (#165) |
| 457a61f | 🔧 Fix topic progress when topic file is completed. (#164) |
| 53e3717 | Add new alias for Get-Blank (#158) |