microsoft / microsoft/SwiftStreamingMarkdown

Config Builders are hard to Maintain

Open
#173 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Swift
Stars
364
Forks
51
PR merge metrics
No merged PRs in 30d

Description

Builders are hard to maintain when adding a new config.

I know this would involve an API change, so I am putting it as an open-ended issue, but it might be easier to use a single with(configItem:) function. It could take parameters with nil defaults and use the nil-coalescing operator to keep the unmentioned ones unchanged.

Contributor guide

Open the contributing guide

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 with Sources/MarkdownText/Models/MarkdownRenderConfig+Builders.swift and review how the current builders represent configuration. Consider the proposed single with(configItem:) API and identify the compatibility and design questions raised by the API change. Done means the builder approach is clearly redesigned and its affected API behavior is defined.

Written by the indexing model from the issue text.

Assessment

Tech stack
swift
Domain
developer-experience
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.