Skip to content

onlyworlds 0.44.0

Choose a tag to compare

@github-actions github-actions released this 24 Oct 10:56
· 120 commits to main since this release
  • onlyworlds.spine, the spine profile's first reader (schema-dist profiles/spine.md, serial 55; OW Spine #614): a world that maps a software ecosystem, in the 22 types and nothing more. read_spine_element(type, element) reads one element (a body or a FolderElement) and returns a SpineRead: its kind (the closed list's spelling, off-list for a listed type whose supertype is off its list or empty and for every type the list does not name, free for a Character, an Institution or a Collective), each x_spine_* key as read or None when not stated (address, truth, access, status, layer, audience and its primary, depends_on, the probe's verb or unsupported, the verified date), and every value it left out, named in dropped; as_dict() gives the fixture's shape. Supertypes and machine values are compared trimmed (Unicode White_Space, exactly) and by Unicode simple case folding, the room profile's definition and is_room_element's helpers, never str.strip() or str.casefold(). SPINE_KINDS (exported, as ROOM_PAIRS is) is generated from the page's table into _schema.py and checked against the fixture's cases at generation; the key value lists (SPINE_ACCESS, SPINE_STATUSES, SPINE_LAYERS, SPINE_AUDIENCE, SPINE_PROBE_VERBS, SPINE_FREE_TYPES) are typed in the module and tested against the page's rows. All 34 fixture cases read as their read block. Not done here, as the page says: the world's audit (one owner per row, a depends_on id resolving, a Retirement Event), running a probe, and the calendar: the fixture's six calendar steps are the npm SDK's kernel's (4.70.0) to check, and this package has none. One choice past the reference reader: a verified at must be a real day (2026-02-30 is not stated, and dropped).
  • Schema repinned to schema-dist v0.33.0-dist.55 (from dist.54; same canonical 00.33.00, no schema file moved). The one serial adds profiles/spine.md and profiles/spine.fixture.json (34 cases, six calendar steps) and the README's profiles row; _schema.py gains SPINE_KINDS and moves its provenance lines (SCHEMA_DIST_TAG, SCHEMA_DIST_SERIAL 55, SCHEMA_MANIFEST_SHA256). Tree from git archive of the tag (commit 2937031); MANIFEST sha256 7b4db33d... matched against the raw file GitHub serves at the tag. FORMAT_VERSION stays 0.3.18.
  • The PyPI page links the docs, the source, the issues and this changelog ([project.urls]; until now it linked nothing, so a person with a bug had no door from it).