Skip to content

Set up v12 integration branch#1924

Merged
RicoSuter merged 7 commits into
v12from
docs/v12-setup
Apr 21, 2026
Merged

Set up v12 integration branch#1924
RicoSuter merged 7 commits into
v12from
docs/v12-setup

Conversation

@RicoSuter

@RicoSuter RicoSuter commented Apr 21, 2026

Copy link
Copy Markdown
Owner

Summary

Starter PR that sets up the v12 integration branch for the major v12 release. Establishes the plan document and makes CI run against v12.

  • Adds docs/v12.md covering:
  • Updates CI so the v12 branch and PRs against it are actually built/tested:
    • build/Build.CI.GitHubActions.cs: v12 added to OnPullRequestBranches and OnPushBranches
    • .github/workflows/build.yml, pr.yml: regenerated with the same addition

Open PRs #1914 and #1917 are already retargeted to v12 and will start receiving CI once this merges.

Test plan

  • This PR's CI run (once merged to v12, the pr.yml trigger will start firing for subsequent PRs against v12)
  • Manual: confirm NUKE CI regeneration round-trips (nuke --generate-configuration GitHubActions_build --host GitHubActions doesn't revert the change)

Companion

NSwag v15 gets the equivalent starter PR separately — adds docs/v15.md and its v15 branch CI triggers plus the sibling NJsonSchema checkout step.

- Add docs/v12.md describing the v12 scope, branch model, development
  workflow with NSwag v15, release plan, and pre-release cleanup checklist
- Add v12 to OnPullRequestBranches / OnPushBranches in Build.CI.GitHubActions.cs
  and the regenerated workflow YAMLs so CI runs on the v12 branch and on PRs
  targeting it (revert before v12 merges to master)
- New docs/changelog_v12.md tracks landed changes and v11 → v12 migration guidance
  per breaking change (with placeholder sections for planned PRs #1914, #1917,
  SchemaType expansion, reference-resolution fixes)
- docs/v12.md "Running changelog" section replaced with a pointer to the dedicated file
- Plan vs changelog separation: v12.md describes process (scope, branches, release plan,
  cleanup), changelog_v12.md is the user-facing record
Plan doc and changelog are now visually paired by filename:
- docs/plan_v12.md
- docs/changelog_v12.md

Update internal cross-references in both files.
CLAUDE.md:
- Project Overview, Cross-check with NSwag (supported spec targets table,
  5-point cross-check checklist, reviewer prompt, link to references.md)
- Build Commands, Architecture, Testing, Code Style
- Git Rules: no AI attribution in commits / PRs / comments

docs/references.md:
- Comprehensive reference on ActualSchema vs ActualTypeSchema vs
  InheritedSchema, the resolution algorithm, and cross-spec behavior
- DocumentPath / external ref resolution; $id, $anchor, $dynamicRef
  non-support limitations
- NSwag's OpenApiParameter.ActualSchema override mechanics
- Sibling-keyword gaps (the "Case C" problem), generalized beyond const
- Known limitations grouped by theme; decision matrix for consumers
@RicoSuter RicoSuter merged commit 96f4991 into v12 Apr 21, 2026
2 checks passed
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