sbt, the interactive build tool
Go to file
Adrien Piquerez 0ccf3325c8 Optimize indexing of aggregate keys
To build the index of all aggregate keys, we were computing the reverse
aggregation of each key, before indexing them.
And so each aggregate key was indexed many times, once for each
aggregated project. It was parallelized to reduce the latency.
In this PR, we compute the reverse aggregation of all the keys at once,
removing all duplication. We cannot parallelize this process anymore
but we don't need to, because it is a lot faster. It reduces the total
CPU time by 12%. The impact for the user depends on its number of cores.
2024-11-13 12:25:31 +01:00
.github Contraband 0.7.0 2024-10-27 16:21:18 -04:00
buildfile/src Settings as a Map[ScopedKey[x], x] 2024-11-13 12:25:31 +01:00
client refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
core-macros/src refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
dependency-tree/src/main/scala/sbt/plugins Reduce settings created by dependency-tree plugins 2024-11-12 11:51:31 +01:00
internal Merge pull request #7866 from adpi2/2.x-reduce-heap 2024-11-06 08:44:03 +01:00
launch Transfer copyright to Scala Center 2023-06-20 16:39:07 +02:00
launcher-package Merge pull request #7800 from Friendseeker/bump-sbt-sbt-io 2024-10-21 21:42:03 -04:00
licenses move remaining pieces of sbt subproject to sbt_pending and fix notices 2010-09-21 21:55:50 -04:00
lm-core refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
lm-coursier refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
lm-ivy/src delete deprecated methods 2024-11-04 17:26:55 +09:00
main Optimize indexing of aggregate keys 2024-11-13 12:25:31 +01:00
main-actions/src refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
main-command/src refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
main-settings/src Settings as a Map[ScopedKey[x], x] 2024-11-13 12:25:31 +01:00
notes Merge branch '1.10.x' into wip/merge-1.10.x 2024-05-07 04:39:25 -04:00
project deps: Update to Scala 3.5.2 2024-10-28 00:34:10 -04:00
protocol/src/main refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
run refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
sbt-app/src Settings as a Map[ScopedKey[x], x] 2024-11-13 12:25:31 +01:00
sbt-remote-cache/src/main/scala/sbt refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
scripted-sbt refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
scripts Fix lm-coursier scripted 2024-10-11 14:30:55 +02:00
server-test/src refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
src/main/conscript Move sources from sbt-projectmatrix 2024-09-17 17:00:04 +02:00
tasks refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
tasks-standard refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
testing refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
util-cache refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
util-collection Settings as a Map[ScopedKey[x], x] 2024-11-13 12:25:31 +01:00
util-tracking refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
zinc-lm-integration/src refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
.git-blame-ignore-revs Add .git-blame-ignore-revs 2024-10-09 13:38:02 +02:00
.gitattributes Fix line endings in msi 2021-11-19 20:41:39 -05:00
.gitignore Fix server completion tests 2024-03-19 17:06:09 +01:00
.gitmodules Move metadata to lm-coursier/metadata 2024-10-09 09:44:42 +02:00
.java-version Configure JVM 1.8 in .java-version 2016-10-07 08:48:23 -05:00
.jvmopts Add .jvmopts 2023-11-25 01:06:30 -05:00
.mailmap Add mailmap 2019-06-11 09:30:14 +02:00
.sbtopts Restore .sbtopts file 2020-11-19 12:42:26 -08:00
.scala-steward.conf Pin slf4j-api 2023-01-02 22:06:46 -05:00
.scalafmt.conf Update scalafmt 2024-10-22 19:58:21 +09:00
CONTRIBUTING.md Minor updates on development guide 2023-10-21 21:00:31 -04:00
DEVELOPING.md SBT -> sbt 2024-10-19 21:52:20 -07:00
LICENSE Transfer copyright to Scala Center 2023-06-20 16:39:07 +02:00
NOTICE Transfer copyright to Scala Center 2023-06-20 16:39:07 +02:00
PROFILING.md fix typo 2018-07-08 22:18:57 +09:00
README.md Merge remote-tracking branch 'lm/wip/sbt-2.x' into 2.x-lm-coursier 2024-10-09 08:50:03 +02:00
SUPPORT.md Transfer copyright to Scala Center 2023-06-20 16:39:07 +02:00
build.sbt refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
reset.sh 1.0.3-SNAPSHOT 2017-09-16 15:52:58 -04:00
sbt Bump sbt & sbt-io version 2024-10-21 16:38:30 -07:00
sbt-allsources.sh Merge remote-tracking branch 'lm/wip/sbt-2.x' into 2.x-lm-coursier 2024-10-09 08:50:03 +02:00
sbt.sh Implement sbt-launch.jar download 2021-04-19 23:43:15 -04:00
server.md setting query is "sbt/setting" 2017-10-03 01:45:06 -04:00

README.md

CI Latest version Discord

sbt

sbt is a build tool for Scala, Java, and more.

For general documentation, see https://www.scala-sbt.org/.

sbt 1.x

This is the 1.x series of sbt. The source code of sbt is split across several GitHub repositories, including this one.

  • sbt/io hosts sbt.io module.
  • sbt/zinc hosts Zinc, an incremental compiler for Scala.
  • sbt/sbt, this repository hosts modules that implements the build tool.
  • 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.

The short version: try searching or asking on StackOverflow.

license

See LICENSE.