@metalagman/semverctl-linux-arm64 0.0.11 → 0.0.12
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/README.md +90 -30
- package/bin/semverctl +0 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
# semverctl
|
|
2
2
|
|
|
3
3
|
[](https://goreportcard.com/report/github.com/metalagman/semverctl)
|
|
4
|
-
[](https://github.com/metalagman/semverctl/actions/workflows/test.yml)
|
|
4
|
+
[](https://github.com/metalagman/semverctl/actions/workflows/ci.yml)
|
|
6
5
|
[](https://codecov.io/github/metalagman/semverctl)
|
|
7
6
|
[](https://github.com/metalagman/semverctl/releases)
|
|
8
7
|
[](https://www.npmjs.com/package/@metalagman/semverctl)
|
|
@@ -25,52 +24,70 @@ CLI for bumping and setting SemVer values in JSON/YAML files and Git tags
|
|
|
25
24
|
- ⚡ **Zero Dependencies** - Pure Go implementation with no runtime dependencies
|
|
26
25
|
- 📦 **Multiple Distribution Channels** - Go install, npm, uv/PyPI, and GitHub Releases
|
|
27
26
|
|
|
28
|
-
##
|
|
27
|
+
## Usage
|
|
29
28
|
|
|
30
|
-
###
|
|
29
|
+
### Quickstart
|
|
31
30
|
|
|
32
31
|
```bash
|
|
33
|
-
|
|
32
|
+
# Install globally
|
|
33
|
+
npm i -g @metalagman/semverctl@latest
|
|
34
|
+
|
|
35
|
+
# Bump patch version in package.json
|
|
36
|
+
semverctl bump file package.json
|
|
37
|
+
|
|
38
|
+
# Bump minor version in Helm Chart.yaml
|
|
39
|
+
semverctl bump file Chart.yaml --minor
|
|
40
|
+
|
|
41
|
+
# Create a new git tag for the next release
|
|
42
|
+
semverctl bump tag --push
|
|
34
43
|
```
|
|
35
44
|
|
|
36
|
-
###
|
|
45
|
+
### Node.js (package.json)
|
|
37
46
|
|
|
38
47
|
```bash
|
|
39
|
-
|
|
48
|
+
# Bump patch in package.json
|
|
49
|
+
semverctl bump file package.json
|
|
40
50
|
|
|
41
|
-
#
|
|
42
|
-
|
|
43
|
-
|
|
51
|
+
# Bump major version for a breaking change
|
|
52
|
+
semverctl bump file package.json --major
|
|
53
|
+
|
|
54
|
+
# Preview what would change without modifying the file
|
|
55
|
+
semverctl bump file package.json --minor --dry-run
|
|
44
56
|
```
|
|
45
57
|
|
|
46
|
-
###
|
|
58
|
+
### Helm (Chart.yaml)
|
|
59
|
+
|
|
60
|
+
Helm Charts have two version fields: `version` (the chart version) and `appVersion` (the version of the application contained in the chart).
|
|
47
61
|
|
|
48
62
|
```bash
|
|
49
|
-
|
|
63
|
+
# Bump the Chart version (default .version path)
|
|
64
|
+
semverctl bump file Chart.yaml --patch
|
|
50
65
|
|
|
51
|
-
#
|
|
52
|
-
|
|
53
|
-
|
|
66
|
+
# Bump the appVersion explicitly
|
|
67
|
+
semverctl bump file Chart.yaml --minor --path appVersion
|
|
68
|
+
|
|
69
|
+
# Preview Helm chart changes
|
|
70
|
+
semverctl bump file Chart.yaml --major --dry-run
|
|
54
71
|
```
|
|
55
72
|
|
|
56
|
-
###
|
|
73
|
+
### Git Tags
|
|
57
74
|
|
|
58
|
-
|
|
75
|
+
Create and push tags for your releases.
|
|
59
76
|
|
|
60
77
|
```bash
|
|
61
|
-
#
|
|
62
|
-
|
|
63
|
-
chmod +x semverctl
|
|
64
|
-
sudo mv semverctl /usr/local/bin/
|
|
78
|
+
# Create and push the next patch tag (e.g., v1.0.1)
|
|
79
|
+
semverctl bump tag --push
|
|
65
80
|
|
|
66
|
-
#
|
|
67
|
-
|
|
68
|
-
|
|
81
|
+
# Create the next minor tag (e.g., v1.1.0) without pushing
|
|
82
|
+
semverctl bump tag --minor
|
|
83
|
+
|
|
84
|
+
# Preview tag creation
|
|
85
|
+
semverctl bump tag --major --dry-run
|
|
69
86
|
```
|
|
70
87
|
|
|
71
|
-
|
|
88
|
+
### CLI Reference
|
|
72
89
|
|
|
73
|
-
|
|
90
|
+
#### Bump File Version
|
|
74
91
|
|
|
75
92
|
Bump the semantic version in a specific JSON or YAML file:
|
|
76
93
|
|
|
@@ -92,7 +109,7 @@ semverctl bump file package.json --dry-run
|
|
|
92
109
|
semverctl bump file package.json --dry-run --json
|
|
93
110
|
```
|
|
94
111
|
|
|
95
|
-
|
|
112
|
+
#### Set File Version
|
|
96
113
|
|
|
97
114
|
Set an explicit version value in a specific file:
|
|
98
115
|
|
|
@@ -110,7 +127,7 @@ semverctl set file 1.0.0 package.json --dry-run
|
|
|
110
127
|
semverctl set file 1.2.3 package.json --json
|
|
111
128
|
```
|
|
112
129
|
|
|
113
|
-
|
|
130
|
+
#### Bump Tag
|
|
114
131
|
|
|
115
132
|
Bump from the latest stable git tag (`vX.Y.Z`) and create a new annotated tag:
|
|
116
133
|
|
|
@@ -131,7 +148,7 @@ semverctl bump tag --push
|
|
|
131
148
|
semverctl bump tag --dry-run --json
|
|
132
149
|
```
|
|
133
150
|
|
|
134
|
-
|
|
151
|
+
#### Set Tag
|
|
135
152
|
|
|
136
153
|
Create an explicit annotated git tag:
|
|
137
154
|
|
|
@@ -150,7 +167,7 @@ semverctl set tag 2.1.0 --push
|
|
|
150
167
|
semverctl set tag 2.1.0 --json
|
|
151
168
|
```
|
|
152
169
|
|
|
153
|
-
|
|
170
|
+
#### Numeric Bump
|
|
154
171
|
|
|
155
172
|
For object-style version fields (e.g., `{ "Major": 1, "Minor": 2, "Patch": 3 }`),
|
|
156
173
|
you can bump numeric scalar values:
|
|
@@ -161,6 +178,49 @@ semverctl bump file config.json --numeric --path .version.Patch
|
|
|
161
178
|
|
|
162
179
|
This increments the numeric value at the specified path by 1.
|
|
163
180
|
|
|
181
|
+
## Installation
|
|
182
|
+
|
|
183
|
+
### Go
|
|
184
|
+
|
|
185
|
+
```bash
|
|
186
|
+
go install github.com/metalagman/semverctl/cmd/semverctl@latest
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
### npm (Node.js)
|
|
190
|
+
|
|
191
|
+
```bash
|
|
192
|
+
npx @metalagman/semverctl version
|
|
193
|
+
|
|
194
|
+
# Or install globally
|
|
195
|
+
npm install -g @metalagman/semverctl
|
|
196
|
+
semverctl version
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
### uv/Pip (Python)
|
|
200
|
+
|
|
201
|
+
```bash
|
|
202
|
+
uvx semverctl version
|
|
203
|
+
|
|
204
|
+
# Or install
|
|
205
|
+
uv pip install semverctl
|
|
206
|
+
semverctl version
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
### Pre-built Binaries
|
|
210
|
+
|
|
211
|
+
Download pre-built binaries from [GitHub Releases](https://github.com/metalagman/semverctl/releases):
|
|
212
|
+
|
|
213
|
+
```bash
|
|
214
|
+
# Linux/macOS
|
|
215
|
+
curl -L https://github.com/metalagman/semverctl/releases/latest/download/semverctl-linux-amd64 -o semverctl
|
|
216
|
+
chmod +x semverctl
|
|
217
|
+
sudo mv semverctl /usr/local/bin/
|
|
218
|
+
|
|
219
|
+
# Verify checksum (recommended)
|
|
220
|
+
curl -L https://github.com/metalagman/semverctl/releases/latest/download/checksums.txt -o checksums.txt
|
|
221
|
+
sha256sum -c checksums.txt
|
|
222
|
+
```
|
|
223
|
+
|
|
164
224
|
## Path Syntax
|
|
165
225
|
|
|
166
226
|
Paths use dot notation to navigate nested structures:
|
package/bin/semverctl
CHANGED
|
Binary file
|
package/package.json
CHANGED