Skip to content

v1.0.0

Choose a tag to compare

@github-actions github-actions released this 21 Sep 19:43
· 123 commits to main since this release

The first stable release, after eighteen alphas.

winwright drives a Windows desktop application from a test and reports what was actually
observed.
It exists because of one measurement: a suite reported a pass with no failures and a
total of 352, where the run before it had 374. Twenty-two tests were gone, the test host had died
partway through, and the only sign was a number nobody had a reason to read. Everything here
follows from refusing that — a green may not cover a check that never ran, and anything the tool
could not evaluate is named in the output rather than left out of it.

That is why a run has four outcomes and not two: Passed (0), Failed (1), Degraded (2) and
Broken (3). Degraded is the one that matters — everything that ran passed, and something could not
be evaluated at all. CI reads the exit code, so the distinction survives the pipeline.

What 1.0 means

The engine answers for itself. 121 verbs, a locator grammar with 13 forms and 13 refusals,
and a case format of 2 file keys, 9 case keys, 31 step keys and 10 fixture keys — all of it read
out of the engine's own source, so the published figures cannot drift from the code.

What settles the version is a deletion rather than a feature. The adopting application's own
3,004-line PowerShell interaction harness is gone: 23 cases now check 95 claims in 128–159 s, where
the script checked 31 in 46 s and crashed. That was the last open line of the block whose name is
the proof is the deletion.

Also in this release: the display precondition answers absent on a console session that
disconnected itself, where counting monitors and measuring the virtual screen both still said
present — and met once reconnected. A desk that renders nothing is a hole, not a pass.

Installing

<!-- In the test project that drives the application. -->
<PackageReference Include="Winwright" Version="1.0.0" />

<!-- In the application under test, only if you want the readings it can only take
     from inside the process. -->
<PackageReference Include="Winwright.InApp" Version="1.0.0" />

Windows and .NET 10. The engine is UI Automation throughout and is not cross-platform. Neither
package carries an external dependency.

Reading further

  • alegauss.github.io/winwright — the short version of the
    argument.
  • README — the long form: every verb
    family, every field a case may carry, and the reason behind each refusal.
  • CHANGELOG — every line
    shipped, with what it cost and what it proved.

Full Changelog: v0.1.0-alpha.18...v1.0.0