windowsweep 1.3.0 → 1.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +43 -6
- package/README.md +14 -13
- package/VERSION +1 -1
- package/lib/constants.ps1 +6 -5
- package/lib/log.ps1 +2 -2
- package/modules/release_helpers.ps1 +1 -3
- package/modules/runner.ps1 +4 -4
- package/package.json +1 -1
- package/windowsweep.ps1 +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -9,6 +9,42 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
|
9
9
|
|
|
10
10
|
## [Unreleased]
|
|
11
11
|
|
|
12
|
+
## [1.3.2] - 2026-09-28
|
|
13
|
+
|
|
14
|
+
No change to what is cleaned, how it is decided, or what is refused: the engine is 1.3.1's, file for file.
|
|
15
|
+
The version moves so the desktop app and the engine it bundles keep one number, and `desktop-v1.3.2` fixes
|
|
16
|
+
the app's Google sign-in.
|
|
17
|
+
|
|
18
|
+
### Changed
|
|
19
|
+
|
|
20
|
+
- **The version is 1.3.2, the desktop app's number.** The app bundles this engine and the two keep one number;
|
|
21
|
+
the app's 1.3.2 fixes its Google sign-in. No section, target, flag or protection changed.
|
|
22
|
+
|
|
23
|
+
## [1.3.1] - 2026-09-25
|
|
24
|
+
|
|
25
|
+
No change to what is cleaned, how it is decided, or what is refused. This release names the team as the
|
|
26
|
+
tool's maker instead of one person, and points the web address it prints at the product's own site.
|
|
27
|
+
|
|
28
|
+
### Changed
|
|
29
|
+
|
|
30
|
+
- **The maker lines name the team.** The end-of-run line, the walkthrough and the usage header read
|
|
31
|
+
*by the windowsweep team*; `--version` and the session log's header read `Author: The windowsweep team`.
|
|
32
|
+
- **The web address the tool prints is the product's own site**, `https://windowsweep.aoneahsan.com`,
|
|
33
|
+
instead of a personal site: the `Web:` row of `--version` and `--feedback`, the session log's header and
|
|
34
|
+
the walkthrough. The contact form lives there.
|
|
35
|
+
- **The report credits** keep their four keys and their string type, so a reader of `schema_version: 1`
|
|
36
|
+
keeps working: `author.name` is `the windowsweep team`, `author.website` is the product's site, and
|
|
37
|
+
`author.email` and `author.linkedin` are empty strings. A report written earlier keeps what it recorded.
|
|
38
|
+
- **The Email and LinkedIn rows of `--version` are gone**, and so is the email address in the usage
|
|
39
|
+
header and the session log's header. The address stays where it is a contact channel: the crash message
|
|
40
|
+
and `--feedback`.
|
|
41
|
+
|
|
42
|
+
### Fixed
|
|
43
|
+
|
|
44
|
+
- **The README's install-size row inside the 1.3.0 package** said 44 files and about 396 kB unpacked;
|
|
45
|
+
that package held 46 files and about 400 kB, because the two files 1.3.0 split out were never counted.
|
|
46
|
+
The row is measured from this package.
|
|
47
|
+
|
|
12
48
|
## [1.3.0] - 2026-09-17
|
|
13
49
|
|
|
14
50
|
No change to what is cleaned, how it is decided, or what is refused. This release moves one printed
|
|
@@ -20,9 +56,6 @@ version rows inside the published package.
|
|
|
20
56
|
- **The documentation address the tool carries is now the documentation site**,
|
|
21
57
|
`https://windowsweep-docs.aoneahsan.com`, instead of the README on GitHub. The site has served the
|
|
22
58
|
same pages over HTTPS since 2026-09-12.
|
|
23
|
-
|
|
24
|
-
### Internal
|
|
25
|
-
|
|
26
59
|
- **`lib/external.ps1`** takes `Invoke-External`, `Test-CommandPresent`, `Test-ProcessRunning`,
|
|
27
60
|
`Test-IsAdmin`, `Test-CanElevate` and `Invoke-Elevated` out of `lib/safety.ps1`, which is back under
|
|
28
61
|
500 lines. The deletion chokepoint stays where it was: running a process and raising privilege are a
|
|
@@ -30,9 +63,13 @@ version rows inside the published package.
|
|
|
30
63
|
- **`modules/self_test_contract.ps1`** takes self-test group [18] out of `modules/self_test_extra.ps1`,
|
|
31
64
|
same fixture, same checks. Both moves are verbatim, and each was watched failing on a planted defect
|
|
32
65
|
before it was believed.
|
|
33
|
-
- The self-test
|
|
34
|
-
|
|
35
|
-
|
|
66
|
+
- **The self-test grew by the two new files**, because groups [3] and [4] check every engine file by
|
|
67
|
+
name. No check was added, changed or removed - the suite is the same suite, counting one more file
|
|
68
|
+
twice.
|
|
69
|
+
|
|
70
|
+
### Fixed
|
|
71
|
+
|
|
72
|
+
- **The README at-a-glance rows inside the published package** were stale at 1.1.0 through the 1.2.0
|
|
36
73
|
cascade. They are correct here.
|
|
37
74
|
|
|
38
75
|
## [1.2.0] - 2026-09-08
|
package/README.md
CHANGED
|
@@ -36,14 +36,14 @@ It is the Windows member of a family with [linux-cleanup](https://github.com/aon
|
|
|
36
36
|
|
|
37
37
|
| | |
|
|
38
38
|
|---|---|
|
|
39
|
-
| **Version** | `1.3.
|
|
39
|
+
| **Version** | `1.3.2` |
|
|
40
40
|
| **License** | MIT |
|
|
41
41
|
| **Node** | `>=14` (launcher only) |
|
|
42
42
|
| **Runtime** | Windows PowerShell 5.1 (built in) or PowerShell 7 |
|
|
43
43
|
| **Platforms** | Windows 10 (1809+) and Windows 11 |
|
|
44
|
-
| **Install size** | ~
|
|
44
|
+
| **Install size** | ~120 kB packed · ~401 kB unpacked · 46 files · no dependencies |
|
|
45
45
|
| **Undo** | Recycle Bin for personal files; none for caches (they regenerate) |
|
|
46
|
-
| **Status** | Stable · 1.3.
|
|
46
|
+
| **Status** | Stable · 1.3.2, released 2026-09-28 |
|
|
47
47
|
|
|
48
48
|
<a id="table-of-contents"></a>
|
|
49
49
|
## 🧭 Table of Contents [#](#table-of-contents)
|
|
@@ -451,15 +451,16 @@ More: [FAQ](https://windowsweep-docs.aoneahsan.com/faq).
|
|
|
451
451
|
<a id="changelog"></a>
|
|
452
452
|
## 🔄 Changelog [#](#changelog)
|
|
453
453
|
|
|
454
|
-
Latest release: **`1.3.
|
|
455
|
-
|
|
456
|
-
project's own 500-line ceiling are split (the deletion chokepoint stays exactly where it was), and the
|
|
457
|
-
at-a-glance rows inside the published package are correct again.
|
|
454
|
+
Latest release: **`1.3.2`** - the engine is 1.3.1's, file for file. The version moves so the desktop app and
|
|
455
|
+
the engine it bundles keep one number, and the desktop app's 1.3.2 fixes its Google sign-in.
|
|
458
456
|
|
|
459
|
-
Before it, **`1.
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
457
|
+
Before it, **`1.3.1`** - nothing about what is cleaned, how it is decided or what is refused changed. The tool
|
|
458
|
+
names the windowsweep team as its maker instead of one person, and the web address it prints is the product's
|
|
459
|
+
own site.
|
|
460
|
+
|
|
461
|
+
Before that, **`1.3.0`** - the documentation address the tool carries became the documentation site, two files
|
|
462
|
+
that had grown past the project's own 500-line ceiling were split (the deletion chokepoint stayed exactly where
|
|
463
|
+
it was), and the at-a-glance rows inside the published package were corrected.
|
|
463
464
|
Full history: [CHANGELOG.md](https://github.com/aoneahsan/windowsweep/blob/main/CHANGELOG.md).
|
|
464
465
|
|
|
465
466
|
<a id="contributing"></a>
|
|
@@ -504,8 +505,8 @@ this tool deletes files, so review what it proposes before confirming.
|
|
|
504
505
|
<a id="author"></a>
|
|
505
506
|
## 👤 Author [#](#author)
|
|
506
507
|
|
|
507
|
-
**
|
|
508
|
-
[
|
|
508
|
+
**The windowsweep team** - [team page](https://windowsweep-docs.aoneahsan.com/about) ·
|
|
509
|
+
[contact form](https://windowsweep.aoneahsan.com/contact), after signing in
|
|
509
510
|
|
|
510
511
|
<a id="links"></a>
|
|
511
512
|
## 🔗 Links [#](#links)
|
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.3.
|
|
1
|
+
1.3.2
|
package/lib/constants.ps1
CHANGED
|
@@ -4,15 +4,16 @@
|
|
|
4
4
|
# Single source of truth for the version is package.json: the Node launcher exports it as
|
|
5
5
|
# WINDOWSWEEP_VERSION. A direct checkout falls back to this literal; the version:check script
|
|
6
6
|
# asserts the two never drift.
|
|
7
|
-
$Script:WS_VERSION_FALLBACK = '1.3.
|
|
7
|
+
$Script:WS_VERSION_FALLBACK = '1.3.2'
|
|
8
8
|
|
|
9
9
|
$Script:WS_NAME = 'windowsweep'
|
|
10
10
|
$Script:WS_TAGLINE = 'Developer-aware Windows cleanup CLI: dry-run first, personal folders refused, zero install via npx.'
|
|
11
|
-
|
|
11
|
+
# The maker is the team, never one person. WS_AUTHOR lands mid-line ("by the windowsweep team");
|
|
12
|
+
# WS_TEAM is the form a label shows standing alone ("Author: The windowsweep team").
|
|
13
|
+
$Script:WS_AUTHOR = 'the windowsweep team'
|
|
14
|
+
$Script:WS_TEAM = 'The windowsweep team'
|
|
12
15
|
$Script:WS_EMAIL = 'aoneahsan@gmail.com'
|
|
13
|
-
$Script:WS_WEB = 'https://aoneahsan.com'
|
|
14
|
-
$Script:WS_LINKEDIN = 'https://linkedin.com/in/aoneahsan'
|
|
15
|
-
$Script:WS_GITHUB = 'https://github.com/aoneahsan'
|
|
16
|
+
$Script:WS_WEB = 'https://windowsweep.aoneahsan.com'
|
|
16
17
|
$Script:WS_REPO = 'https://github.com/aoneahsan/windowsweep'
|
|
17
18
|
$Script:WS_ISSUES = 'https://github.com/aoneahsan/windowsweep/issues'
|
|
18
19
|
$Script:WS_NPM = 'https://www.npmjs.com/package/windowsweep'
|
package/lib/log.ps1
CHANGED
|
@@ -14,7 +14,7 @@ function Initialize-Log {
|
|
|
14
14
|
$header = @(
|
|
15
15
|
'# ============================================================'
|
|
16
16
|
"# $Script:WS_NAME v$(Get-ToolVersion) - session log"
|
|
17
|
-
"# Author: $Script:
|
|
17
|
+
"# Author: $Script:WS_TEAM"
|
|
18
18
|
"# Web: $Script:WS_WEB"
|
|
19
19
|
"# License: $Script:WS_LICENSE"
|
|
20
20
|
"# Started: $(Get-Date -Format 'yyyy-MM-dd HH:mm:ss zzz')"
|
|
@@ -106,7 +106,7 @@ function Save-Report {
|
|
|
106
106
|
schema_version = 1
|
|
107
107
|
credits = [ordered]@{
|
|
108
108
|
tool = $Script:WS_NAME; tool_version = (Get-ToolVersion); tool_homepage = $Script:WS_REPO; tool_license = $Script:WS_LICENSE
|
|
109
|
-
author = [ordered]@{ name = $Script:WS_AUTHOR; email =
|
|
109
|
+
author = [ordered]@{ name = $Script:WS_AUTHOR; email = ''; website = $Script:WS_WEB; linkedin = '' }
|
|
110
110
|
}
|
|
111
111
|
meta = [ordered]@{
|
|
112
112
|
started_at = $ws.Report.startedAt
|
|
@@ -5,10 +5,8 @@ function Show-Version {
|
|
|
5
5
|
Write-Host (" $Script:WS_NAME v$(Get-ToolVersion)")
|
|
6
6
|
Write-Host (" $Script:WS_TAGLINE")
|
|
7
7
|
Write-Host ''
|
|
8
|
-
Write-Host (" Author: $Script:
|
|
9
|
-
Write-Host (" Email: $Script:WS_EMAIL")
|
|
8
|
+
Write-Host (" Author: $Script:WS_TEAM")
|
|
10
9
|
Write-Host (" Web: $Script:WS_WEB")
|
|
11
|
-
Write-Host (" LinkedIn: $Script:WS_LINKEDIN")
|
|
12
10
|
Write-Host (" Source: $Script:WS_REPO")
|
|
13
11
|
Write-Host (" License: $Script:WS_LICENSE")
|
|
14
12
|
Write-Host ''
|
package/modules/runner.ps1
CHANGED
|
@@ -187,10 +187,10 @@ function Show-SessionSummary {
|
|
|
187
187
|
Write-Kv 'Duration:' (Format-Duration $secs)
|
|
188
188
|
$ran = @($ws.Report.steps | Where-Object { $_.status -in 'ran', 'dry-run' }).Count
|
|
189
189
|
$skipped = @($ws.Report.steps | Where-Object { $_.status -notin 'ran', 'dry-run' }).Count
|
|
190
|
-
# C-091: 'skipped' is every step that did not run, so it folds in REFUSED and FAILED as well as skipped.
|
|
191
|
-
# The label is kept deliberately - the exported report was aligned to this exact wording on purpose, and
|
|
192
|
-
# renaming both costs two surfaces and a stored artefact's vocabulary to buy a word. The fact lives here,
|
|
193
|
-
# beside the slot, so a reader of `9 / 2` can find out which.
|
|
190
|
+
# C-091: 'skipped' is every step that did not run, so it folds in REFUSED and FAILED as well as skipped.
|
|
191
|
+
# The label is kept deliberately - the exported report was aligned to this exact wording on purpose, and
|
|
192
|
+
# renaming both costs two surfaces and a stored artefact's vocabulary to buy a word. The fact lives here,
|
|
193
|
+
# beside the slot, so a reader of `9 / 2` can find out which.
|
|
194
194
|
Write-Kv 'Sections run / skipped:' "$ran / $skipped"
|
|
195
195
|
Write-Kv 'Log:' $ws.LogFile
|
|
196
196
|
$rep = Save-Report
|
package/package.json
CHANGED
package/windowsweep.ps1
CHANGED
|
@@ -103,7 +103,7 @@ OUTPUT
|
|
|
103
103
|
Logs: $($Script:WS.LogsDir)
|
|
104
104
|
Reports: $($Script:WS.ReportsDir)
|
|
105
105
|
|
|
106
|
-
$Script:WS_NAME v$v by $Script:WS_AUTHOR
|
|
106
|
+
$Script:WS_NAME v$v by $Script:WS_AUTHOR $Script:WS_WEB
|
|
107
107
|
$Script:WS_REPO - $Script:WS_LICENSE
|
|
108
108
|
"@
|
|
109
109
|
Write-Host $text
|