Release proposal: v2.0.0 #1532

Closed
wants to merge 2 commits into
from

Conversation

Projects
None yet
@rvagg
Member

rvagg commented Apr 29, 2015

This is very early but we're risking a long period of time with no release and a build-up of changes so we need to push to get this out.

Main issues for this release are in the 2.0.0 milestone. Note that the V8 upgrade still isn't in master, see #1506 for that.

  • [5404cbc745] - buffer: fix copy() segfault with zero arguments (Trevor Norris) #1520
  • [3d3083b91f] - buffer: little improve for Buffer.concat method (Jackson Tian) #1437
  • [e67542ae17] - build: disable -Og when building with clang (Ben Noordhuis) #1609
  • [78f4b038f8] - build: turn on debug-safe optimizations with -Og (Ben Noordhuis) #1569
  • [a5dcff827a] - build: Use option groups in configure output (Johan Bergström) #1533
  • [2a3c8c187e] - build: remove -J from test-ci (Rod Vagg) #1544
  • [e6874dd0f9] - crypto: track external memory for SSL structures (Fedor Indutny) #1529
  • [935c9d3fa7] - deps: make node-gyp work with io.js (cjihrig) #990
  • [56e4255382] - deps: upgrade npm to 2.9.0 (Forrest L Norvell) #1573
  • [509b59ea7c] - deps: enable v8 postmortem debugging again (Ben Noordhuis) #1232
  • [01652c7709] - deps: upgrade v8 to 4.2.77.18 (Chris Dickinson) #1506
  • [01e6632d70] - deps: upgrade v8 to 4.2.77.15 (Ben Noordhuis) #1399
  • [db4ded5903] - deps: enable v8 postmortem debugging again (Ben Noordhuis) #1232
  • [36cd5fb9d2] - deps: upgrade v8 to 4.2.77.13 (Ben Noordhuis) #1232
  • [b3a7da1091] - deps: update http_parser to 2.5.0 (Fedor Indutny) #1517
  • [dacc1fa35c] - doc: update AUTHORS list (Rod Vagg) #1586
  • [2a3a1909ab] - doc: add require() lines to child.stdio example (Nick Raienko) #1504
  • [02388dbf40] - doc: fix some cross-references (Alexander Gromnitsky) #1584
  • [57c4cc26e2] - doc: add TC meeting 2015-04-22 minutes (Rod Vagg) #1556
  • [b4ad5d7050] - doc: improve http.request and https.request opts (Roman Reiss) #1551
  • [7dc8eec0a6] - doc: deprecate smalloc module (Ben Noordhuis) #1566
  • [1bcdf46ca7] - doc: add TC meeting 2015-04-15 minutes (Rod Vagg) #1498
  • [391cae3595] - doc: Add Known issues to v1.7.0/1.7.1 CHANGELOG (Yosuke Furukawa) #1473
  • [e55fdc47a7] - doc: fix util.deprecate example (Nick Raienko) #1535
  • [5178f93bc0] - doc: Add Addon API (NAN) to working group list (Julian Duque) #1523
  • [f3cc50f811] - doc: add TC meeting 2015-04-08 minutes (Rod Vagg) #1497
  • [bb254b533b] - doc: update branch to master (Roman Reiss) #1511
  • [22aafa5597] - doc: add Fishrock123 to the TC (Jeremiah Senkpiel) #1507
  • [b16a328ede] - doc: add spaces to child.kill example (Nick Raienko) #1503
  • [26327757f8] - doc: update AUTHORS list (Rod Vagg) #1476
  • [f9c681cf62] - fs: validate fd on fs.write (Julian Duque) #1553
  • [801b47acc5] - gitignore: ignore xcode workspaces and projects (Roman Klauke) #1562
  • [d5ce47e433] - (SEMVER-MINOR) lib: deprecate the smalloc module (Ben Noordhuis) #1564
  • [7384ca83f9] - module: remove '' from Module.globalPaths (Chris Yip) #1488
  • [b4f5898395] - net: ensure Write/ShutdownWrap references handle (Fedor Indutny) #1590
  • [4abe2fa1cf] - (SEMVER-MINOR) net: add lookup option to Socket.prototype.connect (Evan Lucas) #1505
  • [1bef717476] - (SEMVER-MINOR) net: cleanup connect logic (Evan Lucas) #1505
  • [c7782c0af8] - node: improve nextTick performance (Brian White) #1571
  • [b57cc51d8d] - (SEMVER-MAJOR) os: remove trailing slash from os.tmpdir() (Christian Tellnes) #747
  • [ca219b00d1] - repl: fix for a+ fd clearing the file on read (Chris Dickinson) #1605
  • [051d482b15] - repl: fix _debugger by properly proxying repl (Chris Dickinson) #1605
  • [2e2fce0502] - repl: fix persistent history and env variable name (Roman Reiss) #1593
  • [ea5195ccaf] - repl: do not save history for non-terminal repl (Fedor Indutny) #1575
  • [0450ce7db2] - repl: add mode detection, cli persistent history (Chris Dickinson) #1513
  • [279f6116aa] - src: fix -Wmissing-field-initializers warning (Ben Noordhuis) #1606
  • [73062521a4] - src: deprecate smalloc public functions (Ben Noordhuis) #1565
  • [ccb199af17] - src: fix deprecation warnings (Ben Noordhuis) #1565
  • [609fa0de03] - src: fix NODE_DEPRECATED macro (Ben Noordhuis) #1565
  • [3c92ca2b5c] - (SEMVER-MINOR) src: add ability to get/set effective uid/gid (Evan Lucas) #1536
  • [30b7349176] - stream_base: dispatch reqs in the stream impl (Fedor Indutny) #1563
  • [0fa6c4a6fc] - string_decoder: don't cache Buffer.isEncoding (Brian White) #1548
  • [f9b226c1c1] - test: extend timeouts for ARMv6 (Rod Vagg) #1554
  • [bfae8236b1] - test: fix test-net-dns-custom-lookup test assertion (Evan Lucas) #1531
  • [547213913b] - test: adjust Makefile/test-ci, add to vcbuild.bat (Rod Vagg) #1530
  • [550c2638c0] - tls: use SSL_set_cert_cb for async SNI/OCSP (Fedor Indutny) #1464
  • [1787416376] - tls: destroy singleUse context immediately (Fedor Indutny) #1529
  • [2684c902c4] - tls: zero SSL_CTX freelist for a singleUse socket (Fedor Indutny) #1529
  • [2d241b3b82] - tls: destroy SSL once it is out of use (Fedor Indutny) #1529
  • [f7620fb96d] - tls_wrap: Unlink TLSWrap and SecureContext objects (Сковорода Никита Андреевич) #1580
  • [a7d74633f2] - tls_wrap: use localhost if options.host is empty (Guilherme Souza) #1493
  • [702997c1f0] - _Revert_ "url: significantly improve the performance of the url module" (Rod Vagg) #1602
  • [0daed24883] - _Revert_ "url: delete href cache on all setter code paths" (Rod Vagg) #1602
  • [0f39ef4ca1] - _Revert_ "url: fix treatment of some values as non-empty" (Rod Vagg) #1602
  • [66877216bd] - url: fix treatment of some values as non-empty (Petka Antonov) #1589
  • [dbdd81a91b] - url: delete href cache on all setter code paths (Petka Antonov) #1589
  • [3fd7fc429c] - (SEMVER-MAJOR) url: significantly improve the performance of the url module (Petka Antonov) #1561
  • [bf7ac08dd0] - util: add Map and Set inspection support (Christopher Monsanto) #1471
  • [30e83d2e84] - win,node-gyp: optionally allow node.exe/iojs.exe to be renamed (Bert Belder) #1266
  • [3bda6cbfa4] - (SEMVER-MAJOR) win,node-gyp: enable delay-load hook by default (Bert Belder) #1433
