Files
core/skills/references/libraries.md
T
2026-11-03 03:32:07 +00:00

2.2 KiB
Raw Blame History

标准库与依赖

标准库直接按包名调用,无需 import、下载或复制源码。参数和返回值查 签名,完整声明在安装根 lib/。

能力 包
文本、数字 text、int、decimal、float、math
标识、字节、时间 uuid、dever.id、dever.bytes、dever.time
密码与摘要 dever.crypto
JSON dever.json;普通 API/CMD 自动编解码
文件与网络 dever.io、dever.net、dever.http
请求与身份 dever.api、dever.auth、dever.site

Dever Package

Package 为可复用 Dever 组件,在 setting.json 的 package.registry/use 声明。使用 dever package add/update/remove/list/doctor 管理,dever.lock 固定版本和摘要,不能覆盖本地同名组件。

资源随 module// 发布。用 dever package export <root> <name> <相对子目录> --output <新目录> 导出:消费已验证锁和缓存,不联网或执行脚本;目标须不存在,父目录须存在且无符号链接。输出包含逐文件摘要,文件不保留执行位,前端构建和发布由调用方完成。

外部 Lib 与普通二进制

第三方生态依赖在 setting.json 根 lib 数组声明,由 Port/Adapter 使用。已有锁用 dever lib install <root> 恢复;当前 CLI 不提供 Lib add/update,不能伪造锁或借用系统解释器补缺失资源。

Port 定义输入、输出和错误;external exec/pip/npm/go 由匹配的 Worker SDK 执行。具体方法见 外部库。allow 声明能力,实际文件、网络和设备权限由运行环境控制,只执行可信代码。

普通二进制使用 command:

源码:Port

execute(args: List<Text>, stdin: Bytes?) (output: dever.process.Output) fails dever.process.Error

源码:Adapter

external command "bin/tool" {}

bin/tool 相对所属领域,须提供匹配目标的 ELF。参数直接传 argv,不经过 shell;输出含 code/stdout/stderr,非零退出码是正常结果。启动失败、超时或超限产生错误。普通测试使用 Port fake。