Commit Graph

17940 Commits

Author SHA1 Message Date
Eugene Yokota f07fa809f5 Add cache tests
This adds scripted test for cached compilation and tests.
2025-05-04 17:00:13 -04:00
eugene yokota 4c0ab346a7
Merge pull request #8101 from eed3si9n/wip/scalacoptions
[2.x] Scala compiler plugin support
2025-05-04 01:25:35 -04:00
Eugene Yokota d10e5b6f48 Add test for cache hits 2025-05-02 03:23:29 -04:00
Eugene Yokota 2fd08caeda Scala compiler plugin support
**Problem**
Compiler options for the compiler plugins ends up capturing the absolute path, specific to the machine.

**Solution**
This encodes the plugin paths as virtual paths.
2025-05-01 00:15:42 -04:00
eugene yokota 61b0f37375
Merge pull request #8099 from eed3si9n/wip/cache-fix
[2.x] fix: Fix action cache
2025-04-28 03:48:44 -04:00
Eugene Yokota 537359eb9b fix: Fix action cache
**Problem**
Action cache is capturing absolute path.

**Solution**
Use virtial path.
2025-04-28 03:16:18 -04:00
eugene yokota 978dd5779d
Merge pull request #8087 from eed3si9n/wip/test-quick-bug2
[1.x] fix: Fix incremental test with companion objects
2025-04-01 00:00:25 -04:00
Eugene Yokota 1415b2efa4 fix: Fix incremental test with companion objects [merge-skip]
**Problem**
Incremental test (aka testQuick) has a bug when companion objects
depends on others since at some point it's failing to look up relationship from Zinc analysis.

**Solution**
This fixes the lookup.
2025-03-31 22:44:57 -04:00
OlegYch baa9a919ba Reproduce testQuick + object deps bug [merge-skip]
testQuick after code change doesn't rerun the test.
This was adopted from https://github.com/OlegYch/sbt-testQuick-bug
2025-03-31 21:47:02 -04:00
Eugene Yokota 4d583fa19e Split test-quick test into two [merge-skip] 2025-03-31 21:43:04 -04:00
eugene yokota 187eb0f584
Merge pull request #8086 from bjaglin/cache-semanticdb
[2.x] cache semanticdb output when not included in JAR
2025-03-29 21:23:13 -04:00
Brice Jaglin 9ff4e1d1e9 cache semanticdb output when not included in JAR 2025-03-28 12:47:03 +01:00
Brice Jaglin 543cf45071 rename scripted 2025-03-28 11:55:35 +01:00
eugene yokota 036603dac6
Merge pull request #8078 from eed3si9n/wip/test-quick-bug
[2.x] fix: Fix incremental test with companion objects
2025-03-25 10:13:36 -04:00
eugene yokota 876222e7a7
Merge pull request #8081 from eed3si9n/wip/stdout
fix: Avoid printing to stdout
2025-03-25 01:52:12 -04:00
Eugene Yokota af714b8318 fix: Avoid printing to stdout
**Problem**
The runner script prints out "copying runtime jar" etc to stdout.

**Solution**
This removes the log, and moves other logs to stderr.
2025-03-25 01:34:53 -04:00
Eugene Yokota 2f4280c6f3 fix: Fix incremental test with companion objects
**Problem**
Incremental test (aka testQuick) has a bug when companion objects
depends on others since at some point it's failing to look up relationship from Zinc analysis.

**Solution**
This fixes the lookup.
2025-03-23 22:25:16 -04:00
OlegYch 405527266d Reproduce testQuick + object deps bug
testQuick after code change doesn't rerun the test.
This was adopted from https://github.com/OlegYch/sbt-testQuick-bug
2025-03-23 22:22:02 -04:00
Eugene Yokota 690a3947f2 Split test-quick test into two 2025-03-23 22:21:06 -04:00
Eugene Yokota 898d9f66d3 sbt 1.10.11 2025-03-17 01:26:22 -04:00
eugene yokota 4fe6384ce0
Merge pull request #8071 from eed3si9n/wip/windows
[1.x] fix: Fix sbt --client on Windows
2025-03-17 00:46:31 -04:00
Eugene Yokota ff4825ccff fix: Fix sbt --client on Windows
**Problem**
sbt --client doens't work on Windows because the runner script
passes itself to the server, but it's unable to launch Bash script.

**Solution**
Pass in the bat version instead on Windows.
2025-03-16 23:57:47 -04:00
eugene yokota 1b4a345406
Merge pull request #8070 from eed3si9n/wip/bump-io
[1.x] fix: Use Retry.io for compilation
2025-03-16 22:25:06 -04:00
Eugene Yokota 12d2cc8ef1 fix: Use Retry.io for compilation
**Problem**
sbt 1.10.10 still has retry problem with compilation.

