@omnidist/omnidist-linux-x64 0.1.21 → 0.1.23

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 CHANGED
@@ -79,7 +79,8 @@ omnidist init
79
79
  This creates:
80
80
  - `.omnidist/omnidist.yaml`
81
81
  - `.omnidist/` workspace directories
82
- - `.omnidist/.gitignore` for generated artifacts
82
+
83
+ `omnidist init` writes profiles-mode config with a `default` profile.
83
84
 
84
85
  3. Edit config and set environment variables (optional):
85
86
 
@@ -95,7 +96,8 @@ $EDITOR .omnidist/omnidist.yaml
95
96
  omnidist build
96
97
  ```
97
98
 
98
- This also writes the resolved build version to `.omnidist/dist/VERSION`.
99
+ This also writes the resolved build version to `.omnidist/<profile>/dist/VERSION`
100
+ (`.omnidist/default/dist/VERSION` with init defaults).
99
101
 
100
102
  5. Stage and verify artifacts:
101
103
 
@@ -105,8 +107,9 @@ omnidist verify
105
107
  ```
106
108
 
107
109
  `omnidist uv stage` converts the resolved version to PEP 440 and writes
108
- `.omnidist/uv/pyproject.toml` with that version.
109
- It also recreates `.omnidist/uv/dist` to prevent stale wheel artifacts from previous runs.
110
+ `.omnidist/<profile>/uv/pyproject.toml` with that version.
111
+ It also recreates `.omnidist/<profile>/uv/dist` to prevent stale wheel artifacts from previous runs.
112
+ On first stage run, omnidist creates `.omnidist/.gitignore` (if missing).
110
113
 
111
114
  6. Publish when verification passes:
112
115
 
@@ -165,6 +168,9 @@ Supported variables:
165
168
 
166
169
  - `OMNIDIST_VERSION`: used only when `version.source: env`; also expanded in `build.ldflags` templates (for example `${OMNIDIST_VERSION}`).
167
170
  `VERSION` is not used.
171
+ - `OMNIDIST_CONFIG`: optional global config file path (same as `--config`).
172
+ - `OMNIDIST_PROFILE`: optional config profile name (same as `--profile`).
173
+ - `OMNIDIST_OMNIDIST_ROOT`: optional project root directory (same as `--omnidist-root`).
168
174
  - `OMNIDIST_GIT_COMMIT`: optional ldflags template variable for build metadata; populated automatically by `omnidist build` when git metadata is available.
169
175
  - `OMNIDIST_BUILD_DATE`: optional ldflags template variable for build metadata; populated automatically by `omnidist build` as UTC RFC3339.
170
176
  - `NPM_PUBLISH_TOKEN`: required for npm publish commands when not using `--dry-run`
@@ -174,6 +180,7 @@ Example `.env`:
174
180
 
175
181
  ```dotenv
176
182
  OMNIDIST_VERSION=1.2.3
183
+ OMNIDIST_PROFILE=release
177
184
  NPM_PUBLISH_TOKEN=npm_xxx
178
185
  UV_PUBLISH_TOKEN=pypi-xxx
179
186
  ```
@@ -182,6 +189,9 @@ UV_PUBLISH_TOKEN=pypi-xxx
182
189
 
183
190
  `.omnidist/omnidist.yaml`:
184
191
 
192
+ `omnidist init` now generates the profiles-mode shape (`profiles.default`) by default.
193
+ Legacy top-level format remains supported when loading config files.
194
+
185
195
  ```yaml
186
196
  tool:
187
197
  name: omnidist
@@ -224,6 +234,49 @@ distributions:
224
234
  include-readme: true # include project README.md in staged wheels when present
225
235
  ```
226
236
 
237
+ Profiles mode:
238
+
239
+ ```yaml
240
+ profiles:
241
+ default:
242
+ tool:
243
+ name: omnidist
244
+ main: ./cmd/omnidist
245
+ version:
246
+ source: env
247
+ targets:
248
+ - os: linux
249
+ arch: amd64
250
+ build:
251
+ ldflags: -s -w
252
+ tags: []
253
+ cgo: false
254
+ distributions:
255
+ npm:
256
+ package: "@scope/mytool"
257
+ uv:
258
+ package: mytool
259
+
260
+ release:
261
+ tool:
262
+ name: omnidist
263
+ main: ./cmd/omnidist
264
+ version:
265
+ source: fixed
266
+ fixed: 1.0.0
267
+ targets:
268
+ - os: linux
269
+ arch: amd64
270
+ build:
271
+ ldflags: -s -w
272
+ tags: []
273
+ cgo: false
274
+ ```
275
+
276
+ Select a profile with `--profile <name>` or `OMNIDIST_PROFILE`.
277
+ If `profiles` is present and no profile is provided, `default` is used.
278
+ Mixing top-level runtime fields and `profiles` in the same file is not supported.
279
+
227
280
  `targets` use Go values (`GOOS`/`GOARCH`). Distribution workflows map them as needed (for example `windows/amd64` -> npm `win32/x64`).
228
281
 
229
282
  For appkit version injection, configure `build.ldflags` in your project config:
@@ -245,6 +298,11 @@ With `version.source: env`, set `OMNIDIST_VERSION` (for example in `.env`) befor
245
298
 
246
299
  Use global `--omnidist-root <path>` to set the project root for a command. Omnidist resolves it to an absolute path at startup and changes working directory to it before loading `.env` and config.
247
300
 
301
+ Workspace behavior:
302
+ - Legacy config writes artifacts to `.omnidist/*`.
303
+ - Profiles config writes artifacts to `.omnidist/<profile>/*`.
304
+ - Isolation is by profile name. If different config files use the same profile name in the same repo, they share the same `.omnidist/<profile>` workspace.
305
+
248
306
  ## Command Reference
249
307
 
250
308
  Top-level:
@@ -260,6 +318,12 @@ Top-level:
260
318
  - `omnidist npm`
261
319
  - `omnidist uv`
262
320
 
321
+ Global flags:
322
+
323
+ - `--config <path>`
324
+ - `--profile <name>`
325
+ - `--omnidist-root <path>`
326
+
263
327
  NPM subcommands:
264
328
 
265
329
  - `omnidist npm stage [--dev]`
package/bin/omnidist CHANGED
Binary file
package/package.json CHANGED
@@ -16,5 +16,5 @@
16
16
  "os": [
17
17
  "linux"
18
18
  ],
19
- "version": "0.1.21"
19
+ "version": "0.1.23"
20
20
  }