Skip to content

Discussion: LTS & v5 release planning #3000

Closed
@rvagg

Description

@rvagg

We are approaching October where we've committed to kicking off our first LTS where, according to the LTS plan:

... with the first LTS release cut during the first week of October, 2015

We really wanted to hit October to have that be our LTS timing every year.

There are some things we need to figure out for this, some of which are @nodejs/lts topics but are worth opening up discussion on:

  • Do we wait for the next V8 before branching and releasing v5.x? We've put ourselves in an awkward position having jumped on 4.5 for v4.x because we're not likely to see a stable V8 until at least mid-October. Throughout this year, the V8 team have averaged 45 days between releases, if they hit the average then we'd land at October 15th. If they did it their quickest then we might get the 6th of October, with the latest being the 3rd of November. Do we just keep master in a holding state until we have successfully integrated a stable 4.6? Perhaps this is a good chance for us to begin promoting an initial nightly / canary strategy?
  • Is there any good reason not to bump npm to v3 in master and our v5.x branch?
  • We need a codename for the release, there is some discussion here with the current plan for the LTS WG to come up with a shortlist and then give the collaborators the chance to vote on their preferred option. It's looking likely that we'll be picking something off the periodic table. (Please don't bikeshed this topic in this issue, take it to First LTS Release 'codename' Release#26 if you feel it's that important).
  • Do we bake something into the LTS binaries to signify that they are LTS? I can't recall where this discussion was but we had talked briefly about possibly putting something in process.release, maybe process.release.lts: '201510' or process.release.lts: 'codename'. If we do this, then do we ensure we cut an actual release in the "first week of October" just to make sure we have this done?
  • How exactly do we transition to an LTS release process? Do we just throw it to @nodejs/lts to figure out exactly how to determine what to cherry-pick? Do we have a special group, @nodejs/lts-release, separate from @nodejs/release to handle these? Does it matter? Once we have an idea for the number of commits we might be pulling in then we should probably discuss likely release cadence for LTS.
  • How do publicise and promote LTS lines? Does @nodejs/website have ideas on how to make this happen when we have something called "LTS" and then start to get new "Stable" releases with a 5 at the front? Ideally, users will be self-selecting and would end up with the kind of release suited to them, perhaps we need to outline on the front page of the website and/or on the download page why you would choose LTS over Stable?
  • Do we need to prepare a new NAN for V8 4.6? I don't see anything that's obviously breaking but it'd be good to have @nodejs/addon-api tuned in to the v5 timeline.
  • Prepare postmortem metadata in new V8 prior to 5.0.0, tracking @ Update mdb_v8 for V8 4.6.x TritonDataCenter/mdb_v8#36

What else?

Metadata

Metadata

Assignees

No one assigned

    Labels

    metaIssues and PRs related to the general management of the project.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions