Skip to content

Support for GitHub dependency graph #5242

@Gedochao

Description

@Gedochao

So I figure this might be a place like any other to raise this.

There currently is no automation for generating a GitHub dependency graph with Mill 0.12+

We do have @ckipp01's solution for up to 0.11, but it has been archived since:

While it has been updated up to Mill 0.12.5, it seems it's borked with the Scala CLI build (currently on Mill 0.12.14).
We removed it in:

If anyone's interested in the bug, it's reproducible with

./mill -i --import ivy:io.chris-kipp::mill-github-dependency-graph::0.2.7 io.kipp.mill.github.dependency.graph.Graph/submit

in the https://github.com/VirtusLab/scala-cli repo.

[63/65] ================== io.kipp.mill.github.dependency.graph.Graph/submit ================= 35s
java.lang.ClassCastException: class scala.Tuple2 cannot be cast to class scala.Tuple3 (scala.Tuple2 and scala.Tuple3 are in unnamed module of loader 'app')
    mill.resolve.Resolve$.$anonfun$invokeCommand0$1(Resolve.scala:166)
    mill.resolve.Resolve$.$anonfun$invokeCommand0$1$adapted(Resolve.scala:166)
    scala.collection.MapOps$WithFilter.$anonfun$withFilter$1(Map.scala:402)
    scala.collection.MapOps$WithFilter.$anonfun$withFilter$1$adapted(Map.scala:402)
    scala.collection.Iterator$$anon$6.hasNext(Iterator.scala:479)
    scala.collection.Iterator$$anon$10.hasNext(Iterator.scala:601)
    scala.collection.immutable.List.prependedAll(List.scala:152)
    scala.collection.immutable.List$.from(List.scala:685)
    scala.collection.immutable.List$.from(List.scala:682)
    scala.collection.IterableFactory$Delegate.from(Factory.scala:288)
    scala.collection.immutable.Iterable$.from(Iterable.scala:35)
    scala.collection.immutable.Iterable$.from(Iterable.scala:32)
    scala.collection.IterableOps$WithFilter.flatMap(Iterable.scala:903)
    mill.resolve.Resolve$.invokeCommand0(Resolve.scala:166)
    mill.resolve.Resolve$.$anonfun$instantiateCommand$1(Resolve.scala:151)

That being said, since the old solution has been archived, it is still in the air if this will be fixed.
Maintaining it would likely mean adding an implementation for Mill 1.0.0 once it is out (and a 1.0.0-RC1 one wouldn't hurt).

What is the GitHub dependency graph and why do we need it?

So where I'm leading with it:

  • are there any plans to fork the mill-github-dependency-graph plugin in the com-lihaoyi org?
  • are there any alternatives for delivering the graph in repos on the newest Mill versions?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions