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

Revert "Remove __non_webpack_require__ workaround and split Node dependencies correctly (#48154)" #55229

Merged
merged 1 commit into from
May 13, 2024

Conversation

BrennanConroy
Copy link
Member

@BrennanConroy BrennanConroy commented Apr 19, 2024

This reverts commit 93520b6.
It caused more issues than it solved see #52082

We'll need to reopen #47674 and probably completely redo how we bundle the signalr package so it works better.

Revert "Remove non_webpack_require workaround and split Node dependencies correctly

Description

We made a change to fix some esbuild issues with the signalr npm package. Unfortunately, these changes had unintended side-effects to Angular apps.

Customer Impact

People using Angular 17 have build errors when using the @microsoft/signalr package.
Workarounds are given in #52082 (comment)

Regression?

  • Yes
  • No

Change in 8.0 to how we referenced external dependencies for node apps. Broke people using Angular 17 (which released after the change).

Risk

  • High
  • Medium
  • Low

Completely reverting a change to how it was for multiple releases so there isn't any real risk. However, it is technically a breaking change when using esbuild. It's sad, but far more people are being affected by the current issue than were fixed by the change. A full fix would likely also be a breaking change as it likely requires reworking how we bundle the package which changes what files are available in the bundled package.

Verification

  • Manual

Packaging changes reviewed?

  • Yes
  • No
  • N/A

@dotnet-issue-labeler dotnet-issue-labeler bot added the area-signalr Includes: SignalR clients and servers label Apr 19, 2024
@dotnet-policy-service dotnet-policy-service bot added this to the 8.0.x milestone Apr 19, 2024
@BrennanConroy
Copy link
Member Author

/azp run

Copy link

Azure Pipelines successfully started running 3 pipeline(s).

Copy link
Member

@mitchdenny mitchdenny left a comment

Choose a reason for hiding this comment

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

I'd love for the SignalR package to be directly importable into a modern browser using the standard ES module support that is available. When I looked at this last time I think the issue was that some of the bundlers (can't remember if webpack was an issue) just didn't have good support for it yet.

@BrennanConroy BrennanConroy added the Servicing-approved Shiproom has approved the issue label May 9, 2024
@wtgodbe wtgodbe merged commit d6c333e into release/8.0 May 13, 2024
23 of 25 checks passed
@wtgodbe wtgodbe deleted the brecon/bpbundle branch May 13, 2024 18:29
@dotnet-policy-service dotnet-policy-service bot modified the milestones: 8.0.x, 8.0.6 May 13, 2024
@BrennanConroy
Copy link
Member Author

/backport to main

Copy link
Contributor

Copy link
Contributor

@BrennanConroy backporting to main failed, the patch most likely resulted in conflicts:

$ git am --3way --ignore-whitespace --keep-non-patch changes.patch

Applying: Revert "Remove __non_webpack_require__ workaround and split Node dependencies correctly (#48154)"
Using index info to reconstruct a base tree...
M	src/SignalR/clients/ts/signalr/package.json
Falling back to patching base and 3-way merge...
Removing src/SignalR/clients/ts/signalr/src/DynamicImports.ts
Removing src/SignalR/clients/ts/signalr/src/DynamicImports.browser.ts
Auto-merging src/SignalR/clients/ts/signalr/package.json
CONFLICT (content): Merge conflict in src/SignalR/clients/ts/signalr/package.json
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 Revert "Remove __non_webpack_require__ workaround and split Node dependencies correctly (#48154)"
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
Error: The process '/usr/bin/git' failed with exit code 128

Please backport manually!

Copy link
Contributor

@BrennanConroy an error occurred while backporting to main, please check the run log for details!

Error: git am failed, most likely due to a merge conflict.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-signalr Includes: SignalR clients and servers Servicing-approved Shiproom has approved the issue
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants