-
Notifications
You must be signed in to change notification settings - Fork 0
Breaking Changes
Through 2.x, if Buffer.concat
is invoked with a single element array, then it will simply return the first element from it. But, starting from 3.0.0, irrespective of the number of elements in the array, a new Buffer
object will be created and returned.
Through 2.x, the the dgram socket.send()
method emitted errors when a DNS lookup failed, even when a callback was provided. Starting from 3.0.0, if a callback is provided, no error event will be emitted.
Refs: #1796
When doing HTTP pipelining of requests, the server creates new request and response objects for each incoming HTTP request on the socket. Starting from 3.0.0, these objects are now created a couple of ticks later, when we are certainly done processing the previous request. This could change the observable timing with certain HTTP server coding patterns.
The upgrade from V8 4.2 to 4.4 will require a recompile of all native add-ons. The API surface area has not changed significantly, so most add-ons will "just work" after a recompile.
However, 4.3 introduces the new Maybe<>
and MaybeLocal<>
types, to fix systemic use-after-failure bugs where consumers could accidentally use empty handles. Many new APIs were introduced that return these types and take a Context argument. Add-on authors are encouraged to transition to these new maybe-style APIs as soon as possible, as V8 has deprecated the old ones and will eventually remove them.
HTTP status codes in core (http.STATUS_CODES
) were previously incorrect in mapping to the regulated codes. Updating the code mappings to conform to the IANA standard was a backwards incompatible change to consumers who depend on the text value of a header. The most significant of these changes was the text for 302
, which was previously Moved Temporarily
but is now Found
.
HTTP agents used to return an extra colon at the end of return values for .getName()
. This has been fixed.
os.tmpdir()
has been changed to never return a trailing slash regardless of the host platform.
The upgrade from V8 4.1 to 4.2 will require a recompile of all native add-ons. (The API surface area has not changed significantly, so most add-ons will "just work" after a recompile.)