Commit Graph

16673 Commits

Author SHA1 Message Date
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
Adrien Piquerez f4f185a1c1 Settings as a Map[ScopedKey[x], x]
Settings0 used to be a Map[Scope, AttributeMap], and is now a
Map[ScopedKey[x], x].
This is better because we don't need to decompose all ScopedKey[x]
into a Scope and an AttributeKey[x], for recomposing it back later,
which duplicates all ScopedKey[x]. It reduces the number of long-living
ScopedKey[x] by 8%, and the total number of instances by 1.4%.

Also it improves the performance of Settings0, which was responsible of
2.95% of the total CPU time, and is now responsible of 0.41%.
2024-11-13 12:25:31 +01:00
eugene yokota 661f1fa216
Merge pull request #7880 from adpi2/2.x-settings
[2.x] Reduce creation of `Setting` and `Initialize`
2024-11-12 22:41:42 -05:00
Adrien Piquerez 6c226a2afd Reduce settings created by Defaults 2024-11-12 11:51:42 +01:00
Adrien Piquerez 8406fc86a8 Reduce settings created by ProjectMatrix 2024-11-12 11:51:42 +01:00
Adrien Piquerez 07ac8625e5 Reduce settings created by dependency-tree plugins 2024-11-12 11:51:31 +01:00
Adrien Piquerez c838094672 Optimize Previous 2024-11-12 10:56:31 +01:00
eugene yokota f7160ba8d8
Merge pull request #7875 from eed3si9n/wip/slash-tests 2024-11-07 12:33:16 -05:00
eugene yokota 583939fc3c
Merge pull request #7874 from xuwei-k/ClassLoaderWarmup-scala-2-universe
[2.x] update ClassLoaderWarmup.scala
2024-11-06 03:47:09 -05:00
Eugene Yokota a34bb4756c Resurrect property-based testing for slash syntax 2024-11-06 03:43:39 -05:00
adpi2 aa5e252d22
Merge pull request #7866 from adpi2/2.x-reduce-heap
[2.x] Reduce number of long-living instances to speed up loading
2024-11-06 08:44:03 +01:00
xuwei-k 6e4c2ea275 update ClassLoaderWarmup.scala 2024-11-06 14:17:13 +09:00
Adrien Piquerez 2f726cddf0 Add comments 2024-11-05 11:36:18 +01:00
eugene yokota af22a5cf0f
Merge pull request #7864 from xuwei-k/delete-deprecated-since-0-x 2024-11-04 10:00:36 -05:00
Adrien Piquerez 9382fc99b7 Use caching in Project.transform 2024-11-04 10:43:42 +01:00
Adrien Piquerez 8b5eaa2cd5 Cache delegates during Load 2024-11-04 10:43:42 +01:00
Adrien Piquerez 5bbe871882 Cleaning Scope 2024-11-04 10:43:42 +01:00
Adrien Piquerez 2015c5d41a Add ThisBuildScope 2024-11-04 10:43:42 +01:00
Adrien Piquerez a28428f96c Pre-compute hashCode 2024-11-04 10:43:42 +01:00
Adrien Piquerez 4a429b2fe2 Add uniqueness cache on Scope 2024-11-04 10:43:28 +01:00
xuwei-k 07ae450e14 delete deprecated methods 2024-11-04 17:26:55 +09:00
eugene yokota 8c8cc430a8
Merge pull request #7834 from eed3si9n/wip/bump_scala
[2.x] deps: Update to Scala 3.5.2
2024-11-02 16:41:54 -04:00
Adrien Piquerez b63aa36601 Avoid wrapping KeyedInitialize in GetValue 2024-10-31 15:06:54 +01:00
Eugene Yokota ff2489b227 deps: Update to Scala 3.5.2 2024-10-28 00:34:10 -04:00
eugene yokota f997553a89
Merge pull request #7837 from eed3si9n/wip/bump_scala_change
[2.x] refactor: Update Scala 3 syntax
2024-10-28 00:22:39 -04:00
Eugene Yokota 130853277b Remove -Ykind-projector 2024-10-28 00:01:51 -04:00
Eugene Yokota 56941dac04 refactor: Update Scala 3 syntax 2024-10-27 23:55:30 -04:00
eugene yokota 54dd965d99
Merge pull request #7836 from eed3si9n/wip/bump_contraband
[2.x] refactor: Contraband 0.7.0
2024-10-27 16:48:51 -04:00
Eugene Yokota 14f7d29afc Contraband 0.7.0 2024-10-27 16:21:18 -04:00
eugene yokota 70c28dac84
Merge pull request #7832 from xuwei-k/extension-implicit-class
[2.x] use `extension` instead of `implicit class`
2024-10-26 02:55:18 -04:00
xuwei-k 6922915949 use extension instead of implicit class 2024-10-26 09:05:27 +09:00
eugene yokota b564b5114e
Merge pull request #7821 from xuwei-k/extension-OptionSyntax
[2.x] use `extension` in `OptionSyntax`
2024-10-23 00:58:41 -04:00
xuwei-k 7ecae27b3d use extension in OptionSyntax 2024-10-23 13:29:30 +09:00
eugene yokota fc18a7e4fe
Merge pull request #7818 from xuwei-k/toIntOption-toLongOption-toDoubleOption
[2.x] use `to{Int, Long, Double}Option` methods
2024-10-22 23:52:41 -04:00
eugene yokota efc41bd8d8
Merge pull request #7815 from xuwei-k/CompatParColls
[2.x] delete `sbt.internal.CompatParColls`
2024-10-22 23:52:14 -04:00
eugene yokota c2a0f162ee
Merge pull request #7817 from xuwei-k/sbt-on-command
[2.x] fix deprecated colon syntax in build.sbt
2024-10-22 23:51:43 -04:00
eugene yokota 267305b758
Merge pull request #7814 from xuwei-k/cleanup-if-scalaBinaryVersion-3
[2.x] cleanup dependency settings
2024-10-22 23:51:19 -04:00
eugene yokota 8d686a71bd
Merge pull request #7816 from xuwei-k/scalatest-scalacheck
[2.x] update scalatest and scalacheck
2024-10-22 23:49:02 -04:00
eugene yokota 009174a21b
Merge pull request #7812 from xuwei-k/private-this
[2.x] `private[this]` => `private`
2024-10-22 23:24:53 -04:00
xuwei-k 22f5c798f5 use to{Int, Long, Double}Option methods 2024-10-23 12:22:40 +09:00
kenji yoshida 84dda7b486
fix deprecated colon syntax in build.sbt 2024-10-23 12:13:59 +09:00
xuwei-k 67db9c5da1 update scalatest and scalacheck 2024-10-23 08:56:59 +09:00
xuwei-k 34832a1c3e delete sbt.internal.CompatParColls 2024-10-23 08:47:38 +09:00
xuwei-k ab988030fc cleanup dependency settings 2024-10-23 08:25:51 +09:00
xuwei-k a74eb0e449 private[this] => private 2024-10-23 07:53:06 +09:00
xuwei-k ec70bae39a use extension instead of implicit class 2024-10-23 07:05:38 +09:00
eugene yokota 16d644a636
Merge pull request #7808 from Friendseeker/bump-misc-deps
[2.x] Bump launcher & ipcsocket version
2024-10-22 09:57:59 -04:00
eugene yokota c4b5119630
Merge pull request #7810 from xuwei-k/scalafmt-3-8
[2.x] Update scalafmt
2024-10-22 09:56:51 -04:00
xuwei-k 00d01ce215 Update scalafmt 2024-10-22 19:58:21 +09:00
friendseeker 07581e5054
Bump launcher-interface & ipcSocket version 2024-10-22 01:06:11 -07:00