You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make the development and AI workflows consistent and easier to maintain. Preserve the public APIs, the localization behavior, the package identities, and the dependency floors.
Separate the shared, source, and test build settings while preserving the generator, WPF, and package-wiring requirements. Validate the package contents and API compatibility against the last published version.
Add dependency auditing so transitive advisories become visible.
Align the C# style, member ordering, analyzers, and pinned tools. Use two spaces for all XML configuration. Preserve the XAML behavior.
Triage the findings of the new analyzer set before the error gate is switched back on, so nothing is blanket-suppressed.
Make every script check preserve the source and the Git index, so a check never rewrites the tree. Fixing stays an explicit action.
Turn the packed-package Native AOT check into a real gate: publish and execute AvaloniaConsumer on .NET 8 and .NET 10 with zero IL2xxx and IL3xxx diagnostics. Today that job only checks that files exist.
Align CI, quarterly Dependabot updates, contribution templates, AI instructions, focused reviewers, scoped hooks, and the commit and changelog rules.
Keep the README short and put the longer material in docs/guides/ and docs/reference/. Move the DocFX configuration to build/docfx and the generated output to artifacts. The community health files stay at the repository root and are published from there.
Apply the repository-wide formatting and ordering pass last, through the finished scripts.
The test runner stays on VSTest. A verification spike proved that a move to Microsoft.Testing.Platform does not work: Avalonia.Headless.XUnit fails with the newer xUnit, and the older xUnit cannot load any current Microsoft.Testing.Platform coverage extension.
Acceptance
Every phase of the implementation plan is complete and its evidence is recorded.
All four test suites run, and the packaging, native-consumer, and documentation checks pass.
Shipping C# and XAML changes are mechanical only. The API, the dependency floors, the resources, and the runtime behavior are unchanged.
Hook scope, non-mutating checks, documentation links, tool-version agreement, and local-package provenance are verified by hand.
Notes
The branch is merged with a merge commit, never squashed, because .git-blame-ignore-revs records the mechanical commit IDs.
Test-only C# and XAML changes are allowed. WPF Native AOT, benchmarks, and a design-decisions document are out of scope. The maintainer owns the branch, the release version, and publication. Do not add a permanent framework for the additional manual checks.
Description
Make the development and AI workflows consistent and easier to maintain. Preserve the public APIs, the localization behavior, the package identities, and the dependency floors.
docs/guides/anddocs/reference/. Move the DocFX configuration tobuild/docfxand the generated output toartifacts. The community health files stay at the repository root and are published from there.The test runner stays on VSTest. A verification spike proved that a move to Microsoft.Testing.Platform does not work:
Avalonia.Headless.XUnitfails with the newer xUnit, and the older xUnit cannot load any current Microsoft.Testing.Platform coverage extension.Acceptance
Notes
The branch is merged with a merge commit, never squashed, because
.git-blame-ignore-revsrecords the mechanical commit IDs.Test-only C# and XAML changes are allowed. WPF Native AOT, benchmarks, and a design-decisions document are out of scope. The maintainer owns the branch, the release version, and publication. Do not add a permanent framework for the additional manual checks.