@omnidist/omnidist 0.1.17 → 0.1.18
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 +4 -61
- package/package.json +6 -6
package/README.md
CHANGED
|
@@ -3,8 +3,10 @@
|
|
|
3
3
|
[](https://goreportcard.com/report/github.com/metalagman/omnidist)
|
|
4
4
|
[](https://github.com/metalagman/omnidist/actions/workflows/lint.yml)
|
|
5
5
|
[](https://github.com/metalagman/omnidist/actions/workflows/test.yml)
|
|
6
|
-
[](https://codecov.io/github/metalagman/omnidist)
|
|
7
7
|
[](https://github.com/metalagman/omnidist/releases)
|
|
8
|
+
[](https://www.npmjs.com/package/@omnidist/omnidist)
|
|
9
|
+
[](https://pypi.org/project/omnidist/)
|
|
8
10
|
[](LICENSE)
|
|
9
11
|
|
|
10
12
|
Run your Go CLI everywhere with `npx` and `uvx`, without requiring Go on end-user machines.
|
|
@@ -13,25 +15,7 @@ Run your Go CLI everywhere with `npx` and `uvx`, without requiring Go on end-use
|
|
|
13
15
|
|
|
14
16
|
Release flow: `build -> stage -> verify -> publish` so users can run your tool from JavaScript and Python ecosystems out of the box.
|
|
15
17
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
- One release system for JavaScript and Python package ecosystems
|
|
19
|
-
- Run Go binaries via `npx`/`uvx` on machines without a Go runtime
|
|
20
|
-
- Install once with npm: `npm i -g <package>`
|
|
21
|
-
- Publish wheel artifacts to PyPI-compatible indexes with uv
|
|
22
|
-
- No install-time download scripts for npm
|
|
23
|
-
- Reproducible, CI-friendly flow from a single config file
|
|
24
|
-
|
|
25
|
-
## How It Works
|
|
26
|
-
|
|
27
|
-
`omnidist` supports two additive backends:
|
|
28
|
-
|
|
29
|
-
- `npm`:
|
|
30
|
-
- meta package (for example `@scope/tool`) with shim and `optionalDependencies`
|
|
31
|
-
- platform packages (for example `@scope/tool-linux-x64`) with prebuilt binaries
|
|
32
|
-
- `uv`:
|
|
33
|
-
- per-target platform wheel artifacts in `.omnidist/uv/dist/`
|
|
34
|
-
- one wheel per configured target with embedded binary in `<pkg>/bin/`
|
|
18
|
+
For project background, packaging model details, migration notes, and contributor-oriented repo layout, see [CONTRIBUTING.md](CONTRIBUTING.md).
|
|
35
19
|
|
|
36
20
|
## Requirements
|
|
37
21
|
|
|
@@ -388,44 +372,3 @@ export OMNIDIST_VERSION=2.0.0
|
|
|
388
372
|
omnidist npm stage
|
|
389
373
|
omnidist uv stage
|
|
390
374
|
```
|
|
391
|
-
|
|
392
|
-
## Migration Guide (npm -> dual backend)
|
|
393
|
-
|
|
394
|
-
1. Pull latest `omnidist` and run `omnidist init` in a clean branch to get uv defaults in config.
|
|
395
|
-
2. Keep existing `distributions.npm` unchanged.
|
|
396
|
-
3. Add/update `distributions.uv` values:
|
|
397
|
-
- `package` for wheel distribution name
|
|
398
|
-
- `index-url` for target registry
|
|
399
|
-
- `linux-tag` policy (`manylinux2014` default)
|
|
400
|
-
4. Extend CI pipeline with uv stage/verify gates (see next section).
|
|
401
|
-
5. Release both backends in the same version cycle.
|
|
402
|
-
|
|
403
|
-
This is additive: npm support remains first-class and is not deprecated.
|
|
404
|
-
|
|
405
|
-
## CI and Release Flow (Dual Backend)
|
|
406
|
-
|
|
407
|
-
Recommended release sequence:
|
|
408
|
-
|
|
409
|
-
1. `omnidist build`
|
|
410
|
-
2. `omnidist stage`
|
|
411
|
-
3. `omnidist verify`
|
|
412
|
-
4. `omnidist publish`
|
|
413
|
-
|
|
414
|
-
For CI verification-only jobs, run steps 1-3.
|
|
415
|
-
|
|
416
|
-
When you need distribution-specific publish options (`npm --tag/--otp/--registry`, `uv --publish-url/--token`), use `omnidist npm ...` and `omnidist uv ...` subcommands directly.
|
|
417
|
-
|
|
418
|
-
## Project Layout
|
|
419
|
-
|
|
420
|
-
```text
|
|
421
|
-
cmd/omnidist/ CLI entrypoint and commands
|
|
422
|
-
internal/config/ Config model and YAML load/save
|
|
423
|
-
internal/workflow/ build/init/npm/uv workflows
|
|
424
|
-
.omnidist/omnidist.yaml Project configuration
|
|
425
|
-
.omnidist/.gitignore Ignore rules for generated artifacts
|
|
426
|
-
.omnidist/dist/ Built binaries by os/arch
|
|
427
|
-
.omnidist/dist/VERSION Version captured at build time
|
|
428
|
-
.omnidist/npm/ Staged npm packages
|
|
429
|
-
.omnidist/uv/pyproject.toml UV staging project with PEP 440 version
|
|
430
|
-
.omnidist/uv/dist/ Staged wheel artifacts
|
|
431
|
-
```
|
package/package.json
CHANGED
|
@@ -12,11 +12,11 @@
|
|
|
12
12
|
],
|
|
13
13
|
"name": "@omnidist/omnidist",
|
|
14
14
|
"optionalDependencies": {
|
|
15
|
-
"@omnidist/omnidist-darwin-arm64": "0.1.
|
|
16
|
-
"@omnidist/omnidist-darwin-x64": "0.1.
|
|
17
|
-
"@omnidist/omnidist-linux-arm64": "0.1.
|
|
18
|
-
"@omnidist/omnidist-linux-x64": "0.1.
|
|
19
|
-
"@omnidist/omnidist-win32-x64": "0.1.
|
|
15
|
+
"@omnidist/omnidist-darwin-arm64": "0.1.18",
|
|
16
|
+
"@omnidist/omnidist-darwin-x64": "0.1.18",
|
|
17
|
+
"@omnidist/omnidist-linux-arm64": "0.1.18",
|
|
18
|
+
"@omnidist/omnidist-linux-x64": "0.1.18",
|
|
19
|
+
"@omnidist/omnidist-win32-x64": "0.1.18"
|
|
20
20
|
},
|
|
21
|
-
"version": "0.1.
|
|
21
|
+
"version": "0.1.18"
|
|
22
22
|
}
|