@zackees/soldr 0.8.17 → 0.8.19

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.
Files changed (2) hide show
  1. package/README.md +32 -0
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -240,6 +240,38 @@ files touched. What you get over `build-backend = "maturin"`:
240
240
  - **Compilation caching** — rustc invocations run under soldr's
241
241
  `RUSTC_WRAPPER`, so repeat builds hit the cache.
242
242
 
243
+ Local PEP 517 builds use a lightweight `dev` profile by default: line-table
244
+ debug information, no LTO, and incremental compilation. Explicit maturin/Cargo
245
+ profiles and `SOLDR_PEP517_PROFILE` remain authoritative; release pipelines
246
+ should select their release profile explicitly.
247
+
248
+ Projects whose packaging backend is not maturin can use soldr as a managed
249
+ wrapper by selecting a delegate in `pyproject.toml`:
250
+
251
+ ```toml
252
+ [build-system]
253
+ requires = ["soldr", "setuptools>=64"]
254
+ build-backend = "soldr"
255
+
256
+ [tool.soldr.pep517]
257
+ delegate-backend = "setuptools.build_meta"
258
+ ```
259
+
260
+ The delegate receives the normal PEP 517/660 hooks and return values while
261
+ soldr supplies its target, profile, linker, and cache environment. This is
262
+ intended for projects with custom staging such as native CLI scripts plus a
263
+ PyO3 extension. Maturin remains the default when no delegate is configured.
264
+ The same explicit profile settings work for delegates as for maturin; for
265
+ example, `pip install . --config-settings profile=release` selects the
266
+ release profile, while an ordinary install uses the fast local `dev` profile.
267
+
268
+ The backend also asks soldr to try its fastest supported linker locally. If
269
+ that linker fails with a linker-availability error, soldr retries once with
270
+ the platform linker and remembers the successful fallback in its cache. An
271
+ equivalent later build uses the fallback immediately and prints a warning.
272
+ Set `SOLDR_PEP517_LINKER=none` to disable this policy. An explicit
273
+ `SOLDR_LINKER=fast` is treated as a deliberate choice: it reports the failure
274
+ without silently downgrading to the system linker.
243
275
  Note: soldr's own wheel is built with plain `build-backend = "maturin"`,
244
276
  not with itself — using soldr as its own build backend created a
245
277
  bootstrap cycle where a broken installed soldr made the fix in this
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zackees/soldr",
3
- "version": "0.8.17",
3
+ "version": "0.8.19",
4
4
  "description": "Instant Rust tools and builds from one command.",
5
5
  "license": "BSD-3-Clause",
6
6
  "homepage": "https://github.com/zackees/soldr",