0.165.x✎

The specification's requirements numbered, with where Roswaal stands on each, and drawn as its drafts were.

0.165.x2026-10-09 – 2026-10-14

FeatureChangeBugfixEditorDocs

The specification's requirements numbered, with where Roswaal stands on each, and drawn as its drafts were.

Releases

  1. 0.165.1Imported Luau compiles back as it was written in four more places.New2026-10-14
  2. 0.165.0The specification's requirements numbered, with where Roswaal stands on each, and drawn as its drafts were.New2026-10-09

Added

  • 0.165.0Every requirement in the specification is numbered, for the section it is in: 5.8-R3 is the third in §5.8. Each is a row of its own with a link to itself and whether Roswaal meets it: Roswaal meets, Roswaal partly, or Not yet in Roswaal, with what is missing beneath. A number never moves once published.
  • 0.165.0All requirements, at the end of Part III: all 104, by chapter, with Roswaal's totals and a link to each where its chapter states it. The list to read an implementation, or the specification itself, against.
  • 0.165.0Each chapter on spec.roswaal.app says how many requirements it makes and how many Roswaal meets, beside its status, and its status names the conformance levels it holds: Normative · Level 3.

Changed

  • 0.165.0MUST, SHOULD and MAY are pins, coloured by how hard they bind, wherever the docs write them, in place of bold capitals inside a sentence.
  • 0.165.0The principles are drawn as their draft had them, each with its In Roswaal and A profile must not side by side. Notes say what they are in their heading: Open question, Where Roswaal falls short. Examples are framed and say which profile they come from.
  • 0.165.0spec.roswaal.app has a Try Roswaal button in place of a link, filled status pills, and, on a phone, a header that scrolls away rather than covering the text.
  • 0.165.0A link to a place on another page of the docs, such as one requirement, opens that page at that place, in the Docs panel as well as on the site.

Fixed

  • 0.165.1A statement that opens with a bracket no longer runs into the one before it. (part :: BasePart).Parent = model after a call was read as calling that call's result, and the graph's Luau did not parse. It is written ;(part :: BasePart).Parent = model, as Luau is written by hand.
  • 0.165.1A call whose argument holds a comment or a backtick string stays a call. It was written local _rw1 = table.insert(...).
  • 0.165.1Import keeps the brackets around a call. print((pick())) passes only the first value pick returns; it came back as print(pick()), which passes all of them.
  • 0.165.1Import keeps a number as it was written. 0.10 and 2.0 came back as 0.1 and 2.