huntedbytheirs
|
b367f21d29
|
feat(binary): check zuur/binary package.lua version against constraints
|
2026-08-08 17:38:21 -04:00 |
|
huntedbytheirs
|
c876821cda
|
feat(index): fetch and sandbox-parse ZUUR index.lua
- Module tofu.index: download index via tofu.http.get, sandbox parse via Lua subprocess
- Whitelist sandbox (ported from ZETA lib/sandbox.lua): index code has zero I/O/exec access
- Lua 5.1/5.2+ compatible: setfenv detection with fallback to load() env param
- JSON escaping: handles quotes, backslashes, control characters in string values
- Defensive parsing: skips entries with empty names or invalid pool values
- 10 unittest blocks: happy path, malicious os.execute/io.open blocked, lua not found, bad JSON, empty index, missing name skip, invalid pool skip, syntax error, string escaping
- Evidence: 7 modules pass unittests, dub build passes with warnings-as-errors
|
2026-08-08 17:37:59 -04:00 |
|
huntedbytheirs
|
777de734f8
|
feat(http): add synchronous HTTP client with std.net.curl
|
2026-08-08 17:30:34 -04:00 |
|
huntedbytheirs
|
c545879115
|
feat(version): port rpm-style version comparison from ZETA
|
2026-08-08 17:22:06 -04:00 |
|
huntedbytheirs
|
348f0e3bac
|
feat(types): add core data structures
PackageIndex, Recipe, DepConstraint, BuildPlan, BuildResult, CacheManifest, BinaryCheckResult structs. Pool/BuildSystem/DepOp/Source enums. DepConstraint.parse() ported from ZETA vercmp.lua. TypesException for parsing errors. All @safe, all strings default to empty string.
|
2026-08-08 17:17:20 -04:00 |
|
huntedbytheirs
|
3fb03b23d7
|
feat(config): add env var and XDG TOML config loading
- Config struct with zuurUrl, cacheDir, zetaToolchainPath, zetaPath, defaultJobs
- Priority: env vars > TOML config file > hardcoded defaults
- Env vars: TOFU_ZUUR_URL, TOFU_CACHE_DIR, TOFU_ZETA_TOOLCHAIN_PATH,
TOFU_ZETA_PATH, TOFU_DEFAULT_JOBS, TOFU_CONFIG
- TOML [core] section parsing via toml package v1.0.0
- URL helpers: recipesUrl, binaryManifestUrl, indexUrl
- Cache path helpers: recipesCacheDir, builtDir, builtPackagesDir
- Malformed TOML → stderr warning + fallback to defaults
- 14 unittest blocks covering all config scenarios
- All tests pass: dub test → 3 modules passed unittests
|
2026-08-08 17:17:04 -04:00 |
|
huntedbytheirs
|
c331416623
|
feat(log): add colored NO_COLOR-aware logging
|
2026-08-08 17:16:50 -04:00 |
|
huntedbytheirs
|
b2d1df72f9
|
chore: scaffold dub project with TOML dep
|
2026-08-08 17:10:04 -04:00 |
|
huntedbytheirs
|
709bb310e1
|
Initial commit
|
2026-08-08 16:11:02 -04:00 |
|