Commit Graph

17237 Commits

Author SHA1 Message Date
eugene yokota 16269ba88e
Merge pull request #8205 from Duhemm/mduhem/build-sbt-annotations
Support annotated definitions in build.sbt
2025-08-11 13:17:10 -04:00
eugene yokota ab60408edd
Merge pull request #8206 from xuwei-k/mima-sbt-2
[2.x] Update mima setting
2025-08-11 12:56:55 -04:00
xuwei-k ae499c2030 Update mima setting 2025-08-11 19:44:28 +09:00
Martin Duhem da0fa5388e
Support annotated definitions in build.sbt
Previously, sbt would fail to load build.sbt files when they included
annotated definitions because the parser would not correctly recognize
those definitions as such. In sbt 1.x, this used to be fine, because
there was little use for annotations in build.sbt.

Starting with sbt 2, whether caching should be enabled for a task key
can be controlled via annotations on the task key definition. Because
these can appear in build.sbt, support for annotations in build.sbt
becomes more important.

This patch enhances parsing of build.sbt by keeping the parsed trees
around so that the AST can be used to determine whether a given line
represents a setting or a definition, rather than relying on string
matching.
2025-08-11 10:33:22 +02:00
eugene yokota c565b5a82b
Merge pull request #8202 from eed3si9n/wip/partial
[2.x] bport: Handle partialVersion("2")
2025-08-10 20:03:15 -04:00
Eugene Yokota 827efb6ee6 bport: Handle partialVersion("2")
https://github.com/sbt/librarymanagement/pull/528
2025-08-10 19:50:18 -04:00
eugene yokota 95b4ea386f
Merge pull request #8201 from eed3si9n/wip/uri
[2.x] fix: Change URL usage to URI
2025-08-10 19:10:30 -04:00
Eugene Yokota 3581b4a05b fix: Change URL usage to URI 2025-08-10 18:32:04 -04:00
eugene yokota 1b056e71d7
Merge pull request #8200 from eed3si9n/wip/fix-reload
[2.x] fix: Fixes reload
2025-08-10 11:49:05 -04:00
Eugene Yokota 5df3843410 fix: Fixes reload
**Problem**
Plugins go missing after reload.

**Solution**
We need to stop caching the classpaths apparently.
2025-08-10 04:58:53 -04:00
eugene yokota d7d2a6f0d4
Merge pull request #8199 from eed3si9n/wip/dependency-tree
[2.x] refactor: Unify to dependencyTree
2025-08-10 01:24:05 -04:00
Eugene Yokota (eed3si9n) 61fe604519 refactor: Unify to dependency-tree
**Problem**
While sbt-dependency-graph is useful, not just for the basic ASCII graph,
but for DOT file generation etc, it adds a large number of settings and
tasks for combination of formats and actions to the point that
we actually disable most of them by default.

**Solution*
I've had an idea for a while that dependencyTree can be implemented
as a inputTask that accepts its own subcommands and options,
and this implements that.

For example, to open the browser that hosts a DOT file, now you can write
    dependencyTree dot --browse