@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg Apr 27, 2015

Member

Responsible parties as far as I can tell are:

Folks, please push on getting your PRs merged if you can so we can get this out.

Member

rvagg commented Apr 27, 2015

Responsible parties as far as I can tell are:

Folks, please push on getting your PRs merged if you can so we can get this out.

@mscdex mscdex added the meta label Apr 27, 2015

@piscisaureus

This comment has been minimized.

Show comment
Hide comment
@piscisaureus

piscisaureus Apr 27, 2015

Member

@piscisaureus enable delay-load hook @ #1433

Ok, landed that.

@bnoordhuis process.send() win/posix sync/async consistency @ #774 & #760

I would like to see the CI results after that lands.

Member

piscisaureus commented Apr 27, 2015

@piscisaureus enable delay-load hook @ #1433

Ok, landed that.

@bnoordhuis process.send() win/posix sync/async consistency @ #774 & #760

I would like to see the CI results after that lands.

@chrisdickinson

This comment has been minimized.

Show comment
Hide comment
@chrisdickinson

chrisdickinson Apr 27, 2015

Contributor

Thanks for opening this, @rvagg. I'd like to also propose #1513 as part of this release, since I think folks will open up the repl and type class XYZ {} immediately upon installing :)

Otherwise, #1506 is waiting on a LGTM from @bnoordhuis or @indutny. I'm working on documenting the V8 upgrade process in a separate branch.

Contributor

chrisdickinson commented Apr 27, 2015

Thanks for opening this, @rvagg. I'd like to also propose #1513 as part of this release, since I think folks will open up the repl and type class XYZ {} immediately upon installing :)

Otherwise, #1506 is waiting on a LGTM from @bnoordhuis or @indutny. I'm working on documenting the V8 upgrade process in a separate branch.

@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg Apr 27, 2015

Member

also on the list is an item from @evanlucas who needs to fix the build for us now that it's failing on most test machines due to an ipv6 problem as per #1527

Member

rvagg commented Apr 27, 2015

also on the list is an item from @evanlucas who needs to fix the build for us now that it's failing on most test machines due to an ipv6 problem as per #1527

@Fishrock123 Fishrock123 modified the milestones: 2.0.0, 1.8.0 Apr 28, 2015

@Fishrock123 Fishrock123 referenced this pull request Apr 28, 2015

Closed

Major version bump #1061

@domenic

This comment has been minimized.

Show comment
Hide comment
@domenic

domenic Apr 28, 2015

Member

I think it's time to set a deadline on this. We are several weeks behind V8 and a new Chrome/V8 will be coming relatively soon. We should just merge the V8 upgrade and anything else that is ready and do a release, say, tomorrow. Anything that missed the train can hop on the next one in a few weeks. No need to hold things up waiting for all our ducks to line up.

Member

domenic commented Apr 28, 2015

I think it's time to set a deadline on this. We are several weeks behind V8 and a new Chrome/V8 will be coming relatively soon. We should just merge the V8 upgrade and anything else that is ready and do a release, say, tomorrow. Anything that missed the train can hop on the next one in a few weeks. No need to hold things up waiting for all our ducks to line up.

@domenic

This comment has been minimized.

Show comment
Hide comment
@domenic

domenic Apr 28, 2015

Member

Also if someone broke the build we should immediately revert that patch instead of waiting for a fix.

Member

domenic commented Apr 28, 2015

Also if someone broke the build we should immediately revert that patch instead of waiting for a fix.

@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg Apr 28, 2015

Member

@domenic myself, @jbergstroem and @evanlucas are working on the broken build side, it's a bit more complicated than just a single thing but rest assured that if it comes to just reverting then that'll be done, we must get off red builds.

Member

rvagg commented Apr 28, 2015

@domenic myself, @jbergstroem and @evanlucas are working on the broken build side, it's a bit more complicated than just a single thing but rest assured that if it comes to just reverting then that'll be done, we must get off red builds.

@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg Apr 28, 2015

Member

master should be back to green now (literally green thanks to a Jenkins plugin): https://jenkins-iojs.nodesource.com/job/iojs+any-pr+multi/631/

Note that we've also got Fedora 21, Debian 8 and Ubuntu 15.04 in the CI set now.

Member

rvagg commented Apr 28, 2015

master should be back to green now (literally green thanks to a Jenkins plugin): https://jenkins-iojs.nodesource.com/job/iojs+any-pr+multi/631/

Note that we've also got Fedora 21, Debian 8 and Ubuntu 15.04 in the CI set now.

@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg Apr 28, 2015

Member

A failure I haven't seen before, on one of the Windows slaves:

