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

Upgrade glob to latest #2058

Closed
gyandeeps opened this issue Jan 19, 2016 · 10 comments
Closed

Upgrade glob to latest #2058

gyandeeps opened this issue Jan 19, 2016 · 10 comments

Comments

@gyandeeps
Copy link
Contributor

Mocha is using glob module version from 2013. I would be good if we can upgrade that to latest so that we can use a lot of globbing patterns with it.

If its ok, then I can send the PR.

@danielstjules
Copy link
Contributor

We've previously experienced issues with upgrading dependencies: #1867 #1887 #1868

Aside from a bump, we'd want to verify compatibility with old versions of node/npm.

@gyandeeps
Copy link
Contributor Author

What is our official nodejs support range?
If its too wide then this change might cause issue (but i have to try it).

@boneskull
Copy link
Member

this is not possible as any glob newer than the one we currently have uses fuzzy version matching against minor versions (^) which precludes nodejs 0.8.

I imagine 0.8 will be dropped w/ next major, however.

closing for now

@boneskull
Copy link
Member

(it doesn't actually preclude using 0.8; you can generally still upgrade npm, but some people cannot for various reasons)

@danez
Copy link

danez commented Feb 16, 2016

The problem on the other hand is that this old glob version depends on an old version of graceful-fs. And this one is using node apis which are getting removed in the next major. So either being backward compatible or forward :/
Probably the best way is to remove support for node < 4 in a new major, and if someone still wants to use unmaintained nodejs/iojs version, he can use older version of mocha.

From install:

npm WARN deprecated graceful-fs@3.0.8: graceful-fs version 3 and before will fail on newer node releases. Please update to graceful-fs@^4.0.0 as soon as possible.

@danielstjules
Copy link
Contributor

Sounds like it won't get removed until v7: nodejs/node#5213 (comment) But I agree that we can look at breaking compatibility with the next major mocha release :) #2111 (comment)

This was referenced Feb 16, 2016
@dead-claudia
Copy link

If you're testing against 0.8, graceful-fs was rewritten in 4.x to support 0.8 better, and it does test against that version in CI. And apparently, not much changed between 3.x and 4.x other than its monkey-patching-by-default behavior (which is likely to break something).

Most of the breakage you might encounter would probably be in node-glob, not graceful-fs, unless you unintentionally rely on graceful-fs' monkey-patching.

@danielstjules
Copy link
Contributor

@isiahmeadows It's less about node compatibility, and more about npm. Releases newer than our current use a caret range (^) in version matching, which isn't supported in older versions of npm.

@dead-claudia
Copy link

Ok. What npm versions does this support?

Also, is it possible to use bundledDependencies? That could avoid the problem altogether, since npm@3 still supports 0.8.x, and this could be done at prepublish and in Travis/etc.

@boneskull
Copy link
Member

@isiahmeadows >= v.1.2.30

bundledDependencies is something I hadn't thought of. Though I'm unsure of the implications. I'd be adverse to doing that in a minor release anyway...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants