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

Node.js v4 Release Timeline #2522

Closed
9 of 10 tasks
rvagg opened this issue Aug 24, 2015 · 131 comments
Closed
9 of 10 tasks

Node.js v4 Release Timeline #2522

rvagg opened this issue Aug 24, 2015 · 131 comments
Labels
meta Issues and PRs related to the general management of the project.
Milestone

Comments

@rvagg
Copy link
Member

rvagg commented Aug 24, 2015

This is ultimately up to @nodejs/tsc but for the sake of just getting it done I'm going to propose the way forward and will both tag this as tsc-agenda and ask that @nodejs/tsc members comment on this thread, particularly if they'd like to -1 anything I'm suggesting—otherwise let's roll with this.

Our original aim was to get v4 out by the "end of August" so that we had a good 2 months of real-world use of v4 before it turned into LTS at the end of October. We really need to hit the end of October window for LTS so the longer we can have v4 out the better the chance of having a solid combination of features as we lock down what can be changed during LTS.

io.js v3 is doing a great job at being an alpha for Node.js v4 but it's adoption is limited and it will only be when we have a new Node.js out that we'll get an increase in usage. Thankfully there are already great efforts to update popular add-ons to NAN 2.

Core tasks

Managed by the 4.0.0 milestone

Website migration tasks

Listed and tracking here: nodejs/build#163

@nodejs/website @nodejs/evangelism are there other issues where you are tracking progress and do we have everything captured in @ @nodejs/build that you need?

Release procedure tasks

This is needed because once we get to a new server for nodejs.org we need to ensure we can put proper 0.10 and 0.12 binaries on it and and existing users have a seamless transition.

Listed and tracking here: nodejs/build#164

Timeline

Days are in Pacific Time, I think most of us are used to thinking that way.

Friday, 28th of August:

My proposal is that we adopt a feature freeze at the end of this week, i.e. midnight, Friday the 28th PT. This means that everything that's semver-major or semver-minor that is going to make it in to v4.0.0 needs to be landed by then.

Also, cut a v4.x branch and start the cherry-pick process like we're doing for v3.x.

Monday, 31st of August:

