Skip to content

ng build stuck after successful build since sentryWebpack v2 #345

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

Closed
johanneszelger opened this issue Jul 7, 2023 · 32 comments
Closed

ng build stuck after successful build since sentryWebpack v2 #345

johanneszelger opened this issue Jul 7, 2023 · 32 comments

Comments

@johanneszelger
Copy link

Since i upgraded from the plugin v1 to v2, my angular build gets stuck after a successfull build:

Build at: 2023-07-07T10:40:52.046Z - Hash: cc2971c88cd12369 - Time: 32093ms

just won't end the process after this line. When i remove the plugin, the build ends normally. I tried the plugin versions 2.4 2.3 2.0, all unsuccessfull.

@niewicz
Copy link

niewicz commented Jul 12, 2023

I have the same problem on Angular 15 app, when I add sentry webpack plugin I see success for build and sourcemap upload, but the process is not finished
This makes the plugin not usable

@AbhiPrasad AbhiPrasad transferred this issue from getsentry/sentry-webpack-plugin Jul 13, 2023
@Lms24
Copy link
Member

Lms24 commented Jul 13, 2023

Hi, can you please share your plugin config? Do you get console output from the plugin regarding source maps upload or how many files were uploaded?

@johanneszelger
Copy link
Author

johanneszelger commented Jul 13, 2023

Sure, my config is:

plugins = [
  new webpack.DefinePlugin({
    "process.env.RELEASE": JSON.stringify(release),
    "process.env.BUILD": JSON.stringify(build)
  })
]

if (process.env.SENTRY_AUTH_TOKEN !== undefined && process.env.SENTRY_AUTH_TOKEN !== "") {
  console.log("adding sentry webpack because auth token was found, release: ", release)
  plugins.push(sentryWebpackPlugin({
    url: "url",
    org: "org",
    project: "frontend",

    authToken: process.env.SENTRY_AUTH_TOKEN,

    release: {
      name: release,
      finalize: false,
      cleanArtifacts: true,
      dist: build
    }
  }))
} else
  console.log("skipping sentry webpack because auth token was not found")

module.exports = {
  devtool: "source-map", // Source map generation must be turned on
  plugins: plugins,
  watch: false,
};

And yes i get output from the plugin, all sourcemaps are uploaded successfully, they are also visible on sentry. Everything is working - its just that my build pipeline gets stuck after the successfull build. If i cancel the process manually, everything works as expected.

@MitkoTschimev
Copy link

We have the same issue. It just doesn't end the webpack process

@MitkoTschimev
Copy link

MitkoTschimev commented Jul 17, 2023

I was able to pin it down to the dependency unplugin.
For a simple plugin with this dep on the newest version shows the same behavior

unjs/unplugin#323

@Lms24
Copy link
Member

Lms24 commented Jul 20, 2023

Thanks for investigating this @MitkoTschimev, appreciate the effort! Let's see if this can be fixed in unplugin. In the meantime, you might want to look into setting up Sentry-CLI to upload your source maps as a workaround.

@MitkoTschimev
Copy link

MitkoTschimev commented Jul 20, 2023

It is unsuitable for us because we use service workers with angular. The service worker works based on the content hash value of artifacts. if we manipulate the files afterwards, they are not matching anymore.

This is the advantage of the webpack plugin.

we use at the moment version 1.x and its fine for us

@lforst
Copy link
Member

lforst commented Jul 24, 2023

I am contemplating whether we should just remove unplugin entirely. In the beginning, I thought it was a good idea to abstract away all the bundler intricacies but by now many of the injection flows are different anyhow. I believe we're operating too low-level for unplugin to be effective. It would be a medium refactor but one dependency less.

@github-actions
Copy link

This issue has gone three weeks without activity. In another week, I will close it.

But! If you comment or otherwise update it, I will reset the clock, and if you label it Status: Backlog or Status: In Progress, I will leave it alone ... forever!


"A weed is but an unloved flower." ― Ella Wheeler Wilcox 🥀

@johanneszelger
Copy link
Author

I am contemplating whether we should just remove unplugin entirely. In the beginning, I thought it was a good idea to abstract away all the bundler intricacies but by now many of the injection flows are different anyhow. I believe we're operating too low-level for unplugin to be effective. It would be a medium refactor but one dependency less.

Is there any news yet?

@Lms24
Copy link
Member

Lms24 commented Aug 23, 2023

Hi, no news at this time. We're not gonna get to this this week. Maybe next week we can look into fixing this quickly in unplugin. Moving away from unplugin is a larger task I'm afraid and we're currently completely packed with tasks and projects.

@github-actions
Copy link

