-
Notifications
You must be signed in to change notification settings - Fork 3.4k
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
Breaking change in 2.1.0 #2106
Comments
@UziTech Shouldn't Babel be able to handle this? |
This is affecting our Node 12 CI as well. |
The problem is that marked is only tested in We had a discussion in #1938 (comment) about what versions of node marked should support |
(Dropping support for Node 12 is totally reasonable — just publish a rollback version at 2.1.1 and publish the version that doesn't support Node 12 as 3.0.0.) |
Broke our CI too, via pulling in protobufjs - upgrading to node 14+ seems get past the issue, but we can't do that as a solution for other reasons. |
Yes, I'm discovering that the protobufjs CLI runs a bunch of unversioned (!) npm installs at runtime (!) which pull in marked recursively. |
@glasser - Has anyone reported this to protobufjs ? |
protobufjs is barely maintained. we use our own fork of it and I'm trying to figure out a way to untangle its web of hackery, but honestly if marked@2.1.1 supported Node 12 and marked@3.0.0 was what you published as 2.1.0 it would solve this problem. "No longer runs under a major version of Node that's still in LTS" is a pretty clearly semver-major change. |
@UziTech Should Marked supply the es5 version by default? The transpiled version seems to run slightly faster on the benchmarks anyway. We already have Babel doing the work for us but our documentation doesn't give any hint on how to access it for people who need that compatibility. |
Today, the `marked` project pushed a minor release that broke Node 12 compatibility: markedjs/marked#2106 `marked` is a dep of `jsdoc` which is a dep of the protobufjs CLI. Unfortunately it turns out that the protobufjs CLI installs dependencies including `jsdoc` *at runtime*, *unversioned*. Yikes! See `setup` https://github.com/apollographql/protobuf.js/blob/master/cli/util.js I tried changing our fork to not do this and move the deps to be dev deps of this project (see `@apollo/protobufjs@2.0.0`) but that didn't work out on the first try. So instead, let's just not require the protobufjs CLI to work on Node 12, and also start saving time by not constantly regenerating the code in this package. Now code is only generated manually (`lerna run generate`) and checked in, and it can be done on the latest Node.
…ly (#5328) Today, the `marked` project pushed a minor release that broke Node 12 compatibility: markedjs/marked#2106 `marked` is a dep of `jsdoc` which is a dep of the protobufjs CLI. Unfortunately it turns out that the protobufjs CLI installs dependencies including `jsdoc` *at runtime*, *unversioned*. Yikes! See `setup` https://github.com/apollographql/protobuf.js/blob/master/cli/util.js I tried changing our fork to not do this and move the deps to be dev deps of this project (see `@apollo/protobufjs@2.0.0`) but that didn't work out on the first try. So instead, let's just not require the protobufjs CLI to work on Node 12, and also start saving time by not constantly regenerating the code in this package. Now code is only generated manually (`lerna run generate`) and checked in, and it can be done on the latest Node.
(We're working around it by changing our project's build system to not run the protobufjs CLI automatically on every install but just manually with checking in the generated code, which means the CLI doesn't have to run on every Node version we support.) |
For those running into this problem with Next.js on Vercel (and I guess any other hosted build platform)
You can fix this by upgrading the node version to 14x in your Vercel project settings! |
Just FYI, this is also breaking Twilio CLI's flex plugin:
Thanks for looking into it! |
* Pin `marked` dependency to 2.0.7, as 2.1.0 breaks support in node 12. * Background: markedjs/marked#2106
* Featuer: pin marked * Pin `marked` dependency to 2.0.7, as 2.1.0 breaks support in node 12. * Background: markedjs/marked#2106 * Add PR link
tldr have broken on node 12 https://tldr.sh/ 😭 |
protobufjs is using markedjs and looks like did not lock the version, so it's blocked our production release. Save our live please 😭
|
I've found some workaround, maybe it will help someone Call it before using protobufjs / pbjs
|
Hi! This issue just bit us.
Is this really the only solution right now? We're using yarn v2 and tried the |
We're using yarn too and fixed this in the following way:
Alternatively you can also force marked@^2.0.3 to use 2.0.3. The main thing is to install jsdoc yourself. |
As a workaround for our use case, we fixed the semantic-release to |
🎉 This issue has been resolved in version 2.1.1 🎉 The release is available on: Your semantic-release bot 📦🚀 |
This issue still exists in version 2.1.1. Revert and release breaking change in a new major version please. |
For us (local and CI) it's resolved. Maybe you should delete your |
Marked version: 2.1.0
Describe the bug
The latest code uses the optional chaining operator which makes marked 2.1.0 incompatible with Node V12. It's breaking semantic release which uses Marked. Here:
5be9d6d
Thanks!
The text was updated successfully, but these errors were encountered: