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

Update React to v18 #46

Closed
wants to merge 41 commits into from
Closed

Update React to v18 #46

wants to merge 41 commits into from

Conversation

AlexandraBuzila
Copy link
Member

@AlexandraBuzila AlexandraBuzila commented Jul 15, 2022

What it does

  • remove usage of ReactDOM.render and use new root API
  • mitigate removal of the React render callback: remove onRender field
    from ReactDialog and ReactWidget. Subclasses are now adding the
    callbacks themselves.
  • list children prop explicitly
  • mitigate state batching in SearchInWorkspaceInput
  • fix return type in ToolbarImpl.renderGroupsInColumn

Review checklist

Reminder for reviewers

Signed-off-by: Alexandra Buzila abuzila@eclipsesource.com

Copy link
Member

@sdirix sdirix left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good in general:

  • Please add the `contributed on behalf" message to the commit message
  • Add contributed on behalf to the change log
  • Adapt migration guide with the update to React 18, link to a React upgrade guide and shortly explain code changes which might lead to problems for consumers.

package.json Show resolved Hide resolved
packages/core/README.md Show resolved Hide resolved
packages/core/src/browser/tree/tree-widget.tsx Outdated Show resolved Hide resolved
@sdirix sdirix requested a review from sgraband July 18, 2022 10:53
@sdirix
Copy link
Member

sdirix commented Jul 18, 2022

@sgraband Please test locally on your machine. Check for errors and warnings during build and runtime and also check the IDE experience.

@AlexandraBuzila AlexandraBuzila force-pushed the react-v18-update branch 2 times, most recently from 56b9dbb to bcc5fda Compare July 20, 2022 12:23
Copy link

@sgraband sgraband left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you @AlexandraBuzila! LGTM as well 👍

@sdirix sdirix changed the base branch from master to 0.6.1 July 22, 2022 10:00
@sdirix sdirix changed the base branch from 0.6.1 to master July 22, 2022 10:00
vince-fugnitto and others added 3 commits July 25, 2022 12:32
The commit adds the ability to dismiss the exception widget which would previously
require users to completely close the editor to dismiss.

Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
The commit updates the `find in folder` menu to only apply for folders and not files.
The commit also registers a keybinding for the command.

Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
msujew and others added 14 commits July 26, 2022 15:51
The commit performs a yarn upgrade in preparation for the `1.28.0`
release. The update is important to get a better representation of what
downstream applications will pull and ensure our version ranges are
valid.

Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
Fixes eclipse-theia#11464

Contributed on behalf of STMicroelectronics.

Change-Id: Ibf63bd38a2d7b0754355edcdf2002aba60a0ffe5
Signed-off-by: Philip Langer <planger@eclipsesource.com>
Signed-off-by: Alvaro Sanchez-Leon <alvaro.sanchez-leon@ericsson.com>
In order to not overload the websocket channel opened between the
frontend and the backend we should chunk and buffer the output of
terminals.

Add `BufferingStream` that will buffer data for some time before
emitting it.
The commit removes the `Plugin: Deploy Plugin by Id` command since:
- the command does not exist in vscode
- the command is confusing, and not user-friendly
- there are better and recommended ways to install plugins at runtime

Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
The commit improves the `download:plugins` script to better handle errors when interacting with the open-vsx marketplace when resolving packs and extension dependencies. The changes mean that we will no longer bail fast when errors occur and instead output all available errors if they exist.
The commit adds support to display a message in the extensions view when there are errors fetching or searching extensions. The message helps users better understand when errors exist, and provides feedback when something is wrong which otherwise was unclear to them.

Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
Added appHost, isNewAppInstall, isTelemetryEnabled, onDidChangeTelemetryEnabled, and remoteName API to our missing vscode API implementation.

For isNewAppInstall, we use the creation date of a random theia file as installation date. Moreover, since theia doesn't support telemetry, we implemented stubs for the API related to telemetry.

Follow feedback on `env.appHost` and take the current runtime into
account: `desktop` when running Electron, `web` otherwise.

Co-authored-by: Paul Maréchal <paul.marechal@ericsson.com>
Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
The commit updates the changelog for the `v1.28.0` release including
notable improvements, features, fixes and potential breaking changes.

Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
vince-fugnitto and others added 5 commits July 28, 2022 14:03
The commit updates the core re-exports for `1.28.0`.

Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
The commit adds the `no-unreachable` eslint rule as an error.
The rule will prevent unreachable code in the codebase.

Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
colin-grant-work and others added 19 commits August 2, 2022 08:24
Addresses problems with the theme selection quick picks and theme flashes
 - Adjusts PreferenceRegistry to use Monaco code for `Configuration` and `ConfiguratioModel`.
 - Enables access and setting of language-overridden preferences from plugins according to VSCode API
 - Updates `affectsConfiguration` check to respect override options (language and URI)
The commit adds support for `keys` in the `Memento` VS Code API.

Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
- Implement support for plugins providing evalutable epressions
- Update the debug hover widget to consume evaluatable expressions from the registered providers. Keep the former implementation of guessing the expression from the current line as fallback.

Contributed on behalf of STMicroelectronics

Signed-off-by: Nina Doschek <ndoschek@eclipsesource.com>

Fixes eclipse-theia#10027
Signed-off-by: jaimemartinagui@gmail.com
Co-authored-by: Vincent Fugnitto <vincent.fugnitto@ericsson.com>
Co-authored-by: zhaomenghuan <1028317108@qq.com>
The commit fixes the call to `FILE_DELETE` which did not pass an array of URIs which the
`workspace-delete-handler` expected. This caused a bug where newly created files could not be
deleted.

Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
The commit updates the localization for `Open VSX Registry`.
The name should not be localize as it is it's name.

Signed-off-by: vince-fugnitto <vincent.fugnitto@ericsson.com>
The commit includes updates to the `extensions` view:

- update `averageCount` rendering similarly to vscode
- add missing translations for the markdown tooltip

Signed-off-by: yiliang114 <1204183885@qq.com>
Co-authored-by: Mark Sujew <mark.sujew@typefox.io>
Co-authored-by: Vincent Fugnitto <vincent.fugnitto@ericsson.com>
Fixes a bug when blame is triggered multiple times
before the completion of the first request.
- remove usage of ReactDOM.render and use new root API
- mitigate removal of the React render callback: remove onRender field
from ReactDialog and ReactWidget. Subclasses are now adding the
callbacks themselves.
- list children prop explicitly
- mitigate state batching in SearchInWorkspaceInput
- fix return type in ToolbarImpl.renderGroupsInColumn

Contributed on behalf of STMicroelectronics

Signed-off-by: Alexandra Buzila <abuzila@eclipsesource.com>
Remove npm/npmjs/-/playwright-core/1.22.2 from
dependency-check-baseline.json


Contributed on behalf of STMicroelectronics
Signed-off-by: Alexandra Buzila <abuzila@eclipsesource.com>
Update migration guide to mention react resolutions from package.json


Contributed on behalf of STMicroelectronics
Signed-off-by: Alexandra Buzila <abuzila@eclipsesource.com>
* make containerNodeRoot property readonly in CommentThreadWidget

Contributed on behalf of STMicroelectronics
Signed-off-by: Alexandra Buzila <abuzila@eclipsesource.com>
* update version Migration guide

Contributed on behalf of STMicroelectronics
Signed-off-by: Alexandra Buzila <abuzila@eclipsesource.com>
@sdirix
Copy link
Member

sdirix commented Nov 16, 2022

Merged upstream with eclipse-theia#11455

@sdirix sdirix closed this Nov 16, 2022
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.