This issue has gone three weeks without activity. In another week, I will close it.

But! If you comment or otherwise update it, I will reset the clock, and if you label it Status: Backlog or Status: In Progress, I will leave it alone ... forever!


"A weed is but an unloved flower." ― Ella Wheeler Wilcox 🥀

@niewicz
Copy link

niewicz commented Sep 27, 2023

Any updates?

@getsantry getsantry bot moved this to Waiting for: Product Owner in GitHub Issues with 👀 Sep 27, 2023
@lforst
Copy link
Member

lforst commented Sep 29, 2023

No updates. I think we are soft-blocked by unjs/unplugin#323. We could remove the unplugin dependency but it would result in quite a bit of work which we don't have the cycles for right now :(

@salonmonster
Copy link

This is still an issue.
I've rolled back to ^1.21.0 for now, but wasted a good while trying to track this down :(

@getsantry getsantry bot moved this to Waiting for: Product Owner in GitHub Issues with 👀 3 Aug 6, 2024
@gerbermichi
Copy link

Our workaround is to use the sentry-cli to upload the sourcemap with a specific release:
Associating release with Artifact Bundle

@andreiborza
Copy link
Member

Yes, so the workaround is either to downgrade or to use sentry-cli. We are thinking of refactoring unplugin out but have not yet committed to it.

@smeubank
Copy link
Member

smeubank commented Jan 13, 2025

Let's see if this can be fixed in unplugin

@Lms24 any update if this is fixable in unplugin? This came up internally from another org. Realistically i do not think we will remove unplugin in the near future.

Should we attempt a fix upstream? unjs/unplugin#323 (comment)

@Lms24
Copy link
Member

Lms24 commented Jan 13, 2025

Hmm no updates from my end but the suggested fix sounds simple enough to give it a try! We can try first in our plugin (will do some testing) and if this works, we could submit a PR upstream.

@Lms24
Copy link
Member

Lms24 commented Jan 13, 2025

I opened #653 but no promises that this will get merged or work (cc @smeubank). As it stands, I actually cannot reproduce this issue locally in a simple Angular 14 test app that uses the Angular webpack builder and our plugin in the latest version.

If someone can provide a minimal reproduction (zip, GH issue, whatever else but please a buildable project), I'd appreciate it!

@Lms24
Copy link
Member

Lms24 commented Jan 13, 2025

Something else I just came across: https://stackoverflow.com/a/63246847. Might be worth for anyone experiencing this issue to set watch explicitly. Again, I cannot reproduce this, so I can't help any further.

@rgant
Copy link

rgant commented Jan 13, 2025

Angular v14 is really old and well past end of support. IIRC this was a problem with updating to v16 (based on the age of my original comment), and definately an issue with v17 (which is the oldest version still officially supported).

Also note that that SO post is also quite old and ejecting the Angular webpack config is no longer even a thing I believe. Not even sure if webpack is still much of a thing anymore: https://angular.dev/tools/cli/build-system-migration

@getsantry getsantry bot moved this to Waiting for: Product Owner in GitHub Issues with 👀 3 Jan 13, 2025
@Lms24
Copy link
Member

Lms24 commented Jan 14, 2025

I'm well aware of Angular 14 being old :) However, unjs/unplugin#323 (comment) mentions NG14, so I thought I'd try to repro the bug on 14. Also aware of Webpack not being used anymore but afaik, you can still opt into using the webpack builder. Which anyone who's still coming across this problem must be using anyway :)

@Lms24
Copy link
Member

Lms24 commented Jan 17, 2025

We released version 3.0.0 of the plugins. It includes a potential fix for the Angular build hanging (#653). Would be great if anyone still affected by this can give it a try and report back. Thanks!

@Lms24
Copy link
Member

Lms24 commented Jan 24, 2025

Quick update: We had to change course a bit and not the forced process exit that I introduced in #653 no longer is default behaviour but since version 3.1.0 you need to enable it with an experimental flag (see #663):

sentryWebpackPlugin({
  // ...other options
  _experiments: { forceExitOnBuildCompletion: true },
});

@getsantry
Copy link

getsantry bot commented Feb 15, 2025

This issue has gone three weeks without activity. In another week, I will close it.

But! If you comment or otherwise update it, I will reset the clock, and if you remove the label Waiting for: Community, I will leave it alone ... forever!


"A weed is but an unloved flower." ― Ella Wheeler Wilcox 🥀

@getsantry getsantry bot added the Stale label Feb 15, 2025
@getsantry getsantry bot closed this as not planned Won't fix, can't repro, duplicate, stale Feb 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Archived in project
Archived in project
Development

No branches or pull requests