Skip to content

History / Upgrading

Revisions

  • 📝 docs: upgrading to 0.2.0-preview.57 (EN + pt-BR) Written from the surface diff of the PUBLISHED .56 packages against the .57 build, not from the pull requests. That mattered more than usual this time: the declared-API baseline was seeded at .55, so its retirements also carry .56's breaks, and only the diff against what .56 actually shipped isolates this version. Every break has the pair a reader meets — the line that no longer compiles and the line to write instead — and the four collapsed overloads say plainly that most calls still compile. The entry closes with the one change that is not a compile error at all, and is the easiest to miss for that reason: an IServerPrefetch below the page now runs.

    @equantictech equantictech committed Sep 22, 2026
  • 📝 docs: what 0.2.0-preview.56 changes, and the live region that came with it (EN + pt-BR)

    @equantictech equantictech committed Sep 20, 2026
  • 📝 docs: upgrading to 0.2.0-preview.55 (EN + pt-BR)

    @equantictech equantictech committed Sep 18, 2026
  • 📝 docs: three breaks the .54 notes left out, in both languages Found by comparing the tag body against the public-surface diff, which is the check that should have run BEFORE the notes were written rather than after them. - RenderContext lost FIVE members, not the one the notes named: ServiceProvider, SetGlobalServiceProvider, SetScopedServiceProvider, RegisterService and TryGetService. Only GetService survives, and its return type changed. - Navigator.Go's parameter is `destination` where it was `href`. A positional call is untouched; a named one stops compiling, which is exactly the break a reader of release notes does not expect to meet in a compiler error. - BarRect went from eight positional parameters to five: the generated constructor, the Deconstruct and X/Y/Width/Height went with it. The notes said the geometry move and the painter, and let those three ride along inside them. A consumer does not meet "geometry moved"; they meet `bar.X` not resolving.

    @equantictech equantictech committed Sep 15, 2026
  • 📝 docs: what 0.2.0-preview.54 changed under you, in both languages Geometry moved to Primitives, Point's operators and RRect/Matrix2D are fenced, ICanvasPainter takes a box, the node hierarchy is closed, and the runtime's route surface was replaced — each with the one-line answer to the compile error it causes. Opens with a correction to .53, whose own entry claimed a truncated native label "now ends in …". The mark was right and the place was not: CoreText's constant 2 is kCTLineTruncationMiddle, so on macOS .53 cut labels in the middle. Said out loud rather than quietly fixed, because somebody read that entry and believed it.

    @equantictech equantictech committed Sep 15, 2026
  • 📝 docs: .53 cuts the middle, and the entry says so The entry told a reader a truncated label "now ends in `…`" — true of the mark and wrong about where. `0.2.0-preview.53` passes CoreText's truncation constant `2` with a comment calling it `kCTLineTruncationEnd`, and the header says 2 is Middle, so a label on macOS reads `Replace hardco…with IAppTheme`. A correction rather than a rewrite: `.53` is a released version and its entry is the record of what it does. Someone deciding whether to take it needs to know, and the web realizer beside it was always right. Both languages, and the headings still match.

    @equantictech equantictech committed Sep 14, 2026
  • 📝 docs: .53 — two consumer-found fixes and a grid the server never wrote Both languages. The entry opens with what got simpler, as every entry does. Three of these are worth a reader's attention rather than a changelog line: a `.51` feature that was inert for exactly the themes it was built for; a `.52` fix that did not work, with the measurement that explains why (the faster the page, the more reliably it failed); and a spreadsheet that rendered as an empty span to every crawler since the day it shipped. The truncation change is the only one that moves pixels, so it says so and says where: a truncated label on macOS now ends in an ellipsis and measures wider, because a cut runs to the character where a wrap stops at the word.

    @equantictech equantictech committed Sep 14, 2026
  • 📝 docs: .52 says what a cold load does now Nothing breaks, which is the answer a reader most wants confirmed — the .47 entry set that precedent and this follows it. The entry opens with what got simpler, as every entry now does: a bookmark link lands in the same place whether it was followed inside the app or pasted into a fresh tab, so a scroll nudge someone added to work around that can go.

    @equantictech equantictech committed Sep 13, 2026
  • 📝 docs: a theme names its faces, and .51 says what it changed Two pages, both languages. DesignSystem gains "Naming a typeface" — the largest new surface in .51 and the one with nothing written about it. `TypeStyle.Family` per role and `IAppTheme.MonoFamily` for code, why they have to be two properties rather than one, the report that names a face the machine could not resolve, and what a family may be spelled with. It also says what the feature does NOT do: it does not make a face available. Every claim on the page compiles in `WikiClaimsCompile`, including the theme whose body the page elides. Upgrading gains the .51 entry, and each entry now OPENS with what got simpler. A page that only lists breakage never says whether the upgrade was worth taking, and this release is mostly contracts finally honoured — the breakage is one member changing shape.

    @equantictech equantictech committed Sep 13, 2026
  • 📝 docs: Upgrading covers 0.2.0-preview.49 and .50, in both languages The page stopped at .48 while two releases shipped, because the migration notes moved to the annotated tag and nothing here noticed. The tag stays the full record; this page is what it has always promised in its own opening line — the compile errors you will meet and the one-line answer to each — so the entries are distilled from those notes rather than pasted. The tag messages run to about 170 lines each; the entries here match the scale of their neighbours. .50 leads with the four behaviours that changed under code that still compiles, because a compiler helps with none of them: the OpenUrl scheme policy, VisualNode.Key becoming real identity (and duplicate sibling keys ceasing to be harmless), focus scrolling that jumps, and two layout fixes that can move a screen. Its one compile error is the Charts package, which is now the write-once library rather than the wrappers' shared assembly. .49 is the Core dissolution, led by the method that actually works — assume the using is dead, delete, compile — because on one site 31 of 36 files that imported it used nothing from it, and the string literals a code-generating app holds are the ones a grep misses.

    @equantictech equantictech committed Sep 6, 2026
  • 📝 docs: 0.2.0-preview.48 — the deletion, and three renames the wiki was still teaching The release removes the pre-write-once component model and renames three things in the vocabulary. The Upgrading page gains its first entry with real substance: a table of what is gone and where to go instead, and a second one for the renames, which are the half that bites an ordinary write-once app. The rest is the wiki catching up with what stopped being true: - Icons told a reader to implement `IIconProvider` and register it in DI. The interface is gone; the section is replaced by how an icon actually reaches the screen (a value, not a service) and the two real ways to have your own. - Architecture's Server Actions example was written against `ComponentState<T>` with a separate state class. Rewritten as write-once, state and lifecycle on the component. - `Sticky` became `Pinned`, `ZIndex` became `Layer`, `Alt` became `Label`, across fourteen files. Read rather than find-replaced: lowercase "sticky" in prose is the idea and stays, and `Alt` in a keyboard table is the key.

    @equantictech equantictech committed Sep 4, 2026
  • 📝 docs: the Upgrading page offers the other language Every other page in this wiki carries a `> 🌐 This page in: …` line under its heading, and the new Upgrading page was the only pair without one — so a reader who landed on either half had no way across, and the pt-BR translation existed without being reachable from the page it translates. Found by the site's own guards rather than by reading: ui.equantic.tech serves these pages, and two of its tests exist for exactly this — one asserts a translation links back to its canonical page, the other that the canonical page offers the translation. Both named Upgrading.md the moment the submodule moved to preview.47.

    @edgarmesquita edgarmesquita committed Sep 4, 2026
  • 📝 docs: 0.2.0-preview.47, and four marks that had rotted The release: the app you ship comes from `dotnet publish` (it came from the build output, so trimming never reached it — 23 MB against 172 measured on our own sample), the Info.plist declared in C#, notarization and a disk image, a pack shipping only the glyphs an app names, and the two capabilities that let an app be reached from outside and reach out to the file system. Two things the pages say plainly because they read like they might not: no bundle has actually been notarized by anyone here — that needs a Developer ID Application certificate rather than more code — and the file dialogs were never driven live, because a modal panel needs a person to answer it. And four version claims that had gone stale in PROSE, where no guard can see them. Three said "next release" about things that shipped in .46 (IConsent, the GTM installer's status, `[ServerOnly]` on a class, twice). The fourth was worse because it was advice rather than a date: Icons told a reader to choose a smaller pack if they only need a handful of glyphs, which stopped being true the day a pack started shipping only what an app names. A rule that ages into the opposite of itself reads as current, which is why it is the expensive kind.

    @equantictech equantictech committed Sep 4, 2026
  • 📝 docs: what breaks when you upgrade, written down where the next person looks Four things stopped compiling for a site adopting 0.2.0-preview.46, and none of them was in the release note: the icon-to-node change, the generated factory resolving capabilities itself (so its arity dropped), the compiler walking further into server-only types, and the Roslyn pin moving to 5.9.0. All four were diagnosed and fixed by the consumer in under an afternoon, which is exactly why they are worth a page: the second consumer would spend the same afternoon on the same four, and the errors name their own project rather than the SDK. A new Upgrading page, in both languages and in both sidebars, starting at the release that produced its first entries rather than pretending to a history nobody recorded at the time.

    @equantictech equantictech committed Sep 3, 2026