Skip to content

ci: check the README's C# blocks against the package - #2

Merged
rgfaber merged 1 commit into
mainfrom
juno/doc-snippets
Oct 21, 2026
Merged

rgfaber merged 1 commit into
mainfrom
juno/doc-snippets

Conversation

@rgfaber

@rgfaber rgfaber commented Oct 21, 2026

Copy link
Copy Markdown
Contributor

Purpose (usability): a reader who copies a C# block out of the README gets code that compiles against the package, and a block that stops compiling fails CI before it ships (macula-io/macula-codebase-checks#8).

  • ci.yml: a docs job calling macula-io/macula-ci-images/.github/workflows/doc-snippets-csharp.yml pinned by full commit SHA (d25a36c), with submodules: recursive because Reckon.Client generates its gRPC stubs from the .proto files under proto/: without them the package does not compile and every block would fail for a reason the doc does not have.
  • publish has needs: [build-test, release-guard, docs], so the packages that reach NuGet are the ones the blocks were compiled against.

README fixes, so a block copied on its own compiles:

Locally the shared check reports 0 failures in 3 blocks. This repository's CI runs on main, tags and pull requests, so this draft PR is what runs the new job on a branch.

Refs macula-io/macula-codebase-checks#8, #1

🤖 Generated with Claude Code

A reader who copies a C# block out of the README gets code that compiles against
Reckon.Client, and a block that stops compiling fails CI before it ships. The job
calls the shared check pinned by full commit SHA, and the publish job needs it, so
the packages about to reach NuGet are the ones the blocks were compiled against.

The submodule is fetched for it: Reckon.Client generates its gRPC stubs from the
.proto files under proto/, so a plain checkout does not compile and every block
would fail for a reason the doc does not have.

The README's examples now carry the usings they need: `using Reckon;` on the first
block, `using Reckon.Extensions.Hosting;` on the hosting block, and the projection
worker block the missing `using Reckon.Extensions.Hosting;` and
`using Reckon.Subscriptions;` (reckon-dotnet#1). Copying any of them into a file of
its own compiles.

Refs macula-codebase-checks#8, reckon-dotnet#1
@rgfaber
rgfaber merged commit a0eef0a into main Oct 21, 2026
4 checks passed
@rgfaber
rgfaber deleted the juno/doc-snippets branch October 21, 2026 17:52
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