not ok 637 - test-timers-first-fire.js
#
#assert.js:88
#  throw new assert.AssertionError({
#        ^
#AssertionError: Timer fired early
#    at null._onTimeout (c:\workspace\iojs+any-pr+multi\nodes\win2008r2\test\parallel\test-timers-first-fire.js:11:10)
#    at Timer.listOnTimeout (timers.js:89:15)
#timer fired in -0.6199840000000023

@piscisaureus, @trevnorris, @bnoordhuis or other, do you have any idea if this is relevant? setTimeout() set for 50, fires 0.6 ms early but the assertion is looking for it to be 0.6 ms early or smaller, possibly positive; i.e. delta > 0.5. To be honest I don't really understand the point of this test even with the comments in the original commit, 93b0624.

Member

rvagg commented Apr 28, 2015

A failure I haven't seen before, on one of the Windows slaves:

not ok 637 - test-timers-first-fire.js
#
#assert.js:88
#  throw new assert.AssertionError({
#        ^
#AssertionError: Timer fired early
#    at null._onTimeout (c:\workspace\iojs+any-pr+multi\nodes\win2008r2\test\parallel\test-timers-first-fire.js:11:10)
#    at Timer.listOnTimeout (timers.js:89:15)
#timer fired in -0.6199840000000023

@piscisaureus, @trevnorris, @bnoordhuis or other, do you have any idea if this is relevant? setTimeout() set for 50, fires 0.6 ms early but the assertion is looking for it to be 0.6 ms early or smaller, possibly positive; i.e. delta > 0.5. To be honest I don't really understand the point of this test even with the comments in the original commit, 93b0624.

@rvagg rvagg referenced this pull request in nodejs/docker-iojs Apr 28, 2015

Closed

How do we handle a io.js v2.0 release candidate? #51

@bnoordhuis

This comment has been minimized.

Show comment
Hide comment
@bnoordhuis

bnoordhuis Apr 28, 2015

Member

I suspect that's a bug in the Windows implementation of uv_hrtime(); it uses floating point math that may be lossy. I believe there is a libuv issue about it but I can't find it.

i.e. delta > 0.5

delta > -0.5 :-) Which is a somewhat dubious change that (IIRC) Trevor made; it used to check that delta > 0.

Member

bnoordhuis commented Apr 28, 2015

I suspect that's a bug in the Windows implementation of uv_hrtime(); it uses floating point math that may be lossy. I believe there is a libuv issue about it but I can't find it.

i.e. delta > 0.5

delta > -0.5 :-) Which is a somewhat dubious change that (IIRC) Trevor made; it used to check that delta > 0.

@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg Apr 29, 2015

Member

OK, now we're getting somewhere, we have the V8 upgrade in, at 4.2.77.18 and our first 2.0.0 release candidate is at: https://iojs.org/download/nightly/v2.0.0-nightly20150428509b59ea7c/

I'll start writing up some notable changes in here.

@petkaantonov is still working on the url changes in #933 and has hit some snags, hopefully that'll be sorted within a couple of days. @bnoordhuis has the process.send() changes to land in #774 but given the state of the tests on Windows for that change and how busy Ben is we may be punting on that change to 3.0.0.

Member

rvagg commented Apr 29, 2015

OK, now we're getting somewhere, we have the V8 upgrade in, at 4.2.77.18 and our first 2.0.0 release candidate is at: https://iojs.org/download/nightly/v2.0.0-nightly20150428509b59ea7c/

I'll start writing up some notable changes in here.

@petkaantonov is still working on the url changes in #933 and has hit some snags, hopefully that'll be sorted within a couple of days. @bnoordhuis has the process.send() changes to land in #774 but given the state of the tests on Windows for that change and how busy Ben is we may be punting on that change to 3.0.0.

@domenic

This comment has been minimized.

Show comment
Hide comment
@domenic

domenic Apr 29, 2015

Member

I think we should set a deadline so as to avoid the failure mode of "X is almost ready, just give it a few more days."

Member

domenic commented Apr 29, 2015

I think we should set a deadline so as to avoid the failure mode of "X is almost ready, just give it a few more days."

@bnoordhuis

This comment has been minimized.

Show comment
Hide comment
@bnoordhuis

bnoordhuis Apr 29, 2015

Member

If someone wants to adopt #774, s/he has my blessing.

Member

bnoordhuis commented Apr 29, 2015

If someone wants to adopt #774, s/he has my blessing.

@rvagg rvagg referenced this pull request Apr 29, 2015

Closed

io.js TC Meeting 2015-04-29 #1557

@petkaantonov

This comment has been minimized.

Show comment
Hide comment
@petkaantonov

petkaantonov Apr 29, 2015

Contributor

I think we should set a deadline so as to avoid the failure mode of "X is almost ready, just give it a few more days."

For me a deadline 2 days from now is fine.

Contributor

petkaantonov commented Apr 29, 2015

I think we should set a deadline so as to avoid the failure mode of "X is almost ready, just give it a few more days."

For me a deadline 2 days from now is fine.

@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg Apr 29, 2015

Member

Converted this to a pull request so I can submit my CHANGELOG changes for review. @domenic can you have a look at the V8 4.2 notable items I've listed please?

Member

rvagg commented Apr 29, 2015

Converted this to a pull request so I can submit my CHANGELOG changes for review. @domenic can you have a look at the V8 4.2 notable items I've listed please?

@rvagg

This comment has been minimized.

