Skip to content

Dry-run mode to discover entry points #26

@dwijnand

Description

@dwijnand

I was re-listening to your talk at ScalaDays where Miles was mentioning how feasible this was for libraries, comparing his Shapeless with your comments on applying this to Akka.

You mentioned how Akka's "Actor" class is live, public API and so should be considered an "entry point". Now, Actor is undoubtedly used by many other classes, so my thinking is: it'll be transitively considered live code via any of the other live usages.

So, would it be possible to run ScalaClean in some sort of "dry-run mode"?

I'm unsure about the details but perhaps (and I'm going to simplify and talk only about live/dead classes, not method-level) ScalaClean would traverse all the classes in the libraries classpath and report all the leaf classes that it considers the start of a dead code graph. Then you could take that listing, partition it and save all off all the live, public API classes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions