Jason Pickens
Jason Pickens
I tested this and it still OOMEs. BFS alone is not enough, once a path to a dependency has been found then no longer paths should be processed otherwise we...
Ah correction it did eventually complete it just thrashed the GC for a few minutes. That's suprising. Maybe there was just enough memory.
> BFS alone is not enough, once a path to a dependency has been found then no longer paths should be processed otherwise we get an explosion of pathSteps. Oh...
A couple observations: - The statics should be traversed entirely before the dynamics. That ensures that we find the shortest paths first which can greatly reduce the combined lenghts of...
Some rough benchmarks with 6G of memory running `client/clean;client/fullLinkJS` with `-Dsbt.task.timings=true`: `bfs`: ``` [info] Full optimizing /Users/jason/src/goodcover/core/client/target/scala-2.13/client-opt [warn] In the last 10 seconds, 5.207 (53.8%) were spent in GC. [Heap:...
Ohhh I can use `Doc.fill`. ``` Doc.fill("{" +: Doc.line, Seq(Doc.text("def foo ="), Doc.text("bar"))) ``` Man this stuff takes me ages to get my head around. I've literally been staring at...
Wait no I'm being dumb. That will always add the `{`. Damn it.
Well this does it although it uses private stuff. Is there a better way? ``` package org.typelevel.paiges import org.typelevel.paiges.Doc.FlatAlt object Docx { implicit class DocOps(val doc: Doc) extends AnyVal {...
> Flatly was not directly exposed because it can break the invariants. It only makes sense for certain pairs of Docs. For instance if you flatten the resulting Doc should...
There is a note in the README which I don't fully understand. It says that the plugin requires at least Java 8. Why is that? Is that because of the...