Commit Graph

173 Commits

Author SHA1 Message Date
João Ferreira cd393bb318 ModuleInfo 2024-06-17 22:18:05 +01:00
João Ferreira b00e242744 ScmInfo 2024-06-17 22:18:05 +01:00
João Ferreira 03f0288ae6 Developer 2024-06-17 22:18:05 +01:00
João Ferreira d078dc4772 Artifact 2024-06-17 22:18:05 +01:00
Eugene Yokota 02fc0d9d89 Merge branch 'wip/sbt-2.x-merge' into wip/sbt-2.x 2024-05-31 00:21:45 -07:00
Adrien Piquerez 1b3d5324bb Use String instead of File as key of stamps
- regenerate contraband
2024-05-29 10:37:56 +02:00
Adrien Piquerez 28b5db1465 fix Scala 3 compilation 2024-05-23 17:09:12 +02:00
Adrien Piquerez 863004961c Merge remote-tracking branch 'origin/develop' into wip/sbt-2.x 2024-05-23 16:53:23 +02:00
Eugene Yokota 4f108dfc80 Merge branch 'develop' into wip/sbt-2.x-merge 2024-05-13 00:13:46 -04:00
Eugene Yokota 04fcad6d9a Use 2 for binarySbtVersion in 2.x 2024-04-08 22:33:56 -04:00
Eugene Yokota 13f7bb250b sjsonnew 0.14.0-M1 2023-10-29 14:54:24 -04:00
Roberto Tyley fdb519b9e2 Avoid repeating versions in Eviction warning message
As with https://github.com/sbt/librarymanagement/pull/386, which dealt
with Eviction *errors*, this fixes the way Eviction *warnings* report
the list of evicted versions - removing duplicate versions - and does a
refactor so that both `EvictionError` & `EvictionWarning` are using the
same logic to generate the revision string.

The logic for the revisions string is moved to the new field
`EvictionPair.evictedRevs`.

Without this fix, we see Eviction warnings like this:

```
* org.scala-lang.modules:scala-java8-compat_2.13:1.0.2 is selected over {1.0.0, 1.0.0}
```
2023-09-16 13:09:07 +01:00
eugene yokota a3637713eb
Merge pull request #428 from mdedetrich/add-allModuleReports-to-updateReportExtra
Add allModuleReports to UpdateReport
2023-09-13 10:07:52 -04:00
Matthew de Detrich fd3b33b472
Add allModuleReports to UpdateReport 2023-09-11 00:55:09 +02:00
Kunal cf5fc207b0
Update CrossVersionUtil.scala (#426) 2023-08-30 09:06:44 -04:00
Matthew de Detrich 10a79d6001
Add Apache staging repo 2023-07-27 10:16:15 +02:00
eugene yokota cbd7195aee
Merge pull request #418 from xuwei-k/java-net-URL
avoid deprecated `java.net.URL` constructor
2023-06-25 14:08:22 -04:00
xuwei-k 9a1d836b4e update scalafmt 2023-06-25 10:16:26 +09:00
xuwei-k 363c0fe015 avoid deprecated `java.net.URL` constructor
- https://bugs.openjdk.org/browse/JDK-8295949
- openjdk/jdk@4338f52
2023-06-25 09:46:39 +09:00
Adriaan Moors 998df8b692 Allow user to suppress eviction errors for a specific library
... even if they would result in an incompatible eviction
based on the assumed version scheme.
2023-05-04 21:04:29 +02:00
Adriaan Moors 87f8089ba8 More readability for processEvictions 2023-05-04 21:04:29 +02:00
Adriaan Moors 2821443c80 Simplify processEvictions by inlining calculateCompatible 2023-05-04 21:04:29 +02:00
Eugene Yokota 7d052bde8f Deprecate IntegrationTest
We plan to remove IntegrationTest configuration.
See https://eed3si9n.com/sbt-drop-custom-config/ for details.
2023-04-24 01:14:49 -04:00
Nicolas Rinaudo e8cce49ba6 Expand properties found in maven settings 2023-04-09 15:46:23 +02:00
Eugene Yokota 6fee91bbff Don't apply platform substitution to % 2023-03-12 19:06:18 -04:00
Eugene Yokota 47ef80eadf Subsume platform cross building
Problem
In sbt 1, platform cross building is implemented using in the user-land
using `%%%` operator, which clevery handles both Scala cross building
and appending platform suffix like sjs1.
However, in general symbolic `%%%` is confusing, and hard to explain.

Solution
In sbt 2, we should subsume the idea of platform cross building,
so `%%` can act as the current `%%%` operator.
This adds a new field called `platformOpt` to `ModuleID`, which
by default will be set to `None`.
`ScalaModuleInfo` will also add a new field called `platform`,
which can be set to `None`, `Some(sjs1)` etc.
As part of module transformation (like adding `_2.13`), the library
management engine can transform `ModuleID` to `sjs1` etc.
`("com.github.scopt" %% "scopt" % "4.1.0").platform(jvm)` will
explicitly use the JVM version of dependency (equivalent to today's `%%`).
2023-03-12 03:25:29 -04:00
Eugene Yokota f0c54a9fe9 Make some tests working 2023-03-12 03:25:29 -04:00
eugene yokota c57c466c10
Merge pull request #411 from mdedetrich/add-apache-maven-snapshot-repository
Add Apache Maven Snapshots Repository
2023-02-20 10:51:09 -05:00
Matthew de Detrich 63d3dccb9e
Add Apache Maven Snapshots Repository 2023-02-18 10:44:25 +01:00
Arman Bilge 3cee90bd55 Add `POM_RELEASE_NOTES_KEY` 2023-02-13 04:05:10 +00:00
Arman Bilge f17280780d Formatting 2022-07-30 02:51:02 +00:00
Arman Bilge d2fba6fde0
Better deprecation message for `sonatypeRepo` 2022-07-29 19:32:14 -07:00
Eugene Yokota 457af6978f Fix isScalaBinaryCompatibleWith
Problem
-------
Current impl is relaxed about comparing non-release Scala 2.x versions.

Solutution
----------
Use scalaApiVersion to compare two Scala 2 versions.
2022-06-26 21:05:52 -04:00
Rui Gonçalves daec6265c4
Rename function and extend support to Scala 4+ 2022-06-25 22:54:08 +01:00
Rui Gonçalves 2318269dc5
Add CrossVersionExtra.isBinaryCompatible utility 2022-06-25 21:41:10 +01:00
Eugene Yokota 76452e53ff Drop OkHttp dependency
Ref https://github.com/sbt/sbt/issues/6912

Problem
-------
There's apparently a security issue with OkHttp 3.x,
which I am not really sure how applicable it is to our usage
of OkHttp but it is there.

Solution
--------
Since most of OkHttp-specic usage within LM is for Apache Ivy
downloading, I am going to drop this.
Since `sbt.librarymanagement.Http.http` is a public API,
I am substituting this with Apache HTTP backed implementation.
2022-06-12 22:24:44 -04:00
eugene yokota e15f0c149a
Merge pull request #393 from armanbilge/feature/sonatypeRepos
Deprecate `sonatypeRepo`, add `sonatypeOssRepos` to `Resolver`
2022-05-07 19:04:44 -04:00
Eugene Yokota a071882321 Add predefined list of licenses 2022-01-31 19:22:37 -05:00
Arman Bilge 7a2f81ea05 sonatypeRepos -> sonatypeOssRepos 2022-01-31 23:23:34 +00:00
Eugene Yokota a8f2b1f636 Reformat 2022-01-30 03:08:24 -05:00
Eugene Yokota a4ce8db55b Manually edit Contraband-generated code 2022-01-30 02:55:26 -05:00
Eugene Yokota e9ee8a6cab Scala 3 2022-01-30 02:55:17 -05:00
Arman Bilge c17309a914 Deprecate sonatypeRepo, add sonatypeRepos 2022-01-16 21:43:36 +00:00
Arman Bilge a561f3a901 Add shortcut for s01.oss.sonatype.org to Resolver
Fixes https://github.com/sbt/sbt/issues/6787.
See also: https://central.sonatype.org/news/20210223_new-users-on-s01/
2022-01-16 21:34:54 +00:00
Peter Janssen f89ba48906 Respect maven.repo.local property 2021-12-23 16:38:52 +01:00
Eugene Yokota 129b43acd2 intern/flyweight ConfigRef
Fixes https://github.com/sbt/sbt/issues/6721

Problem
-------
ConfigRef is among the most created on heap.

Solution
--------
intern/flyweight it.
2021-11-20 19:39:18 -05:00
xuwei-k 3ca1898721 fix warning. prepare Scala 3 2021-11-17 12:19:45 +09:00
Roberto Tyley 9786906eca Avoid repeating versions in Eviction error message
Rather than seeing an error like this, with the evicted version numbers
being repeated many times:

```
[error] 	* org.scala-lang.modules:scala-java8-compat_2.13:1.0.0 (early-semver) is selected over {0.9.0, 0.9.0, 0.9.0, 0.9.0, 0.9.1, 0.9.1, 0.9.1}
```

...I'd much rather see an error like this:

```
[error]         * org.scala-lang.modules:scala-java8-compat_2.13:1.0.0 (early-semver) is selected over {0.9.0, 0.9.1}
```
2021-09-17 18:12:13 +01:00
Adrien Piquerez 37234e35ba Fix Scala 3 binary version
- for 3.0.1-bin-nonbootstrapped it should be 3
- for 3.0.1-SNAPSHOT it should be 3
2021-07-08 13:14:16 +02:00
Eugene Yokota 0aa7d69ee6 Fix cross-Scala suffix conflict warning
Fixes https://github.com/sbt/sbt/issues/6578

Problem
-------
The regex currently expects two segments like2.x or 3.x,
but Scala 3 uses _3 as the cross suffix, and it's not caught.

Solution
--------
Change the regex.
2021-07-05 04:11:20 -04:00