WorkflowForge 2.2.0
dotnet add package WorkflowForge --version 2.2.0
NuGet\Install-Package WorkflowForge -Version 2.2.0
<PackageReference Include="WorkflowForge" Version="2.2.0" />
<PackageVersion Include="WorkflowForge" Version="2.2.0" />
<PackageReference Include="WorkflowForge" />
paket add WorkflowForge --version 2.2.0
#r "nuget: WorkflowForge, 2.2.0"
#:package WorkflowForge@2.2.0
#addin nuget:?package=WorkflowForge&version=2.2.0
#tool nuget:?package=WorkflowForge&version=2.2.0
WorkflowForge
A powerful, extensible workflow orchestration framework for .NET applications. WorkflowForge enables you to build, execute, and manage complex workflows with support for dependency injection, logging, resilience patterns, and comprehensive observability.
What's new in 2.2.0
- WorkflowForge 2.2.0 — see CHANGELOG on GitHub.
- All packages ship a single netstandard2.0
libasset. - BREAKING:
IWorkflowExecutionContext.Services(IFoundryServices) is a new interface member. CustomIWorkflowFoundry/IWorkflowExecutionContextimplementations must expose it; returnnew FoundryServices(). - BREAKING:
IWorkflowForgeLogger.IsEnabled(WorkflowForgeLogLevel)is a new interface member. Derive from the newWorkflowForgeLoggerBaseto inherit an implementation. - BREAKING: the foundry now disposes only what it owns.
Reset()/Dispose()no longer dispose caller-supplied operations or middleware; register foundry-owned disposables onServices. - BREAKING: removed the undocumented
WorkflowForgeLoggersfaçade; useConsoleLogger, DI, or Serilog/MEL. - BREAKING:
PropertyNameConstantsandWorkflowLogMessageConstantsare internal. - Fixed: retried operations no longer bypass inner middleware — timeout, logging, validation and persistence were all skipped on every retried attempt.
- Fixed:
LoggingMiddlewareis no longer inert under default options;UseLogging()emits again and failures are always logged. - Fixed:
WorkflowTimeoutMiddlewarenow cancels the workflow instead of waiting for it to finish. - Migration guide
Full documentation
Guides, samples, and the long-form package readme: WorkflowForge README on GitHub.
Install
dotnet add package WorkflowForge
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
NuGet packages (11)
Showing the top 5 NuGet packages that depend on WorkflowForge:
| Package | Downloads |
|---|---|
|
WorkflowForge.Extensions.Resilience
Resilience and retry extension for WorkflowForge workflow engine. Provides circuit breakers, retry strategies, and timeout management for robust workflow execution. |
|
|
WorkflowForge.Extensions.Observability.HealthChecks
Health monitoring and diagnostics extension for WorkflowForge providing comprehensive health checks, dependency monitoring, and system status reporting for production workflows. |
|
|
WorkflowForge.Extensions.Logging.Serilog
Serilog adapter for WorkflowForge providing professional structured logging capabilities with rich context and correlation. |
|
|
WorkflowForge.Extensions.Observability.Performance
Performance monitoring and profiling extension for WorkflowForge providing detailed metrics, execution timing, memory usage tracking, and performance optimization insights for production workflows. |
|
|
WorkflowForge.Extensions.Observability.OpenTelemetry
OpenTelemetry integration for WorkflowForge providing distributed tracing, metrics collection, and observability instrumentation for comprehensive workflow monitoring and debugging. |
GitHub repositories
This package is not used by any popular GitHub repositories.
WorkflowForge 2.2.0 (2026-09-15)
BREAKING
- IWorkflowExecutionContext.Services (IFoundryServices) is a new interface member. Custom IWorkflowFoundry / IWorkflowExecutionContext implementations must expose it; return new FoundryServices().
- IWorkflowForgeLogger.IsEnabled(WorkflowForgeLogLevel) is a new interface member. Derive from the new WorkflowForgeLoggerBase to inherit an implementation.
- IFoundryServices.DisposeAll() is a new interface member.
- The foundry now disposes only what it owns. Reset()/Dispose() no longer dispose caller-supplied operations or middleware; register foundry-owned disposables on Services.
- Removed the WorkflowForgeLoggers static facade, and the public PropertyNameConstants / WorkflowLogMessageConstants (now internal).
Added
- WorkflowForgeLoggerBase: optional base class supplying a MinimumLevel-driven IsEnabled.
- Foundry-scoped Services bag with dispose-on-lease-end semantics.
Fixed
- Retried operations no longer bypass inner middleware (timeout, logging, validation, persistence were all skipped on retry).
- LoggingMiddleware is no longer inert under default options; UseLogging() emits again and failures are always logged.
- WorkflowTimeoutMiddleware now actually cancels the workflow instead of waiting for it to finish.
- All extension packages ship a single netstandard2.0 asset again, so ILRepack-merged libraries and their declared dependencies can no longer disagree.
Migration: https://github.com/animatlabs/workflow-forge/blob/main/docs/core/foundry-lifetime.md
Full changelog: https://github.com/animatlabs/workflow-forge/blob/main/CHANGELOG.md#220---2026-09-15