Skip to content

Conversation

@mmdyb
Copy link

@mmdyb mmdyb commented Jun 11, 2022

vkurchatkin and others added 30 commits October 30, 2014 15:49
copyOnto is broken when one argument has 1 byte size and the other > 1
byte.

PR-URL: nodejs/node-v0.x-archive#8637
Reviewed-by: Trevor Norris <[email protected]>
Make the root_certs global fully const.  As a side effect, that moves it
from the .data section to the .rodata section.  Makes it a little easier
to reason about the remaining globals.
There is not much point in keeping it a separate project because it
doesn't build standalone, plus it makes applying changes to core more
difficult because of the implicit dependency on header files in src/.
Drop the trailing nullptr and use ARRAY_SIZE.
Update the debug agent to conform to the code style in src/.
When started with IPC pipe on fd=0 child process should not crash when
referencing or using `process.stdin`.

fix nodejs/node-v0.x-archive#8669

PR-URL: node-forward/node#45
Reviewed-By: Ben Noorhduis <[email protected]>
Newer incarnations of the task manager only show the description, not
even the product name.

PR-URL: node-forward/node#46
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Ben Noordhuis <[email protected]>
This change in V8: https://code.google.com/p/v8/source/detail?r=22210
has introduced a method named OS::GetCurrentThreadId which fails to
compile on OSes where a "gettid" syscall does not exist.

This build issue has been fixed upstream by several changes:
- https://code.google.com/p/v8/source/detail?r=23459.
- https://codereview.chromium.org/649553002
- https://codereview.chromium.org/642223003

Another minor fix to the upstream changes was also necessary.
See https://code.google.com/p/v8/issues/detail?id=3620 for
more information.

The other build issue was due to the fact that alloca.h is not included
by other system includes on SmartOS, which is assumed by V8.

Built and tested on Linux, MacOS X, Windows and SmartOS.
Fixes a bug that was introduced in commit f674b09 when v8::String::New()
calls were replaced with calls to one-byte, two-byte and UTF-8 versions.
It turns out that for network interface names, using a one-byte encoding
can produce the wrong results on Windows.  Use UTF-8 instead.

Libuv on Windows correctly encodes non-ASCII characters in the interface
name as UTF-8.  On Unices however, the interface name is just a binary
string with no particular encoding; that's why on UNIX platforms, we
keep interpreting it as a one-byte string.

Fixes nodejs/node-v0.x-archive#8633.

PR-URL: node-forward/node#44
Reviewed-By: Bert Belder <[email protected]>
Add a .spec file and a rpmbuild(1) driver script.  Useful for people
on RHEL-based systems that want to compile and package from source.

PR-URL: node-forward/node#10
Reviewed-By: Rod Vagg <[email protected]>
Unlink NODE_COMMON_PIPE before running the test if set in the
environment.  The test runner won't do it for us like it does
for files in test/tmp.

PR-URL: node-forward/node#40
Reviewed-By: Rod Vagg <[email protected]>
PR-URL: nodejs/node-v0.x-archive#8566
Reviewed-by: Fedor Indutny <[email protected]>
Reviewed-by: Trevor Norris <[email protected]>
It was modified in libuv to be consistent with uv_exepath and not
include the trailing NULL byte in the returned size.

PR-URL: nodejs/node-v0.x-archive#8566
Reviewed-by: Fedor Indutny <[email protected]>
Reviewed-by: Trevor Norris <[email protected]>
Revert uv_thread_self() to return unsigned long instead of uv_thread_t.
This was causing a build failure on Windows and is only a temporary fix
until the proper patch lands upstream.

Reverts: joyent/libuv@59658a8
Fixes: ce112c2 "deps: update uv to v1.0.0-rc2"
pending tls.TLSSocket growing the ability to work
with streams, createSecurePair will remain.

PR-URL: nodejs/node-v0.x-archive#8695
Reviewed-by: Fedor Indutny <[email protected]>
Vulnerability credit goes to:

    Calvin Liang [email protected]

Reviewed-By: Ben Noordhuis <[email protected]>
PR-URL: ...private
Killing the cluster master first on Windows causes an ESRCH when killing
the children as the OS takes care of them itself.

PR-URL: node-forward/node#53
Reviewed-By: Ben Noordhuis <[email protected]>
In https://github.com/joyent/node/pulls/8695, the deprecation was
removed from doc.  This removes the deprecation from the code.

PR-URL: nodejs/node-v0.x-archive#8700
Reviewed-by: Chris Dickinson <[email protected]>
Adding note to api/modules.markdown about ability to
load arbitrary path from modules from node_module path
by adding reference to path after module name in call
to require()

