atom / highlights

Syntax highlighter
https://atom.github.io/highlights
MIT License
530 stars 54 forks source link

bug: first-mate 7.x does not work in Travis with Node 6 #60

Open bcoe opened 6 years ago

bcoe commented 6 years ago

@as-cii we're running into a nasty issue with marky-markdown on Travis (marky-markdown is what npm uses to render package READMEs on npmjs.com).

We're trying to upgrade to the newest highlights, so that we can pull in syntax highlighting for Typescript and JSX, but when I upgrade to the newest highlights tests start hanging infinitely and timing out on Travis.

I've managed to bisect this issue to the 6.x to 7.x first-mate upgrade in highlights -- tests run fine in Node 8, and they run fine locally with Node 6, but I'm concerned that Travis might be surfacing an underlying instability that we should be mindful of.

Looping in @revin who's been helping out a ton on the marky-markdown project.


Any thoughts about next steps? If I had to guess, I'd bet the issue is either the oniguruma or fs-plus upgrade in first-mate.

as-cii commented 6 years ago

Hello @bcoe, thanks for the report!

Can you send paste a link to the specific commit or branch that you are experiencing this issue on? It might also be interesting to check out the Travis build, so if it is available publicly it would be awesome if you could send a link for that as well. ✨ Thanks!

bcoe commented 6 years ago

@as-cii here's a link to me debugging the issue on Travis, you can see quite a few builds on the show-me-the-jsx branch as I tried to isolate things:

https://travis-ci.org/npm/marky-markdown/builds

The bug manifests itself with the Node 6 tests spinning their wheels infinitely.

Since I couldn't get the same behavior to manifest itself locally, I ended up publishing a few alpha releases of highlights to the fs-downgrade tag to bisect the issue -- (ultimately the problem wasn't fs-extra and was first-mate mind you).

Given that the problem manifests itself with the tests simply randomly stopping and hanging ... my guess is maybe an infinite loop is getting triggered?