Release v0.2.0#28
Merged
Merged
Conversation
…ication - Added a step to run tests in the release workflow. - Enabled recursive submodule checkout in the Rust CI workflow. - Expanded the test matrix to include additional OS configurations. - Cleaned up .gitignore by removing unnecessary entries. - Updated Makefile to include a new target for syncing package definitions. - Enhanced README and documentation for in-tree package repository usage. - Implemented prefix extraction from CLI commands for early config loading. - Improved package fetching with SHA-256 checksum verification for downloaded archives. - Added support for architecture-specific environment variables in package definitions. - Introduced a pure-Rust SHA-256 implementation for file integrity checks. - Updated package installation logic to handle source directories more robustly. - Enhanced symlink creation on Windows to handle both file and directory symlinks. - Updated submodule reference for tsi-packages to the latest commit.
…S SDK var expansion Co-Authored-By: claude-flow <ruv@ruv.net>
…tead -isystem $SDK/usr/include placed C headers ahead of libc++'s wrapper headers, breaking every C++ package (aria2, zeromq, icu) with "<cstdlib> tried including <stdlib.h> but didn't find libc++'s <stdlib.h>". SDKROOT gives clang the SDK with its default (correct) search order. Verified: zeromq 4.3.5 now builds and links. Co-Authored-By: claude-flow <ruv@ruv.net>
- xz2/bzip2 'static' features: vendored C sources linked statically, required for fully static musl release binaries - semver_compare: pre-release segments (rc1) sort below releases, with test - database: error on corrupted DB instead of silently resetting; upsert instead of skipping on re-register - uninstall: take the install lock - resolver: order build graph by runtime + build dependencies - fetch: re-verify SHA-256 of cached archives with one re-download retry; guard zip extraction against path traversal; sync git submodules on cache hit; recurse into symlinked dirs when copying - build: patch paths resolve under source dir; CPPFLAGS augmentation for make/custom builds; memoized macOS SDK lookup - doctor: warn instead of crash on unopenable database - config: default strict_isolation=true when tsi.toml is absent Co-Authored-By: claude-flow <ruv@ruv.net>
…aries New docker-tests.yml workflow: - build-binary: static x86_64/aarch64-musl binaries on native runners, with a statically-linked assertion (ldd) - container-tests: bare alpine/debian/ubuntu/fedora containers install only cc+make, then run a real 'tsi install bzip2' source build, verify, and uninstall (docker/e2e-test.sh) - no-tools-test: bare containers with nothing installed prove the binary has zero runtime deps and 'tsi install' fails gracefully without a toolchain (docker/no-tools-test.sh) Local docker/ scripts mirror CI (compose e2e-* services reuse a host binary); test-install.sh fixed for the tsi-packages submodule path and POSIX sh. Bump tsi-packages for the bzip2 target/sha256 fix the e2e depends on. All 8 e2e legs validated locally on arm64 (Alpine, Debian, Ubuntu, Fedora all 11/11; no-tools pass on bare Alpine + Debian). Co-Authored-By: claude-flow <ruv@ruv.net>
Linux artifacts switch to x86_64/aarch64-unknown-linux-musl (same artifact names, so tsi-bootstrap.sh keeps working) plus a cross-compiled armv7-unknown-linux-musleabihf leg matching bootstrap's detect_arch. Every Linux leg gains a static-linkedness verification step as a regression guard for the single-static-binary promise. Co-Authored-By: claude-flow <ruv@ruv.net>
x86_64-musl Rust binaries are static-PIE; glibc ldd reports them as 'statically linked', not 'not a dynamic executable', so the previous grep failed a correct binary. Check for zero NEEDED entries via readelf instead (docker-tests + release). test.yml/docs.yml triggered on 'develop', which doesn't exist — the active branch is 'dev'. Bump tsi-packages for the zlib 1.3.1 fix. Co-Authored-By: claude-flow <ruv@ruv.net>
Co-Authored-By: claude-flow <ruv@ruv.net>
When git is unavailable, download the package repo as a GitHub archive tarball with the built-in HTTP client (rustls, bundled roots) and extract it with the built-in tar support. Verified in a bare Alpine container without git: 'tsi update' + 'tsi install bzip2' both succeed. Non-GitHub --repo URLs without git get a clear actionable error. Co-Authored-By: claude-flow <ruv@ruv.net>
Co-Authored-By: claude-flow <ruv@ruv.net>
Package list with installed markers and incremental '/' filter, details pane, i/u install/uninstall via the exact CLI code paths (TUI suspends to stream real build output, resumes and refreshes state), j/k or arrow navigation, q quits. RAII terminal guard plus panic hook so the terminal is always restored; clean error when stdout is not a TTY; hint to run 'tsi update' when the registry is empty. Both new deps are pure Rust (no C linkage), preserving the static-binary promise. Co-Authored-By: claude-flow <ruv@ruv.net>
Links from docs pages to files outside docs/ can't resolve as doc targets; point them at GitHub instead. Unblocks the docs workflow, which never ran on dev until the branch-trigger fix. Co-Authored-By: claude-flow <ruv@ruv.net>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
tsi uiTUI, no-git tarball fallback fortsi update, docs fixesTest plan
v0.2.0on main to trigger the release build/publish workflow