-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Synchronize language-reference-stable with Scala 3.6.3 #22398
Open
WojciechMazur
wants to merge
1,164
commits into
scala:language-reference-stable
Choose a base branch
from
WojciechMazur:ref-stable/sync-3.6.3
base: language-reference-stable
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Synchronize language-reference-stable with Scala 3.6.3 #22398
WojciechMazur
wants to merge
1,164
commits into
scala:language-reference-stable
from
WojciechMazur:ref-stable/sync-3.6.3
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…1414) While recalculating denotation in NamedType (in `NamedType.memberDenot`, which itself can be called from `NamedType.computeDenot` or `NamedType.recomputeDenot`), it might call `NamedType.disambiguate` which uses a denotation to decide about the correct overloaded method. Using current denotation here might cause stale symbol errors, so instead we use the `lastKnownDenotation`, which should be enough for the use case here, as `targetName` should not change between phases/runs. Later in the denotation recalculation a similar thing happens with `SourceLanguage.apply`, where we also now avoid using currentDenotation, as whether the symbol comes from java or Scala 2 should also not change between phases/runs.
Because `scala3-compiler` contains a copy of `scalajs-ir`, they conflict with each other when being in the same classpath. This was found when trying to migrate the `sbt-scalajs` to sbt 2, because `sbt-scalajs` depends on `scalajs-ir` and on `sbt`, which depends on `scala3-compiler`. The related issue is sbt/sbt#7709. The solution is to shade the compiler version of `scalajs-ir` under its own package: `dotty.tool.sjs.ir`. The compiler uses the `scalajs-ir` internally but it does not need to expose it.
the same upgrade is in flight in these other repos: * scala/scala#10882 * sbt/sbt#7695 JLine release notes: * https://github.com/jline/jline3/releases/tag/jline-3.27.0 * https://github.com/java-native-access/jna/blob/master/CHANGES.md#release-5150 a lot of bugfixes, nothing really stands out that I can see we usually take these upgrades in the hopes they will improve things in small ways, especially for Windows users I verified that the `repl` command inside our sbt build still works (on MacOS anyway)
Previously were referring to non-exisitng file in the outer directory. [skip ci]
https://stackoverflow.com/q/68877939/21927647 Answer to the question: > You were not doing anything wrong, this was an implementation limitation. > > Your example compiles successfully since Scala 3.4, thanks to the changes introduced in SIP-56 "Proper specification for match types" ([text](https://docs.scala-lang.org/sips/match-types-spec.html#:~:text=This%20SIP%20proposes%20a%20proper,the%20specification%20of%20the%20language.), [PR](scala#18262)).
Co-authored-by: Wojciech Mazur <[email protected]>
fixes scala#21762 This makes it possible to implement line number correction for Mill build files under Scala 3
… implicit rather than given
… implicit rather than given (scala#21785) Fixes scala#21757
Using `constrained` on a TypeLambda means adding one TypeLambda for all the type parameters in tp1, while newTypeVar creates a TypeLambda for each type parameter.
Instead of creating type vars, constraining against them, then instantiating them, just instantiate the PolyType with the scrutinee type args (or the lo/hi bound or bounded wildcard from the param).
Reuse SDKs generated in `build-sdk-package` job. Store .sha256 for each of the files, instead of creating sha256.txt with shas for the reach directory to ease validation
…klist (scala#21787) Just noticed the ci issues. The actual changes in the .check files concern `TypeRef(ThisType(TypeRef(NoPrefix(), "immutable")), "List")` (read from byte code) being shown as `TypeRef(TermRef(TermRef(TermRef(ThisType(TypeRef(NoPrefix(), "<root>")), "scala"), "collection"), "immutable"), "List")` (read from tasty), which is expected and also happens in the other excluded tests [test_scala2_library_tasty]
as per the https://github.com/jline/jline3 readme fixes scala#22201 [Cherry-picked 0589be3]
[Cherry-picked e5e4c40]
…directory (scala#22199) Fixes scala#22194 Restores top-level directory `scala3-${version}` that is present in artifacts published before Scala 3.6, removed during hotfix 3.6.1 release. We now follow the [Well formed SDK archives layout](https://github.com/sdkman/sdkman-cli/wiki/Well-formed-SDK-archives). Removing the top-level directory even though at first glance looked like an improvement was in fact introducing problems to multiple package managers and build tools. [Cherry-picked 5b3d82a]
**Problem** It wasn't clear what action users was suppose to take to suppress the new-from-3.6 Given search preference warning. **Solution** 1. This refactors the code to give the warning an error code E205. 2. In case of warnings, tell the user to choose -source 3.5 vs 3.7, or use nowarn annotation. [Cherry-picked 004cfc5]
Signed-off-by: Rui Chen <[email protected]> [Cherry-picked 70cc1a1]
…replaced or mutated port of scala/scala@f6859f2 [Cherry-picked 705c33c]
[Cherry-picked 31690d4]
[Cherry-picked d0fdbfb]
[Cherry-picked ae1b583]
[Cherry-picked 4961d1e][modified]
[Cherry-picked 72848b3]
…o JLine 3.27.1 (was 3.27.0)" to 3.6 (scala#22271) Backports scala#22205 to the 3.6.3. PR submitted by the release tooling. [skip ci]
…top-level directory " to 3.6 (scala#22272) Backports scala#22199 to the 3.6.3. PR submitted by the release tooling. [skip ci]
…cala#22273) Backports scala#22189 to the 3.6.3. PR submitted by the release tooling. [skip ci]
…props are replaced or mutated" to 3.6 (scala#22275) Backports scala#22180 to the 3.6.3. PR submitted by the release tooling. [skip ci]
…2276) Backports scala#21825 to the 3.6.3. PR submitted by the release tooling.
Backports scala#22185 to the 3.6.3. PR submitted by the release tooling. [skip ci]
… 3.6 (scala#22277) Backports scala#22227 to the 3.6.3. PR submitted by the release tooling. [skip ci]
…o 3.6 (scala#22278) Backports scala#22228 to the 3.6.3. PR submitted by the release tooling.
note that I added "dba Akka" to NOTICE.md but I don't believe it's necessary to pollute the version history adding that to the top of every source file, too. in legal contexts, "Lightbend, Inc." is still the company's legal name
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.