Skip to content

add single-file packaging (fun pack) and bundled-app runtime - #23

Merged
funlang merged 9 commits into
mainfrom
feat-single-file-pack
Oct 19, 2026
Merged

funlang merged 9 commits into
mainfrom
feat-single-file-pack

Conversation

@taadis

@taadis taadis commented Oct 19, 2026

Copy link
Copy Markdown
Collaborator

支持单文件打包:funcmd pack 把项目打成一个可执行文件,普通 funcmd/脚本运行不受影响。

例子:
funcmd pack foo.fun -o foo # 单个脚本 → 一个 foo 可执行文件
funcmd pack main.fun -o dist/app -a public # 带静态站/图片等资源

范围:入口 + 递归 use 依赖 + use ':file' as id 内嵌文件自动带上;资源用 -a
声明(目录递归);未声明的不进包;旧产物自动跳过。argv
语义不变(1.arg()=入口、2.arg()=第一个真实参数)。

v0:STORE 不压缩、CRC=0(外部 unzip 会告警);只扫字面量 use。

验证:新增跨平台 e2e(打包→运行→校验);mac 89/89、Linux arm64 93/93,Windows 由 CI 覆盖。

@funlang
funlang merged commit a5a99b1 into main Oct 19, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants