Browse our archives by topic…
Blog
Browse our blogs activity over the years…
AsyncAPI Code Generation with Corvus: Testing
Test Corvus-generated AsyncAPI producers and consumers without a running broker - unit test handler logic with typed payloads, verify producer output with message capture, and integration test the full publish-consume round-trip using InMemoryMessageTransport.
AsyncAPI Code Generation with Corvus: Filtering
Generate producers and consumers for only the channels you need - use channel filtering, tag selection, and the asyncapi-show preview command to carve focused messaging code from large AsyncAPI specifications.
AsyncAPI Code Generation with Corvus: Durability and Resumption
Configure durable message delivery for Corvus-generated AsyncAPI consumers - Kafka consumer groups, AMQP acknowledgement, NATS JetStream, MQTT persistent sessions, and Azure Service Bus PeekLock settlement.
AsyncAPI Code Generation with Corvus: Health and Telemetry
Add observability to Corvus-generated AsyncAPI producers and consumers - OpenTelemetry distributed tracing, message throughput metrics, processing loop heartbeats, and ASP.NET Core health checks for transport connectivity.
AsyncAPI Code Generation with Corvus: Request/Reply
Generate typed request/reply methods from AsyncAPI specs with Corvus - correlated messaging with zero-allocation correlation IDs, typed response payloads, timeout management, and support for both AsyncAPI 3.0 reply objects and 2.6 x-corvus-reply extensions.
AsyncAPI Code Generation with Corvus: Typed Consumers
Generate typed message consumers from AsyncAPI specs with Corvus - handler interfaces with pre-validated payloads, configurable error policies, dead-letter routing, and Polly resilience middleware.
AsyncAPI Code Generation with Corvus: Typed Producers
Generate strongly-typed message producers from AsyncAPI specs using the Corvus CLI - validated payloads, channel address templates, and pluggable transports for NATS, Kafka, AMQP, MQTT, and Azure Service Bus.
OpenAPI Code Generation with Corvus: Testing
Test Corvus-generated OpenAPI code at every level - unit test handler logic in isolation with typed params, integration test the full round-trip with WebApplicationFactory, and verify client behaviour with in-memory transports.
OpenAPI Code Generation with Corvus: Filtering
Generate code for only the endpoints you need - use path filtering and the openapi-show preview command to carve focused, domain-specific clients and server stubs from large OpenAPI specifications.
OpenAPI Code Generation with Corvus: Callbacks, Webhooks and Links
Generate typed webhook receivers and senders from OpenAPI specs with Corvus - callback server stubs for receiving notifications, callback clients for sending them, runtime expression resolution, and linked operations for hypermedia-style API navigation.
Rx.NET v7.0 Now Available
Rx.NET 7.0 is now available, with the potential to reduce deployable application size by up to 90MB.
OpenAPI Code Generation with Corvus: Authentication
Corvus generates per-operation OAuth2 scope constants from your OpenAPI spec - use them with standard .NET DelegatingHandler middleware and Azure.Identity for type-safe authentication without proprietary frameworks.
OpenAPI Code Generation with Corvus: Streaming
Generate typed streaming responses from OpenAPI specs with Corvus - SSE and NDJSON on the server with writer callbacks, IAsyncEnumerable on the client with pooled typed documents and automatic frame parsing.
OpenAPI Code Generation with Corvus: End-to-End
Wire a Corvus-generated OpenAPI client to a generated server over real HTTP - both sides validated against the same spec, with generated OAuth2 scope constants for type-safe authentication.
OpenAPI Code Generation with Corvus: Server Stubs
Generate ASP.NET Core server stubs from OpenAPI specs with Corvus - handler interfaces with pre-validated parameters, typed result factories, and automatic Problem Details responses for invalid requests.
OpenAPI Code Generation with Corvus: Typed HTTP Clients
Generate strongly-typed HTTP clients from OpenAPI 3.x specs using the Corvus CLI - zero-allocation models, exhaustive response matching, and built-in schema validation with a single dotnet tool command.
Optimising DAX: Model Design Comparisons and Testing Tips
Star schema vs flat table vs header/detail - which Power BI model design gives you the best performance? This post compares all three and covers practical testing tips.
Microsoft Fabric Workspace Topology Patterns
Workspace topology is one of the first decisions you'll make in Microsoft Fabric, and one of the hardest to undo once you're underway. This post will help you start with the right foundations in place.
Optimising DAX: The Cost of Relationships
Relationships in Power BI aren't free. This post explains how the cardinality of the relationship key determines traversal cost, and why this has big implications for model design.
Announcing Fabric Weekly: a free Microsoft Fabric newsletter
Fabric Weekly is a free weekly newsletter covering everything Microsoft Fabric. Sign up to stay on top of the latest features, updates, and community content.
Optimising DAX: Why Cardinality Matters
Column cardinality is one of the biggest factors in Power BI model size and query speed. This post explains why, and covers practical techniques for reducing it.
Introducing Corvus.Text.Json V5: Migration, Analyzers, and What's Next
Migrating from V4 to V5 is straightforward with Roslyn analyzers and code fixes. V4 isn't going away - both engines are maintained. Plus: 10 production analyzers to help you write correct, high-performance code.
Introducing Corvus.Text.Json V5: TOON - Compact JSON for LLMs
Corvus.Text.Json.Toon provides bidirectional TOON conversion - a compact text format that removes repeated property names and punctuation from JSON, reducing token count for LLM prompts with zero-allocation UTF-8 APIs.
Introducing Corvus.Text.Json V5: Extended Types
V5 extends the JSON type system with UTF-8 URI and IRI parsing, arbitrary-precision numerics via BigNumber, and first-class NodaTime date/time integration. All operating directly on the raw UTF-8 bytes.
Introducing Corvus.Text.Json V5: JSON Pointer - Zero-Allocation Path Resolution
Corvus.Text.Json V5 includes Utf8JsonPointer, a readonly ref struct that resolves RFC 6901 JSON Pointer paths directly against the pooled-memory document model with no allocation.