2025-08-10 00:37:16 -04:00
eugene yokota d6ce0bf314
Merge pull request #8197 from eed3si9n/wip/merge-1.11.x
[2.x] Merge 1.11.x branch
2025-08-09 14:49:29 -04:00
Eugene Yokota ed0b16375d Update test 2025-08-09 13:58:35 -04:00
Eugene Yokota 7d00a2c51d Merge branch '1.11.x' into wip/merge-1.11.x 2025-08-09 13:47:36 -04:00
eugene yokota 09b9a97437
Merge pull request #8196 from eed3si9n/wip/hide-ivy
[2.x] refactor: Hide Ivy-related classes
2025-08-09 02:29:48 -04:00
Eugene Yokota 9e37218dcf refactor: Hide Ivy-related classes
Move Ivy-related classes to internal.
Promote IvyPaths and Credentials to core.
2025-08-09 01:52:45 -04:00
eugene yokota a4ac406186
Merge pull request #8185 from eed3si9n/wip/sync-lm
[2.x] Forward port some changes from lm
2025-08-08 03:53:53 -04:00
eugene yokota 0673821f57
Merge pull request #8193 from eed3si9n/wip/fork-parallel
[2.x] Flip testForkedParallel to true
2025-08-08 02:40:22 -04:00
Eugene Yokota 42010a317e Flip testForkedParallel to true 2025-08-08 02:06:36 -04:00
eugene yokota 424d0eb50d
Merge pull request #8191 from unkarjedy/1.11.x
[sonatype publishing] print deployment validation errors if present
2025-08-05 00:21:45 -04:00
eugene yokota bb739bafa1
Merge branch '1.11.x' into 1.11.x 2025-08-05 00:09:13 -04:00
eugene yokota 5614d0161d
Merge pull request #8192 from eed3si9n/wip/bump-sbt
[1.x] Use sbt 1.11.4
2025-08-05 00:08:56 -04:00
Eugene Yokota 39d2342d03 Use sbt 1.11.4 2025-08-04 23:47:29 -04:00
Dmitrii Naumenko b83eee4528 [sonatype publishing] print deployment validation errors if present
Before this change you had to log into the sonatype account and search for the errors there.
(https://central.sonatype.com/publishing/deployments)
This was inconvenient, especially if you don't have the admin access to the account.
2025-08-04 15:03:53 +02:00
Eugene Yokota 1186515b1a sbt 1.11.4 2025-08-04 06:16:57 -04:00
eugene yokota 5ee54ac60c
Merge pull request #8190 from eed3si9n/wip/fix-key
[1.x] Fix sonaUploadRequestTimeout
2025-08-04 04:53:57 -04:00
eugene yokota 3e21938c20
Merge pull request #8189 from eed3si9n/wip/bump-lm
[1.x] Bump to lm 1.11.3
2025-08-04 04:51:04 -04:00
Eugene Yokota 699c970065 Fix sonaUploadRequestTimeout
**Problem/Solution**
sonaUploadRequestTimeout should be a global key.
2025-08-04 04:28:53 -04:00
Eugene Yokota 545e480d14 Bump to lm 1.11.3 2025-08-04 04:10:23 -04:00
eugene yokota d267bce6dc
Merge pull request #8187 from eed3si9n/wip/bump-zinc
[2.x] Bump Zinc
2025-08-04 01:29:10 -04:00
Eugene Yokota 38606b1f22 Bump Zinc 2025-08-04 01:15:20 -04:00
eugene yokota e631b80a6a
Merge pull request #8186 from eed3si9n/wip/test-doc
[2.x] Test ScalaDoc
2025-08-04 00:06:05 -04:00
Eugene Yokota f1d2d22ff2 Test ScalaDoc 2025-08-03 23:28:56 -04:00
Roberto Tyley 20eb474043 Resolvers: clarify deprecation pointer to `sonatypeCentralSnapshots`
The current deprecation messages for `sonatypeRepo()` & `sonatypeOssRepos()` (added with https://github.com/sbt/librarymanagement/pull/517) say:

> use the following instead: resolvers += Resolver.sonatypeCentral**Snapshots**

...but following this advice can expose projects to using **snapshot** artifacts when they did not previously! This is unfortunate, as snapshots artifacts are inherently more risky, due to being mutable.

For example, invocations of `sonatypeOssRepos()` like [this](76234e013f/project/plugins.sbt (L10)):

```scala
resolvers ++= Resolver.sonatypeOssRepos("releases")
```

...should _not_ be replaced by `sonatypeCentralSnapshots()`, as, AFAIK, only non-snapshot releases would be in `sonatypeOssRepos("releases")`
2025-08-03 23:08:12 -04:00
Eugene Yokota 9e483d62ca Update jsch to 0.2.23 2025-08-03 23:00:08 -04:00
eugene yokota e9276c9143
Merge pull request #8184 from eed3si9n/wip/remove-integration-test
[2.x] Remove IntegrationTest
2025-08-03 21:31:21 -04:00
Eugene Yokota ac57fb083e Remove IntegrationTest 2025-08-03 19:50:33 -04:00
eugene yokota c8fa434eb3
Merge pull request #8183 from eed3si9n/wip/cleanup
[2.x] Remove unused code
2025-08-03 16:17:45 -04:00
Eugene Yokota 7bb55fc9fb Remove unused code 2025-08-03 16:03:00 -04:00
eugene yokota 36a4fe4af7
Merge pull request #8182 from eed3si9n/wip/merge-1.11.x
[2.x] merge 1.11.x
2025-08-03 13:45:47 -04:00
Eugene Yokota b1a3ef3743 Merge branch '1.11.x' into wip/merge-1.11.x 2025-08-02 23:13:41 -04:00
eugene yokota 7550356ef6
Merge pull request #8181 from eed3si9n/wip/test-type
[2.x] refactor: Change the test type
2025-08-02 18:26:58 -04:00
Eugene Yokota c8737b8e4f refactor: Change the test type
**Problem**
test task is typed to unit.
To distinguish test from any other tasks, we want to actually type this to something.

**Solution**
Forward TestResult to the test task.
2025-08-02 18:12:20 -04:00
eugene yokota 5c12b605eb
Merge pull request #8180 from eed3si9n/wip/wait
fix: Use promise to wait for forked test
2025-08-02 15:31:46 -04:00
Eugene Yokota 9b1e644be1 fix: Use promise to wait for forked test
**Problem**
I'm seeing NPE in some test-related tests like tests/junit:
[info] [error] java.lang.NullPointerException: Null output stream
[info] [error] 	at java.io.PrintStream.requireNonNull(PrintStream.java:79)
[info] [error] 	at java.io.PrintStream.<init>(PrintStream.java:151)
[info] [error] 	at java.io.PrintStream.<init>(PrintStream.java:135)
[info] [error] 	at sbt.internal.WorkerProxy.inputStream$lzyINIT1(WorkerExchange.scala:69)
[info] [error] 	at sbt.internal.WorkerProxy.inputStream(WorkerExchange.scala:69)
[info] [error] 	at sbt.internal.WorkerProxy.println(WorkerExchange.scala:77)
[info] [error] 	at sbt.ForkTests$.mainTestTask$$anonfun$1(ForkTests.scala:160)

This is likely coming from ProcessBuilder#run not immediately processing the passed in processIO.

**Solution**
This uses Promise to wait for the processIO to be processed.
2025-08-02 15:14:22 -04:00
eugene yokota a8cd83a4f1
Merge pull request #8179 from xuwei-k/Scala-3-7-2 2025-07-31 20:27:27 -04:00
xuwei-k 5581f5fd1a Scala 3.7.2 2025-07-30 09:55:46 +09:00
eugene yokota f284e809d4
Merge pull request #8170 from eed3si9n/wip/worker2
[2.x] Implement worker + forked test
2025-07-06 13:31:26 -05:00
Eugene Yokota 2293bddfef sbt 1.11.3 2025-07-05 15:17:39 -05:00