Skip to content

[[ExitCode]] scaladoc reference is broken #4532

@katrinafyi

Description

@katrinafyi

This can lead to confusing scaladoc warnings when a downstream class extends IOApp and inherits the broken comment.

For example, this reports a warning despite the run method in our codebase having no doc comment - the comment with a broken ExitCode reference is inherited from the parent.

 -- Warning: /home/runner/work/BASIL/BASIL/src/main/scala/server/ApiServer.scala:59:15 
59 |  override def run(args: List[String]): IO[ExitCode] = {
   |               ^
   |            Couldn't resolve a member for the given link query: ExitCode

The problem is compounded when we use a cats library which subclasses IOApp while making run final. If we inherit from that subclass in our code, it becomes impossible to override the doc comment and avoid the warning.

To fix this, I think it will be enough to replace all [[ExitCode]] with [[cats.effect.ExitCode]]. I'd do it myself, but I don't have a dev environment set up.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions