Commit Graph

70 Commits

Author SHA1 Message Date
Eugene Yokota de20328029 Let ++ fall back to a bincompat Scala version
Fixes https://github.com/sbt/sbt/issues/7327

**Problem**
In builds with mixed Scala patch versions (like scalameta),
it's possible for a core subproject to be set to the lastest 2.12.x,
but the compiler plugin component is cross published to 2.12.0 etc.
`++ 2.12.0` in this case does not work since sbt 1.7.x onwards requires
the queried Scala version to be listed in `crossScalaVersions`.

**Solution**
This implements sbt 1.6.x-like fallback mechanism,
but instead of using the queried version (e.g. 2.12.0) it will set
the Scala version to one of listed versions that is binary compatible.
2023-07-09 18:31:55 -04:00
xuwei-k c7ec22cff8 avoid deprecated `java.net.URL` constructor
- https://bugs.openjdk.org/browse/JDK-8295949
- 4338f527aa
2023-06-25 08:23:09 +09:00
xuwei-k 74be55d0f6 update scala versions in scripted test 2023-06-24 10:18:14 +09:00
Julien Richard-Foy 72bfb3f45a Transfer copyright to Scala Center 2023-06-20 16:39:07 +02:00
Ondra Pelech 9ec7c4f027 Dependency graph with colors (based on the organization) (#7052) 2023-06-17 02:29:48 +02:00
adpi2 f692583034
Merge pull request #7295 from adpi2/fix-7288
Fix #7288: `publish` should not fail if `publish / skip := true`
2023-06-13 09:54:45 +02:00
Adrien Piquerez 1b31a377d2 Reproduce #7288 in scripted project/skip 2023-06-12 18:05:12 +02:00
eugene yokota cab5c48e24
Merge pull request #7286 from adpi2/fix-7285 2023-06-06 10:25:49 -04:00
Adrien Piquerez 9707e1a3f8 Clear warnings in scripted actions/external-doc 2023-06-05 21:24:20 +02:00
Adrien Piquerez dd00e143f2 Fix #7285: use legacy Maven style on publishLocal 2023-06-05 21:24:20 +02:00
Kevin Lee b01f583451 Add: hedgehog to supported default testFrameworks 2023-06-05 20:14:40 +10:00
Matthias Kurz ebbf0617a2
Update Scala to 2.13.11 2023-06-03 22:27:45 +02:00
Eugene Yokota 10a79bc6b0 Update Scala to 2.13.10 2023-06-01 23:24:31 -04:00
Eugene Yokota 1f1ee778e3 Update Scala to 2.12.18
Fixes https://github.com/sbt/sbt/issues/7235
2023-06-01 12:13:40 -04:00
Jakub Kozłowski f8a29b748b
Add weaver-cats as a default test framework (#7263)
Add weaver-cats as a default test framework
2023-05-21 23:28:04 -04:00
Eugene Yokota 731af0173c Add init as an alias to new 2023-05-07 14:17:26 -04:00
Adrien Piquerez 9e0a728c58 Add sbtPluginPublishLegacyMavenStyle to publish to Artifactory
Artifactory rejects the legacy artifacts of sbt plugin.
It is now possible to publish to Artifactory
by turning `sbtPluginPublishLegacyMavenStyle` off.
2023-04-11 16:56:24 +02:00
eugene yokota 4a470dcd17
Merge pull request #7148 from armanbilge/feature/release-notes-url
Add `releaseNotesURL` setting
2023-03-07 10:37:46 -05:00
Matthew de Detrich 2a332a56a9
Make skip work on publishLocal 2023-03-03 16:09:44 +01:00
Arman Bilge 414c3a4358 Add test for `apiURL` 2023-02-28 18:08:29 +00:00
Arman Bilge 1a2b2467b4 Add test for `releaseNotesURL` 2023-02-28 18:05:27 +00:00
Adrien Piquerez 8020ec4d7c Smooth transition to valid Maven pattern of sbt plugin
For an sbt plugin, we publish two POM files, the legacy one, and the
new Maven compatible one. The name of the new POM file contains the sbt
cross-version _2.12_1.0. The format of the new POM file is also slightly
different, because we append the sbt cross-version to all artifactIds of
sbt plugins. Hence Maven can resolve the new sbt plugin POM and its
dependencies.

When resolving an sbt plugin, we first try to resolve the new Maven POM
and if it fails we fallback on the legacy one. When parsing the new POM
format, we remove the sbt cross-version from all artifact IDs so that
there is no mismatch between old and new format of dependencies.
2023-02-22 10:09:26 +01:00
Adrien Piquerez 8e64caae8f Add scripted to test the sbt plugin resolution
As of sbt 1.9, we publish deprecated and valid poms. In this test
we check that sbt resolve the valid pom of an sbt plugin and fallback
to the deprecated pom if the valid pom cannot be found.
2023-02-22 10:09:26 +01:00
Eugene Yokota 05fe27226e Zinc 1.8.0, lm 1.8.0 2022-11-10 15:41:52 -05:00
Eugene Yokota e55955d918 lm-coursier-shaded 2.0.13 2022-11-10 11:19:57 -05:00
Eugene Yokota 39dc13668f lm-coursier-shaded 2.0.12
https://github.com/coursier/sbt-coursier/releases/tag/v2.0.12
2022-10-30 18:25:04 -04:00
Nabil Abdel-Hafeez e7a847615a
Add zio-test TestFramework to default test frameworks 2022-10-16 22:42:53 +02:00
gontard 11a7ab3ef7 Reproduce issue #5504 in scripted test 2022-09-30 11:25:19 +02:00
gontard 68e2ec872d Activate test-quick scripted test 2022-09-30 11:25:08 +02:00
Eugene Yokota b00792a3a7 Scala 2.12.17
This bumps up scala-xml to 2.x.
2022-09-17 04:09:52 -04:00
xuwei-k 87bd79e538 remove sbt-dotty 2022-07-08 15:04:47 +09:00
xuwei-k 7e68572b10 enable some scripted tests 2022-07-04 13:06:08 +09:00
eugene yokota a03d63d822
Merge pull request #6949 from xuwei-k/enable-some-tests 2022-07-03 10:45:40 -04:00
xuwei-k 72bfa5e3c8 enable some scripted tests 2022-07-03 14:26:18 +09:00
xuwei-k d98074e358 enable project/source-plugins test 2022-07-03 12:54:56 +09:00
Eugene Yokota 05d3d8689b Remove compatibility check from ++
Problem
-------
Since sbt-doge merger `++ <sv> <command1>` has used binary compatibility
as a test to select subproject, but it causes surprising situations like
sbt/sbt#6915, and it blurs the responsibility of YAML file and build
file as the version specified in the version can override the Scala
version test on local laptop.

Solution
--------
This removes the compatibiliy check (backward-only or otherwise),
and require that `<sv>` match one of `crossScalaVersions` using the new
Semantic Version selector pattern.
2022-07-02 18:38:04 -04:00
Rui Gonçalves 705d3d58ce Filter incompatible Scala 3 projects in cross switch commands 2022-06-26 22:46:37 -04:00
Arnout Engelen 8973fce1fa
More flexible Scala version switch
By using SemanticSelector instead of custom globbing.

Follow-up on https://github.com/sbt/sbt/pull/6894,
fixes https://github.com/sbt/sbt/issues/6934
2022-06-26 12:43:41 +02:00
Arnout Engelen cd915845db Add support for wildcards in Scala version switch
Picking from the `crossScalaVersions`

As discussed in https://github.com/sbt/sbt/discussions/6893
2022-06-24 01:41:38 -04:00
eugene yokota 290925fd99
Merge pull request #6916 from eed3si9n/wip/revert-6814
[1.7.x] Revert "Add support for scala-output-version flag in Scala 3"
2022-06-13 01:57:48 -04:00
Eugene Yokota d9e43ecfdf Revert "Add support for scala-output-version flag in Scala 3"
This reverts commit 1e89d71311.
2022-06-13 01:28:37 -04:00
Eugene Yokota d5889d3ce3 Bump to Scala 2.12.16 2022-06-13 01:27:24 -04:00
Ethan Atkins ca7c872e27 Restore watchOnTermination
At some point the watchOnTermination callback stopped working. I'm not
exactly sure how or why that happened but it is fairly straightforward
to restore. The one tricky thing was that the callback has the signature
(Watch.Action, _, _, _) => State, which requires propagating the action
to the failWatch command. The easiest way to do this was to add a
mutable field to the ContinuousState. This is rather ugly and reflects
some poor design choices but a more comprehensive refactor is out of
the scope of this fix.

This commit adds a scripted test that ensures that the callback is
invoked both in the successful and unsuccessful watch cases. In each
case the callback deletes a file and we ensure that the file is indeed
absent after the watch exits.
2022-04-17 18:31:54 -04:00
Ethan Atkins 64c7071ff2 Move on-termination test 2022-04-17 18:31:45 -04:00
Brice Jaglin 491f70cd30 includePluginResolvers should work for coursier resolutions 2022-03-27 00:06:55 -04:00
Michał Pałka 1e89d71311 Add support for scala-output-version flag in Scala 3 2022-03-24 15:35:57 +01:00
Eugene Yokota 761ad14267 Make License object available
Fixes #1937
Ref https://github.com/sbt/librarymanagement/pull/395
2022-01-31 22:00:54 -05:00
David Francoeur a448b1caab
Load credentials from SBT_CREDENTIALS (#6724)
Load credentials from SBT_CREDENTIALS
Prefer sys.env to System.getenv
2021-11-27 02:44:49 -05:00
xuwei-k aa8b1141f8 Update scalatest 2021-11-14 22:03:59 +09:00
kijuky 76c1b68516 Enable the asciiGraphWidth setting to the dependencyTree tasks. #5962 2021-10-19 02:15:31 +09:00