Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions governance/naming.toml
Original file line number Diff line number Diff line change
Expand Up @@ -930,6 +930,45 @@ that would let it be a free function. This is the input and output divergence re
"""
rename_count = { python = 0, typescript = 0 }

[[entry]]
concept = "load the schema prose"
python = ""
typescript = "SchemaBundle.loadProse"
kind = "divergent"
divergence_reason = """
JavaScript deduplicates every memo and note of all seventeen schemas into one side file the
manifests carry indices into, and reads it on demand. Python has no counterpart because it needs
none: it ships the full schemas on disk and reads `note` and `memo` straight off the field record
it already holds, so there is nothing to load and no moment at which to load it.

The same divergence as `SchemaBundle.load` against `get_schema`, and for the same reason. The
prose is roughly 175 KB the parse path never touches, and a reader who only parses a model should
not pay for a sentence of English. Keeping the fetch separate is what lets the parse path stay
unaware the pool exists.

Not a capability difference: `describe_object_type` reports the same prose in both languages, and
the corpus compares a digest over every memo and note of all 858 types. Only the moment of loading
differs.
"""
rename_count = { python = 0, typescript = 0 }

[[entry]]
concept = "the schema prose already loaded"
python = ""
typescript = "SchemaBundle.prose"
kind = "divergent"
divergence_reason = """
The synchronous half of `SchemaBundle.loadProse`, and the counterpart of `SchemaBundle.loaded`.
Python needs neither: its prose is on the record it already holds.

It exists because every reader of prose in JavaScript is synchronous. `describeObjectType` takes a
pool rather than fetching one, and every answer in `@idfkit/language` is a pure function so an
editor server can answer a cursor without holding a thread. A consumer loads once when a document
arrives and reads here on the request path. Without the pair it would either await inside a path it
keeps synchronous or build a second cache beside the one the bundle already has.
"""
rename_count = { python = 0, typescript = 0 }

[[entry]]
concept = "the supported version list"
python = "ENERGYPLUS_VERSIONS"
Expand Down
Loading