panrelease 0.14.0 → 0.15.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.
- package/README.md +65 -12
- package/package.json +4 -6
- package/pkg/panrelease.js +28 -28
- package/pkg/panrelease_bg.wasm +0 -0
- package/pkg/panrelease_bg.wasm.d.ts +1 -1
package/README.md
CHANGED
|
@@ -1,20 +1,43 @@
|
|
|
1
|
-
# Panrelease
|
|
1
|
+
# Panrelease (Node.js)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://www.npmjs.com/package/panrelease)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
4
5
|
|
|
5
|
-
|
|
6
|
+
**Panrelease** is a versatile release automation tool that manages version bumping, changelog updates, and Git operations. This package provides the Node.js implementation of Panrelease, powered by WebAssembly, allowing it to run seamlessly in any Node.js environment without requiring a Rust installation.
|
|
6
7
|
|
|
7
|
-
|
|
8
|
-
|
|
8
|
+
## Features
|
|
9
|
+
|
|
10
|
+
- **Semantic Versioning** - Automatic major, minor, patch, and post-release version bumping.
|
|
11
|
+
- **Node.js Native Support** - Direct support for `package.json` and lockfiles (`package-lock.json`, `yarn.lock`, `pnpm-lock.yaml`).
|
|
12
|
+
- **Changelog Automation** - Updates `CHANGELOG.md` following [Keep a Changelog](https://keepachangelog.com/) format.
|
|
13
|
+
- **Git Integration** - Commits version changes, creates tags, and supports GPG signing.
|
|
14
|
+
- **Monorepo Friendly** - Can manage multiple modules in a single project.
|
|
15
|
+
- **WebAssembly Powered** - Fast and consistent execution across different platforms.
|
|
16
|
+
|
|
17
|
+
## Installation
|
|
18
|
+
|
|
19
|
+
Install as a development dependency in your project:
|
|
20
|
+
|
|
21
|
+
### npm
|
|
22
|
+
```bash
|
|
23
|
+
npm install --save-dev panrelease
|
|
9
24
|
```
|
|
10
25
|
|
|
11
|
-
|
|
26
|
+
### yarn
|
|
27
|
+
```bash
|
|
28
|
+
yarn add --dev panrelease
|
|
29
|
+
```
|
|
12
30
|
|
|
13
|
-
|
|
14
|
-
|
|
31
|
+
### pnpm
|
|
32
|
+
```bash
|
|
33
|
+
pnpm add --save-dev panrelease
|
|
15
34
|
```
|
|
16
35
|
|
|
17
|
-
|
|
36
|
+
## Quick Start
|
|
37
|
+
|
|
38
|
+
### 1. Configure Panrelease
|
|
39
|
+
|
|
40
|
+
Create a `.panproject.toml` file in your project root:
|
|
18
41
|
|
|
19
42
|
```toml
|
|
20
43
|
[vcs]
|
|
@@ -23,14 +46,44 @@ software = "Git"
|
|
|
23
46
|
[modules.root]
|
|
24
47
|
path = "."
|
|
25
48
|
packageManager = "Npm"
|
|
49
|
+
main = true
|
|
26
50
|
```
|
|
27
51
|
|
|
28
|
-
Add
|
|
52
|
+
### 2. Add a Script to package.json
|
|
29
53
|
|
|
30
54
|
```json
|
|
31
55
|
{
|
|
32
56
|
"scripts": {
|
|
33
|
-
"
|
|
57
|
+
"release": "panrelease"
|
|
34
58
|
}
|
|
35
59
|
}
|
|
36
|
-
```
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### 3. Run a Release
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
# Release a new patch version (e.g., 1.0.0 -> 1.0.1)
|
|
66
|
+
npm run release -- patch
|
|
67
|
+
|
|
68
|
+
# Or run directly via npx
|
|
69
|
+
npx panrelease minor
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Commands
|
|
73
|
+
|
|
74
|
+
| Command | Description | Example |
|
|
75
|
+
|---------|-------------|---------|
|
|
76
|
+
| `patch` | Increment patch version | `1.0.0` -> `1.0.1` |
|
|
77
|
+
| `minor` | Increment minor version | `1.0.0` -> `1.1.0` |
|
|
78
|
+
| `major` | Increment major version | `1.0.0` -> `2.0.0` |
|
|
79
|
+
| `post` | Create post-release (build metadata) | `1.0.0` -> `1.0.0+r1` |
|
|
80
|
+
| `show` | Show current project version | `panrelease show` |
|
|
81
|
+
| `<version>` | Set explicit version | `panrelease 2.1.0` |
|
|
82
|
+
|
|
83
|
+
## Documentation
|
|
84
|
+
|
|
85
|
+
For full configuration options, advanced features like **hooks**, and **strict mode**, please refer to the [Main Repository Documentation](https://github.com/dghilardi/panrelease#readme).
|
|
86
|
+
|
|
87
|
+
## License
|
|
88
|
+
|
|
89
|
+
This project is licensed under the MIT License - see the [LICENSE](https://github.com/dghilardi/panrelease/blob/main/LICENSE) file for details.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "panrelease",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.15.0",
|
|
4
4
|
"description": "Utility to release software",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cli",
|
|
@@ -17,12 +17,10 @@
|
|
|
17
17
|
"publishConfig": {
|
|
18
18
|
"registry": "https://registry.npmjs.org"
|
|
19
19
|
},
|
|
20
|
-
"main": "
|
|
20
|
+
"main": "pkg/panrelease.js",
|
|
21
21
|
"license": "MIT",
|
|
22
22
|
"bin": {
|
|
23
23
|
"panrelease": "bin/index.js"
|
|
24
24
|
},
|
|
25
|
-
"scripts": {
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
}
|
|
25
|
+
"scripts": {}
|
|
26
|
+
}
|
package/pkg/panrelease.js
CHANGED
|
@@ -186,13 +186,12 @@ function debugString(val) {
|
|
|
186
186
|
// TODO we could test for more things here, like `Set`s and `Map`s.
|
|
187
187
|
return className;
|
|
188
188
|
}
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
}
|
|
189
|
+
/**
|
|
190
|
+
* @param {Array<any>} js_args
|
|
191
|
+
*/
|
|
192
|
+
module.exports.run = function(js_args) {
|
|
193
|
+
wasm.run(addHeapObject(js_args));
|
|
194
|
+
};
|
|
196
195
|
|
|
197
196
|
function handleError(f, args) {
|
|
198
197
|
try {
|
|
@@ -201,12 +200,13 @@ function handleError(f, args) {
|
|
|
201
200
|
wasm.__wbindgen_exn_store(addHeapObject(e));
|
|
202
201
|
}
|
|
203
202
|
}
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
203
|
+
|
|
204
|
+
function passArray8ToWasm0(arg, malloc) {
|
|
205
|
+
const ptr = malloc(arg.length * 1, 1) >>> 0;
|
|
206
|
+
getUint8Memory0().set(arg, ptr / 1);
|
|
207
|
+
WASM_VECTOR_LEN = arg.length;
|
|
208
|
+
return ptr;
|
|
209
|
+
}
|
|
210
210
|
|
|
211
211
|
const ReifyRunArgsFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
212
212
|
? { register: () => {}, unregister: () => {} }
|
|
@@ -233,11 +233,15 @@ module.exports.__wbindgen_object_drop_ref = function(arg0) {
|
|
|
233
233
|
takeObject(arg0);
|
|
234
234
|
};
|
|
235
235
|
|
|
236
|
-
module.exports.
|
|
237
|
-
|
|
238
|
-
|
|
236
|
+
module.exports.__wbg_cwd_6cc81e58cbab7b00 = function(arg0) {
|
|
237
|
+
const ret = cwd();
|
|
238
|
+
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
239
|
+
const len1 = WASM_VECTOR_LEN;
|
|
240
|
+
getInt32Memory0()[arg0 / 4 + 1] = len1;
|
|
241
|
+
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
|
|
242
|
+
};
|
|
239
243
|
|
|
240
|
-
module.exports.
|
|
244
|
+
module.exports.__wbg_log_c142934b4d83fb0c = function(arg0, arg1) {
|
|
241
245
|
console.log(getStringFromWasm0(arg0, arg1));
|
|
242
246
|
};
|
|
243
247
|
|
|
@@ -250,12 +254,16 @@ module.exports.__wbindgen_string_get = function(arg0, arg1) {
|
|
|
250
254
|
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
|
|
251
255
|
};
|
|
252
256
|
|
|
257
|
+
module.exports.__wbg_writeFileSync_06704cc76fb5e237 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
|
|
258
|
+
writeFileSync(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3));
|
|
259
|
+
}, arguments) };
|
|
260
|
+
|
|
253
261
|
module.exports.__wbindgen_error_new = function(arg0, arg1) {
|
|
254
262
|
const ret = new Error(getStringFromWasm0(arg0, arg1));
|
|
255
263
|
return addHeapObject(ret);
|
|
256
264
|
};
|
|
257
265
|
|
|
258
|
-
module.exports.
|
|
266
|
+
module.exports.__wbg_execSync_31508369da459cc5 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
|
|
259
267
|
let deferred0_0;
|
|
260
268
|
let deferred0_1;
|
|
261
269
|
try {
|
|
@@ -271,20 +279,12 @@ module.exports.__wbg_execSync_3821530c3c68494c = function() { return handleError
|
|
|
271
279
|
}
|
|
272
280
|
}, arguments) };
|
|
273
281
|
|
|
274
|
-
module.exports.
|
|
282
|
+
module.exports.__wbg_existsSync_c76d43a4bbcc6150 = function() { return handleError(function (arg0, arg1) {
|
|
275
283
|
const ret = existsSync(getStringFromWasm0(arg0, arg1));
|
|
276
284
|
return ret;
|
|
277
285
|
}, arguments) };
|
|
278
286
|
|
|
279
|
-
module.exports.
|
|
280
|
-
const ret = cwd();
|
|
281
|
-
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
282
|
-
const len1 = WASM_VECTOR_LEN;
|
|
283
|
-
getInt32Memory0()[arg0 / 4 + 1] = len1;
|
|
284
|
-
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
|
|
285
|
-
};
|
|
286
|
-
|
|
287
|
-
module.exports.__wbg_readFileSync_59db60323489d25b = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
|
|
287
|
+
module.exports.__wbg_readFileSync_09ba85d465f2bf5c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
|
|
288
288
|
const ret = readFileSync(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
|
|
289
289
|
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
290
290
|
const len1 = WASM_VECTOR_LEN;
|
package/pkg/panrelease_bg.wasm
CHANGED
|
Binary file
|
|
@@ -5,5 +5,5 @@ export function __wbg_reifyrunargs_free(a: number): void;
|
|
|
5
5
|
export function run(a: number): void;
|
|
6
6
|
export function __wbindgen_malloc(a: number, b: number): number;
|
|
7
7
|
export function __wbindgen_realloc(a: number, b: number, c: number, d: number): number;
|
|
8
|
-
export function __wbindgen_free(a: number, b: number, c: number): void;
|
|
9
8
|
export function __wbindgen_exn_store(a: number): void;
|
|
9
|
+
export function __wbindgen_free(a: number, b: number, c: number): void;
|