diff --git a/.memory-bank/activeContext.md b/.memory-bank/activeContext.md index 1b3907c..09a8f93 100644 --- a/.memory-bank/activeContext.md +++ b/.memory-bank/activeContext.md @@ -9,36 +9,36 @@ source: current task evidence ## Current focus -Release 5.0.0 through CI, with the prerelease `5.0.0-rc1` first -(Decision 12). The release workflow, scripts, tests, and docs are PR-ready -on the local branch `ai/release-5.0.0`; the maintainer pushes it, opens the -PR, sets up the Gallery key and the environment `powershell-gallery`, and -tags `5.0.0-rc1` after the merge. Work package 5 (code defects) and the -open issues come after the release. +5.0.0-rc1 is published (Gallery and GitHub prerelease, #98, tag +`5.0.0-rc1`) and verified. The maintainer tests it; after that comes the +final 5.0.0 release (remove the label, date the changelog, tag `5.0.0`), +then work package 5 (code defects) and the open issues. The local branch +`ai/memory-bank-rc1` holds this note and rides along with the next PR. ## Evidence -- Test first: `Tests\Release.Tests.ps1` failed 15 of 15 (Windows - PowerShell: 9 failed, 6 skipped) before the scripts existed; the command - tag test failed before the tags were added. Final: full suite 268 tests, - PowerShell 7 232 passed and 36 skipped, Windows PowerShell 261 passed and - 7 skipped (packaging needs PowerShell 7). -- Package dry run: `NTFSSecurity.5.0.0-rc1.nupkg` (about 275 KB) with the 11 - `FileList` files, version `5.0.0-rc1`, release notes link, and 83 tags - (36 `PSCmdlet_`, 36 `PSCommand_`, `PSIncludes_Cmdlet`); the extracted - package imports in Windows PowerShell 5.1 and PowerShell 7.6.1 with 36 - cmdlets and working help. 4.2.6 on the Gallery has 37 + 37 command tags; - PSResourceGet 1.2.0 `Compress-PSResource` adds none. -- actionlint, PSScriptAnalyzer, and markdownlint: no findings. -- `master` has 37 open issues; several overlap the work package 5 defects - (for example #4) or are already fixed (#19 in 4.2.4; #15, #47, #66 by the - documentation). -- The local branch `ai/read-the-docs` keeps the dropped strict-build work - (`886c874`, `325ec76`); delete it once it is no longer wanted. +- Release run 37230802387: build, tests in both editions, packages, + release checks, Gallery publish, and GitHub release all passed; the wiki + job skipped the tag as designed. +- The Gallery nupkg (275,437 bytes) is byte-identical to the CI artifact, + and the GitHub `NTFSSecurity.zip` to the CI zip; all 11 module files + match. The DLLs are optimized Release builds (JIT optimizer enabled). +- Gallery: `IsPrerelease` true, `IsAbsoluteLatestVersion` true, + `IsLatestVersion` false; stable `Find-PSResource` returns 4.2.6, with + `-Prerelease` 5.0.0-rc1. 85 tags with all 36 `PSCmdlet_` and 36 + `PSCommand_`; the Gallery itself adds `PSEdition_Core` and + `PSEdition_Desktop`. +- Installed with `Save-PSResource` and copied to `bin\Release`, the module + passes the full suite: Windows PowerShell 261 passed, 7 skipped; + PowerShell 7 232 passed, 36 skipped. +- The command search (`Find-PSResource -CommandName`) still returned 4.2.6 + at 20:16 UTC, four minutes after publishing; the search index was stale, + because it treated 4.2.6 as the absolute latest version. +- The wiki was republished from `e0f5366`; Home mentions + `-AllowPrerelease`. ## Next step -After the maintainer opens the PR: read its CI run, and download the -`packages` artifact (`gh run download`) to compare it with the local dry -run. After the `5.0.0-rc1` tag: check the release job, the Gallery entry -(version, tags, `Find-Command Get-NTFSAccess`), and the GitHub prerelease. +Recheck the command search for 5.0.0-rc1. When the maintainer reports test +results: prepare the final 5.0.0 release PR, or fix what the tests found +and publish `5.0.0-rc2`. diff --git a/.memory-bank/progress.md b/.memory-bank/progress.md index 9e73a97..a0c55bb 100644 --- a/.memory-bank/progress.md +++ b/.memory-bank/progress.md @@ -9,12 +9,12 @@ source: repository evidence ## Current status -PRs #91 to #97 are merged; `master` (`59663c9`) carries version 5.0.0, -which is not released yet. CI runs on GitHub Actions: build, docs checks, -and tests in Windows PowerShell 5.1 and PowerShell 7, plus the wiki, which -is generated from `Docs` (43 pages). PR-ready locally: `ai/release-5.0.0`, -releases by CI on a version tag (Decision 12), starting with the -prerelease `5.0.0-rc1`. +PRs #91 to #98 are merged. CI published the prerelease 5.0.0-rc1 from +`master` (`e0f5366`, tag `5.0.0-rc1`) to the PowerShell Gallery and GitHub; +the stable Gallery version is still 4.2.6. CI runs on GitHub Actions: +build, docs checks, tests in Windows PowerShell 5.1 and PowerShell 7, +packages, the wiki generated from `Docs` (43 pages), and releases on a +version tag (Decision 12). Next: the maintainer tests 5.0.0-rc1. ## Recent milestones @@ -52,6 +52,18 @@ prerelease `5.0.0-rc1`. the label `rc1`, and `Docs/Contributing/05-Releasing.md`. The package dry run found that PSResourceGet drops the command tags that 4.2.6 had; the script adds them back. +- 2026-10-04: #98 merged (`e0f5366`); the tag `5.0.0-rc1` ran the release + job (run 37230802387), which published to the Gallery at 20:12 UTC and + created the GitHub prerelease. Verified: the Gallery nupkg is + byte-identical to the CI artifact, the GitHub zip to the CI zip; the DLLs + are optimized Release builds; the Gallery shows the prerelease flag, the + release notes link, and 85 tags (36 `PSCmdlet_`, 36 `PSCommand_`, + `PSIncludes_Cmdlet`, plus `PSEdition_Core` and `PSEdition_Desktop`, which + the Gallery adds itself); stable search still returns 4.2.6. Installed + with `Save-PSResource`, the module passes the full suite (Windows + PowerShell 261 passed and 7 skipped, PowerShell 7 232 passed and 36 + skipped). The command search still returned 4.2.6 minutes after + publishing, because the search index lagged. ## Stable capabilities @@ -77,14 +89,15 @@ next package starts only after the maintainer's go-ahead. **Restrict editing to collaborators only** for the wiki, and optionally ask `Sup3rlativ3` to delete the Read the Docs project. 4c. Version history from the PowerShell Gallery: done (#97). -4d. Release 5.0.0 through CI (Decision 12): PR-ready on `ai/release-5.0.0`. - Before the first tag, the maintainer creates the Gallery API key, the - environment `powershell-gallery`, and its secret `PSGALLERY_API_KEY` - (steps in `Docs/Contributing/05-Releasing.md`). Then: merge, tag - `5.0.0-rc1`, test the prerelease, check its Gallery tags and - `Find-Command`, and for the final release remove the label and date the - changelog section. Releases no longer come from a local build, so the - old manual steps (cleaning +4d. Release 5.0.0 through CI (Decision 12): 5.0.0-rc1 published and + verified (#98). Next: the maintainer tests the prerelease; recheck + `Find-PSResource -CommandName Get-NTFSAccess -Prerelease`, which should + list 5.0.0-rc1 once the Gallery index catches up. For the final release: + remove the label, rename `[Unreleased]` to `[5.0.0]` with the date, and + tag `5.0.0` (steps in `Docs/Contributing/05-Releasing.md`). Consider + changing the manifest `Description`, which says "Windows PowerShell + Module", before the final release. Releases no longer come from a local + build, so the old manual steps (cleaning `C:\Program Files\WindowsPowerShell\Modules\NTFSSecurity`, Debug builds) no longer apply. 5. Code defects, listed below: `review: on`, one PR per group, regression diff --git a/.memory-bank/techContext.md b/.memory-bank/techContext.md index 649cc21..7e299b5 100644 --- a/.memory-bank/techContext.md +++ b/.memory-bank/techContext.md @@ -65,12 +65,12 @@ source: repository evidence ## Constraints -- `ModuleVersion` on `master` is `5.0.0` (not released); the latest tag and - Gallery release is `4.2.6`. On `ai/release-5.0.0`, the manifest adds the - prerelease label `rc1`, so the next tag is `5.0.0-rc1`. The manifest - requires PowerShell 5.1 and .NET Framework 4.5.2, uses `RootModule`, and - lists exactly 36 cmdlets; `Test-ModuleManifest` passes in Windows - PowerShell 5.1 and PowerShell 7.6. +- `ModuleVersion` on `master` is `5.0.0` with the prerelease label `rc1`; + 5.0.0-rc1 is on the Gallery (published 2026-10-04 by CI). The latest + stable tag and Gallery release is `4.2.6`. The manifest requires + PowerShell 5.1 and .NET Framework 4.5.2, uses `RootModule`, and lists + exactly 36 cmdlets; `Test-ModuleManifest` passes in Windows PowerShell 5.1 + and PowerShell 7.6. - Besides the shipped help file and its tests (#93), the module source at `master` differs from tag `4.2.6` by the `Remove-Item2 -PassThur` to `-PassThru` rename (with a `-PassThur` alias), the manifest changes of