mirror of
https://github.com/sbt/sbt.git
synced 2026-09-06 09:37:02 +02:00
3eeac9deae70df83385b6b5c165331e44c826838
Fixes #6886. dependencyTree, dependencyBrowseTree, and inspect tree re-explore the same node once per incoming edge. In a DAG with N levels and M children per node the rendered output is O(M^N) -- the OP needed >16 GB heap, #7360 has a 6 GB heap dump, and Friendseeker's analysis on the issue showed the exponential re-traversal directly. Fix: track a visited set across the renderer's recursion. The first time a node is encountered it is rendered in full; on subsequent visits the entry collapses to a one-line +- <id> (*) (ASCII) or a <id> (*) leaf (JSON), matching Maven's dependency:tree (*) convention. Cycle detection (separate parents set, (cycle) marker) is unchanged. Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
…
…
…
sbt
sbt is a build tool for Scala, Java, and more.
For general documentation, see https://www.scala-sbt.org/.
sbt 2.x
This is the 2.x series of sbt. The source code of sbt is split across several GitHub repositories, including this one.
- sbt/io hosts
sbt.iomodule. - sbt/zinc hosts Zinc, an incremental compiler for Scala.
- sbt/sbt, this repository hosts modules that implement the build tool.
Other links
- Setup: Describes getting started with the latest binary release.
- FAQ: Explains how to get help and more.
- sbt/sbt-zero-seven: hosts sbt 0.7.7 and earlier versions
Issues and Pull Requests
Please read CONTRIBUTING carefully before opening a GitHub Issue or a pull request.
If you're looking for an idea for a contribution, issues labeled with good first issue or help wanted might be good starting points.
If you would like to ask questions about sbt, there's sbt channel on Scala Discord, but it would be good to gather questions on Stackoverflow.
license
See LICENSE.
Languages
Scala
94.5%
Java
3.1%
Shell
1.1%
Batchfile
0.9%
Roff
0.2%
Other
0.1%