DNS changeover to the new nodejs.org site, ensuring consistency for users of /dist/, /api/ and other endpoints that are in use, but with new.nodejs.org code, on new infrastructure, hopefully on a CDN, and able to accept releases of all active lines of Node.js (0.10, 0.12 and v4 RCs) and io.js (v3 and possibly v2 kept alive if we have a call for it) (i.e. it should also serve iojs.org so we don't have to ship binaries to different locations just for that).

28th of August to 3rd of September:

A series of release candidates, made available, first at https://iojs.org/download/rc/ and then http://nodejs.org/download/rc/ after the DNS changeover and nodejs.org is being served off a the new server, to test the release procedure and make have testable builds that we can try out.

Changes that are not semver-major or semver-minor can still be cherry-picked into v4.x but we should become increasingly strict as the week progresses in the interests of having a solid v4.0.0.

Thursday, 3rd of September:

Release v4.0.0.

If, for some reason, we fail to get it out by end of day on Thursday, Pacific Time, we'll postpone the release until Monday, 7th of September so as to avoid the pain of a weekend release.


Again, this is a proposal but unless there is objection from @nodejs/tsc, let's treat it as the plan so we can ship this thing.

@rvagg rvagg added this to the 4.0.0 milestone Aug 24, 2015
@jasnell
Copy link
Member

jasnell commented Aug 24, 2015

This looks solid. +1
On Aug 24, 2015 6:37 AM, "Rod Vagg" notifications@github.com wrote:

This is ultimately up to @nodejs/tsc
https://github.com/orgs/nodejs/teams/tsc but for the sake of just
getting it done
I'm going to propose the way forward and will both tag
this as tsc-agenda and ask that @nodejs/tsc
https://github.com/orgs/nodejs/teams/tsc members comment on this
thread, particularly if they'd like to -1 anything I'm
suggesting—otherwise let's roll with this.

Our original aim was to get v4 out by the "end of August" so that we had a
good 2 months of real-world use of v4 before it turned into LTS at the end
of October. We really need to hit the end of October window for LTS so the
longer we can have v4 out the better the chance of having a solid
combination of features as we lock down what can be changed during LTS.

io.js v3 is doing a great job at being an alpha for Node.js v4 but it's
adoption is limited and it will only be when we have a new Node.js out that
we'll get an increase in usage. Thankfully there are already great efforts
to update popular add-ons to NAN 2.
Core tasks

Managed by the 4.0.0 milestone
https://github.com/nodejs/node/milestones/4.0.0

Website migration tasks

Listed and tracking here: nodejs/build#163
nodejs/build#163

@nodejs/website https://github.com/orgs/nodejs/teams/website
@nodejs/evangelism https://github.com/orgs/nodejs/teams/evangelism are
there other issues where you are tracking progress and do we have
everything captured in @ @nodejs/build
https://github.com/orgs/nodejs/teams/build that you need?
Release procedure tasks

This is needed because once we get to a new server for nodejs.org we need
to ensure we can put proper 0.10 and 0.12 binaries on it and and existing
users have a seamless transition.

Listed and tracking here: nodejs/build#164
nodejs/build#164
Timeline

Days are in Pacific Time, I think most of us are used to thinking that
way.

Friday, 28th of August:

My proposal is that we adopt a feature freeze at the end of this week,
i.e. midnight, Friday the 28th PT. This means that everything that's
semver-major semver-major PRs that contain breaking changes and should be released in the next major version. or
semver-minor semver-minor PRs that contain new features and should be released in the next minor version. that is
going to make it in to v4.0.0 needs to be landed by then.

Also, cut a v4.x branch and start the cherry-pick process like we're
doing for v3.x.

Monday, 31st of August:

DNS changeover to the new nodejs.org http://nodejs.org site, ensuring
consistency for users of /dist/, /api/ and other endpoints that are in use,
but with new.nodejs.org https://github.com/nodejs/new.nodejs.org code,
on new infrastructure, hopefully on a CDN, and able to accept releases
of all active lines of Node.js (0.10, 0.12 and v4 RCs) and io.js (v3 and
possibly v2 kept alive if we have a call for it)
(i.e. it should also
serve iojs.org so we don't have to ship binaries to different locations
just for that).

28th of August to 3rd of September:

A series of release candidates, made available, first at
https://iojs.org/download/rc/ and then http://nodejs.org/download/rc/
after the DNS changeover and nodejs.org is being served off a the new
server, to test the release procedure and make have testable builds that we
can try out.

Changes that are not semver-major or semver-minor can still be
cherry-picked into v4.x but we should become increasingly strict as the
week progresses in the interests of having a solid v4.0.0.

Thursday, 3rd of September:

Release v4.0.0.

If, for some reason, we fail to get it out by end of day on Thursday,
Pacific Time, we'll postpone the release until Monday, 7th of September so

as to avoid the pain of a weekend release.

Again, this is a proposal but unless there is objection from @nodejs/tsc
https://github.com/orgs/nodejs/teams/tsc, let's treat it as the plan
so we can ship this thing.


Reply to this email directly or view it on GitHub
#2522.

@mscdex
Copy link
Contributor

mscdex commented Aug 24, 2015

LGTM

@thefourtheye
Copy link
Contributor

I love this plan. LGTM

@export-mike
Copy link

As some would say. Amazeballs.

@ChALkeR
Copy link
Member

ChALkeR commented Aug 24, 2015

Is «midnight, Friday the 28th PT» (feature freeze) 2015-08-28 00:00:00 or 2015-08-28 23:59:59? Doesn't seem clear to me.

@bnoordhuis
Copy link
Member

I hate feature freezes. Can we say that the v4.x branch is cut on the 28th and only gets bug fixes from then on but that master is still FFA?

@trevnorris
Copy link
Contributor

Think that's what is meant. The v4.x branch won't be receiving any changes, only fixes, until it's released. Changes will continue to land as normal on master. Basically, our current workflow won't change.

@bguiz
Copy link

bguiz commented Aug 24, 2015

+1

@rvagg
Copy link
Member Author

rvagg commented Aug 25, 2015

@bnoordhuis you're not the first person to object to my use of the term "feature freeze" here, really what I'm getting at is that all of this stuff should be landed by then: https://github.com/nodejs/node/milestones/4.0.0, cutting a v4.x branch will help with that. This is OSS so there's no PM breathing down our shoulders who will yell at us if we land a major change in the last couple of days but I'd really like us to focus on getting the important stuff landed this week and cut our losses if we can't.

@shigeki
Copy link
Contributor

shigeki commented Aug 25, 2015

I have no objection but let me confirm that LTS starts 1st Oct. but feature freeze and only bug fix for v4.0 branch start from 3rd Sep. What is the difference? Is there any purpose to be 4 weeks ahead?

@rvagg
Copy link
Member Author

rvagg commented Aug 25, 2015

Actually you're right, start of October according to https://github.com/nodejs/LTS/, I've had end of October in my head all this time for some reason, so that gives us even less time to get this right!

@shigeki
Copy link
Contributor

shigeki commented Aug 25, 2015

So If there is no actual meaning of LTS starting in Oct., I think it is better to say that LTS starts form the date of the release of 4.0.0, 3rd Sep. but we need not change the end of LTS.

@Fishrock123
Copy link
Member

So If there is no actual meaning of LTS starting in Oct.

LTS means less stuff lands into it, since 5.0 will be stable, and there will be a master for 6.0

@rvagg
Copy link
Member Author

rvagg commented Aug 25, 2015

The gap between releasing v4 and turning it into LTS gives us the opportunity to land semver-minor changes as well as some patch changes that we might decide don't belong in an LTS. We may get to 4.2.x by LTS, perhaps higher, then LTS stays on that minor.major (unless it's absolutely necessary to land a semver-minor)