**Solution**
Revert the retry logic back to the time when we only retried IOExceptions.
2025-03-16 21:43:01 -04:00
eugene yokota 75536d12a5
Merge pull request #8069 from eed3si9n/wip/update-coursier
[1.x] Update lm-coursier-shaded to 2.1.8
2025-03-16 21:15:22 -04:00
Eugene Yokota 0e1088145a Update lm-coursier-shaded to 2.1.8 2025-03-16 19:53:50 -04:00
eugene yokota 0d4c11b396
Merge pull request #8067 from eed3si9n/wip/fix-warning
[1.x] fix: Fix SIP-51 message
2025-03-16 15:37:01 -04:00
Eugene Yokota bd7bf73de5 fix: Fix SIP-51 message
**Problem**
The error message uses name, which may not match the actual project id
that the user can type into the shell.

**Solution**
Use displayBuildRelative to calculate the proper subproject id.
2025-03-16 14:58:23 -04:00
eugene yokota 9c08aea5fc
Merge pull request #8066 from eed3si9n/wip/v
[1.x] fix: Avoid creating target on sbt -V
2025-03-16 02:29:15 -04:00
Eugene Yokota 89ff2440ef fix: Avoid creating target on sbt -V
**Problem**
sbt -V tries to show both the sbt version and the runner version,
and ends up creating target directory even on a non-sbt directory.

**Solution**
If the current directory doesn't have a build, just display the runner version.
2025-03-16 02:08:33 -04:00
eugene yokota 57b7317251
Merge pull request #8063 from xuwei-k/scala-21779-workaround
[2.x] remove scala 3 issues 21779 workaround
2025-03-12 21:57:30 -04:00
xuwei-k cbc065f0ff remove scala 3 issues 21779 workaround 2025-03-13 08:05:05 +09:00
eugene yokota ef6da07433
Merge pull request #8062 from eed3si9n/wip/scala-3.6.4 2025-03-10 09:37:42 -04:00
Eugene Yokota de5c9b1869 Scala 3.6.4 2025-03-10 01:51:32 -04:00
eugene yokota c00d65f4a3
Merge pull request #8061 from bjaglin/patch-2
[2.x] Remove debug println
2025-03-10 01:10:07 -04:00
Brice Jaglin 80ac808619
Remove debug println 2025-03-10 02:37:15 +01:00
eugene yokota 0c6d433037
Merge pull request #8060 from eed3si9n/wip/run
[2.x] Implement client-side run
2025-03-09 20:52:30 -04:00
Eugene Yokota 8db8c79d33 Implement client-side run
**Problem**
`run` task has been emulated via function call inside of a sandboxed classloader,
and blocking the command processing of sbt server loop.
This poses isolation and availability issues.

**Solution**
This implements client-side run where the server creates a sandbox environment, and sends the information to the client,
and the client forks a new JVM to perform the run.
The client-side behavior has been implemented in sbtn side already.
2025-03-09 15:00:24 -04:00
eugene yokota e595914edc
Merge pull request #8059 from eed3si9n/wip/merge-1.10.x
[2.x] Merge 1.10.x
2025-03-08 19:36:28 -05:00
Eugene Yokota 2c3c0f4a7c Merge branch '1.10.x' into wip/merge-1.10.x 2025-03-08 19:05:30 -05:00
eugene yokota 78bffa22b6
Merge pull request #8057 from eed3si9n/wip/shutdown
[1.x] Shortcut sbtn shutdown
2025-03-05 22:06:50 -05:00
Eugene Yokota 9d4cc80a80 Shortcut sbtn shutdown
**Problem**
WHen portfile is not found, sbtn will try to start the server
even when the desired command is shutdown.

**Solution**
When the command is just shutdown, don't start the server.
2025-03-05 02:27:46 -05:00
Eugene Yokota 70a8ee4fb4 sbt 1.10.10 2025-03-04 01:01:15 -05:00
eugene yokota ce38f0a37d
Merge pull request #8054 from eed3si9n/wip/retry
[1.x] Skip retry on CompileCancelled
2025-03-03 22:57:07 -05:00
Eugene Yokota 946b54c858 Skip retry on CompileCancelled
**Problem**
When compilation fails, it's retrying 10 times
since Retry now retries on non-IOExceptions.

**Solution**
This adds CompileFailed to excluded exception list.
2025-03-03 22:19:22 -05:00
Eugene Yokota a3a72b3245 sbt 1.10.9 2025-03-03 13:06:40 -05:00
eugene yokota d3ea4c5771
Merge pull request #8052 from eed3si9n/wip/bump-zinc
Zinc 1.10.8 + sbtn 1.10.8
2025-03-03 12:37:14 -05:00
Eugene Yokota 290431bfc5 Zinc 1.10.8 + sbtn 1.10.8 2025-03-03 12:22:09 -05:00
eugene yokota 0c1fd9aff7
Merge pull request #8051 from eed3si9n/wip/revert-run-switching
[1.x] Revert run switching on 1.x
2025-03-03 11:23:33 -05:00
Eugene Yokota 5d5fe21ec5 Revert run switching on 1.x
**Problem**
client-side run apparently won't work for Scala.JS,
so forcing sbtn users to client-side run will break the Scala.JS users.

**Solution**
This reverts the client-side run on sbt 1.x, while retaining the
mechanism for sbt 2.x usages via sbtn.
Now, if `run / connectInput := true` is true, stdout will not display on sbtn.
2025-03-03 04:59:36 -05:00