Skip to content

Cut Graph1x 1.0.0 - #10

Merged
lgamorim merged 6 commits into
masterfrom
feature/graph-library-1.0.0
Jul 13, 2026
Merged

lgamorim merged 6 commits into
masterfrom
feature/graph-library-1.0.0

Conversation

@lgamorim

Copy link
Copy Markdown
Owner

Summary

  • Cuts the first stable release: public API is unchanged from 1.0.0-rc.1 (zero delta since 0.7.0), and versioning now follows SemVer strictly, enforced by the analyzer-locked public API surface.
  • Adds the Graph1x logo to the README header and to the packed NuGet package (PackageIcon, letterboxed to the recommended 128x128 square with no distortion), and credits the test-first collaboration with Claude Fable in a new Acknowledgments section.
  • Refines project rules ahead of the release: workflow now explicitly bars direct pushes to the default branch and requires branch protection + squash merge; testing rules clarify explicitly-scoped test coverage; coding-standards rules clarify private static readonly naming and test-project XML doc exemption, and call for an .editorconfig with EnforceCodeStyleInBuild; a new architecture.md rule documents repo/solution layout conventions.

Test plan

  • dotnet build Graph1x.sln — 0 warnings, 0 errors
  • dotnet test Graph1x.sln — 831/831 passing on both net8.0 and net10.0
  • dotnet pack src/Graph1x/Graph1x.csproj -c Release — verified icon.png is present in the resulting .nupkg at the package root with no NU5048/NU5051 warnings
  • Reviewed README rendering of the new logo and Acknowledgments section

🤖 Generated with Claude Code

lgamorim and others added 6 commits July 7, 2026 08:25
The RC soaked with zero API delta (PublicAPI.Unshipped.txt holds only the
nullable directive), so 1.0.0 ships the exact surface promoted at 0.7.0.
The changelog and README now state the SemVer compatibility commitment the
analyzer lock enforces at build time.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Wire the new assets/logo.png (letterboxed to 128x128, NuGet's
recommended icon size) into the README header and into the packed
nupkg via PackageIcon, following the same Pack="true" pattern already
used for the README.
The packed README referenced assets/logo.png, a path that does not exist
inside the nupkg; NuGet.org only renders readme images from absolute URLs
on trusted domains, so the 1.0.0 package page would show a broken image.
raw.githubusercontent.com is on the allowlist and works on GitHub too.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Capture conventions settled during the 0.x cycle so they are recorded
before the stable release: constant-like private static readonly naming
and the test-project XML-doc exemption, editorconfig-backed enforcement,
explicit test-scope precedence over the edge-case checklist, PR-only
squash merges to the protected default branch, and a new architecture.md
separating physical layout rules from logical design principles.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Credit Claude Fable's role in designing, implementing, and reviewing
each milestone alongside the test-first workflow.
NuGet.org does not resolve relative links, so the GitHub README's
CHANGELOG/LICENSE links dead-ended on the package page, and its
contributor-facing sections (badges, Building, Performance, Releasing,
Project layout, Acknowledgments) are noise for a package consumer.

Add README.nuget.md — logo, description, Goals, a trimmed Status with
the capability table, full Usage, and License — with every link
absolute, and point PackageReadmeFile/pack at it instead of the root
README. The GitHub README stays the full contributor-facing document.
@lgamorim
lgamorim merged commit b393121 into master Jul 13, 2026
4 checks passed
@lgamorim
lgamorim deleted the feature/graph-library-1.0.0 branch July 13, 2026 01:35
@lgamorim lgamorim added this to the v1.0.0 milestone Jul 14, 2026
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