@shigeki
Copy link
Contributor

shigeki commented Aug 25, 2015

Okay, it sounds clear to me. Thanks.

@rvagg
Copy link
Member Author

rvagg commented Aug 25, 2015

All of the big issues in https://github.com/nodejs/node/milestones/4.0.0 have assignees now. @joaocgreis, @misterdjules, @trevnorris, @shigeki, @bnoordhuis, @Fishrock123 could you please try and take care of them by the end of this week and if you can't allocate time or don't think it's going to make it then please just keep us informed so we can plan accordingly or have others jump in and help.

The only unassigned is the changelog merge @ #2519 which I'll take if nobody else steps up in the meantime.

@Globegitter
Copy link

Any chance for getting in #4? Seeing as https://github.com/indutny/node-spdy by @indutny is now out of beta for almost two weeks maybe that could be adopted and I do think HTTP/2 compatibility would be a big selling point for Nodejs 4.0.0. Or is that too much of wish-thinking and better for a release after?

@rvagg
Copy link
Member Author

rvagg commented Aug 25, 2015

@Globegitter sorry, that's out of scope for this release, we're far from consensus on what, if anything should be done and have zero code against core to assess if we even decided to go for this.

@mikeal
Copy link
Contributor

mikeal commented Aug 25, 2015

If I could get some high level bullet points for this release I can send them off to the marketing committee and we can line up some good PR around the release.

@rvagg
Copy link
Member Author

rvagg commented Aug 26, 2015

@Fishrock123 I don't suppose you could handle that? You're probably in the best position to grok the delta between this release and everything else and maybe this should be about 0.10 & 0.12 -> v4. Additionally @mikeal probably building in some wording about the new LTS schedule would be worthwhile because v4 also represents a shift to a much more planned and predictable release schedule.

@Fishrock123
Copy link
Member

Yes, we'll need to advertise the release schedule with it since v5 is planned for oct when 4.0 goes into LTS.

@orangemocha
Copy link
Contributor

This PR is also on the 4.0 milestone:
#2424

