v0.7.0 Release Notes
Released
v0.6.0 -> v0.7.0
Summary
Rebrands the project as HakoRun and makes an embedded store the default, moving the previous store behind a build flag. Extends sandboxed execution to macOS and fixes resource caps that never took effect. Documentation is regenerated around the self-hosted FaaS positioning.
翻譯
專案更名為 HakoRun,預設改用內嵌儲存,原儲存後端改由建置旗標啟用。沙箱執行擴展至 macOS,並修正資源上限從未生效的問題。文件依自架 FaaS 定位重新產生。
⚠️ Breaking Changes
Module path renamed to github.com/pardnchiu/HakoRun
Before:
module github.com/pardnchiu/go-faas
After:
module github.com/pardnchiu/HakoRun
Migration:
git remote set-url origin https://github.com/pardnchiu/HakoRun.git
git pull
翻譯
Go module 路徑改為 github.com/pardnchiu/HakoRun;既有 clone 需更新 remote。專案僅含 main 與 internal package,無外部 import 需修改。
Default script store switched from Redis to ToriiDB
Before: every build connected to Redis via REDIS_* and stored scripts there.
After: the default build stores scripts in ToriiDB at ~/.config/pardnchiu/hakorun; Redis is used only when built with -tags redis. Scripts already in Redis are not visible to the default build.
Migration:
# keep using existing Redis data
make build redis # go build -tags redis -o bin/hako ./cmd/api
# or move to ToriiDB: re-upload each script with POST /upload on the default build
make build
翻譯
預設儲存由 Redis 改為 ToriiDB(~/.config/pardnchiu/hakorun),Redis 僅在 -tags redis 建置時使用;既有 Redis 中的腳本在預設建置下看不到。要沿用 Redis 資料請以 make build redis 建置,否則需在預設建置下重新上傳腳本。
package.json removed; TypeScript dependencies installed manually
Before: npm install in the repo installed esbuild.
After: the repo has no package.json.
Migration:
npm install -g tsx typescript esbuild
npm install esbuild # in the project root, resolved by the TypeScript wrapper
翻譯
移除 package.json,TypeScript 執行需求改為手動安裝:全域 tsx、typescript、esbuild,以及專案根目錄的本地 esbuild。
Changes
BREAKING
- Rename the Go module to
github.com/pardnchiu/HakoRunand the build output tobin/hako(@pardnio) [81c18d6, 73d5f02] - Switch the default script store to ToriiDB behind a shared backend interface; Redis via
-tags redis(@pardnio) [81c18d6, 73d5f02] - Remove
package.json; TypeScript runtime dependencies are installed manually (@pardnio) [3b5ef44]
翻譯
- Go module 改名為
github.com/pardnchiu/HakoRun,建置產物改為bin/hako - 預設儲存改為 ToriiDB 並抽出共用 backend 介面;Redis 改由
-tags redis啟用 - 移除
package.json,TypeScript 執行依賴改為手動安裝
FEAT
- Add macOS support: sandbox scripts with a
sandbox-execseatbelt profile, with no-op dependency check and slice setup on darwin (@pardnio) [78cfbf7]
翻譯
- 新增 macOS 支援:以
sandbox-execseatbelt profile 隔離腳本,darwin 上相依檢查與 slice 建立為 no-op
FIX
- Name the systemd slice unit
hakorun.slicesoMAX_CPUS/MAX_MEMORYcaps are actually loaded; the oldgo-faas-slicefile lacked the.slicesuffix and was ignored by systemd (@pardnio) [81c18d6, 78cfbf7]
翻譯
- systemd slice 單元改名為
hakorun.slice,讓MAX_CPUS/MAX_MEMORY上限確實生效;舊檔go-faas-slice缺.slice副檔名,systemd 不會載入
ADD
- Add a
Makefilewithbuild/run/testtargets and aredisswitch (@pardnio) [81c18d6, 73d5f02]
翻譯
- 新增
Makefile,提供build/run/test目標與redis切換
CHORE
- Require Go 1.25; add
github.com/pardnchiu/ToriiDB, dropgithub.com/joho/godotenv(@pardnio) [73d5f02] - Update
.gitignoreand removecover.png(@pardnio) [73d5f02, 04d0a6b, 3b5ef44]
翻譯
- 要求 Go 1.25;新增
github.com/pardnchiu/ToriiDB,移除github.com/joho/godotenv - 更新
.gitignore並移除cover.png
Scope
go.mod,go.sum— BREAKING, CHOREcmd/api/— BREAKINGinternal/database/— BREAKING (database.go,toriidb.go,redis.go,backend_toriidb.go,backend_redis.go)internal/sandbox/— FEAT, FIX (multiple files)internal/checker/— FEAT (checker.go,checker_darwin.go)internal/handler/,internal/router.go— BREAKINGMakefile— ADDpackage.json,package-lock.json— BREAKINGREADME.md,doc/— DOC.gitignore,.env.example,cover.png— CHORE
Generated by SKILL