►
From YouTube: 2022--8-19-Node.js Node-API Team meeting
Description
No description was provided for this meeting.
If this is YOUR meeting, an easy way to fix this is to add a description to your video, wherever mtngs.io found it (probably YouTube).
A
So
welcome
to
the
node.js
node
api
team
meeting
for
august
19
2022.
We
will
follow
our
typical
approach
of
looking
at
what's
tagged
for
milestone,
11
and
go
from
there.
So
let
me
just
pull
that
up
and
share.
B
A
A
B
Yep,
so
I
had
to
open
a
small
pr
on
the
node
add-on
api
for
one
of
the
missing
functionalities,
but
I'm
not,
I
wasn't
sure
if
it
was
like
the
best
way
to
test
it.
It's
a
small
change,
but
that's
this
one
yep.
B
This
is
testing
the
like
the
ref
class
method
under
through
essay
functions
and
yeah.
I'm
not
sure
if
this
is
the
best
way
to
do
it
does
it.
I
think
it's
just
a
learning
like
a
one-hand
change,
but.
A
B
B
Like
this,
this,
I
think
this
function
uses
the
libya
v
method
like
uv
ref
underneath,
but
almost
like.
I
guess
my
question
was
like
what
would
be
some
kind
of
scenarios
where
we
kind
of
use
this
right.
B
A
B
A
Right,
so
I
guess
that
there
is
also
the
question
of
like
this
is
pretty
much
just
a
rapper
yeah.
So
in
some
case
it
comes
down
to
like.
Is
that
already
tested?
If
it's
already,
if
the
backing
thing
is
already
tested,
does
it
really
make
sense
to
make
complicated
like
this?
One
is
probably
going
to
be
a
pretty
complicated
test
to
test
the
full.
C
I
guess
like
whenever
the
threat
say
function
get
destroyed.
It
should
cause
some
kind
of
callback.
D
D
A
A
A
I
think,
because
of
the
the
sort
of
complication
of
repeating
that,
especially
without
having,
like
you
know
in
in
core
you'd,
have
the
better
ability
to
reach
into
like
uv
and
whatever,
and
on
that
assumption,
then
the
test
in
our
test
coverage
suite
can
probably
be
can
probably
be
lighter
right,
but
I
think
maybe
I
think
vladimir
you
were
maybe
suggesting
that
we
should
probably
have
like
a
ref
and
unref
equivalent
like
if
we
did
a
ref
and
an
unref,
then
at
least
we
get
something
like
you
know.
A
A
B
I
think
I
was
just
adding
on
to
one
of
the
tesla
kevin
roll
was
like
for
testing
arm
wrap,
which
is
easier
since
I
think
once
you
unravel
it,
just
exits
from
the
event
loop,
but
like
his
does,
this
set
timeout
call
back
and
then
unrested.
So
my
thought
process
was
literally
like
it
doesn't
make
a
difference,
and
I
just
wrapped
the
call
and
then
the
letters
on
like
unwrapped
it
and
then
that
just
doesn't
nothing
really
and
then
shouldn't.
B
B
A
D
A
B
C
A
D
B
Yeah
on
the
javascript
side
of
things,
I
think
it's
it
spawns
a
child
process
and
then,
if
I
think
this
also
sets
a
timer
if
right
yeah
like,
I
think
I
think,
if
it
like,
if
by
the
time
the
timer
reaches
then
and
then
the
child's
still
alive,
it's
saying,
okay,
this
is
something
that's
like.
The
sausage
has
happened.
B
I
think
this
is
just
from
like
the
va.
I
think.
C
Think,
if
we're
not
using
the
true
ref
count,
we
kind
of
breaking
contract
of
our
api.
B
C
D
A
D
A
B
Yeah,
I
think
I
think
from
like,
like
playing
around
with
this
file
like
if
it
like
success.
It
succeeds
it's
going
to
resolve
this
promise
and
it
never
like
executes
the
timeout.
A
A
B
B
B
A
B
A
And
the
the
flip
side
with
you
know,
the
thing
we're
trying
to
test
is,
if
you
actually
say
unref,
but
then
change
your
mind
and
say
raf,
then,
if
the
only
thing
that
that
that's
running
is
the
tfsn
it
shouldn't
terminate
so
like
we'd
expect
in
in
the
same,
we
could
run
the
same
code
except
that
if
the
timeout
it's
basically
like,
if
this,
if
we
hit
the
timeout,
that's
the
success
case
versus
if
we
don't
hit
it.
B
That
make
sense
yeah,
I
think
so.
Okay
and.
A
Vladimir
back
to
your
point,
like
I
take
your
point
that
ref
and
unref:
that's
not
going
to
be
the
expectation
necessarily.
A
A
A
It
was
just
a
way
to
say
you
could
like
it
was
exposing
the
uv
ability
to
to
to
ref
to
to
keep
it
alive
or
not,
keep
it
alive.
So
it's
like
do
we
need.
Do
we
really
need
a
rough
count
if
the
answer
was,
if
we
think
yes,
then
sure,
but
I'm
not
sure
it's
worth
like
adding
functionality
just
because
of
the
with
the
naming
we
used.
C
Okay,
I
don't-
I
don't
know
that
much
about
this.
This
function
with
this
type
but
yeah,
just
in.
B
D
So
I
I'm
I'm
not
sure
it's
worthy
to
I'm
not
sure
without
more
significant
use
cases
for
this,
we
and
I
I
don't
think
it's
we
need
to
add
a
new
api
for
it.
B
A
I
think
the
simple
thing
that
could
be
done
is
like:
does
it
make
any
sense
to
add
to
this
doc
to
clarify
like
this?
This
basically
says
similar
to
libby
v
handles,
but
it
could
make
it
clear
that,
like
this
is
not
a
normal
ref
count
like
it's
either
a
you're
either
left
or
you're
unref.
There's
no
counting
going
on
like
so
that
that's
easy
to
do
and
may
add
and
may
add
some
value.
C
A
A
C
Yeah
this
one,
like
reference
counting,
see
like
a
section,
is
different.
A
Like
whether
it
stays
alive
or
not
right
like
because
you
can
have
multiple
people
who
are
consuming
a
thread,
save
function
and
I
think
you
can
acquire
it
so
like
if
three
people
acquire
that
thread
save
function,
they
all
acquire
it
and
then,
when
you
release
it
it
you
know
there
is
a
reference
count
going
on
there.
So
that
determines
whether
the
thread
say
function
is
alive
or
not.
But
this
unrefined
of
the
thread
safe
function.
A
A
They're,
just
a
few
words
might
help
to
say
yes,
we
understand
this
is
potentially
confusing,
but
this
is.
A
B
Jack
on
that
front,
I
think
that
should
be
it,
but
I
think
sorry,
just
one
more
thing
and
yeah
there's
a
few
overloads
for
the
threats
function.
I
haven't
take
like
a
deeper
look
at
it,
but
how
do
we
test
all
those
different
overloads
they've
had
this
effectively?
I
think
this
goes
for
like
threat
workers
as
well
like
async
workers.
B
Of
yeah
yeah,
like
around
here,
I
think
just
I
think,
just
in
general,
like
characteristic
function,
has
a
few
like
overloads.
Quite
a
few
overloads,
I'm
not
sure
like.
If
we,
how
do
we
test
all
of
them
effectively.
A
A
A
C
A
A
It
isn't
interesting
from
like
the
coverage
point,
because
often
we
might
have
like
a
we
might
have
one
which
then,
which
has
less
parameters
but
then
calls
the
one
that
has
all
the
parameters
right.
So
if
you
just
write
a
test
that
does
the
one
with
all
the
parameters,
it's
going
to
tell
you
the
other
one's
uncovered.
A
C
At
least
in
microsoft,
visual
c
plus
plus
compiler,
what
I
found
when
I,
when
I'm
doing
a
template-based
development,
if
I
don't
try
to
test
for
method.
In
fact,
this
method
may
not
even
compile,
and
somebody.
C
C
Versions,
but
previously
a
few
years
ago,
it
was
the
case,
so
it
was
religiously
writing
at
least
one
stupid
test
for
each
templates
methods.
B
A
A
A
The
one
overload
doesn't
actually
set
appliances,
so
don't
test
that
part,
and
then
you
know
you
might
be
able
to
come
up
with
a
way
where
it's
basically,
okay,
you
know,
run
the
test.
We
tell
it
which
constructor
to
use,
and
so
it's
like,
if
blah
blah
blah
uses
those
and
then
there's
like
okay,
now
check
the
results
and
the
results
can
also
say
well,
okay,
based
on
what
I
which
constructor
I
asked
it
to
use.
C
Yeah
into
test
you
can,
you
can
create
a
so-called
parameterized
tests
so
like
instead
of
using
tests,
you
can
you
need
to
write
a
test
underscore
p
and
there
must
be
a
function
which
should
effectively
provide
variation
for
each
test.
So
we
effectively
need
some
factory
method
for
each
test
set
of
parameters.
A
Yeah
and
we,
I
know
we
already
have
some
tests
that
are
sort
of
along
the
lines
of
like
they're
driven
from
javascript.
So
on
the
javascript
side,
you
could
actually
have
an
array
that
kind
of
tells
you
like
which
overload
to
use
and
what
to
check,
and
then
it
calls
one
c
method
to
you
know
with
those
parameters
and
on
the
c
side
it
says:
okay,
I'm
gonna
use
this
one
and
I'm
going
to
do
these
checks
and
then
it
returns
and
on
the
javascript
side.
C
We
have
a
bunch
of
tests
which
tests
in
if
some
parameters
now
or
not
it's
what
you
probably
referred
to.
A
Yeah,
I
think
well,
there's
some
like
you
know,
I
think,
like
a
good
one
that
would
come
to
mind
is
probably
like
the
there's,
a
method
to
tell
you
what
the
type
is.
So
you
can
actually
like.
You
can
call
the
c
the
same
c
code
and
say
you
know,
here's
an
object
and
then
here's
what
I
expect
you
to
tell
me
and
so
like
the
javascript-
has
a
the
code
that
that
knows
how
to
match
up
the
different
things.
A
You've
asked
it
to
do
and
with
the
expected
answer
right
and
you
could
you
know
so
you
don't
have
to
I
guess
what
I'm
getting
at
is
to
avoid
having
to
write
like
c
code
which
is
unique
for
every
one
of
the
combinations.
It's
it's
sort
of
lower
overhead
to
try
and
drive
that
from
the
javascript
side.
Sometimes.
B
B
So
that
that
answered
the
question
yep
I'll.
B
A
Okay,
so
stale
issues,
just
gonna
go
down
there
and
see
if
there's
anything.
B
C
I
think
we
discussed
it
a
few
weeks
ago.
I'm
not
sure
if
a
did
author
responded
on
a
pull
request.
A
B
A
A
B
D
B
A
Yep,
okay,
so
that
takes
us
to
the
end
of
that
list.
I
don't
haven't
heard
of
any
new
modules
or
anything
like
that.
Oh
yesterday,
wait
a
sec
here.
We
go.
D
A
A
I
think
this
is
probably
related
to
like
they
I
mean
I
there
was
a
blog
post
announced
that
they
were
going
to
basically
support
mpm
and
try
and
work
towards
having
like
most
npm
modules,
just
work
so
yeah.
No,
this
is
this
is
very
interesting
in
terms
of
you
know,
I
think
binding
bun
is
putting
some
pressure
on
dino.
A
They
implemented
node
api
to
support
native
add-ons
and
so
like,
as,
as
I
think
always
has
been
the
case,
like
compatibility
with
be
able
to
run
what
node
runs
is
one
of
the
things
that
like
if
you're
trying
to
compete-
and
you
don't
have
that
it
makes
your
life
hard
right,
because
people
are
like
hey.
I
can't
run
this.
A
I
can't
run
that,
and
so
you
know
one
of
the
goals
from
the
beginning
was
that
node
api
would
let
you
run
with
different
engines
behind
the
scene
and
let
you
know
people
do
more
innovation
and
whatever,
but
like.
This
is
another
way
that
that
surface
is
because
like,
for
example,
behind
fun,
it's
like
a
totally
different
javascript
engine.
So
if
it
was
tied
to
v8
you
just
never
could
well.
I
shouldn't
say
never,
but
it
would
be
a
lot
harder
to.
I
know
jack
record
had
a
shim
or
something
but.
A
Yeah,
I
I
see
it
as
like:
it's
really
yeah
this
is
you
know
this
should
really
drive
the.
If
you
want
to
write
some,
if
you
want
to
write
anything
that
includes
a
native
module
that
will
run
across
the
different
runtimes
that
are
out
there,
you
should
use
node
ati,
because
it
may
now
run
on
these
different
engines
versus
versus,
not
so
okay.
I
I
glad
I
didn't
skip
that,
and
thanks
a
lot
to
to
nick
who's
mentioned
those
those
ones.
C
And
bond
uses
javascript
core.
C
I
would
say
it
was
most
for
me,
like
it
was
no
dpi.
Implementation
was
mostly
simple.
Probably
a
reference
was
the
most
difficult
time
right.
C
Yeah,
I'm
very
excited
about.
What's
change
the
change
on
does
about
finalizers
and
stuff
we
can,
we
can
fix
it.
A
I
haven't
done
anything
on
the
debug,
but
still
probably
a
good
reminder
burning
down
the
list
issues
any
particular
issues.
People
have
okay,
there's
no
pull
requests
any
issues.
People
have
in
mind
that
we
should
talk
about.
B
B
A
Okay,
great
deepak
has
created
a
readme
on
how
to
use
the
filter.
I
think
that's
that
will
be
great,
so
we
can
take
a
look
at
that
get
that
landed.
I
can
never
remember
so.
I,
like
doc,
that
can
tell
me
how
to
do
it.
A
A
D
Yeah,
I'm
so
vladimir
has
still
recommend
on
the
pr
I
just
like
mentioned
that
I
have,
and
so
some
of
them
have
complied
replied
in
the
thread.
So
we
can
continue
the
discussion
on
github
and
some
of
them.
I
can
continue
to
work
to
fix
them
and
besides
of
these
discussions-
and
this
pr
is
primarily
primarily
focused
on
extracting
the
to
to
to
improve
the
conditions
around
the.
D
To
just
to
improve
the
second
pascal
back,
the
works
around
the
secondary
pass,
go
back
to
make
it
cancellable
and
simplify
the
code
around
the
around
this
callback.
Since
now,
then
it's
cancelable
we
can.
We
can
remove
a
lot
of
boilerplate
just
to
keep
the
data
around.
So
that's
a
core
point
of
this
pr
with
that.
D
We
can
remove
a
lot
of
a
lot
of
work
around
just
to
keep
the
data
allowed
to
to
make
the
second
second
possible
back
works,
and
it's
basically,
we
are
just
using
our
own,
our
own
loop
on
cue
for
the
set
for
the
second
pass
callback,
so
that
we
can
make
the
product
cancelable
and.
A
Like
I'm
just
was
trying
to
think
like
how
to
like
this
is
an
area
where,
like
we,
I
know,
I
spent
like
many
many
times,
trying
to
recreate
very,
very
flaky,
like
issues
that
were
hard
to
recreate.
So,
like
you
know
running,
I
don't
know
hundreds
of
hours
of
of
cpu
time
to
see
if
I
could
recreate
issues
and
try
and
figure
out
like
how
to
work
around
them,
so
I'm
just
I
just
want
to
be
just
we
just
just.
A
I
want
to
be
really
careful
that
I
I
try
and
understand
best
that
I
can
what
we're
changing,
versus
what
we're
not
changing
and
was
trying
to
see,
if
maybe
you
taking
us
a
walk
through,
would
help
help.
Make
that
help
make
me
be
able
to
do
it
sooner
than
later
is
kind
of.
I
guess
what
I
was
going
towards.
D
Yeah
I
I
was
thinking
that
we
I
can
maybe
I
can
list
all
the
possible
code
paths
for
the
finalizers
so
that
we
can
understand
what
what
cases
we
have
been
fixing
around
this
parallel
part
previously,
so
that
we
can
and
haven't
have
an
overview
whatever
the
problem,
whatever
what
the
problems
we
are,
we
can
fix
with
this
pr.
D
D
D
D
B
A
D
Yeah
right,
so
we
can
make
sure
we
correctly
remove
the
remote
of
the
pending
callbacks
from
the
queue
and
make
sure
the
finalizer
will
not
be
called
again
after
that,
after
the
delete
has
been
code
right,
so
that
that's
how
that's
how
this
pr
can
make
sure
we
can
cover
all
the
cases
we
have
been
encountered
before.
B
D
Currently,
yes-
and
I
have
walked
us
through
the
previous
issues,
and
I
believe
these
are
the
cases
we
have
been
facing
before.
Okay.
A
Okay,
if
not,
then
well
thanks
for
everybody
taking
the
time
and
look
forward
to
seeing
you
in
github
and
talking
to
you
next
time
bye.
Thank
you.