58 lines
2.3 KiB
Markdown
58 lines
2.3 KiB
Markdown
# 1.0.0-beta.11 Local Package API Documentation
|
|
|
|
Status: release scope for `1.0.0-beta.11`.
|
|
|
|
`1.0.0-beta.11` extends the beta.10 API discovery lane. The release keeps the
|
|
`1.0.0-beta` source-language and runtime baseline unchanged while making local
|
|
package and module documentation show the public API surface users need to
|
|
review.
|
|
|
|
## Scope
|
|
|
|
- Extend `glagol doc <file|project|workspace> -o <dir>` so generated Markdown
|
|
includes deterministic exported/public API sections for local source files,
|
|
projects, packages, and workspaces.
|
|
- Render exact exported function signatures with parameter names, parameter
|
|
types, and return types.
|
|
- Render exported struct field names and field types.
|
|
- Render exported enum variant names and payload types for payloadless and
|
|
current single-payload variants.
|
|
- Keep non-exported functions, structs, enums, tests, and `(type ...)` aliases
|
|
out of the public API sections.
|
|
- Normalize module-local concrete aliases before rendering public types, so
|
|
private names such as `VecI32`, `OptionString`, or `ResultU64` do not leak
|
|
into local package/module public docs.
|
|
- Update README, language docs, compiler docs, and the post-beta roadmap to
|
|
describe the beta11 documentation contract clearly.
|
|
|
|
## Public Contract
|
|
|
|
The generated local documentation is a beta API discovery aid. It exposes what
|
|
the current local module/package export lists make public, with concrete public
|
|
types after alias normalization.
|
|
|
|
The public API sections are deterministic and suitable for human review, but
|
|
they are not a stable machine-readable Markdown schema. Headings, anchors, file
|
|
names, and surrounding prose remain beta-scoped unless a later release freezes
|
|
them explicitly.
|
|
|
|
## Explicit Non-Scope
|
|
|
|
- no stable Markdown schema
|
|
- no stable stdlib/API compatibility freeze
|
|
- no LSP server or watch mode
|
|
- no SARIF or daemon protocol
|
|
- no diagnostics schema policy
|
|
- no executable generics
|
|
- no maps or sets
|
|
- no re-exports, glob imports, or hierarchical modules
|
|
- no package registry semantics
|
|
- no new compiler-known runtime names
|
|
- no runtime helper or ABI/layout changes
|
|
|
|
## Checks
|
|
|
|
Focused checks for this slice:
|
|
|
|
- `git diff --check -- README.md docs/POST_BETA_ROADMAP.md docs/language/ROADMAP.md docs/language/RELEASE_NOTES.md docs/language/SPEC-v1.md docs/compiler/ROADMAP.md docs/compiler/RELEASE_NOTES.md .llm/BETA_11_LOCAL_PACKAGE_API_DOCUMENTATION.md`
|