Repository navigation
docs: 契约同步到 #1643 合并后的 preview 提交 - #8
Merged
Merged
Conversation
上次同步固定在 9175bd734(#1595)。之后 preview 上有三个 PR 改了契约: #1617 独立编辑器高亮与动作 API、#1581 插件注入的工具链、#1643 契约链接修复。 现同步到 589116e30,副本从 57 个文件增加到 76 个;README 的契约文件表 补上 toolchains.md 和 proposals/toolchains/。
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.
上次同步(#7)固定在 1lck/Lithe-IDEA
9175bd734(#1595)。之后 preview 上有三个 PR 改了契约,本 PR 把契约同步到 1lck/Lithe-IDEA#1643 合并后的 preview 提交589116e30。1. 契约同步(
contract/v1、contract.lock.json)运行
node scripts/contract.mjs sync --revision 589116e30d3bdbf72c9695f8ff18a952c7da33ac,副本从 57 个文件增加到 76 个。按来源 PR 分:languages2:语言可以声明grammar(kind指定高亮引擎,path指向包内的 Monarch 语法文件)和configuration(行注释、块注释等编辑器配置)。editor.actions:后端注册独立的编辑器动作;需要backend2 和documents.read,只授权editor/registerActions,不授权编辑文档。README 新增“Independent editor actions (protocol version 3)”一节。plugin.grammar.invalid、plugin.grammar.unavailable。editor-actions.plugin.json、language-grammar.plugin.json、grammars/http.monarch.json;function-protocol.json、invalid-manifests.json补了对应用例。toolchains.md:工具定义(toolDefinitions1)、版本管理器提供方(toolchainProviders1)、toolchains.*Core 命令、查询与回复校验、目录固定值、四层解析和版本匹配;executableResolution2 只作用于工具定义的候选,不改变现有构建候选。toolchains.failureReply生成标准错误回复,解析结果里记为providerUnavailable,并用cause区分两种情况。proposals/toolchains/:完整设计草案,包括还没实现的部分,里面的示例只用于评审。plugin-manifest.schema.json加入两项新贡献的 schema;新 fixturetool-definition.plugin.json、toolchain-provider.plugin.json。proposals/toolchains/README.md里指向fixtures/目录的链接改成代码文本。这条链接曾让 #1581 合并后的同步被拒。2. README 契约文件表
补上
toolchains.md和proposals/toolchains/两行。状态按toolchains.md的说法写:只有 macOS 设置页以只读方式接入,构建、运行和语言服务器还不使用解析结果。已知问题(需要在主仓库修)
契约
README.md里关于工具链的几处说明还停留在 #1581 之前:“Neither native host advertises or integrates this foundation yet”、文件表里的 “native hosts are not connected”、能力表里的 “native adapters are not connected”。而toolchains.md已经写明 macOS 设置页以只读方式接入。副本按规定逐字节同步,不在这里改,要在主仓库修复后再同步一次。没有改的
plugin_function.rs),Node 和 Java SDK 也还没有处理toolchains/query的辅助接口。验证(本地)
node scripts/contract.mjs verify --upstream:76 个文件与589116e30一致。node scripts/contract.mjs drift --ref preview:无漂移。node --test scripts/*.test.mjs:15 个全部通过。