Skip to content
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

Sync with the stable documentation branch #17614

Closed
wants to merge 190 commits into from

Conversation

github-actions[bot]
Copy link
Contributor

This pull request is syncing the main with changes from language-reference-stable.

It was created automatically after 8810943 by @Kordyjan

Kordyjan and others added 30 commits January 23, 2023 16:17
Fixes #15927

Check for whether the non-scala3 parent exists before checking the start
and end of the span to confirm whether the span exists in
getParentsAsTreeSymbolTuples.
…age in worksheets in the Scala Plugin for IntelliJ IDEA

- Calling `setOut/setErr` in a concurrent environment without any synchronization (such as the Scala compile server in the Scala Plugin for IntelliJ IDEA, which is used to execute Scala 3 worksheets) can lead to unpredictable outcomes where the out/err streams are not restored properly after changing.
- This change adds a new default method `redirectOutput` which can be overriden by others to control the redirecting behavior of the REPL driver.
…ver for usage in worksheets in the Scala Plugin for IntelliJ IDEA" (#16947)

Backports #16810
Increased timeout due to timeouts when running on dotty community build
The issue was in the encoding into `{ExprMatchModule,TypeMatchModule}.unapply`.
Specifically with the `TypeBindings` argument. This arguments holds the
list of type variable definitions (`tpd.Bind` trees). We used a `Tuple`
to list all the types inside. The problem is that higher-kinded type
variables do not conform with the upper bounds of the tuple elements.
The solution is to use an HList with any-kinded elements.
Kordyjan and others added 23 commits August 9, 2023 23:29
Backports #18269

Duplicate of #18372 that was autoclosed by github.
infoDependsOnPrefix now also considers non-final term members. Before
8d65f19 it only considered abstract types. Constructors were classified
as non-final, which caused regression. We now exclude constructors
specifically. Maybe we should instead classify them as effectively final.

Fixes #18160
This is mainly a cleanup.
…18440)

Reverts #17457.
This fix caused significant challenges in maintaining the source
compatibility. We decided not to include it in 3.3.1. It will still be a
part of 3.4 and future Scala Next versions.

It is possible that in the future, an improved version of this fix will
make it to one of 3.3.x releases.
Previously, we rejected the case where a symbol of a self type selection
was private if was not of the enclosing class. But that symbol could shadow
a non-private symbol in a base class, so have to treat that case as well.

Fixes #18631
Reverts #16849 on the LTS line.

Introducing new experimental overload with fewer arguments is breaking
source compatibility.

Fixes #18414
Also fix typos in older changelogs
@Kordyjan Kordyjan force-pushed the language-reference-stable branch from c75b81d to 99ca930 Compare September 7, 2023 08:53
@bishabosha
Copy link
Member

what is the blocker here @Kordyjan, who can work on this?

dabrowski-adam and others added 2 commits October 1, 2023 21:56
`-source future` is still required as of 3.3 LTS.
@Kordyjan Kordyjan closed this Oct 18, 2023
Kordyjan added a commit that referenced this pull request Oct 18, 2023
Replaces #17614

This PR is semi-automatically generated to synchronize
`language-reference-stable` with `main`.

It takes all commits from the first branch that are not present on the
second and filters out all that were backported from `main` or have more
than one parent. Then it examines changes introduced by each commit.

Changes are divided into three groups:
- safe - those affect files in `changelogs`, `docs`, `scaladoc`, and
`scaladoc-testcases` directories or any `**.md` file.
- potentially safe - affect files in `project` direcotry
- unsafe - all other modifications

Commits only having safe changes were cherry-picked. Those having any
potentially safe changes and those that contained both safe and unsafe
changes were examined individually. Other commits were skipped.

Running a script and answering about each questionable commit took less
than 10 minutes, and as a result, we have no conflicts. Working on
#17614 would have required hours of fixing dozens of conflicts resulting
from merging changes cherry-picked from the `main` branch. It could also
have led to subtle problems.

If there is no problem with this approach, I'll modify the script
slightly and make it a part of a CI instead of the current step that
tries to merge the documentation branch to `main` after every change.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.