Skip to content

Commit 1868156

Browse files
committed
Release v1.0.0
1 parent 8a4686b commit 1868156

6 files changed

Lines changed: 74 additions & 2 deletions

File tree

.plans/woolly-napping-ritchie.md

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# Plan: Fix uvx fallback for tenzir-node
2+
3+
## Problem
4+
5+
The current uvx fallback for `tenzir-node` runs `uvx tenzir-node`, but `tenzir-node` is not a standalone package—it's a script within the `tenzir` package. The correct command is:
6+
7+
```bash
8+
uvx --from tenzir tenzir-node
9+
```
10+
11+
## Solution
12+
13+
Modify `_resolve_binary()` in `src/tenzir_test/config.py` to use `--from tenzir` syntax for `tenzir-node`:
14+
15+
**Current code (line 51-52):**
16+
17+
```python
18+
if shutil.which("uvx"):
19+
return ("uvx", binary_name)
20+
```
21+
22+
**Updated code:**
23+
24+
```python
25+
if shutil.which("uvx"):
26+
if binary_name == "tenzir-node":
27+
return ("uvx", "--from", "tenzir", "tenzir-node")
28+
return ("uvx", binary_name)
29+
```
30+
31+
## Files to Modify
32+
33+
1. **`src/tenzir_test/config.py`** (line 51-52)
34+
- Update `_resolve_binary()` to use `--from tenzir` for `tenzir-node`
35+
36+
2. **`tests/test_config.py`** (line 64)
37+
- Change expected value from `("uvx", "tenzir-node")` to `("uvx", "--from", "tenzir", "tenzir-node")`
38+
39+
3. **`.docs/src/content/docs/reference/test-framework/index.mdx`** (line 568)
40+
- Change `uvx tenzir-node` to `uvx --from tenzir tenzir-node`
41+
42+
4. **`.docs/src/content/docs/guides/testing/write-tests.mdx`** (line 18)
43+
- Change `uvx tenzir-node` to `uvx --from tenzir tenzir-node`
44+
45+
## Verification
46+
47+
1. Run unit tests: `uv run pytest tests/test_config.py -v`
48+
2. Test manually with uvx available but no tenzir-node in PATH
49+
50+
## Commit & Push
51+
52+
After verification, commit and push changes in both repositories:
53+
54+
1. **Main repo** (`$PWD`): Commit code and test changes
55+
2. **Docs repo** (`$PWD/.docs`): Commit documentation changes

changelog/unreleased/auto-detect-tenzir-binary-with-uvx-fallback.md renamed to changelog/releases/v1.0.0/entries/auto-detect-tenzir-binary-with-uvx-fallback.md

File renamed without changes.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
created: 2026-01-23
2+
title: Automatic Binary Detection
3+
intro: >-
4+
This release introduces automatic binary detection with a clear precedence order:
5+
environment variables take priority, followed by PATH lookup, with `uvx` as fallback.
6+
Environment variables now support multi-part commands for full control over binary
7+
invocation. The `--tenzir-binary` and `--tenzir-node-binary` CLI flags have been
8+
removed in favor of environment variables.

changelog/releases/v1.0.0/notes.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
This release introduces automatic binary detection with a clear precedence order: environment variables take priority, followed by PATH lookup, with `uvx` as fallback. Environment variables now support multi-part commands for full control over binary invocation. The `--tenzir-binary` and `--tenzir-node-binary` CLI flags have been removed in favor of environment variables.
2+
3+
## 💥 Breaking changes
4+
5+
### Auto-detect Tenzir binary with uvx fallback
6+
7+
Binary detection now follows a consistent precedence order: environment variable `TENZIR_BINARY` takes priority, followed by a PATH lookup, with `uvx` as the final fallback. The same logic applies to `TENZIR_NODE_BINARY`. Environment variables now support multi-part commands like `TENZIR_BINARY="uvx tenzir"`, giving you full control over how binaries are invoked. The `--tenzir-binary` and `--tenzir-node-binary` CLI flags have been removed in favor of environment variables, which provide more flexibility and clarity.
8+
9+
*By @mavam and @claude in #7.*

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "tenzir-test"
3-
version = "0.15.0"
3+
version = "1.0.0"
44
description = "Reusable test execution framework extracted from the Tenzir repository."
55
readme = "README.md"
66
requires-python = ">=3.12"

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)