hushrun 0.0.0-stage → 0.2.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/LICENSE.md +37 -0
- package/README.md +85 -2
- package/THIRD-PARTY-NOTICES.md +12237 -0
- package/bin/hushrun.js +157 -0
- package/package.json +36 -4
package/LICENSE.md
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# hushrun license
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 hushrun. All rights reserved.
|
|
4
|
+
|
|
5
|
+
This license covers hushrun ("the software"): its binaries, its installers and install script, its
|
|
6
|
+
npm packages, its container image, and its GitHub Actions and reusable workflow. hushrun is not
|
|
7
|
+
open source.
|
|
8
|
+
|
|
9
|
+
## What you may do
|
|
10
|
+
|
|
11
|
+
You may download, install and use the software free of charge, for any purpose, including
|
|
12
|
+
commercial use. You may keep the copies you need to do that: in a CI cache, in a package or
|
|
13
|
+
container registry you use, or in a repository of yours, such as the install script
|
|
14
|
+
`install-hushrun.sh`.
|
|
15
|
+
|
|
16
|
+
## What you may not do
|
|
17
|
+
|
|
18
|
+
Except as this license allows, you may not:
|
|
19
|
+
|
|
20
|
+
- copy the software;
|
|
21
|
+
- modify it, or make works based on it;
|
|
22
|
+
- reverse engineer, decompile or disassemble it, except where applicable law allows that despite
|
|
23
|
+
this limitation;
|
|
24
|
+
- redistribute, sell, rent, lend or sublicense it, or otherwise make it available to others.
|
|
25
|
+
|
|
26
|
+
## Open-source components
|
|
27
|
+
|
|
28
|
+
The software includes open-source components, listed with their licenses in
|
|
29
|
+
THIRD-PARTY-NOTICES.md. Each component is under its own license, and nothing in this license
|
|
30
|
+
limits the rights that license gives you.
|
|
31
|
+
|
|
32
|
+
## No warranty
|
|
33
|
+
|
|
34
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING THE
|
|
35
|
+
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT
|
|
36
|
+
WILL HUSHRUN BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR
|
|
37
|
+
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR ITS USE.
|
package/README.md
CHANGED
|
@@ -1,3 +1,86 @@
|
|
|
1
|
-
#
|
|
1
|
+
# hushrun
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
hushrun skips a check this exact code already passed: on your laptop, in CI and in an agent's
|
|
4
|
+
sandbox. This package puts its `hushrun` command on your PATH through npm.
|
|
5
|
+
|
|
6
|
+
## Set up a repository
|
|
7
|
+
|
|
8
|
+
At the repository's root:
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
npx hushrun init
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
`init` finds the checks in package.json's scripts, signs you in, shows the changes, and applies
|
|
15
|
+
them when you say yes: each check runs through `hushrun run`, and package.json gets hushrun
|
|
16
|
+
in devDependencies, so every teammate and CI job runs the same hushrun.
|
|
17
|
+
|
|
18
|
+
```json
|
|
19
|
+
"scripts": {
|
|
20
|
+
"test": "hushrun run -- vitest run"
|
|
21
|
+
}
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Run a check twice, and the second run skips:
|
|
25
|
+
|
|
26
|
+
```text
|
|
27
|
+
$ npm test
|
|
28
|
+
hushrun: test running: no pass yet for this exact code
|
|
29
|
+
… vitest's output …
|
|
30
|
+
hushrun: test passed in 41s; it won't run again on this code
|
|
31
|
+
$ npm test
|
|
32
|
+
hushrun: test skipped: this exact code passed just now (saves 41s)
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
A coding agent runs `npx hushrun init --yes`, which applies the changes without asking.
|
|
36
|
+
|
|
37
|
+
## How the package works
|
|
38
|
+
|
|
39
|
+
`hushrun` is a small Node script that runs the hushrun binary from the package for your
|
|
40
|
+
platform. That package is an optional dependency, so npm, pnpm, yarn and bun install only the
|
|
41
|
+
one that matches:
|
|
42
|
+
|
|
43
|
+
| Package | Platform |
|
|
44
|
+
|---|---|
|
|
45
|
+
| `@hushrun/cli-darwin-arm64` | macOS on Apple silicon |
|
|
46
|
+
| `@hushrun/cli-darwin-x64` | macOS on Intel |
|
|
47
|
+
| `@hushrun/cli-linux-arm64` | Linux on arm64 (static, any libc) |
|
|
48
|
+
| `@hushrun/cli-linux-x64` | Linux on x64 (static, any libc) |
|
|
49
|
+
| `@hushrun/cli-win32-arm64` | Windows on arm64 |
|
|
50
|
+
| `@hushrun/cli-win32-x64` | Windows on x64 |
|
|
51
|
+
|
|
52
|
+
Arguments, input and output pass through unchanged, and `hushrun` exits with the binary's exit
|
|
53
|
+
code, or by the same signal. It sets `HUSHRUN_NPM_PACKAGE` to `hushrun@<version>`, the package
|
|
54
|
+
`hushrun init` adds to devDependencies, unless it is already set.
|
|
55
|
+
|
|
56
|
+
An install that leaves out optional dependencies (`--omit=optional`, `--no-optional`) has no
|
|
57
|
+
binary, and `hushrun` says so. Where this package has no binary, `HUSHRUN_BINARY` names one to
|
|
58
|
+
run instead.
|
|
59
|
+
|
|
60
|
+
## Other installs
|
|
61
|
+
|
|
62
|
+
Without npm, on macOS and Linux:
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/hushrun/hushrun/releases/latest/download/hushrun-installer.sh | sh
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
On Windows:
|
|
69
|
+
|
|
70
|
+
```powershell
|
|
71
|
+
powershell -ExecutionPolicy Bypass -c "irm https://github.com/hushrun/hushrun/releases/latest/download/hushrun-installer.ps1 | iex"
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Update
|
|
75
|
+
|
|
76
|
+
At a terminal, hushrun says once a day when a newer release is out. Update this package with
|
|
77
|
+
your package manager, such as `npm install hushrun@latest`. `hushrun update` updates what the
|
|
78
|
+
installers above installed. To know, hushrun asks GitHub at most once a day, never in CI;
|
|
79
|
+
`HUSHRUN_NO_UPDATE_CHECK=1` turns that off.
|
|
80
|
+
|
|
81
|
+
## License
|
|
82
|
+
|
|
83
|
+
hushrun is free to use under the terms in
|
|
84
|
+
[LICENSE.md](https://github.com/hushrun/hushrun/blob/main/LICENSE.md), and isn't open source.
|
|
85
|
+
[THIRD-PARTY-NOTICES.md](https://github.com/hushrun/hushrun/blob/main/THIRD-PARTY-NOTICES.md)
|
|
86
|
+
lists the open-source crates it is built with, and their licenses. This package holds both files.
|