Skip to content

Release 1.0.0-preview.1 - #1

Merged
soyeyalon merged 13 commits into
mainfrom
candidate
Nov 5, 2026
Merged

soyeyalon merged 13 commits into
mainfrom
candidate

Conversation

@soyeyalon

Copy link
Copy Markdown
Contributor

Promotes the candidate 302a561 to main as DOMQL 1.0.0-preview.1, the first preview and DOMQL's first release, which follows FormaUI Versioning v1.0.0-preview.1.

  • The release: the runtime and the specification take 1.0.0-preview.1, on Nexo's release and language 1.0.0-preview.1. States are Boolean properties, executions are named by their verbs, and a query runs directly in one call.
  • The package: the NuGet package records its source through Source Link, ships its symbols, links its release notes and no longer holds the build's global.json. Its guide installs it from nuget.org.
  • The release path: the full gate packs and verifies the package as an application installs it, promotion.yml and release.yml run Versioning's checks, and release.yml publishes to nuget.org through trusted publishing.

The changelog entry and the version history's list every change, with how to migrate past each break.

DOMQL follows FormaUI Versioning v1.0.0-preview.1, whose stages are
preview, release candidate and stable. Its first release leaves the
beta: the runtime and the specification, both unreleased, take
1.0.0-preview.1, which orders after every beta, with the beta's
promise, and so do the changelog's and the version history's
unreleased entries, as D106 records.
The NuGet package links its release notes to the changelog entry at
its tag, records its repository and commit through Source Link, ships
its symbols as a .snupkg and validates its package. It keeps the
build's global.json, which it delivered to a consumer as content, out.
The full gate, ./build.ps1 -Full, runs the gate, packs the NuGet
package and its symbols into artifacts/ and verifies them. Each holds
exactly the files its list in scripts/packages names, and the package
installs outside the repository from a local feed into a web
application whose published domql.js resolves a query. It replaces
publish.ps1.
The gate runs on every push but main's, which promotion
fast-forwards to a commit that passed on candidate, and on every pull
request. A push to candidate runs the full gate with the browser
tests, and keeps the packages it verified as the packages artifact
for the release, in place of the package job.
A pull request into main runs the promotion check of FormaUI
Versioning v1.0.0-preview.1, pinned by its commit.
A release tag's push runs the release check of FormaUI Versioning
v1.0.0-preview.1, attaches the packages candidate's full gate built
to the tag's GitHub release with their digests, and publishes the
NuGet package to nuget.org through trusted publishing, from the
release environment that v* tags alone deploy to.
Contributing states what Versioning v1.0.0-preview.1 leaves to DOMQL:
its public contract, the declarations of its versions, its gates and
workflows, and its package. Cutting a release follows Versioning's
path, the commit rules are Versioning's, and CLAUDE.md names the
release DOMQL follows. The link test holds every link into Versioning,
and every action a workflow calls of it, to one release, as D107
records.
The consumer referenced the package at the version the full gate
gives, so an editor, which loads it with none, couldn't restore it:
'[]' is not a valid version string. It references the package only
where a version is given, and a build without one stops with an error
naming the gate, rather than publishing an application with no
package.
DOMQL builds against Nexo's release 1.0.0-preview.1 and describes
itself on that language. domql.format now sets a body's return apart
with an empty line, at every level, so a body with locals formats to
new text that reads back as the same definition. Every link into
Nexo's documents follows the pin to the preview's tag, and the status
overview no longer says the pin is 1.0.0-beta.1.
The design said it describes DOMQL's 1.0.0-beta.2, which the preview
replaced: it describes 1.0.0-preview.1, as the specification does.
The status overview no longer lists making dev and candidate among
what the first preview's release waits for: both stand at main's tip,
and dev holds the work since.
Consuming Nexo's packages no longer waits for them: Nexo publishes
them from its 1.0.0-preview.1, so the status overview says that work
can start, and that DOMQL's npm package follows it.
The first preview, and DOMQL's first release, implementing its
specification 1.0.0-preview.1 on Nexo's language 1.0.0-preview.1. It
dates the changelog's entry and the version history's, and is tagged
v1.0.0-preview.1, whose release publishes the NuGet package. The
package's guide now installs it from nuget.org, a local build being
the way to try a change before it's released.
@soyeyalon
soyeyalon merged commit 302a561 into main Nov 5, 2026
4 checks passed

This branch was successfully deployed

1 active deployment
release — 302a561c Deployed Nov 5, 2026 by soyeyalon via Release #1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant