-
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
Resolve conflicts between stable documentation and main #16306
Merged
Kordyjan
merged 46 commits into
scala:main
from
dotty-staging:documentation-forwardpost
Nov 17, 2022
Merged
Resolve conflicts between stable documentation and main #16306
Kordyjan
merged 46 commits into
scala:main
from
dotty-staging:documentation-forwardpost
Nov 17, 2022
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
fixes lampepfl#15969
Co-authored-by: odersky <[email protected]>
Co-authored-by: Guillaume Martres <[email protected]>
If we see a class type parameter that has a wildcard argument, we now intersect the original info of the class type parameter and the argument. Previously we replaced the class type parameter info with the argument info, but that might lose information. Fixes scala#15940
…Type fixes lampepfl#15964
…ed arguments" (scala#16044) Backports scala#15970
…tiateToSubType" (scala#16047) Backports scala#15965
…mputeAsSeenFrom" (scala#16101) Backports scala#16070
Be still more careful when intersecting info and arguments of a class type parameter. This is the latest installment of a never-ending story. The problem is this: Given ```scala class C[T >: L1 <: H1] { val x: T } def f(): C[? >: L2 <: H2] ``` what is the type of `f().x`? With capture conversion (an extremely tricky aspect of the type system forced on us since Java does it), the type is something like `?1.T` where `?1` is a skolem variable of type `C[? >: L2 <: H2]`. OK, but what is the underlying (widened) type of `?1.T`? We used to say it's `C[T >: L1 <: H1]`. I.e. we forgot about the actual arguments. But then we had to change untupling desugarings from defs to vals in scala#14816 to fix scala#14783 and it turned out that was not good enough, we needed the information of the actual arguments, i.e. the type should be `C[T >: L2 <: H2]. Then something else started failing which relied on the formal arguiment bounds being preserved. So the new resolution was that the type would be the intersection of the formal parameter bounds and the actual bounds, i.e. `C[T >: L1 | L2 <: H1 & H2]`. Then there was a series of problems where _that_ failed, either because the parameter bound was F-bounded or because the intersection was an empty type. The latest installment is that the parameter bounds refer to another parameter in the same class, which requires a simultaneous substitution of all skolemized bounds for all dependent parameter references in the parameter bounds. But that's impossible or at least very hard to achieve since we are looking at the type of a single parameter after capture conversion here. So the current solution is to also back out of the intersection if there are cross-parameter references and to use just the argument bounds instead.
Was truncating tuples of size > 22 before. Fixes scala#16104
…arameters" (scala#16196) Backports scala#16112
Now when we are syncing `language-reference-stable` with the release branches after each patch release, it is safe to use the `baseVersion` as a version for the documentation. It wasn't the case earlier because we assumed a slightly more complicated model for publishing the reference documentation. Note to self: This should be ported to both `main` and `release-3.2.2`. The former will be tried automatically, but will probably fail due to conflicts. see: scala#15598
fix the quick links in the top nav bar after: <img width="1240" alt="Screenshot 2022-11-08 at 16 55 23" src="https://user-images.githubusercontent.com/13436592/200613015-5e1fb513-2da9-4ad6-8eb9-56306cf47803.png">
julienrf
reviewed
Nov 9, 2022
bishabosha
reviewed
Nov 9, 2022
bishabosha
requested changes
Nov 9, 2022
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we can't change the TASTy version
julienrf
reviewed
Nov 9, 2022
bishabosha
reviewed
Nov 10, 2022
Kordyjan
force-pushed
the
documentation-forwardpost
branch
from
November 10, 2022 09:26
3821908
to
eee068d
Compare
Kordyjan
force-pushed
the
documentation-forwardpost
branch
2 times, most recently
from
November 16, 2022 14:10
c777a68
to
8e759cd
Compare
Kordyjan
force-pushed
the
documentation-forwardpost
branch
from
November 16, 2022 14:56
8e759cd
to
8f8c3a4
Compare
bishabosha
reviewed
Nov 16, 2022
bishabosha
requested changes
Nov 16, 2022
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the changes to reference/other-new-features/indentation.md need reverting
bishabosha
approved these changes
Nov 17, 2022
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.