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

BUG: ResizeObserver loop completed with undelivered notifications. #1512

Closed
ZekeAranyLucas opened this issue Nov 13, 2023 · 3 comments
Closed
Assignees
Labels
bug Release Note: Shows as Error Correction dev: technical debt Reimplement a former quick fix in a more robust way to ease future development and maintenance. level: hard priority: MUST HAVE role: front-end Front End Developer

Comments

@ZekeAranyLucas
Copy link
Member

ZekeAranyLucas commented Nov 13, 2023

Overview

This is a problem that is only visible on the dev server because that's when the overlay pops up. But this is actually a signal of something more sinister in the code. These kinds of problems can cause hangs, unresponsive pages, or just a bunch of jitter. Right now the browser recovers by breaking the loop for us.

Learn more here:

REPRO

when navigating from "Create Project" or "Feedback" to "My Projects" there is an error overlay

  1. run the dev server locally (overlay is only visible there).
  2. create at least one project
  3. go to "My Projects"
  4. go to "Create Project" or "Feedback"
  5. go to "My Projects"

RESULTS:

Error overlay as described below.

ERROR
ResizeObserver loop completed with undelivered notifications.
    at handleError (http://localhost:3000/static/js/bundle.js:128757:58)
    at http://localhost:3000/static/js/bundle.js:128776:7

EXPECTED:

no error

NOTE: doesn't repro on refresh of "MyProjects" or navigation from "About" and "FAQ".

Might be something to do with scroll bars

Originally posted by @ZekeAranyLucas in #1508 (comment)

@ZekeAranyLucas ZekeAranyLucas added the bug Release Note: Shows as Error Correction label Nov 13, 2023
@ZekeAranyLucas ZekeAranyLucas added level: hard dev: technical debt Reimplement a former quick fix in a more robust way to ease future development and maintenance. role: front-end Front End Developer labels Nov 16, 2023
@Biuwa Biuwa added this to the 09 - Implementation Planning milestone Nov 16, 2023
@ZekeAranyLucas
Copy link
Member Author

I did some digging into this, and the key suspects are tooltips or similar overlay components.

@mark-mxwl mark-mxwl self-assigned this Feb 2, 2024
@Biuwa
Copy link
Member

Biuwa commented Feb 6, 2024

@ZekeAranyLucas
Please provide an update:

  1. Progress(What is the current status of your project? What have you completed, and what is left to do):
  2. Blockers(Difficulties or errors encountered):
  3. Availability(How much time will you have this week to work on this issue):
  4. ETA(When do you expect this issue to be completed):
  5. Pictures (if necessary)(Add any pictures that will help illustrate what you are working on)

@mark-mxwl
Copy link
Member

Hi @ZekeAranyLucas, @entrotech, and @Biuwa. I was not able to reproduce the bug in Chrome, Firefox, or Safari. After some digging, I discovered that the error was quite common when upgrading from React Router 5.x to 6. I took a peek at the TDM commit history and, sure enough, there was an upgrade to v6 on Nov. 7, a week before this issue was posted.

Though the TDM codebase doesn't explicitly call the ResizeObserver API anywhere, any number of packages could, including Router. Unless there's an objection, I would recommend that this issue be marked as closed, as changes to packages/dependencies in the ensuing months have, as far as I can tell, sorted this one out.

@ZekeAranyLucas ZekeAranyLucas closed this as not planned Won't fix, can't repro, duplicate, stale Feb 12, 2024
@ExperimentsInHonesty ExperimentsInHonesty moved this to On Dev - not yet pushed to Prod in P: TDM: project board Jun 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Release Note: Shows as Error Correction dev: technical debt Reimplement a former quick fix in a more robust way to ease future development and maintenance. level: hard priority: MUST HAVE role: front-end Front End Developer
Projects
Status: Released
Development

No branches or pull requests

4 participants