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

Consider dropping Node.js 0.6 support #1785

Closed
BanzaiMan opened this issue Dec 24, 2013 · 19 comments
Closed

Consider dropping Node.js 0.6 support #1785

BanzaiMan opened this issue Dec 24, 2013 · 19 comments
Assignees
Labels

Comments

@BanzaiMan
Copy link
Contributor

See https://github.com/isaacs/npm/issues/4379#issuecomment-31183058

Node.js 0.6 can stop working at any given time.

@ghost ghost assigned joshk Dec 24, 2013
@ljharb
Copy link

ljharb commented Dec 27, 2013

It's just stopped working today.

However, it can be fixed simply by the instructions in https://twitter.com/npmjs/status/416298773241794560 : npm conf set strict-ssl false only on node 0.6. Can we prioritize this?

@BanzaiMan
Copy link
Contributor Author

@ljharb Can you try putting that in your before_install script?

@ljharb
Copy link

ljharb commented Dec 27, 2013

I absolutely don't want people who install my module to set strict-ssl to false. That command should only be run before tests, and only in node 0.6.

Or are you just suggesting I do that for testing purposes?

@BanzaiMan
Copy link
Contributor Author

@ljharb The latter, of course.

0.6 is not in good shape, even in the eyes of the npm maintainers. I don't think it's worth anyone's time to make it work like it is a viable option for everyday use.

@ljharb
Copy link

ljharb commented Dec 27, 2013

I'll give that a try, thanks.

I don't think anybody should be using node 0.6. However, every module that supports it, helps provide a clear upgrade path for people who are still using it in production - and there still are users of it.

@ljharb
Copy link

ljharb commented Dec 27, 2013

@BanzaiMan indeed, adding npm conf set strict-ssl false as a "preinstall" script works perfectly (see https://travis-ci.org/ljharb/node-comments/jobs/16023705 ). Could we just make that part of the node 0.6 config?

@roidrage
Copy link
Contributor

If that setting indeed solves it, then I think given Node.js 0.6's age, setting it in your .travis.yml is perfectly fine for the time being.

@ljharb
Copy link

ljharb commented Dec 27, 2013

@roidrage I'd be content with that for my own modules - how can I specify it only for node 0.6 in my travis.yml?

Please note, however, that every single node project on 0.6 is broken - so if this isn't going to be fixed for everyone, then Travis has officially dropped support for node 0.6 with no notice, and will mark all modules as failed until 0.6 is skipped. That seems like a decision that shouldn't be made rashly.

@roidrage
Copy link
Contributor

You can do this setting conditionally in your .travis.yml:

before_install:
  - [ "${TRAVIS_NODE_VERSION}" = "0.6" ] && npm conf set strict-ssl false

This is an acceptable workaround given that whether or not Node.js 0.6 continues to work at all is outside our control.

@ljharb
Copy link

ljharb commented Dec 27, 2013

Node 0.6.21 will continue to work forever - that's the point of semantic versioning. It's the registry that might change, and that protocol has been frozen for a long time now.

Thanks! I'll give that setting a try.
edit: @roidrage, https://travis-ci.org/ljharb/node-comments/builds/16025515 that didn't work. Documentation for the travis.yml format is pretty weak so I'm not sure what to do next.

@BanzaiMan
Copy link
Contributor Author

@ljharb Try putting everything in single quotes:

before_install:
  - '[ "${TRAVIS_NODE_VERSION}" = "0.6" ] && npm conf set strict-ssl false'

@ljharb
Copy link

ljharb commented Dec 27, 2013

k, that exits with a 1 when it's not node 0.6 - however

before_install:
  - '[ "${TRAVIS_NODE_VERSION}" = "0.6" ] && npm conf set strict-ssl false || true'

worked!

I still maintain that Travis CI should fix this automatically for everyone first, and then if it's going to drop node 0.6 support, do it with the proper notifications, and make sure not to run 0.6 builds anymore.

Update: - '[ "${TRAVIS_NODE_VERSION}" != "0.6" ] || npm conf set strict-ssl false' will prevent the || true from swallowing issues.

@ljharb
Copy link

ljharb commented Jan 3, 2014

@BanzaiMan any response from the company on this?

@BanzaiMan
Copy link
Contributor Author

Well, there is no reason to cut off 0.6, but I don't think we will add a workaround for 0.6, either. If you want to test your code against 0.6, please employ the workaround suggested here.

I'm going to leave this ticket open, so that it may be discovered by others who needs the workaround.

@ghost ghost assigned BanzaiMan Jan 3, 2014
@ljharb
Copy link

ljharb commented Jan 3, 2014

Effectively that's the same as cutting it off, since pull requests against modules previously testing against 0.6 will all fail, so unless maintainers are very thorough and locate this issue, that will cause them to either stagnate or drop 0.6 support.

@roidrage
Copy link
Contributor

roidrage commented Jan 3, 2014

We'll be sure to update our documentation to include both the workaround and a note that Node.js 0.6 is effectively EOL'd by now.

@joshk
Copy link
Contributor

joshk commented Jan 3, 2014

I would be willing to accept a PR for either travis-cookbooks or travis-build which adds npm conf set strict-ssl false to Node 0.6 either during installation or selection if someone is interested in doing this.

@ljharb
Copy link

ljharb commented Jan 4, 2014

@joshk travis-ci/travis-build#188 Thanks!

ljharb added a commit to ljharb/travis-build that referenced this issue Jan 5, 2014
@BanzaiMan
Copy link
Contributor Author

I merged the PR.

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

No branches or pull requests

4 participants