Skip to content

Commit 8d0fdfb

Browse files
authored
Merge pull request #48 from Unified-Projects/dev
elease 0.3.0 with auto runtime resolution and executor lifecycle hard…
2 parents eb8d51f + 28dc711 commit 8d0fdfb

File tree

25 files changed

+2830
-703
lines changed

25 files changed

+2830
-703
lines changed

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,21 @@ All notable changes to this project will be documented in this file.
44

55
## [Unreleased]
66

7+
## [0.3.0] - 2026-03-09
8+
9+
### Changed
10+
- **Automatic official runtime resolution**: Added `URT_AUTO_RUNTIME` (default `true`) to normalize official OpenRuntimes shorthands and resolve empty or mismatched official runtime requests to the newest verified runtime family based on the requested image, entrypoint, and build command.
11+
- **Runtime lifecycle reconciliation**: Runtime create, command, and log paths now re-adopt managed containers, clean stale runtime IDs before recreation, and tolerate brief create/log races instead of failing immediately with conflicts or missing-runtime errors.
12+
- **Network and protocol routing**: Runtime startup now advertises the executor hostname consistently for legacy and modern images, attaches containers to all configured networks, and routes protocol traffic through the runtime network host with a fallback to the container name.
13+
- **Build cache and storage handling**: Build cache scopes now include Dockerfiles and build args, cache cleanup prefers the oldest manifest `created` timestamp, and local/S3 storage listing now walks nested cache entries so cleanup sees full cache trees.
14+
- **Build and response log handling**: Modern runtime log streaming now follows generated `logging/logs.txt` and `timings.txt` output, waits for asynchronous log flushes, truncates oversized build logs to executor limits, and preserves legacy execution header formatting for clients older than `0.11.0`.
15+
16+
### Fixed
17+
- **Portable tar extraction**: Replaced GNU-only tar extraction flags with BusyBox-compatible `--no-same-permissions -o` handling.
18+
- **Build source hardening**: Build context packaging is now deterministic, skips symlinks, and rejects tarballs that attempt path traversal or link-based escapes during extraction.
19+
- **Docker startup resilience**: Container creation now retries after pulling missing images and treats duplicate network-attach responses as non-fatal.
20+
- **Shutdown and maintenance cleanup**: Shutdown now removes per-runtime temp directories, keep-alive mode still cleans idle runtimes without a keep-alive ID, and maintenance removes untracked managed containers.
21+
722
## [0.2.0] - 2026-02-25
823

924
### Changed

Cargo.lock

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ members = [
66
]
77

88
[workspace.package]
9-
version = "0.2.0"
9+
version = "0.3.0"
1010
edition = "2021"
1111
authors = ["Unified Runtimes Contributors"]
1212
license = "MIT"

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,7 @@ All configuration is via environment variables. URT variables take priority over
9696
| `URT_MIN_MEMORY` | `0` | Minimum memory (MB) override |
9797
| `URT_MAX_BODY_SIZE` | `20MB` | Maximum request body size |
9898
| `URT_RUNTIMES` | `` | Comma-separated allowlist of runtime images (falls back to `OPR_EXECUTOR_IMAGES`) |
99+
| `URT_AUTO_RUNTIME` | `true` | Auto-resolve official OpenRuntimes shorthands and command mismatches to the newest verified runtime family, bypassing runtime allowlist pinning for official images |
99100
| `URT_CONNECTION_STORAGE` | `local://localhost` | Storage DSN for builds |
100101
| `URT_CACHE_CLEANUP_ON_SHUTDOWN` | `false` | If true, purge local download cache during shutdown |
101102

0 commit comments

Comments
 (0)