microsoft / microsoft/durabletask-dotnet

CreateReplaySafeLogger<T> should return ILogger<T> instead of ILogger

Open
#365 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

breaking change
Dominant language
C#
Stars
193
Forks
60
Avg merge
3d 12h
Merged PRs (30d)
4

Description

Issue

Various engineering teams use ILogger<T> instead of ILogger with source generation. However, the CreateReplaySafeLogger<T> method returns an ILogger, creating an incompatibility with these practices.

Suggested fix

Change CreateReplaySafeLogger<T> to return ILogger<T>.

This is not a source-breaking change, but it is a binary-breaking change. We should make a decision about whether this meets the bar for a breaking-change release, or whether we should include this as a minor version release (with appropriate documentation) that can be released sooner.

/cc @jviau

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in src/Abstractions/TaskOrchestrationContext.cs at CreateReplaySafeLogger and inspect the surrounding logging abstraction. Confirm the source- and binary-compatibility implications, then review the project's release guidance for the required version decision. Done means the return-type change and its release documentation or decision are aligned.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
backend-api-design
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.