@nigampatel
Copy link

+1

@Fishrock123 Fishrock123 added the meta Issues and PRs related to the general management of the project. label Aug 27, 2015
@joshgav
Copy link
Contributor

joshgav commented Sep 8, 2015

@rvagg I'm looking into the following (for next release):

Although we've paid for signing certificates for Microsoft Authenticode and DigiCert are doing their best to go through their verification checklist, it's apparently impossible to call the number listed for the Node.js Foundation and reach anyone who has a clue how to connect with relevant individuals that can verify that it is indeed the Node.js Foundation (not the LF) and that I'm authorized on behalf of the Foundation to generate a certificate for them. So we're going live with NodeSource certs for .msi files. The .pkg files are signed properly with Apple certs owned by the Node.js Foundation.

/cc @gianugo

@rvagg
Copy link
Member Author

rvagg commented Sep 8, 2015

thanks @joshgav, much appreciated

Status update: waiting for builds on ARM, it seems that the handle zapping commit has blown out ccache so it's having to build everything with no cache help .. Website is ready to go, release announcement is hovering here: nodejs/nodejs.org#110

@rvagg
Copy link
Member Author

rvagg commented Sep 8, 2015

OK, while we wait, this one is the release commit that's going out, feel free to download tarballs from Jenkins to try them: https://ci.nodejs.org/job/iojs+release/168/

@silverwind
Copy link
Contributor

Only one remaining build to go. Cheer for the last Pi to finish its build here:

https://ci.nodejs.org/job/iojs+release/168/nodes=pi1-raspbian-wheezy/console

@rvagg
Copy link
Member Author

rvagg commented Sep 8, 2015

OK, this is slipping too much, I'm going to go ahead with it and add armv6 when it's finished

@jasnell
Copy link
Member

jasnell commented Sep 8, 2015

+1
On Sep 8, 2015 8:01 PM, "Rod Vagg" notifications@github.com wrote:

OK, this is slipping too much, I'm going to go ahead with it and add armv6
when it's finished


Reply to this email directly or view it on GitHub
#2522 (comment).

@kkoopa
Copy link

kkoopa commented Sep 8, 2015

Finally! Good call. The ARMv6 build will likely go on for 2-3 more hours.

@rvagg
Copy link
Member Author

rvagg commented Sep 8, 2015

@rvagg rvagg closed this as completed Sep 8, 2015
@Ajedi32
Copy link

Ajedi32 commented Sep 8, 2015

👍 🎉 🎈

@rfink
Copy link

rfink commented Sep 8, 2015

+1,000,000 internets

@xforce
Copy link

xforce commented Sep 8, 2015

Yay. Party Hard.

@stolsma
Copy link

stolsma commented Sep 8, 2015

Yesssss..... :-)

@yosuke-furukawa
Copy link
Member

+1!!!! Thank you for every collaborator/tsc hard work.

@danielkhan
Copy link

Congratulations!

@Cangit
Copy link

Cangit commented Sep 8, 2015

Congratulations on this huge milestone of merging io.js back into Node. Warm thanks to everyone involved and especially @rvagg for the last sprint to the finish.

@Scratch-net
Copy link

Good job and thanks everyone!

@pezza3434
Copy link

Good stuff! Good job everyone!

@nicolaspeixoto
Copy link

Congratulations!!!

@AntouanK
Copy link

AntouanK commented Sep 8, 2015

Thanks for your hard work everyone 👍

@rfink
Copy link

rfink commented Sep 8, 2015

Maybe the wrong place to comment here, but is this the same team that works on the dockerhub images? Would we be able to expect that soon?

@chorrell
Copy link

chorrell commented Sep 8, 2015

It's coming: nodejs/docker-node#42

Hopefully we can get it in the registry this week.

@magicdawn
Copy link

awesome work 👍

@domino14
Copy link

domino14 commented Sep 9, 2015

👍 this is so awesome

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
meta Issues and PRs related to the general management of the project.
Projects
None yet
Development

No branches or pull requests