Repository navigation
docs: close issue backlog batch 2 (FAQ #81/#82, architecture doc, commit footer) - #558
Merged
Merged
Conversation
The kcl-lang.io install-script CI failed on macOS because getLatestRelease() only used the GitHub REST /releases endpoint: on rate-limited CI runner egress (60 req/hr unauthenticated) the pipeline yields an empty tag, the script builds malformed download URLs, saves GitHub's 404 HTML page, and dies with a confusing 'tar: Unrecognized archive format'. Port the same hardening already applied to install-cli.sh (7c475a0, fixes #550): - getLatestRelease: three-layer discovery — follow the /releases/latest HTML redirect (no API rate limit), then REST /releases/latest, then the legacy /releases list. - main: reject an empty release tag with an actionable error showing the 'bash -s -- <version>' workaround. - downloadFile: reject an empty tag (defense in depth) and use 'curl -f' so HTTP errors fail the download instead of saving the error page. - installFile: sniff the artifact with 'tar -tzf' before unpacking so a non-gzip download reports a clear error instead of a tar failure.
…mit footer) - FAQ #81: string format member function and its Python-style format spec subset, with verified examples (closes #24) - FAQ #82: the kcl.yaml file list replaces CLI file args instead of merging with them (closes #90) - community/contribute/architecture.md: component dependency graph across the kcl / lib / kcl-go / kpm / cli repos (closes #485) - site: show the per-doc git commit hash next to the last-updated footer via a wrapped docs plugin (closes #93) EN + zh-CN synced; examples verified with kcl 0.12.10.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This was referenced Sep 25, 2026
…es, libkcl) The kcl-lang/kcl repo has been restructured: the compiler is now a set of kcl-* Rust crates (kcl-lib, kcl-sema, kcl-evaluator, kcl-parser, ...) and the shared library built by kcl-lib is libkcl.so/libkcl.dylib/kcl.dll shipped via kcl-lang/lib. The old kclvm/kclvm_cli/libkclvm_cli_cdylib names no longer exist.
…n docs
- rust-api.md (EN/zh): kclvm-runtime -> kcl-runtime
- rest-api.md (EN/zh): re-embed the complete service definition from the
current crates/api/spec.proto (was gpyrpc.proto under kclvm/; rpc set
and message fields have drifted, e.g. ValidateCodeArgs), update the
BuiltinService/KclService excerpts and the proto source link
- plugin/overview.md (EN/zh): kclvm-{parser,loader,evaluator,runtime}
-> kcl-* crates, matching the renamed Rust crates in kcl-lang/kcl
- zh go-api.md: relink all symbols from the removed kclvm.go to current
files/lines (mirroring the EN doc), KclvmAbiVersion -> KclAbiVersion,
drop the removed InitKclvmPath/InitKclvmRuntime sections
This branch was successfully deployed
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.
Batch 2 of the open-issue backlog cleanup (follow-up to #554). Verified with kcl 0.12.10; EN + zh-CN synced.
FAQ additions (
docs/user_docs/support/faq-kcl.md)formatmember function (closes [FAQ] All uses of string data type such asformatmember functions need to be clearly written in KCL documents like python format #24):{}/{0}/{name}placeholders,{{/}}escapes, and the supported subset of the Python format spec (:.2f,:10.3f,:+d,:05d,:x/:b/:o,:,,,:e,:%), plus the gaps — string alignment/precision are silently ignored and nested fields raiseInvalid format specifier.kcl.yamlfile:list vs compiled directory (closes [FAQ] What is the relationship between the *.k file contained in thekcl.yamland all *.k files contained in a file directory that kcl compiles? Will they be combined? #90): the list replaces CLI file/directory arguments instead of merging with them; relative paths resolve against the kcl.yaml directory;-Y /dev/nullrestores CLI-arg behavior; listing several files merges them into one program (duplicate immutable vars → E1001).Contributor docs
docs/community/contribute/architecture.mdmapping the kcl (Rust core) → lib → kcl-go → kpm/cli relationship, with a text diagram and a "where to send your PR" table.Site
@docusaurus/plugin-content-docs(src/plugins/docGitCommit.js) attaches each doc's git commit (short hash + commit URL) at build time, and a swizzledDocItem/Footerrenders it next to the existing "Last updated on … by …" line. Gracefully renders nothing when git info is unavailable (e.g. shallow clones).Test plan
npm run buildpasses (en + zh-CN, all versions)git log -1 --format=%hfor the page's source file (checked current + 0.11/0.10 + zh-CN pages)