typelevel / typelevel/fs2

Document that `fs2.Compiler.Target` shouldn't be used as a context bound in downstream libraries and why

Open
#2,618 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Scala
Stars
2.5k
Forks
636
Avg merge
2d 4h
Merged PRs (30d)
7

Description

@SystemFw kindly explained in https://github.com/http4s/http4s/pull/5206 why it's a bad idea to use Compiler.Target as a context bound in downstream libraries, in place of Concurrent or Sync. It seems worth documenting this somewhere more permanent, since it's something that looks on its face like a good idea. A brief note in the ScalaDoc with a link to the pull request could be a reasonable start.

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 by finding the ScalaDoc for fs2.Compiler.Target and review the explanation in http4s pull request 5206. Document why downstream libraries should prefer Concurrent or Sync rather than using Compiler.Target as a context bound, including a link to that pull request. Done means the guidance is permanently available in the relevant ScalaDoc.

Written by the indexing model from the issue text.

Assessment

Tech stack
scala
Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.