Skip to content

Which Node.js versions to support? #1051

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Closed
novemberborn opened this issue Sep 25, 2016 · 12 comments
Closed

Which Node.js versions to support? #1051

novemberborn opened this issue Sep 25, 2016 · 12 comments
Labels

Comments

@novemberborn
Copy link
Member

Node.js is about to drop all support for the 0.10 and 0.12 releases. AVA currently targets 0.10 and is undoubtedly used to test a lot of modules and applications that also support 0.10.

I don't think authors should drop support for older Node.js versions just because. Ideally it happens as part of other breaking changes, or because critical bug fixes in dependencies are only available in newer Node.js releases.

I do expect it to become rapidly more difficult to maintain code that targets Node.js 0.10 or 0.12.

Which is why I'm thinking that AVA should drop 0.10 and 0.12 compatibility. Existing projects can use the most recent AVA version that is compatible, until they upgrade for other reasons. We could consider waiting until early 2017 if we don't want to be the first dependency to drop support (though there's already a growing amount of packages who's most recent version is not compatible).

If you use AVA in a project that targets 0.10 or 0.12, are you planning on dropping support soon? If not, would you be happy using an increasingly outdated version of AVA until you do?

@sindresorhus
Copy link
Member

Dropping support for those versions would make a lot of our code simpler and enable us to upgrade many dependencies that now require Node.js 4. Although test runners are unfortunately usually the last projects to drop support for older versions... If it were up to me, I would drop support today, but I know people depend on this in production, so that's not what we're going to do. I like the idea of maintaining an LTS version of AVA though, which only gets critical bug fixes.

@novemberborn
Copy link
Member Author

Leaving asides discussions on 1.0 releases and stable versions, I'd be happy to declare 0.16 / 0.17 to be a special < 4 compatible, critical bugfix only release. And then we can just move on.

Presumably the critical bugfixes will be dealing with dependencies that start to require newer Node.js releases anyway…

@sindresorhus
Copy link
Member

@novemberborn I'm open to that. Let's see what the rest of @avajs/core thinks about it.

@vadimdemedes
Copy link
Contributor

I'm excited about LTS + stable plan as well. Big +1 from me.

Question is, when should we stop maintaining LTS for 0.10/0.12? It shouldn't be too long, because it will drag us down more and throttle development of the main branch.

@novemberborn
Copy link
Member Author

Question is, when should we stop maintaining LTS for 0.10/0.12? It shouldn't be too long, because it will drag us down more and throttle development of the main branch.

After the next release?

@sindresorhus
Copy link
Member

Proposed plan:

  • Release 0.17.0 as last actively maintained version with Node.js 0.10/0.12 support. That means it might get some bug fix releases, but no new features.
  • Release 0.18.0 requires Node.js 4
  • Drop total support for 0.10/0.12 at the end of the year.

@sotojuan
Copy link
Contributor

sotojuan commented Nov 8, 2016

Sounds good to me.

@novemberborn
Copy link
Member Author

Drop total support for 0.10/0.12 at the end of the year.

So no more bug fixes for 0.17? Fine by me.

@sindresorhus
Copy link
Member

Yes

@vadimdemedes
Copy link
Contributor

Totally on board!

@mightyiam
Copy link
Contributor

Year has ended. Is this still an open issue?

@sindresorhus
Copy link
Member

Yes. We can close this. The version in master targets Node.js 4.

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

No branches or pull requests

5 participants