PR-URL: nodejs/node-v0.x-archive#7794
Reviewed-by: Trevor Norris <[email protected]>
Reviewed-by: Fedor Indutny <[email protected]>
Reviewed-by: Timothy J Fontaine <[email protected]>
Turn os.endianness() from a run-time function into a pure JS function.
Upsides: makes it a good candidate for inlining at the call site.
Downsides: none that I can think of.

PR-URL: node-forward/node#55
Reviewed-By: Chris Dickinson <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Fedor Indutny <[email protected]>
Fix a Windows-only build error that was introduced in
commit 1183ba4 ("zlib: support concatenated gzip files").

Rename the NO_ERROR and FAILED enumerations, they conflict
with macros of the same name in <winerror.h>.

PR-URL: node-forward/node#57
Reviewed-By: Fedor Indutny <[email protected]>
Reviewed-By: Rod Vagg <[email protected]>
Fix config option that doesn't work with OSX.

Fixes: nodejs/node-v0.x-archive#8521
PR-URL: nodejs/node-v0.x-archive#8602
Reviewed-by: Trevor Norris <[email protected]>
So what I did here is to make the icutools library actually contain the
entire ICU dependencies needed for host-side tools. Sadly, this will
build ICU twice, but avoids conflicts between host and target side.
This all seems like a gyp bug of some sort, but without docs for
toolsets, who’s to say?

I removed the icuio library as a separate target, because it was only
used by the host-side tools.

PR-URL: nodejs/node-v0.x-archive#8681
Reviewed-by: Trevor Norris <[email protected]>
Note that this may not affect anything until powerpc support lands in
v8.

Related: https://github.com/srl295/node/issues/7
Related: srl295@ba8ab91
PR-URL: nodejs/node-v0.x-archive#8712
Reviewed-by: Trevor Norris <[email protected]>
bnoordhuis and others added 27 commits December 14, 2014 18:52
I introduced this module over a year ago in a pull request as the v8
module but it was quickly subsumed by the tracing module.

The tracing module was recently removed again and that is why this
commit introduces the v8 module again, including the new features it
picked up commits d23ac0e and f8076c4.

PR-URL: #131
Reviewed-By: Chris Dickinson <[email protected]>
Reviewed-By: Christian Tellnes <[email protected]>
Reviewed-By: Thorsten Lorenz <[email protected]>
Reviewed-By: Trevor Norris <[email protected]>
Currently there's an example using http.ServerResponse stream, which
has a known bug and will not throw an error while writing after end().
Changed to a writable stream from fs which behaves as expected.

Fixes nodejs/node-v0.x-archive#8814.

PR-URL: #155
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Brendan Ashworth <[email protected]>
fs.exists() and fs.existsSync() do not follow the typical
error first callback convention. access() and accessSync()
are added as alternatives in this commit.

Fixes: nodejs/node-v0.x-archive#8714
PR-URL: #114
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Domenic Denicola <[email protected]>
Reviewed-By: Ben Noordhuis <[email protected]>
PR-URL: #172
Fix: #139
* Allow running tests in mixed parallel/sequential modes
* Add -J flag for running tests on all available CPUs
* Support TEST_THREAD_ID in test/common.js and use it for tmpDir and PORT
* make: use -J flag

Reviewed-By: Ben Noordhuis <[email protected]>
PR-URL: #172
Fix: #139
Fixes the following assertion on slow systems, like our ARM buildbot:

    $ out/Debug/node test/simple/test-timers-unref.js
    node: ../src/async-wrap-inl.h:101: v8::Handle<v8::Value>
    node::AsyncWrap::MakeCallback(uint32_t, int,
    v8::Handle<v8::Value>*): Assertion `cb_v->IsFunction()' failed.
    Aborted

The reason it only manifests on slow systems is that the test starts
a 1 ms interval timer, then defers timer.unref.bind({}) to the next
tick.  On fast systems, the test completes in under a millisecond,
before the callback is called.

This commit makes timer.unref() check that the receiver actually has
a timeout callback property.

Fixes #13.

PR-URL: #165
Reviewed-By: Rod Vagg <[email protected]>
Remove the 'gc' event from the v8 module and remove the supporting
infrastructure from src/.  It gets the axe because:

1. There are currently no users.  It was originally conceived as
   an upstreamed subset of StrongLoop's strong-agent GC metrics,
   but the strong-agent code base has evolved considerably since
   that time and has no use anymore for what is in core.

2. The implementation is not quite sound.  It calls into JS land
   from inside the GC epilog and that is unsafe.  We could fix
   that by delaying the callback until a safe time but because
   there are no users anyway, removing it is all around easier.

PR-URL: #174
Reviewed-By: Trevor Norris <[email protected]>
Add documentation for the callback parameter of http.ClientRequest's and
http.ServerResponse's end methods.

PR-URL: #181
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Brendan Ashworth <[email protected]>
These methods don't follow standard conventions, and shouldn't
be used anyway.

Fixes: #103
PR-URL: #166
Reviewed-By: Ben Noordhuis <[email protected]>
Currently clearBreakpoint error is confusing, it says "Script not found"
when there is no breakpoint, also documentation doesn't include
signature for clearBreakpoint.

PR-URL: #175
Reviewed-By: Miroslav Bajtoš <[email protected]>
Force V8 to optimize url.parse() before starting the actual benchmark.
Tries to minimize variance between successive runs caused by the
optimizer kicking in at different points.

It does not seem to have much impact, CPU times are roughly the same
before and afterwards; url.parse() quickly plateaus at a local optimum
where most time is spent in V8 builtins, notably Runtime_StringSplit()
and Object::GetElementWithReceiver() calls originating from
deps/v8/src/uri.js, with no recurring optimize/deoptimize cycles that
I could spot.

Still, I don't see any downsides to pre-optimizing the function being
benchmarked so in it goes.

PR-URL: #132
Reviewed-By: Chris Dickinson <[email protected]>
Reviewed-By: Fedor Indutny <[email protected]>
Don't use Number#toPrecision(), it switches to scientific notation for
numbers with more digits than the precision; use Number#toFixed().

PR-URL: #185
Reviewed-By: Chris Dickinson <[email protected]>
Replace the call to Array#splice() with a faster open-coded version
that creates less garbage.

Add a new benchmark to prove it.  With the change applied, it scores
a whopping 40% higher.

PR-URL: #185
Reviewed-By: Chris Dickinson <[email protected]>
Rename the url.parse() benchmark from url.js to url-parse.js.
A follow-up commit is going to add another one for url.resolve().

PR-URL: #184
Reviewed-By: Chris Dickinson <[email protected]>
Replace the call to Array#splice() with a faster open-coded version
that creates less garbage.

Add a new benchmark to prove it.  With the change applied, it scores
about 5% higher and that is nothing to sneeze at.

PR-URL: #184
Reviewed-By: Chris Dickinson <[email protected]>
They can't compile io.js anyway.

PR-URL: #187
Reviewed-By: Ben Noordhuis <[email protected]>
Change of Object.keys in ES6 breaks assert.deepEqual about primitive
values.

V8: https://code.google.com/p/v8/issues/detail?id=3443

Previously deepEqual depends on Object.key that throws an error for
a primitive value, but now Object.key does not throw.

PR-URL: #193
Reviewed-By: Ben Noordhuis <[email protected]>
Previously the code that builds the Table of Contents threw
an exception because of jump from an H1 heading directly to an H3
heading.

By changing the H3 heading to an H2, 'make doc' works again. This is
also consistent with other docs like console.markdown which use
H2 for method call documentation.

PR-URL: #203
Reviewed-By: Ben Noordhuis <[email protected]>
`console.time()` and `console.timeEnd()` are very closely related. It's
useful to reference them both from each other.

Previously, console.time() did not mention that it needed to be paired
with a call to console.timeEnd() to be useful, and timeEnd() also failed
to mention that console.time() needed to be called first.

References in both directions have been added.

PR-URL: #198
Reviewed-By: Ben Noordhuis <[email protected]>
The GCC version is no longer relevant since only 4.8 and newer are
supported. It's probably safe to assume clang on mac since V8 does
so too.

PR-URL: #205
Reviewed-By: Ben Noordhuis <[email protected]>
This commit changes `lib/dgram.js` Sockets to, when
they are bound to a port / IP, return themselves. This
is done in order to allow chaining of methods and be
in accordance with the `lib/net.js` library.

PR-URL: #214
Reviewed-By: Ben Noordhuis <[email protected]>
This commit adds a return statement to the dgram.Socket.close()
function that returns itself after it finishes. This follows along
the functionality of the more popular and, dare I say, father-library
`lib/net.js`.

PR-URL: #214
Reviewed-By: Ben Noordhuis <[email protected]>
The maxBuffer option was not self-documenting, so document the unit and
its effect.

PR-URL: #209
Reviewed-By: Ben Noordhuis <[email protected]>
Emit the close event asynchronously, after the close, as it is with the
net/http close events.

PR-URL: #217
Reviewed-By: Ben Noordhuis <[email protected]>
Like net, http, and https server.close, and socket.end(), etc.

PR-URL: #217
Reviewed-By: Ben Noordhuis <[email protected]>
Also, tests to confirm its existence.

PR-URL: #217
Reviewed-By: Ben Noordhuis <[email protected]>
@nodejs-github-bot
Copy link
Collaborator

Review requested:

  • @nodejs/gyp
  • @nodejs/tsc

@aduh95 aduh95 closed this Jun 11, 2022
@aduh95 aduh95 added the invalid Issues and PRs that are invalid. label Jun 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

invalid Issues and PRs that are invalid.

Projects

None yet

Development

Successfully merging this pull request may close these issues.