Skip to content

Weird behavior of 'ivyDepsTree' in mill repo vs example projects on Windows #4894

@malice00

Description

@malice00

I am working on adding SBOM generation for mill projects into CycloneDX's cdxgen. Initially, I tested everything with the example projects, which worked just fine. When I wanted to test on a project that is a bit larger, I picked mill itself, seeing how it builds itself using itself.
On MacOS and Linux, this worked perfectly well, but on Windows the generated trees are totally different from the ones generated in the examples!

In the examples and in mill on Mac/Linux, the trees look very nice, both in the console (maybe Windows no so much) and files (here Windows is fine). This is the 'bar' module from the java multi-module example:

├─ net.sourceforge.argparse4j:argparse4j:0.9.0
└─ org.thymeleaf:thymeleaf:3.1.1.RELEASE
   ├─ ognl:ognl:3.3.4
   │  └─ org.javassist:javassist:3.29.0-GA
   ├─ org.attoparser:attoparser:2.0.6.RELEASE
   ├─ org.slf4j:slf4j-api:2.0.5
   └─ org.unbescape:unbescape:1.1.6.RELEASE

Now, when trying to do this on mill itself, the characters used to build the tree are all replaced by '?', even in the files. This is 'bsp':

?? org.scala-lang:scala-library:2.13.15
?? com.lihaoyi:mill-moduledefs_2.13:0.11.2
   ?? com.lihaoyi:sourcecode_2.13:0.3.0
   ?  ?? org.scala-lang:scala-library:2.13.15
   ?? org.scala-lang:scala-compiler:2.13.15
   ?  ?? io.github.java-diff-utils:java-diff-utils:4.12
   ?  ?? net.java.dev.jna:jna:5.16.0
   ?  ?? org.jline:jline:3.28.0
   ?  ?? org.scala-lang:scala-library:2.13.15
   ?  ?? org.scala-lang:scala-reflect:2.13.15
   ?     ?? org.scala-lang:scala-library:2.13.15
   ?? org.scala-lang:scala-library:2.13.15

Is there a reason for this or is it actually some sort of bug? Of course I can build a workaround in my parser, but I'd much prefer if the behavior was the same with all versions of mill on all projects.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions