ghcr-manager 0.9.10 → 1.0.0

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.
Files changed (3) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +64 -16
  3. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -7,6 +7,29 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [v1.0.0] - 2026-06-05
11
+
12
+ `v1.0.0` is the first stable `v1.x` release of `ghcr-manager`.
13
+
14
+ This milestone reflects the current project shape after repeated live testing, cleanup-planner tuning, visualizer
15
+ refinement, and a full documentation pass.
16
+
17
+ ### Added
18
+
19
+ - Added one merged graph-scenario SQLite database to the GitHub release assets as
20
+ `ghcr-manager-release-scenarios.sqlite`, so users can explore real before/after cleanup cases immediately in the
21
+ visualizer.
22
+ - Added dedicated user docs for live test scenarios, package setup, and the workflow-to-visualizer path.
23
+
24
+ ### Changed
25
+
26
+ - The release workflow now builds and attaches the merged scenario DB as part of the GitHub release publish flow.
27
+ - Visualizer docs are now centered on one canonical `visualizer/README.md`, with richer screenshots and a release-asset
28
+ quick-demo path.
29
+ - README and companion docs now explain the stable action/CLI/visualizer workflows more directly, including permission
30
+ guidance for dry-runs versus live cleanup and explicit Node.js 24 requirements for local npm installs.
31
+ - Visualizer node labeling was clarified so manifest metadata is easier to interpret during graph inspection.
32
+
10
33
  ## [0.9.10] - 2026-06-04
11
34
 
12
35
  ### Changed
package/README.md CHANGED
@@ -5,13 +5,19 @@
5
5
  [![Immutable Releases](https://img.shields.io/badge/releases-immutable-blue?labelColor=333)](https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/immutable-releases)
6
6
  [![Tests](https://img.shields.io/github/actions/workflow/status/ghcr-manager/ghcr-manager/.github/workflows/ci_change-validation.yml?branch=main&label=test&style=flat-square)](https://github.com/ghcr-manager/ghcr-manager/actions/workflows/ci_change-validation.yml)
7
7
 
8
- Inspect, review, and manage GitHub Container Registry packages.
8
+ Inspect, analyze, and manage large GitHub Container Registry packages.
9
9
 
10
10
  `ghcr-manager` is a GitHub Action for:
11
11
 
12
- - scanning one GHCR package into a SQLite database artifact
13
- - running cleanup with a GitHub step summary and optional DB artifact
14
- - previewing cleanup decisions with `dry-run` before making changes
12
+ - scan GHCR packages: into SQLite database artifacts
13
+ - cleanup packages: with a GitHub step summary and optional DB artifact
14
+ - preview cleanup: with `dry-run` before making changes
15
+ - visualize graphs: and their changes with the
16
+ [visualizer](https://github.com/ghcr-manager/ghcr-manager/blob/main/visualizer/README.md)
17
+
18
+ ![Example compare view: red-bordered manifests are present in the older scan and removed in the newer one.](https://raw.githubusercontent.com/ghcr-manager/ghcr-manager/main/docs/images/visualizer/graph-2images-cosign--wide.png "Example compare view: red-bordered manifests are present in the older scan and removed in the newer one.")
19
+
20
+ _Example graph compare view: red-bordered manifests are present in the older scan and removed in the newer one._
15
21
 
16
22
  ## Quick Start
17
23
 
@@ -32,7 +38,7 @@ jobs:
32
38
 
33
39
  - name: Preview GHCR cleanup
34
40
  id: ghcr-manager
35
- uses: ghcr-manager/ghcr-manager@0.9.10
41
+ uses: ghcr-manager/ghcr-manager@v1.0.0
36
42
  with:
37
43
  command: cleanup
38
44
  token: ${{ github.token }}
@@ -46,6 +52,12 @@ jobs:
46
52
  upload-artifacts: true
47
53
  ```
48
54
 
55
+ > Permission notes:
56
+ >
57
+ > - `scan` and `cleanup` dry-runs need `packages: read`
58
+ > - live `cleanup` that mutates GHCR needs `packages: write`
59
+ > - artifact upload needs `actions: write`
60
+
49
61
  After the run:
50
62
 
51
63
  1. Open the GitHub step summary for the action run.
@@ -69,7 +81,7 @@ The action supports two commands:
69
81
  ### Preview cleanup
70
82
 
71
83
  ```yaml
72
- - uses: ghcr-manager/ghcr-manager@0.9.10
84
+ - uses: ghcr-manager/ghcr-manager@v1.0.0
73
85
  with:
74
86
  command: cleanup
75
87
  token: ${{ github.token }}
@@ -90,7 +102,7 @@ The action supports two commands:
90
102
  ### Apply cleanup
91
103
 
92
104
  ```yaml
93
- - uses: ghcr-manager/ghcr-manager@0.9.10
105
+ - uses: ghcr-manager/ghcr-manager@v1.0.0
94
106
  with:
95
107
  command: cleanup
96
108
  token: ${{ github.token }}
@@ -106,10 +118,13 @@ If `scan-after-cleanup` is `true`, `cleanup` performs a second scan so the uploa
106
118
 
107
119
  Note: the second scan only runs if cleanup actually makes changes.
108
120
 
121
+ Live cleanup permission note: change the workflow permission from `packages: read` to `packages: write` before turning
122
+ off `dry-run`.
123
+
109
124
  ### Scan one package
110
125
 
111
126
  ```yaml
112
- - uses: ghcr-manager/ghcr-manager@0.9.10
127
+ - uses: ghcr-manager/ghcr-manager@v1.0.0
113
128
  with:
114
129
  command: scan
115
130
  token: ${{ github.token }}
@@ -182,13 +197,46 @@ Current naming:
182
197
 
183
198
  ## Documentation Map
184
199
 
185
- - [GitHub Action usage](docs/action-usage.md): action commands, including `cleanup` and `scan`
186
- - [Visualizer](docs/visualizer.md): local graph inspection and scan-to-scan comparison
187
- - [Multi-package workflows](docs/db-merge-workflows.md): cleaning up multiple packages with one combined DB
188
- - [SQLite schema guide](docs/schema-description.md): practical explanation of the SQLite schema
189
- - [CLI usage](docs/cli-usage.md): companion CLI usage
200
+ - [GitHub Action usage](https://github.com/ghcr-manager/ghcr-manager/blob/main/docs/action-usage.md): action commands,
201
+ including `cleanup` and `scan`
202
+ - [Visualizer](https://github.com/ghcr-manager/ghcr-manager/blob/main/visualizer/README.md): local graph inspection and
203
+ scan-to-scan comparison
204
+ - [Multi-package workflows](https://github.com/ghcr-manager/ghcr-manager/blob/main/docs/db-merge-workflows.md): cleaning
205
+ up multiple packages with one combined DB
206
+ - [SQLite schema guide](https://github.com/ghcr-manager/ghcr-manager/blob/main/docs/schema-description.md): practical
207
+ explanation of the SQLite schema
208
+ - [CLI usage](https://github.com/ghcr-manager/ghcr-manager/blob/main/docs/cli-usage.md): companion CLI usage
209
+
210
+ ## Explore A Real Scenario DB
211
+
212
+ The release assets also include one merged SQLite DB from `ghcr-manager`'s live scenario workflows. You can use it as a
213
+ quick visualizer demo and as a compact way to inspect dozens of real cleanup and graph cases.
214
+
215
+ ```sh
216
+ curl -LO https://github.com/ghcr-manager/ghcr-manager/releases/latest/download/ghcr-manager-release-scenarios.sqlite
217
+ npx ghcr-manager-visualizer --db ./ghcr-manager-release-scenarios.sqlite
218
+ ```
219
+
220
+ For a first look in the visualizer, start with:
221
+
222
+ - owner: `ghcr-manager-test`
223
+ - package: select one with `2images` or `2multiarch` in the name
224
+ - tag search: `image` or `multiarch`
225
+
226
+ For more details, see
227
+ [visualizer/README.md](https://github.com/ghcr-manager/ghcr-manager/blob/main/visualizer/README.md).
228
+
229
+ ## Project
230
+
231
+ Main project and issue tracker:
232
+
233
+ - Repository: <https://github.com/ghcr-manager/ghcr-manager>
234
+ - Issues: <https://github.com/ghcr-manager/ghcr-manager/issues>
190
235
 
191
- ## Acknowledgment
236
+ ## Similar Tools
192
237
 
193
- This project was influenced by [dataaxiom/ghcr-cleanup-action](https://github.com/dataaxiom/ghcr-cleanup-action), with a
194
- similar problem focus and a different implementation approach.
238
+ - [ghcr-manager/ghcr-untag-action](https://github.com/ghcr-manager/ghcr-untag-action): focused tag removal without the
239
+ broader scan and cleanup workflow.
240
+ - [dataaxiom/ghcr-cleanup-action](https://github.com/dataaxiom/ghcr-cleanup-action): another GHCR cleanup action with a
241
+ similar problem focus.
242
+ - [mkoepf/ghcrctl](https://github.com/mkoepf/ghcrctl): CLI tooling for working with GHCR packages and graph deletions.
package/package.json CHANGED
@@ -10,7 +10,7 @@
10
10
  "url": "https://github.com/ghcr-manager/ghcr-manager"
11
11
  },
12
12
  "license": "MIT",
13
- "version": "0.9.10",
13
+ "version": "v1.0.0",
14
14
  "type": "module",
15
15
  "workspaces": [
16
16
  "visualizer"