►
From YouTube: 2022-03-04-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
api
team
meeting
for
march
4th
2022.
We
will
start
with
our
user
approach
of
looking
at
milestone,
11
and
we'll
go
from
there
just
waiting
for
everybody
to
be
promoted.
B
A
A
Okay,
so
it
looks
like
you
you,
I
wasn't
able
to
make
it
last
week,
but
it
looks
like
you
all
discussed
this
one.
Is
there
anything
that
we
need
to
talk
about
this
week?.
D
I
guess
like
I
guess
it's
gabriel
supposed
to
follow
up
right.
Yes,.
E
D
I
guess
my
question
is:
who
is
going
to
update
the
documentation
we
discussed
discuss
this
change
last
time.
E
Yes,
the
the
issue
that
we
were
just
looking
at
is
a
node
api,
yeah.
A
Right,
okay,
so
I'm
just
wondering
like
do
we
need
another
issue,
or
maybe
that's
good
enough,
though,
if
it's.
E
A
B
A
E
Yeah
because
I
don't
think
it
would
make
sense.
Well
I
mean
it
could
also
be
put
into
the
individual
definition
documentation
for
the
string
and
const
character.
E
In
the
the
property
descriptor
for
cons,
the
const
char,
it
would
still
be
in
that
same
same
page.
I
think
right,
and
I
would
imagine
there
would
be
one
for
right.
The
name
of
the
property
can
be
any
of
these
following
types:
conch
char.
E
E
Because
then
we
can
say
that
you
know
like
it
doesn't
make
copies
of
any
native
data
right
the
point
of
defining
the
property
descriptor.
So
it
needs
to
be
valid
up
until
you
define
it
to
find
the
class
or
basically
use
the
property
descriptor.
A
G
C
G
C
G
Issues
one
one:
zero:
six:
okay,
I'm
just
going
to
add
that
in
here.
C
No
okay
and
okay
and
one
one
zero
four
yeah.
These
are
two
new
issues
that
yeah
I
forgot
to
add.
Last
night.
G
C
The
I
think
that
it's
a.
C
1106
is
about
documentation
in
trans
product
descriptor,
so.
G
C
I
I
I
think
that
that
I
I'm
not
sure,
but
I
remember
that
we
that
gabriel
did
disappear.
Maybe
he
forgot
to
mention
the
I
need
to
check
the
comment.
Okay,.
C
Okay,
I
I
I
will
comment
later.
C
E
Right
I
had
read
this
because
gabriel
did
give
a
suggestion
on
what
to
do,
but
then
the
original
poster
never
replied.
So
I'm
not
exactly.
I
think
it
can
remain.
C
If
ever
remember,
the
question
is
about
the
the
the
the
draw,
not
only
the
not
the
exception,
but
every
exception
that
happened
in
siblings.
Is
it
right.
E
Yes
and
gabe
says
here
that
it
would
make
more
sense
for
those
standards
for
the
exceptions
to
be
handled
by
the
user,
because
it
may
be
to
too
restricting
to
always
use
the
what
method
and
construct
construct
an
api
error
from
that
value.
A
D
As
an
alternative,
what
we
can
do,
instead
of
just
using
what,
in
addition
to
using
what
we
can
actually
capture
the
whole
whole
exception
as
a
kind
of
exception
pointer,
and
maybe
we
can
wrap
it
up
inside
of
an
api
error.
D
A
E
Yeah,
I
think
so
if
the
poster
hasn't
commented
back
from
gabe's
comments
in
december.
A
A
A
A
B
A
A
A
A
A
If
not
the
enable
debug
testing
for
add-ons
that
one
I
haven't
had
a
chance
to,
I
mean
it's
very
long.
One
still
haven't
done
anything
so
the
last
two
are
looking
at
list
of
issues
created
by
the
like
new
issues.
D
D
So
idea
that
so
previously,
so
now
we
want
to
run
the
second
run.
Every
time
we
send
like
this
is
a
kind
of
second
pass
callback.
It
usually
runs
as
a
kind
of
micro
task.
D
An
idea
here
is
that
that
we
do
like
first
initial
pass.
We
put
our
reference
in
special
finalizing
queue
like
if
you
see
on
line
703
or
seven
two,
so
we
are
linked
up
whenever
this
reference
is
inside
and
put
it
inside
of
this
finalizing
the
wrist,
and
then
you
see
in
header
file
what
I've
done
we
have
is
the
try
catch
in
a
try,
hatch.
We
have
this
destructor,
so
ins.
If
everything
was
fine,
this
was
no
exception.
D
Then
we
can
try
to
drain
this
finalizing
noise
and
here
so
idea
that
this
strike
hatch
is
used
everywhere.
We
use
preamble
so,
thankfully
anywhere
we
can
potentially
touch
garbage
collector.
We
can
insert
in
this
class
and
we
will
still
keep
running
this
finalizing
queue
from
inside
of
a
second
pass.
So
thank
you.
Even
if
this
new
fast
pass
does
not
work,
we
still
can
drain
this
cue
from.
D
A
D
D
Yeah,
I
pretty
much
want
to
know
you.
You
guys
opinion
about
the
overall
approach
and
we
discussed
last
time
but
and
gabriel
said
that
we
probably
need
to
time
to
understand
how
exactly
to
approach
it.
So
I
try
to
kind
of
draft
a
potential
solution.
A
D
And
here
I
did
that
I
I
used
this
approach
inside
of
node
api
for
herms
implementation,
because
I
didn't
have
this
micro
tasks,
which
you
can.
C
D
So,
instead,
what
I've
done
like
every
single
method,
which
node
api
method,
which
can
cause
garbage
collector
pass
in
the
entire
I'm
running?
This
I'm
draining
this
finalizing
here,
okay,
so
I
kind
of
try
to
use
exactly
the
same
approach
here.
D
So
the
idea
that
that
whenever
we
have
node
api
call
and
in
the
end
we
just
can
simply
try
to
get
an
execute
to
be
effectively
much
earlier
than
any
microtask
right,
yeah,
okay,
I
understood-
and
it
also
you
can
see
in
destructor,
I'm
I'm
draining
finalizing
cube
before
anything
else,
but.
D
That's
in
it's
yeah,
it's
the
header
file
yeah,
this
one;
no,
no,
the
next
one,
this
one
no
below
like
a
line
67
right,
okay!
So
it's.
A
D
Inside
of
the
structure
so
think
we
have
a
very
third
collection
of
all
these
different
references,
in
addition
to
penniser
ref
list
and
ref
list.
Just.
D
But
I
think
it's
not
enough
in
hermes.
I
also
found
that
then
I
tried
to
cope
with
the
same
approach
as
we
have
for
v8.
Another
issue
was
like
we
were
kind
of
creating
all
these
different
things
in
in
the
ref
list,
even
we're
already
inside
of
our
shutdown
phase
right.
The
best
solution
also
will
be
included
to
add
a
boolean
variable
on
environment,
saying
that
we're
inside
of
shutdown
state,
so
we
don't
need
to.
We
must
not
add
anything
to
this
queue
yeah.
I
guess
it's
another
thing
to
add
right.
D
I
also
found
that
our
cost
for
every
reference
right
now
is
extremely
high,
like
size
of
every
reference
is
really
really
big.
How.
D
Yeah,
I
I
going
to
provide
the
exact
measure,
but
my
estimate
right
now
it's
about
like
okay,
it's
like
at
least
10
10
pointers
right.
Okay,
so
I
guess
it's
it's
about
kilobyte
per
reference.
In
the
end,
it's
in
in
hermes
implementation.
I
kind
of
did
it
in
the
way
that
it's
using
the
bare
minimum.
I
guess
it's
another
kind
of
optimization
around
references
we
can
do.
We
can.
We
can
reduce
sites
of
references.
D
That's
why
we
changed
just
targets
with
specific
issues.
That's
not
yeah
does
not
address
size
of
references,
so
any
other
issues.
I
just
mentioned
okay,
so
ideas.
Here,
it's
very
simple
like
in
the
first
pass,
we
effectively
put
references
in
two
different
buckets
right.
One
of
them
was
saying
we
first
of
all
put
it
in
finalize
the
queue
and
then
we
we
still
schedule
second
pass,
and
we
also
if
we
have
opportunity
to
process
with
finalizing
queue
before
second
pass,
because
second
pass
is
essentially
microtusk.
A
D
We
don't
have
a
currently
queue.
We
only
have
collection
of
references,
so,
thankfully,
today
we
we
only
have
like
we're
keeping
references
to
them
right
if
we
have
to
process
them,
all
we
have
to
effectively
would
need
to
go
through
all
of
them
and
kind
of
collect
them
by
some
criteria,
whereas,
like
finalizing
q
is
pretty
much
saying
like.
Oh,
this
is
all
references.
They
must
have
effectively
been
finalized
and
die
right,
so
templates,
and
we
don't
introduce
any
extra
weight
because
think
everything
what
we
do.
D
We
we're
taking
this
reference
from
existing
list
and
just
putting
to
another
list.
So
thankfully
it's
the
same
so
kind
of
size
size-wise
is
pretty
much
exactly
the
same.
We're
just
changing
pointers
so
perfect
enough
inside
of
each
reference,
all
right.
D
A
D
Two
issues,
duplicate
section
in
object,
drop
and
scene
function.
It's.
C
I
didn't
understand
the
question
because
yeah
we
have.
C
Yeah
so
yeah
we
we
have,
but
yeah
we
we
take
a
vector,
is
either
release
okay,
yeah
and
we
in
all
the
augmentation
we
have.
This
distinguish
between
the
vector
the
standard
and
so
yeah.
I
don't
think
that
we
need
to
consider
this,
so
I
think.
C
And
yeah
we
we
have
an
empty
garment
yeah.
If
I
were
a
member,
I
don't
know
sorry
this
one
yeah
so
yeah,
maybe
it's
a
spam.
I
don't
know.
Okay.
G
Okay,
I'm
just
gonna
close
that
sorry,
michael's
bomb,
no
spawn
yeah,
okay,.
B
B
D
A
Okay,
but
I
don't
see
anything
too
recent,
and
unless
people
like
our
hey,
we've
got
something
important.
We
can
probably
then
switch
to
looking
at
the
core
ones.
No.
D
Yeah
then
I
tried
to
do
like
my
first
commit
inside
of
this
reaper.
I
was
prevented
from
doing
it
because
was
not
running
and
it
seems
like
honestly.
I
find
this
the
whole
this
logic
running
clank
format
and
this
reaper
too
complex.
D
We
for
some
reason
run
in
python
and
tries
to
find
this
file
for
clang
format
like
I
think
the
whole
thing
could
be
so
much
simplified,
but
this
way
I'm
trying
to
do
like
a
bare
minimum,
just
point
exact
file-
and
it's
also
sounds
like
it
was
so
sensitive
to
this
forward.
Slash
backward
slash,
it's
not
like
stuff,
it's
more,
it
sounds
like
python,
has
more
restrictions
around
all
these
things,
so
I
I
try
to
do
this
bare
minimum
detect
platform
yeah
yeah.
This
looks.
A
D
Yeah,
it's
yeah.
I
can
try
it
to
do
it,
but
I
think
that's
one
of
the
issues
was
actually
that
the
python
which
we
used
at
this
point
like
to
run
this
command.
It
can't
really
just
understand
which,
which
one
it
must
run
like,
because
if
we
provide
this
claim
format
without
cmd,
it
probably
kind
of
tries
to
use
the
wrong
car.
Oh.
A
We'd
still
have
to
add
the
cmd.
The
only
difference
might
be
that,
like
this
options
would
be
built
up
by
like
dash
binary
modules
plus,
you
know,
I
think
it's
path,
dot
whatever
or
actually
just
path.join,
and
then
passing
in
each
of
these
things
as
a
separate
part
like
the
binary
modules
dash
bin
dash
client
format
or
the
the
mod
the
node
module's
been.
A
D
But
maybe
even
like
just
doing
the
right
using
path,
maybe
you
solve
this
issue.
Let
me
try
it.
Yes,
that's
a
good
point.
Okay,.
A
C
Yeah,
so
sometimes
it's
it's
bad.
When
these
things
doesn't
work
on
windows
yeah,
I
also
need
to
compile
something
on
windows
so
yeah.
C
It's
thanks.
A
We've
talked
about
that.
I
I
I've
seen
enough
cases
where,
like
it's
it's
awkward,
that
I
I'm
kind
of
like
it's
awkward
on
the
pr
right,
because
it's
like,
I
think
what
we
have
is
like.
If
you
change
a
file,
then
it
has
a
bunch
of
other
things.
Now
you
have
like
your
pr
that
has
your
changes
plus
unrelated
stuff.
E
Right,
I
think
in
the
discussion
for
the
adding
const
to
the
methods
right,
that's
where
it
popped
up
most
recently,
and
then
there
was
a
discussion
of
making
a
separate
pr
just
to
do
a
cleanup
of
everything.
D
Because
one
of
the
annoyances,
what
I
found
that
every
time
I
try
to
do
some
change,
I
want
to
do
this
format
inside
the
vs
code,
but
I
can't
because
if
I
do
it,
I
will
actually
change
so
much
code
around
right.
It's
so
annoying
like
it's
actually
really
kind
of
makes
development
so
hard
that
our
file
is
not
formatted
and
still
we
we
want
to
do
this
partial
clang
format
right
now,
because
of
speed.
D
What
not,
but
I
think
like
overall
ci,
must
check
formatting
for
the
whole
file
right.
It's
not
just.
It
must
not
be
just
incremental.
It
should
be
also
global.
D
A
Okay,
so
this
actually
I'm
gonna
tag
this
one.
Where
is
node.
B
G
D
A
A
You
know
we
actually
had
the
chakra
four
as
one
of
the
supported
engines,
so
they
were
one
of
the
more
active
people
at
the
beginning
and
yeah.
They.
They
contributed
the
microsoft
expertise
and
if
it
was
back,
then
we
would
ask
them
but
yeah.
If
you,
if
you
have
any
insight
or
can
help
figure
out
the
right
pink.
D
Pink
developer,
who
actually
introduced
it
just
to
kind
of
get.
A
B
B
B
A
D
So,
thankfully
speaking
sections
are
not
microsoft,
specific,
it's
more
like
it's!
It's
a
it's
about
common
file
format,
so
think.
Inside
of
our
comment
file
format,
we
have
different
constructions,
so
some
of
them
have
standard
names,
but
some
of
them
can
have
custom
custom
names
and
all
code,
if
you
like,
they
all,
can
just
functions
inside
of
this
sections.
D
So
often
what
people
do
you
know
to
discover
some
entry
points
they
introduce
this
custom
section,
so
it's
quite
possible
that
it
was
is
a
custom
section
in
a
code
right,
I
suspect,
just
for
for
discovery
like,
for
example,
when
we
look
on
dll
instead
of
loading
the
whole
dll,
we
can
just
simply
find
specific
section
and
read
data
from
them.
D
A
D
D
Because
I
bet
that,
somewhere
in
node.js
code,
we
probably
looking
for
the
specific
sections
and
then
we're
loading
module.
A
Exactly
yeah
like
yeah,
like,
I
think,
that's
what
that's
right
like
when
we
load
the
shared
object.
We
look
for
the
entry
points
and
it's
probably
related
to
finding
those
entry
points
in
like
on.
Maybe
if
it's.
If
this
is
windows
specific
on
here
or
even
if
it's
yeah,
I
guess
mvc,
it
was
reported,
but
like
yeah,
it's
it's
exactly
that.
I
think,
and
we
would
have
copied
these
sections
directly
from
the
code
that
was
in
node
for
non-node
api
add-ons.
C
A
F
I
have
a
quick
topic:
okay,
it's
the
pro
request
in
the
core
repo.
The
number
is
365
and.
F
So
yep
since
last
discussion
in
the
meeting
we
have
anna
commented
in
the
pr
that
like
to
I'm
not
sure
if
she
would
want
us
to
like
say,
fix
the
finalizer.
F
I
think
context
checking,
but
I
think
that's
of
topic
to
this
pro
request.
So
since
this
pro
request
is
mainly
focused
on
the
anchor
exception,
handling
right
yep,
but
I
didn't
find
it
and
I
have
commented
in
the
last
two
days.
So
if
people
have
any
ideas,
please
comment
in
the
thread
so
that
I
think
we
may
push
forward
with
pr.
A
F
F
So
that's
the
problem,
never
just
with
ns
suggestion
so
in
this
trade,
and
it's
just
that
we
can
already
handling
the
exception
with
the
callback
scope
and
the
quebec
scope
also
brings
in
the
topics
about
async
context
checking,
but
we
don't
have
async
id
or
async
resource
for
finalized
analyzers.
So
that's
that's
the
point
of
that.
We
cannot
use
quebec
scope
in
this
pr
to
handle
the
exceptions.
F
Yeah,
I
think
that's
the
idea
that
we
should
check
the
analyzer
with
this
and
contact
checking
you're,
not
in
another
issue.
To
be
honest,
like
say,
since
we
have
a
finalization
registry
api
in
javascript,
so
that
api
is
also
broken
on
the
async
contact
tracking
for
whatever
reason,
since
it's
not
not
just
it's
implemented
in
v8,
and
we
don't
have
a
hook
for
it,
so
it's
already
broken
in
javascript.
A
A
If
not,
then
thanks
for
everybody
for
their
time
and
thanks
for
anybody
who's
watching
the
video
and
we'll
see
you
all
next
time,
bye.