react-helmet: Uncaught RangeError: Maximum call stack size exceeded

screenshot 2018-05-03 15 37 05

Hey, HelmetWrapper uses deepEqual to compare props and of course, there are react children components with endless amount of nested objects. This seems like a dangerous way to check props equality. Could we turn HelmetWrapper into PureComponent?

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Reactions: 43
  • Comments: 45 (6 by maintainers)

Commits related to this issue

Most upvoted comments

Yeh same.

The work around for us was to not use react children to pass in <meta> <title> tags, and use the props way:

<Helmet
  title={pageTitle}
  meta={[
  {
    name: 'description',
    content: pageDescription,
   },
   ]}
/>

Updating for visibility.

We had some organizational changes and I need to get permission in order to publish to NPM. While that is in progress, we have published to our internal nexus servers for testing.

Stay tuned. v.6.0.0-beta is coming. We had to bump a major version because we removed the default export and migrated to rollup.js for better bundling support.

thank you all.

@donaldpipowitch Think about this: the fix has been merged for a month now and the maintainters of the library still don’t care at all. They could have released this easy fix for a month now and you’d never have to waste any development work hours to track down this weird bug. Still, they don’t care and they continue to knowingly waste the time of developers all over the world just because the maintainers of this library are too lazy and ignorant.

Still, they don’t care and they continue to knowingly waste the time of developers all over the world just because the maintainers of this library are too lazy and ignorant.

We are volunteers and I was on paternity leave (returned last tuesday). Please be civil, we are all human.

You are also welcome to pull from master, copy and paste the code into a vendor folder and use as is. Or use a different package entirely, react-helmet-async looks promising https://github.com/staylor/react-helmet-async.

What is the reasoning behind the deep equality check? Per the React docs…

We do not recommend doing deep equality checks or using JSON.stringify() in shouldComponentUpdate(). It is very inefficient and will harm performance.

Please everyone, give @tmbtech a rest or pay him money for working on this issue. Everyone can fork this lib and patch the code or switch to react-helmet-async or use an object for configuration. There are a lot of alternatives.

Remember how it all started in 2015? So much promises, politeness and willingness to serve the community. Naive. https://github.com/erikras/react-redux-universal-hot-example/issues/89 @tmbtech

How do you feel about adding React-Helmet to update titles and meta data? This component would allow developers to update the title/meta tags based on the view. I’m part of the team that open sourced it. I can PR some code, but I wanted to check with you before I started writing code. lmk, thanks.

It looks like they are pretty similar, the biggest advantage would be hands on support, I can always bubble up any issues to the team. 😃 We are using React-Helmet in all of our new react websites, we are also seeking feedback so we can improve on our open source workflow. We plan to release more and the feedback would help tremendously.

Three years passed and no one cares anymore. Reminds me of some clumsy accidental teenage male/female relationship.

Frontend was blooming at the time. Now it’s all starting to rot.

This is a really bad bug - as the props way is not even the documented recommended way to pass metadata to helmet, and there is no other workaround.

I have the same problem… Why is this closed?

Why this is still not adressed?

Ok, I can to pay something. What the cost you’re talking about? We just need a working package, and we know what the “open source” means.

Wow, people are rude.

Looking forward to a release 😍 We have this problem as well and just tracked down the issue.

  1. key trick doesn’t help in all cases
  2. Library still crashes in 5.2.0

This bug is devastating. Had to switch to react-helmet-async which doesn’t have this problem 😢