Unreleased changes¶
Changes that have landed on the main branch but are not yet part of a tagged release. These entries are assembled into the Changelog when the next release is published.
[UNRELEASED DRAFT]¶
Add an “Understanding the result” documentation page that defines each
LiteralizeResultfield, explains whenpreambleandbody_preambleare populated and that they must precedecodeto compile, and shows howwrap_in_file=Trueassembles those fields into output that compiles for you.Document the
variable_formargument with a “Binding the result to a variable” section that contrastsNewVariable,ExistingVariable, andBothVariableFormsand shows the output each produces.Group the documentation index into captioned “Guides”, “Reference”, and “Project / Development” sections, and correct the contributing guide to reference
prekhooks and theuv run --extra dev pytesttest command.Move the language-definition (extension) API reference out of the consumer-facing API reference page and into the
Languagesguide, co-locating theLanguageprotocol, theLanguageClsclass, the*FormatConfigbuilding blocks, andfixed_openwith the narrative “Custom language implementations” how-to that already explains them.Add a public
LiteralizeResult.sectionsaccessor (a tuple of the newFileSectiondataclass) that exposes the file regions of a multi-section language’swrap_in_file=Falseoutput, so a caller can compose each region into its own program template instead of parsing a language-internal marker. COBOL underjson_type=CJSONis the first such language, surfacing itsWORKING-STORAGEandPROCEDUREregions (named by theCobol.CJSON_WORKING_STORAGE_SECTION/Cobol.CJSON_PROCEDURE_SECTIONconstants); its CI round-trip helper now composes those regions directly rather than splicing into a wrapped program.Fold the resolution guidance for each exception into its class description (a “To resolve, …” sentence) and render the remaining stages of the “Common errors” documentation page with
autoexceptiondirectives instead of hand-maintained Cause / How-to-resolve tables, so each exception’s meaning and recommended fix are single-sourced fromliteralizer.exceptionsand can no longer drift between the page and the API reference.Generate the per-language heterogeneous-strategy support matrix in the documentation from the language registry at build time (rendered with the
sphinx-jinjaextension), so it can no longer drift from theheterogeneous_strategiesenum on each language class. This also corrects the previously stale matrix, which omitted several languages that now exposeRECORD.