Show comment
Hide comment
CHANGELOG.md
@@ -4,6 +4,51 @@
### Notable changes
+* **V8**: upgrade to 4.2.77.18, see the [ChangeLog](https://chromium.googlesource.com/v8/v8/+/refs/heads/4.2.77/ChangeLog) for full details. Notable items:
+ - Classes have moved out of staging, the `class` keyword is now usable without flags

This comment has been minimized.

@domenic

domenic Apr 29, 2015

Member

s/,/;

Also want to mention object literal extensions (concise methods and property shorthands).

Maybe mention that like let and const, class is only usable in strict mode.

@domenic

domenic Apr 29, 2015

Member

s/,/;

Also want to mention object literal extensions (concise methods and property shorthands).

Maybe mention that like let and const, class is only usable in strict mode.

This comment has been minimized.

@rvagg

rvagg Apr 29, 2015

Member

Did we get those free when they enabled classes such that we can use them in POJSO's too? { foo() { return 'bar' } }? Would you mind having a quick go at some words for this for me?

@rvagg

rvagg Apr 29, 2015

Member

Did we get those free when they enabled classes such that we can use them in POJSO's too? { foo() { return 'bar' } }? Would you mind having a quick go at some words for this for me?

This comment has been minimized.

@rvagg

rvagg Apr 29, 2015

Member

OK, did some experimenting and answered my own question console.log({woo(){return "woot!"}}.woo()), nice. I'd still appreciate some words from you on this @domenic if you don't mind.

@rvagg

rvagg Apr 29, 2015

Member

OK, did some experimenting and answered my own question console.log({woo(){return "woot!"}}.woo()), nice. I'd still appreciate some words from you on this @domenic if you don't mind.

This comment has been minimized.

@domenic

domenic Apr 29, 2015

Member

Let's try

  • Object literal enhancement have moved out of staging: shorthand method and property syntax is now usable, as in { method() { }, property }.
@domenic

domenic Apr 29, 2015

Member

Let's try

  • Object literal enhancement have moved out of staging: shorthand method and property syntax is now usable, as in { method() { }, property }.

This comment has been minimized.

@kkoopa

kkoopa Apr 29, 2015

classes only in strict mode

@kkoopa

kkoopa Apr 29, 2015

classes only in strict mode

@petkaantonov

This comment has been minimized.

Show comment
Hide comment
@petkaantonov

petkaantonov Apr 29, 2015

Contributor

#933 has been moved to #1561

Contributor

petkaantonov commented Apr 29, 2015

#933 has been moved to #1561

@domenic

This comment has been minimized.

Show comment
Hide comment
@domenic

domenic Apr 29, 2015

Member

I made this wiki page (it was @trevnorris's idea): https://github.com/iojs/io.js/wiki/Breaking-Changes

Meant as a quick reference for people who aren't willing to go through the full release notes.

Member

domenic commented Apr 29, 2015

I made this wiki page (it was @trevnorris's idea): https://github.com/iojs/io.js/wiki/Breaking-Changes

Meant as a quick reference for people who aren't willing to go through the full release notes.

@trevnorris

This comment has been minimized.

Show comment
Hide comment
@trevnorris

trevnorris Apr 29, 2015

Contributor

@domenic awesome. thanks.

Contributor

trevnorris commented Apr 29, 2015

@domenic awesome. thanks.

@Fishrock123

This comment has been minimized.

Show comment
Hide comment
@Fishrock123

Fishrock123 May 1, 2015

Member

Remaining issues are:

#1559 - port missing commits from v1.x into master (need to clarify one last thing with @chrisdickinson)
#1561 - url parser, just needs someone to take it and land it as far as I can tell

I think in our changelog we should have a ## Breaking Changes above notable changes for the semver-major PR's.

Member

Fishrock123 commented May 1, 2015

Remaining issues are:

#1559 - port missing commits from v1.x into master (need to clarify one last thing with @chrisdickinson)
#1561 - url parser, just needs someone to take it and land it as far as I can tell

I think in our changelog we should have a ## Breaking Changes above notable changes for the semver-major PR's.

@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg May 2, 2015

Member

OK folks, milestone complete, ready to move on and I'm calling a feature freeze @iojs/collaborators (please only merge fixes, doc updates and very minor things in master before 2.0.0).

CI @ 3fd7fc4: https://jenkins-iojs.nodesource.com/job/iojs+any-pr+multi/640/ looks good

RC @ 3fd7fc4: https://jenkins-iojs.nodesource.com/job/iojs+release+nightly/171/ available at https://iojs.org/download/nightly/v2.0.0-nightly201505023fd7fc429c/ - please download and test this version, it has the url.parse changes in it.

Aiming to get this out tomorrow barring anything major coming out of that RC.

Member

rvagg commented May 2, 2015

OK folks, milestone complete, ready to move on and I'm calling a feature freeze @iojs/collaborators (please only merge fixes, doc updates and very minor things in master before 2.0.0).

CI @ 3fd7fc4: https://jenkins-iojs.nodesource.com/job/iojs+any-pr+multi/640/ looks good

RC @ 3fd7fc4: https://jenkins-iojs.nodesource.com/job/iojs+release+nightly/171/ available at https://iojs.org/download/nightly/v2.0.0-nightly201505023fd7fc429c/ - please download and test this version, it has the url.parse changes in it.

Aiming to get this out tomorrow barring anything major coming out of that RC.

CHANGELOG.md
+* [[`547213913b`](https://github.com/iojs/io.js/commit/547213913b)] - **test**: adjust Makefile/test-ci, add to vcbuild.bat (Rod Vagg) [#1530](https://github.com/iojs/io.js/pull/1530)
+* [[`6bf85bc81e`](https://github.com/iojs/io.js/commit/6bf85bc81e)] - **test**: add test for 06cfff9 regression (Brendan Ashworth) [#1467](https://github.com/iojs/io.js/pull/1467)
+* [[`a7d74633f2`](https://github.com/iojs/io.js/commit/a7d74633f2)] - **tls_wrap**: use localhost if options.host is empty (Guilherme Souza) [#1493](https://github.com/iojs/io.js/pull/1493)
+* [[`bf7ac08dd0`](https://github.com/iojs/io.js/commit/bf7ac08dd0)] - **util**: add Map and Set inspection support (Christopher Monsanto) [#1471](https://github.com/iojs/io.js/pull/1471)

This comment has been minimized.

@monsanto

monsanto May 2, 2015

Contributor

(Referring to the last line) Promise inspection is supported too. IDK why that wasn't put in the commit message. Perhaps a clarifying note could be added here

@monsanto

monsanto May 2, 2015

Contributor

(Referring to the last line) Promise inspection is supported too. IDK why that wasn't put in the commit message. Perhaps a clarifying note could be added here

@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg May 2, 2015

Member

Updated CHANGELOG with full Breaking changes, Notable items, Known issues and Commits sections. Please review in this PR, relevant committers: @domenic, @indutny, @evanlucas, @othiym23, @tellnes, @chrisdickinson, @monsanto, @bnoordhuis, @trevnorris, @piscisaureus, @Fishrock123.

Member

rvagg commented May 2, 2015

Updated CHANGELOG with full Breaking changes, Notable items, Known issues and Commits sections. Please review in this PR, relevant committers: @domenic, @indutny, @evanlucas, @othiym23, @tellnes, @chrisdickinson, @monsanto, @bnoordhuis, @trevnorris, @piscisaureus, @Fishrock123.

@chrisdickinson

This comment has been minimized.

Show comment
Hide comment
@chrisdickinson

chrisdickinson May 2, 2015

Contributor

Just tried to npm install the latest checkout of request, it failed with git errors.

Contributor

chrisdickinson commented May 2, 2015

Just tried to npm install the latest checkout of request, it failed with git errors.

@chrisdickinson

This comment has been minimized.

Show comment
Hide comment
@chrisdickinson

chrisdickinson May 2, 2015

Contributor

Tried request's tests (those that run) – the bulk of them pass under v1.8.1, but fail in v2.0.0.

Contributor

chrisdickinson commented May 2, 2015

Tried request's tests (those that run) – the bulk of them pass under v1.8.1, but fail in v2.0.0.

CHANGELOG.md
+* **net**: `socket.connect()` now accepts a `'lookup'` option for a custom DNS resolution mechanism, defaults to `dns.lookup()` (Evan Lucas) [#1505](https://github.com/iojs/io.js/pull/1505)
+* **npm**: * Upgrade npm to 2.9.0. See the [v2.8.4](https://github.com/npm/npm/releases/tag/v2.8.4) and [v2.9.0](https://github.com/npm/npm/releases/tag/v2.9.0) release notes for details. Notable items:
+ - Add support for default author field to make `npm init -y` work without user-input (@othiym23) [npm/npm/d8eee6cf9d](https://github.com/npm/npm/commit/d8eee6cf9d2ff7aca68dfaed2de76824a3e0d9af)
+ - Include local modules in `npm outdated` and `npm update` (@ArnaudRinquin) [npm/npm#7426](https://githu.com/npm/npm/issues/7426)

This comment has been minimized.

@piscisaureus

piscisaureus May 2, 2015

Member

githu.com

@piscisaureus

piscisaureus May 2, 2015

Member

githu.com

CHANGELOG.md
+ - Computed property names (`{['foo'+'bar']:'bam'}`) are implemented in staging behind the `--harmony-computed-property-names` flag
+* **Windows**:
+ - Random process termination on Windows fixed (Fedor Indutny) [#1512](https://github.com/iojs/io.js/issues/1512) / [#1563](https://github.com/iojs/io.js/pull/1563)
+ - The delay-load hook introduced to fix issues with process naming (iojs.exe / node.exe) has been made opt-in for native add-ons. Native add-ons should include `'win_delay_load_hook': 'true'` in their binding.gyp to enable this feature. (Bert Belder) [#1433](https://github.com/iojs/io.js/pull/1433)

This comment has been minimized.

@piscisaureus

piscisaureus May 2, 2015

Member

"enabled" is now the default for this option - people should opt-out in the unlikely case that their addon doesn't compile.

@piscisaureus

piscisaureus May 2, 2015

Member

"enabled" is now the default for this option - people should opt-out in the unlikely case that their addon doesn't compile.

@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg May 2, 2015

Member

@piscisaureus can you check the wording of the delay-load bit now please?

@petkaantonov added 3 items under url attributed to you, can you check those in the CHANGELOG.md please?

Member

rvagg commented May 2, 2015

@piscisaureus can you check the wording of the delay-load bit now please?

@petkaantonov added 3 items under url attributed to you, can you check those in the CHANGELOG.md please?

@piscisaureus

This comment has been minimized.

Show comment
Hide comment
@piscisaureus

piscisaureus May 2, 2015

Member

@piscisaureus can you check the wording of the delay-load bit now please?

lgtm. Since this is a maybe-breaking change it may be worthwhile moving it to the breaking changes section.

Member

piscisaureus commented May 2, 2015

@piscisaureus can you check the wording of the delay-load bit now please?

lgtm. Since this is a maybe-breaking change it may be worthwhile moving it to the breaking changes section.

@sjrd

This comment has been minimized.

Show comment
Hide comment
@sjrd

sjrd May 2, 2015

RC @ 3fd7fc4: https://jenkins-iojs.nodesource.com/job/iojs+release+nightly/171/ available at https://iojs.org/download/nightly/v2.0.0-nightly201505023fd7fc429c/ - please download and test this version, it has the url.parse changes in it.

FWIW, this RC can run the test suite of Scala.js' latest master, under all its different output modes: ES 5.1, ES 5.1+Closure, ES 6 with --harmony-rest-parameters, and the wip ES 6 Strong Mode with --harmony-rest-parameters --strong-mode.
Of course this is mostly testing the V8 part, but still, I thought I'd mention it.
I can't wait to see 2.0.0 final :)

sjrd commented May 2, 2015

RC @ 3fd7fc4: https://jenkins-iojs.nodesource.com/job/iojs+release+nightly/171/ available at https://iojs.org/download/nightly/v2.0.0-nightly201505023fd7fc429c/ - please download and test this version, it has the url.parse changes in it.

FWIW, this RC can run the test suite of Scala.js' latest master, under all its different output modes: ES 5.1, ES 5.1+Closure, ES 6 with --harmony-rest-parameters, and the wip ES 6 Strong Mode with --harmony-rest-parameters --strong-mode.
Of course this is mostly testing the V8 part, but still, I thought I'd mention it.
I can't wait to see 2.0.0 final :)

@silverwind

This comment has been minimized.

Show comment
Hide comment
@silverwind

silverwind May 2, 2015

Contributor

Opened #1588 for the url hash issue and marked it release blocking. Pending fix: #1589.

Contributor

silverwind commented May 2, 2015

Opened #1588 for the url hash issue and marked it release blocking. Pending fix: #1589.

@silverwind

This comment has been minimized.

Show comment
Hide comment
@silverwind

silverwind May 2, 2015

Contributor

Marked #1591 blocking as well. Not sure about the impact of this one, but we probably don't want to ship a partially broken npm. Pending fix is here: npm/npm#8163.

Contributor

silverwind commented May 2, 2015

Marked #1591 blocking as well. Not sure about the impact of this one, but we probably don't want to ship a partially broken npm. Pending fix is here: npm/npm#8163.

Starefossen added a commit to Starefossen/docker-iojs that referenced this pull request May 3, 2015

Add io.js v2.0.0-rc-1
Related: #51
Related: nodejs/iojs.org#327
Related: nodejs/node#1532

Signed-off-by: Hans Kristian Flaatten <hans.kristian.flaatten@turistforeningen.no>

Starefossen added a commit to Starefossen/docker-iojs that referenced this pull request May 3, 2015

Add io.js v2.0.0-rc-1
PR-URL: #55
Related: #51
Related: nodejs/iojs.org#327
Related: nodejs/node#1532

Signed-off-by: Hans Kristian Flaatten <hans.kristian.flaatten@turistforeningen.no>

@Starefossen Starefossen referenced this pull request in nodejs/docker-iojs May 3, 2015

Merged

Add io.js v2.0.0-rc-3 #55

CHANGELOG.md
+
+* V8 upgrade to 4.2, minor changes to C++ API
+* `os.tmpdir()` is now cross-platform consistent and will no longer returns a path with a trailling slash on any platform
+* While not a *breaking change* the 'smalloc' module has been deprecated in anticipation of it becoming unsupportable with a future upgrade to V8 4.4.

This comment has been minimized.

@rvagg

rvagg May 4, 2015

Member

@silverwind, @bnoordhuis: happy with this mention of smalloc in "Breaking changes"?

@rvagg

rvagg May 4, 2015

Member

@silverwind, @bnoordhuis: happy with this mention of smalloc in "Breaking changes"?

This comment has been minimized.

@bnoordhuis

bnoordhuis May 4, 2015

Member

Yes, thanks.

@bnoordhuis

bnoordhuis May 4, 2015

Member

Yes, thanks.

@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg May 4, 2015

Member

I've put this in the "Breaking changes" section at the top of the CHANGELOG for this release:

Note: a new version of the 'url' module was reverted prior to release as it was decided the potential for breakage across the npm ecosystem was too great and that more compatibility work needed to be done before releasing it. See #1602 for further information.

Also bumped NODE_MODULE_VERSION to 44 in 4ec59dc attached to this PR.

Test run for current master: https://jenkins-iojs.nodesource.com/job/iojs+any-pr+multi/642/

New RC build @ f34b105: https://jenkins-iojs.nodesource.com/job/iojs+release+nightly/175/

So we have, officially:

Member

rvagg commented May 4, 2015

I've put this in the "Breaking changes" section at the top of the CHANGELOG for this release:

Note: a new version of the 'url' module was reverted prior to release as it was decided the potential for breakage across the npm ecosystem was too great and that more compatibility work needed to be done before releasing it. See #1602 for further information.

Also bumped NODE_MODULE_VERSION to 44 in 4ec59dc attached to this PR.

Test run for current master: https://jenkins-iojs.nodesource.com/job/iojs+any-pr+multi/642/

New RC build @ f34b105: https://jenkins-iojs.nodesource.com/job/iojs+release+nightly/175/

So we have, officially:

@rvagg rvagg removed the tc-agenda label May 4, 2015

Starefossen added a commit to Starefossen/docker-iojs that referenced this pull request May 4, 2015

Add io.js v2.0.0-rc-3
PR-URL: #55
Related: #51
Related: nodejs/iojs.org#327
Related: nodejs/node#1532

Signed-off-by: Hans Kristian Flaatten <hans.kristian.flaatten@turistforeningen.no>
@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg May 4, 2015

Member

I'm going to push 2.0.0 tomorrow unless any blockers come up in the meantime

Member

rvagg commented May 4, 2015

I'm going to push 2.0.0 tomorrow unless any blockers come up in the meantime

Starefossen added a commit to Starefossen/docker-iojs that referenced this pull request May 4, 2015

Add io.js v2.0.0-rc-3
PR-URL: #55
Related: #51
Related: nodejs/iojs.org#327
Related: nodejs/node#1532

Signed-off-by: Hans Kristian Flaatten <hans.kristian.flaatten@turistforeningen.no>
@domenic

This comment has been minimized.

Show comment
Hide comment
@domenic

domenic May 4, 2015

Member

Thanks for pushing through @rvagg!

Member

domenic commented May 4, 2015

Thanks for pushing through @rvagg!

CHANGELOG.md
+
+_Note: a new version of the 'url' module was reverted prior to release as it was decided the potential for breakage across the npm ecosystem was too great and that more compatibility work needed to be done before releasing it. See [#1602](https://github.com/iojs/io.js/pull/1602) for further information._
+
+https://github.com/iojs/io.js/wiki/Breaking-Changes#200-from-1x

This comment has been minimized.

@domenic

domenic May 4, 2015

Member

Seems reundant with the above

@domenic

domenic May 4, 2015

Member

Seems reundant with the above

@chrisdickinson

This comment has been minimized.

Show comment
Hide comment
@chrisdickinson

chrisdickinson May 4, 2015

Contributor

Noticed some regressions I introduced in the repl addition while poking at the nightly. A PR is up. 1e6 apologies.

Contributor

chrisdickinson commented May 4, 2015

Noticed some regressions I introduced in the repl addition while poking at the nightly. A PR is up. 1e6 apologies.

@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg May 4, 2015

Member

we're going to need reviewers and testers for @chrisdickinson's fixes before we can move forward, head to #1605 if you're qualified to help with this

Member

rvagg commented May 4, 2015

we're going to need reviewers and testers for @chrisdickinson's fixes before we can move forward, head to #1605 if you're qualified to help with this

@silverwind

This comment has been minimized.

Show comment
Hide comment
@silverwind

silverwind May 4, 2015

Contributor

@rvagg we should be fine for the release now.

Contributor

silverwind commented May 4, 2015

@rvagg we should be fine for the release now.

@rvagg

This comment has been minimized.

Show comment
Hide comment

@rvagg rvagg added the semver-major label May 4, 2015

rvagg added a commit to rvagg/io.js that referenced this pull request May 4, 2015

src: bump NODE_MODULE_VERSION due to V8 API
V8 4.2 introduces some minor C++ API changes that make it necessary for
many native add-ons to recompile in order to be usable in v2.0.0+

PR-URL: nodejs#1532
@Fishrock123

This comment has been minimized.

Show comment
Hide comment
@Fishrock123

Fishrock123 May 4, 2015

Member

I think the CI is ok.

Member

Fishrock123 commented May 4, 2015

I think the CI is ok.

@rvagg

This comment has been minimized.

Show comment
Hide comment
@rvagg

rvagg May 4, 2015

Member

yeah, just going through the motions now, which is mostly about sorting out the changelog docs and testing the build process

Member

rvagg commented May 4, 2015

yeah, just going through the motions now, which is mostly about sorting out the changelog docs and testing the build process

CHANGELOG.md
+
+* V8 upgrade to 4.2, minor changes to C++ API
+* `os.tmpdir()` is now cross-platform consistent and will no longer returns a path with a trailling slash on any platform
+* While not a *breaking change* the 'smalloc' module has been deprecated in anticipation of it becoming unsupportable with a future upgrade to V8 4.4.

This comment has been minimized.

@Fishrock123

Fishrock123 May 4, 2015

Member

maybe link to #1451?

@Fishrock123

Fishrock123 May 4, 2015

Member

maybe link to #1451?

This comment has been minimized.

@rvagg

rvagg May 4, 2015

Member

done, ptal

@rvagg

rvagg May 4, 2015

Member

done, ptal

rvagg added a commit to rvagg/io.js that referenced this pull request May 4, 2015

rvagg added a commit to rvagg/io.js that referenced this pull request May 4, 2015

rvagg added a commit to rvagg/io.js that referenced this pull request May 4, 2015

src: bump NODE_MODULE_VERSION due to V8 API
V8 4.2 introduces some minor C++ API changes that make it necessary for
many native add-ons to recompile in order to be usable in v2.0.0+

PR-URL: #1532

rvagg added a commit to rvagg/io.js that referenced this pull request May 4, 2015

CHANGELOG.md
+* **util**: add Promise, Map and Set inspection support (Christopher Monsanto) [#1471](https://github.com/iojs/io.js/pull/1471)
+* **V8**: upgrade to 4.2.77.18, see the [ChangeLog](https://chromium.googlesource.com/v8/v8/+/refs/heads/4.2.77/ChangeLog) for full details. Notable items:
+ - Classes have moved out of staging; the `class` keyword is now usable without flags
+ - Object literal enhancements have moved out of staging; shorthand method and property syntax is now usable (`{ method() { }, property }`)

This comment has been minimized.

@Fishrock123

Fishrock123 May 4, 2015

Member

Classes are still strict-mode only.

Object literals appear to be in regular mode? Still testing..

@Fishrock123

Fishrock123 May 4, 2015

Member

Classes are still strict-mode only.

Object literals appear to be in regular mode? Still testing..

This comment has been minimized.

@Fishrock123

Fishrock123 May 4, 2015

Member

Reason we might want to mention this is so we don't get questions why it doesn't work yet.

@Fishrock123

Fishrock123 May 4, 2015

Member

Reason we might want to mention this is so we don't get questions why it doesn't work yet.

This comment has been minimized.

@Fishrock123

Fishrock123 May 4, 2015

Member

Object literals work in sloppy, except for computed props, which do not appear to exist in any non-flagged mode yet.

@Fishrock123

Fishrock123 May 4, 2015

Member

Object literals work in sloppy, except for computed props, which do not appear to exist in any non-flagged mode yet.

@Fishrock123

This comment has been minimized.

Show comment
Hide comment
@Fishrock123

Fishrock123 May 4, 2015

Member

LGTM

Member

Fishrock123 commented May 4, 2015

LGTM

rvagg added a commit that referenced this pull request May 4, 2015

2015-05-04 io.js v2.0.0 Release
PR-URL: #1532

Notable Changes:

* crypto: significantly reduced memory usage for TLS (Fedor Indutny & Сковорода
  Никита Андреевич) #1529
* net: socket.connect() now accepts a 'lookup' option for a custom DNS
  resolution mechanism, defaults to dns.lookup() (Evan Lucas) #1505
* npm: Upgrade npm to 2.9.0. See the v2.8.4 and v2.9.0 release notes for
  details. Notable items:
  - Add support for default author field to make npm init -y work without
    user-input (@othiym23) npm/npm/d8eee6cf9d
  - Include local modules in npm outdated and npm update (@ArnaudRinquin)
    npm/npm#7426
  - The prefix used before the version number on npm version is now configurable
    via tag-version-prefix (@kkragenbrink) npm/npm#8014
* os: os.tmpdir() is now cross-platform consistent and will no longer returns a
  path with a trailling slash on any platform (Christian Tellnes) #747
* process:
  - process.nextTick() performance has been improved by between 2-42% across the
    benchmark suite, notable because this is heavily used across core (Brian White) #1548
  - New process.geteuid(), process.seteuid(id), process.getegid() and
    process.setegid(id) methods allow you to get and set effective UID and GID
    of the process (Evan Lucas) #1536
* repl:
  - REPL history can be persisted across sessions if the NODE_REPL_HISTORY_FILE
    environment variable is set to a user accessible file,
    NODE_REPL_HISTORY_SIZE can set the maximum history size and defaults to 1000
    (Chris Dickinson) #1513
  - The REPL can be placed in to one of three modes using the NODE_REPL_MODE
    environment variable: sloppy, strict or magic (default); the new magic mode
    will automatically run "strict mode only" statements in strict mode
    (Chris Dickinson) #1513
* smalloc: the 'smalloc' module has been deprecated due to changes coming in V8
  4.4 that will render it unusable
* util: add Promise, Map and Set inspection support (Christopher Monsanto) #1471
* V8: upgrade to 4.2.77.18, see the ChangeLog for full details. Notable items:
  - Classes have moved out of staging; the class keyword is now usable in strict
    mode without flags
  - Object literal enhancements have moved out of staging; shorthand method and
    property syntax is now usable ({ method() { }, property })
  - Rest parameters (function(...args) {}) are implemented in staging behind the
    --harmony-rest-parameters flag
  - Computed property names ({['foo'+'bar']:'bam'}) are implemented in staging
    behind the --harmony-computed-property-names flag
  - Unicode escapes ('\u{xxxx}') are implemented in staging behind the
    --harmony_unicode flag and the --harmony_unicode_regexps flag for use in
    regular expressions
* Windows:
  - Random process termination on Windows fixed (Fedor Indutny) #1512 / #1563
  - The delay-load hook introduced to fix issues with process naming (iojs.exe /
    node.exe) has been made opt-out for native add-ons. Native add-ons should
    include 'win_delay_load_hook': 'false' in their binding.gyp to disable this
    feature if they experience problems . (Bert Belder) #1433
* Governance:
  - Rod Vagg (@rvagg) was added to the Technical Committee (TC)
  - Jeremiah Senkpiel (@Fishrock123) was added to the Technical Committee (TC)
@rvagg

This comment has been minimized.

Show comment
Hide comment
@silverwind

This comment has been minimized.

Show comment
Hide comment
@silverwind

silverwind May 6, 2015

Contributor

All looks fine, armv6 is there too. thanks @rvagg

Contributor

silverwind commented May 6, 2015

All looks fine, armv6 is there too. thanks @rvagg

@silverwind silverwind closed this May 6, 2015

rvagg added a commit to rvagg/io.js that referenced this pull request May 23, 2015

2015-05-24 io.js v2.1.0 Release
PR-URL: nodejs#1532

Notable Changes:

* crypto: Diffie-Hellman key exchange (DHE) parameters ('dhparams') must now be
  1024 bits or longer or an error will be thrown. A warning will also be printed
  to the console if you supply less than 2048 bits. See https://weakdh.org/ for
  further context on this security concern. (Shigeki Ohtsu) #1739.
* node: A new --trace-sync-io command line flag will print a warning and a stack
  trace whenever a synchronous API is used. This can be used to track down
  synchronous calls that may be slowing down an application.
  (Trevor Norris) #1707.
* node: To allow for chaining of methods, the setTimeout(), setKeepAlive(),
  setNoDelay(), ref() and unref() methods used in 'net', 'dgram', 'http',
  'https' and 'tls' now return the current instance instead of undefined
  (Roman Reiss) #1779.
* util: A significant speed-up (in the order of 35%) for the common-case of a
  single string argument to util.format(), used by console.log()
  (Сковорода Никита Андреевич) #1749.

rvagg added a commit to rvagg/io.js that referenced this pull request May 23, 2015

2015-05-24 io.js v2.1.0 Release
PR-URL: nodejs#1532

Notable Changes:

* crypto: Diffie-Hellman key exchange (DHE) parameters ('dhparams') must now be
  1024 bits or longer or an error will be thrown. A warning will also be printed
  to the console if you supply less than 2048 bits. See https://weakdh.org/ for
  further context on this security concern. (Shigeki Ohtsu) #1739.
* node: A new --trace-sync-io command line flag will print a warning and a stack
  trace whenever a synchronous API is used. This can be used to track down
  synchronous calls that may be slowing down an application.
  (Trevor Norris) #1707.
* node: To allow for chaining of methods, the setTimeout(), setKeepAlive(),
  setNoDelay(), ref() and unref() methods used in 'net', 'dgram', 'http',
  'https' and 'tls' now return the current instance instead of undefined
  (Roman Reiss & Evan Lucas) #1699 #1768 #1779.
* util: A significant speed-up (in the order of 35%) for the common-case of a
  single string argument to util.format(), used by console.log()
  (Сковорода Никита Андреевич) #1749.

rvagg added a commit to rvagg/io.js that referenced this pull request May 23, 2015

2015-05-24 io.js v2.1.0 Release
PR-URL: nodejs#1532

Notable Changes:

* crypto: Diffie-Hellman key exchange (DHE) parameters ('dhparams') must now be
  1024 bits or longer or an error will be thrown. A warning will also be printed
  to the console if you supply less than 2048 bits. See https://weakdh.org/ for
  further context on this security concern. (Shigeki Ohtsu) #1739.
* node: A new --trace-sync-io command line flag will print a warning and a stack
  trace whenever a synchronous API is used. This can be used to track down
  synchronous calls that may be slowing down an application.
  (Trevor Norris) #1707.
* node: To allow for chaining of methods, the setTimeout(), setKeepAlive(),
  setNoDelay(), ref() and unref() methods used in 'net', 'dgram', 'http',
  'https' and 'tls' now return the current instance instead of undefined
  (Roman Reiss & Evan Lucas) #1699 #1768 #1779.
* util: A significant speed-up (in the order of 35%) for the common-case of a
  single string argument to util.format(), used by console.log()
  (Сковорода Никита Андреевич) #1749.

@rvagg rvagg referenced this pull request May 24, 2015

Closed

Release proposal v2.1.0 #1777

rvagg added a commit to rvagg/io.js that referenced this pull request May 24, 2015

2015-05-24 io.js v2.1.0 Release
PR-URL: nodejs#1532

Notable Changes:

* crypto: Diffie-Hellman key exchange (DHE) parameters ('dhparams') must now be
  1024 bits or longer or an error will be thrown. A warning will also be printed
  to the console if you supply less than 2048 bits. See https://weakdh.org/ for
  further context on this security concern. (Shigeki Ohtsu) #1739.
* node: A new --trace-sync-io command line flag will print a warning and a stack
  trace whenever a synchronous API is used. This can be used to track down
  synchronous calls that may be slowing down an application.
  (Trevor Norris) #1707.
* node: To allow for chaining of methods, the setTimeout(), setKeepAlive(),
  setNoDelay(), ref() and unref() methods used in 'net', 'dgram', 'http',
  'https' and 'tls' now return the current instance instead of undefined
  (Roman Reiss & Evan Lucas) #1699 #1768 #1779.
* npm: Upgraded to v2.10.1, release notes can be found in
  https://github.com/npm/npm/releases/tag/v2.10.1 and
  https://github.com/npm/npm/releases/tag/v2.10.0.
* util: A significant speed-up (in the order of 35%) for the common-case of a
  single string argument to util.format(), used by console.log()
  (Сковорода Никита Андреевич) #1749.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment