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

Validate next Hermes release will work with existing stable branches #13182

Open
5 tasks
jonthysell opened this issue May 3, 2024 · 2 comments
Open
5 tasks
Assignees
Labels
Area: Debug Infrastructure Area: JavaScript Engine Deliverable Major item tracked for top-level planning in ADO enhancement Workstream: Developer Experience Support the RNW developer inner-loop.
Milestone

Comments

@jonthysell
Copy link
Contributor

As part of addressing the issues in #12982, @vmoroz is working on catching up hermes-windows with the upstream changes. This includes trying to do so in a way that enables our various stable branches (>= 0.71) to consume this next version of hermes-windows.

Right now, RNW 0.71 works with the current version of hermes-windows, 0.1.18, and RNW 0.72 and above have the aforementioned debugging issues.

We want to actually verify the issues are fixed by Vladimir's work, i.e. that the new build will work with each stable branch, before we release the new version of hermes-windows. There may be some back and forth in this process as functionality may vary between different release branches.

Tasks

Strategy

  1. @vmoroz will create a Microsoft.JavaScript.Hermes nuget package with the updated code
  2. For each of the the branches for the tasks listed above, prep by:
    1. Have ready a new RNW Paper test app targeting that version of RNW
    2. Make sure UseHermes is enabled in ExperimentalFeatures.props
    3. Make sure the app is set to use UseDirectDebugger instead of UseWebDebugger in App.cpp
    4. Update (or create) the NuGet.config file with a local folder set as a nuget feed
    5. Update the app JS code to include a Button or something that can be explicitly invoked so there's a callback where variables are created and breakpoints can be set
    6. Have built the app once (to save time)
    7. Verify that you can attach a debugger (edge://inspect), set breakpoints in the callback mentioned above, and note what the current debugging experience looks like
  3. When the drop is ready, put the nuget package in the local folder, then for each test app:
    1. Build the app with logging, making sure that this new local version was used (rather than the version from NuGet.org)
    2. Test the debugging experience again
    3. Report back to @vmoroz if the stable branch works, doesn't work, new issues, etc.
    4. Be ready for new drops, and/or to have to make code changes to the app's local copy of RNW
  4. After it's been tested and we're in a good state, let @vmoroz publish a new official build
  5. Use the task list above to create tasks and then PRs to update each stable branch with the new Hermes version + any changes you may have had to do to RNW code to make the new version work
@microsoft-github-policy-service microsoft-github-policy-service bot added the Needs: Triage 🔍 New issue that needs to be reviewed by the issue management team (label applied by bot) label May 3, 2024
@chrisglein chrisglein added this to the Next milestone May 6, 2024
@chrisglein chrisglein removed the Needs: Triage 🔍 New issue that needs to be reviewed by the issue management team (label applied by bot) label May 6, 2024
@gabor-seres-sap
Copy link

We've encountered the following on 0.71-stable branch: #13312

@TatianaKapos TatianaKapos modified the milestones: Next, Backlog Jun 19, 2024
@jonthysell jonthysell modified the milestones: Backlog, Next Aug 28, 2024
@jonthysell
Copy link
Contributor Author

Even though this is recurring work, adding to Next so it's not lost in the Backlog.

@chiaramooney chiaramooney added the Workstream: Developer Experience Support the RNW developer inner-loop. label Oct 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: Debug Infrastructure Area: JavaScript Engine Deliverable Major item tracked for top-level planning in ADO enhancement Workstream: Developer Experience Support the RNW developer inner-loop.
Projects
None yet
Development

No branches or pull requests

5 participants