►
From YouTube: 1 July 2022 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
A
No
all
right,
then,
let's
get
started.
Let
me
share
my
screen
all
right
and
we'll
go
through
the
normal
milestone
list
all
right,
so
we
have
the
first
one
a
drive
towards
full
coverage.
A
A
So
hopefully
I'll
look
at
this
one
after
this
meeting
and
then
we
can
get
this
merged
in.
I
remember
the
question
that
I
was
having
was.
I
was
unsure
as
to
how.
A
A
B
A
Yeah,
it's
it's
a
little.
It's
a
little
odd
to
me
why
the
new
target
would
be
the
function
itself,
because
it's
not
like
bound
or
anything.
So
I
can
take
a
look
at
that
after
this
call.
So
let's
see
what
else
I
don't
think
there
are
any
other
new
ones
corresponding
to
tests.
A
Yes,
still,
no
progress.
Okay,
no
worries
there
was
just
the
the
thought
of
moving
it
over,
not
in
node
core,
but
into
the
add-on
examples
repo.
So.
B
What
I'm
looking
at
right
now
like
I
actually
none-
has
a
bunch
of
a
very
good
unit
tests,
some
some
of
them
you,
you
kind
of
showing
how
to
use
all
this
interceptor
claimed,
interceptors
and
other
stuff,
so
pretty
much
just
trying
to
implement
exactly
exactly
same
unit
test
using
using
proxy,
like
in
my
previous
uni
kind
of
unit
test,
which
I
submitted
in
main
repo.
B
B
As
in
the
question
and
questions
set
about
non-setter
and
non-getter,
but
I
think
it's
a
internally
non-center
and
getter
by
object-
object
template
inside
of
v8.
I
would
assume
still
kind
of
based
on
this
prop
together
property
center,
with
whatever
we
see
in
this
example.
In
some
sense.
B
A
Good
to
me,
then
that
is
it
for
the
stale
issues.
A
And
then
we
have
tracking
issue,
don't
think
anything
new
has
been
added
here,
then
we
can
go
to
npm.
A
Let's
look
at
weekly
downloads
yeah,
pretty
much
still
the
same,
nothing
new
here
and
we
are
still
on
version
five.
I
don't
think
there's
anything
new
in
the
pipeline
to
add
so
we'll
probably
be
on
version
five
until
we
see
until
we
find
anything
new.
When
I
came
here,
I
remembered
this
one
down
here.
The
implementing
the
thread
say
function
ex,
which
is
the
first
name
that
it
existed
under
for
the
typed
thread
say
function,
so
I
think
we
may.
I
may
be
able
to
work
on
this
again.
A
The
reason
this
was
blocked
was
because
the
node
10
was
compilable
using,
I
think,
like
gcc
four
or
something
and
this
pr
uses
some
functionality
that
was
only
available
on
gcc
5
and
above
and
the
thought
behind
this
pr
is
to
rewrite
the
the
old
thread
save
function
which
the
the
non-typed
one
to
use
to
use
the
typed
threadsafe
function
so
that
it
wouldn't
be
basically
a
duplicate.
Reimplementation
of
two
different
threads
say
functions,
so
I
think
I'll
be
able
to
take
a
look
at
that
this
week.
C
Because
now
we
don't
have
the
limitation
in
for
the
gcc
compiler.
A
Right,
the
only
concern
would
be
if,
if
there
are
some
for
some
projects
for
some
reason,
some
projects
continue
to
use
an
older
compiler
and
still
want
to
use
the
a
new
version.
A
newer
version
of
node
add-on,
api
yeah.
A
Right,
but
I
think
that's
the
reason
why
we
have
we
change
the
major
version
every
time
we
remove
support
for
a
node
major
version
as
well,
in
order
to
keep
it
in
track
with
that.
So
in
my
mind,
it
makes
sense
that
you
know
if,
if
we
have
no
longer
support
for
node
10,
then
we
should
be
able
to
go
ahead
with
with
this.
This
change.
A
All
right
that
was
a
little
side
track
from
the
tracking
issues
we
can
talk
about.
You
know
debug
testing
for
add-ons.
I
think
this
is
what
michael's
been
working
on,
but
I
don't
see
any
updates
here
so
we
can
continue.
A
Then
we
have
issues
in
the
module
and
the
in
the
repos.
Then
does
anybody
have
any
specific
ones
that
they
would
like
to
talk
about
before
we
just
look
at
the
list.
A
Okay,
I
have
one.
I
have
again
tried
to
work
a
little
bit
on
this
segmentation
faults.
I
haven't
really
gotten
anywhere
concrete,
though
I
ended
up.
A
But
I'm
still
a
little,
not
too
sure
I
remember.
Legenda
cass
said
that
he
would
also
take
a
look
at
this
whenever
he
has
time
so,
hopefully,
next
week
we'll
be
able
to
see
if,
if
he's
looked
into
this
at
all,
but
right
now,
I
still
don't
have
any
real
concrete.
B
Buffer
overflow,
I
I
wonder
if
we
can
use
sorry
popped
up
out
of
my
mind,
but
clank
has
a
tool
to
do
with
all
these
different
memory
checks.
A
Yeah
there
was
everything
advisor
memory
sanitizer,
okay,
so
let's
see
you
just
compile
with
this
flag
all
right.
We
can
take
a
look
at
this,
then
I'll
I'll
check.
If
you
know
if
I
would
need
to
compile
the
module
only
the
module
with
this
or
node
as
well.
With
this,
I
would
assume.
B
A
Somehow
gotcha,
okay,
that
makes
sense,
and
I
have
been
able
to
compile
the
debug
version
before
so
I'll.
Try
to
add
this,
this
flag,
okay,
we.
A
Using
this
tool
all
right,
let
me
I'll
just
put
this
in
in
this
chat
and
then
we're
gonna
jump.
Yeah
I
mean
you
know
we're
kind
of
shooting
in
the
dark,
but
any
anything
that
would
help
you
know
it
makes
sense
to
try.
A
And
to
possibly
find
these
to
find
a
possible
issue.
A
A
C
Utility
that
help
you
to
check
the
memory.
I
I
remember
that
its
code
has.
This
is
a
kind
of
utility.
C
Okay,
I
I
I
have
the
I
don't
remember
the
command,
but.
C
Try
I
I
I
find
it
no
just
yeah
no
yeah
yeah.
A
C
C
It
generates
the
exclude
project
you
can,
you
can
open
the
the
project
from
xcode
and
and
then
you
can
use
the
all
the
xcode
utility
to
debug
your
your
code,
your
not
your
code.
A
C
Have
a
link,
it's
an
article
that
I
wrote
for
this
sometimes
ago.
A
A
A
In
this
list
here:
okay,
yes,
not
not
memory
scenarios;
probably
this
one,
probably
yeah
right!
Okay,
let's
see,
let's
just
analyze,.
A
Then
we
have
some
documentation
on
next
code.
A
Okay,
and
then
here
is
the
address
sanitizer
all
right.
A
A
Okay,
then,
let's
see,
let's
see
if
there
are
any
other
newly
added
issues,
nothing
new
in
the
last
two
weeks.
A
Came
as
yes,
okay,
this
one
did
come
as
stale.
I
remember
seeing
this
pop
in
this
notification
pop
in
my
email,
so
we
should
probably
remove
this
stale
issue
and
add
it
to
the
list.
C
A
A
I
mean
this
flow
makes
sense
because
you
know
like
if
you
are
calling
release
in
the
destructor
of
some
object.
You
know
like
some
object,
wrapped
or
whatever.
If
you're
calling
the
just
calling
releasing
the
structure,
then
of
course
that
data
isn't
valid
anymore.
But
then
the
the
finalize
wrapper
with
context.
A
Do
I
call?
No,
I
don't
have
it
release
in
the
I
call
release
in
the
actual
thread
itself,
not
in
the
destructor.
A
Okay,
so
never
mind
on
that,
but
I
feel
like
it's
valid
to
call
releasing
the
destructor,
but
maybe
that's
something
that
we
can
take
a
look
at
because
I
don't
think
finalized
wrap
recall
this
finalized
wrapper
doesn't
actually
access
any
of
the
thread
safe
functions,
values.
I
don't
think,
let's
see.
A
So
this
is
what
gets
passed
to
the
no.
I
don't
have.
I
had
to
reinstall
various
stuff
on
my
laptop.
So
that's
why
this
is
highlighted
weird,
but
this
is
the
finalizer
callback
that
gets
passed
to
the
threads
to
the
new
thread,
say
function
and
close
this,
and
this
does
not.
Actually
I
mean
it's
static,
so
it
doesn't
access
any
members
or
anything
like
that.
A
Because
this
is
a
little
ex
it'll
be
a
little
extensive,
since
it
is
used
in
since
they're
using
electron.
You
know
it's
not
as.
A
Yes,
let's
see
why
this
issue
is
closed.
They
closed.
They
were
having
an
issue
with
fs
events.
I
think
it
was
taking
in
the
commits.
So
the
issue
was
because
of
an
old
fs
events
being
used.
A
A
Interesting
well
so
they
resolved
this
issue
by
updating
fs
events,
though
so
I'm
not
exactly
sure
how.
A
We
can
get
some
information
on
this
and
then
I
will
add,
remove
the
stale
label
and
add
it
to
the
still
issues.
A
Okay,
let's
see
other
than
that,
I
don't
think
there
was
anything
new
that
popped
up.
A
Maybe
we
can
do
that
a
little
offline
and
just
go
through
them
and
see
if
they're
still
viable,
if
not
ask
to
get
them
deleted
or
add
them
to
the
still
issues
list
so
that
we
know
to
discuss
them
in
the
next
meeting.
A
B
So
in
some
sense,
then,
then
you
have
a
reference.
It's
like
a
ref
counted
object
right.
So
thank
you
today
in
our
existing
references
you
have
you
have
a.
C
B
You
have
this
ref
count
and
it's
it's
kind
of
strong
graph
count
if
it's
ref
count
zero,
so
it
becomes
weak.
But
so
if
you
look
on
the
c
plus
class
standard
library,
you
have
something
like
a.
C
B
Share
ptr,
which,
like
strong
reference
and
have
also
stood
with
ptr,
which
is
effectively
a
weak
reference,
but
you
also
for
wikipedia
you
can
have
multiple
people
who
can
hold
to
it
but
yeah,
but
I
didn't
think
about
this
very
much
through
yet
so
so
I
can,
if
I
believe,
if
in
future,
I
want
to
add
this
with
reference.
So
this
new
name
scheme
may
not
work
that
well.
B
We
add
weak
after
that
or
weak
object.
A
B
So
I
kind
of
this
naming
it's
like
it's
why
it
still
didn't
answer,
because
I
just
couldn't
put
my
mind
completely
disturbed
because
it's
not
exactly
semantic.
I
want
to
with
this
ref
type
to
say
it's
not
about
like
what
this
left
height.
Ref
type
is
applied
to
you,
because
if
we
say
any
object,
we're
saying
this
ref
type
is
applied
only
to
object,
or
this
we
have
type
applied
to
any
any
type
of
function.
A
Gotcha,
okay
and
then
michael
also
pointed
out
this
question
here:
are
we
will
other
javascript
engines
support,
making
persistent
references
to
all
types.
B
So,
thankfully
speaking,
if
we
look
how
our
reference
is
implemented
today,
our
references-
this
is
what
we
hold
internally
right.
Like
say,
even
va,
does
not
support
ref
counted
references;
they
only
have
effect
with
unique
ownership.
In
some
sense,
so
our
references
is
totally
artificial
construct.
So
even
if
engine
does
not
support
it,
nobody
stops
us
to
to
maintain
it
the
thing
actually
what
I
think
I
was
wrong
previously.
B
I
said
at
some
point
hermes
supports
references
to
symbols
and
I
think
currently,
our
references
allow
you
to
have
ref
counted
for
symbols,
but
this
is
not
exactly
what's
true
like
it's
gotcha
we
may
need
to
revoke
with,
because
symbols
cannot
be
weak
references
in
hermes.
We
saw
actually
it's
one
thing
to
have
just
strong
craft.
We
can
have
strong
reference
to
anything,
but
a
weak
semantic
is
most
javascript.
Engines
only
can
be
applicable
to
objects
like
objects,
like
sorry
objects
or
functions,
objects
like
objects.
A
Okay,
so
then,
but
then
is
it
possible
for
so
so
the
engine
itself
does
not
allow
the
this
type
of
reference
on
symbols,
but
then
is
it
possible
to
implement
that
reference
behavior
on
the
I
guess,
the
node
api
level,
the
that
layer
that
uses
the
engine?
If
that
makes
sense
that
question,
I'm.
B
B
We
have
this
special
kind
of
finalizer
notification,
so
you
need
to
have
an
object,
but
in
hermes
as
I
as
I
was
working
like
a
few
months
ago
on
this
node
api
for
karma's
implementation,
I
found
that
the
symbols
there
implemented
mostly
like
I
think
it's
like
unique
strings.
B
It's
what
these
symbols
are
so
think.
From
this
perspective,
symbols
there
are
not
objects.
So,
thankfully,
whenever
symbols
get
destroyed,
we
don't
have
any
notification.
A
I
see
okay,
then,
do
you
think,
would
there
be
issues
adding
these
these
types
when
implemented
on
the
hermes
engine.
B
For
whatever
we
have
right
now,
not
like
we
it's
what
I
already
have
in
my
implementation,
I
have
a
strong
reference
for
any
type
and
weak
reference
for
objects,
so
this
is
kind
of
very
natural,
so
for
for.
A
Okay,
I
see
I
gotcha
okay,
all
right
that
all
makes
sense.
Then.
B
C
B
A
Okay,
so
whenever
you
just
have
some
chance
to
respond
or
update,
that'd
be
great
all
right-
and
I
think
you
had
a
couple
more
here.
B
Yeah,
I
still
need
to
update
it
after
legend
cass.
He
he
did
changes
to
finalizer,
so
he
pretty
much
changed
the
same
code.
I
need
to
kind
of
merge
this.
This
pull
request
with
his
changes.
It's
not
done
yet.
A
Right,
okay,
then
this
poster
here
we
talked
about
this.
This
extend
node
api
to
lib
node,
which
I
think
was
for
the
embedder
and
we
posted
something
last
week
and
then
he
did
respond.
A
A
Okay,
so
what
we
had
mentioned,
as
our
concerns,
were
that
for
the
first
one
odds
are
that
people
that
are
embedding
node
need
to
have
some.
You
know
fine
tuning
of
the
the
underlying
javascript
engine
and
also
that
some
of
the
the
terms
that
are
used
in
this
pull
request,
such
as
platform,
are
not
specific
or
are
not
the
same
in
in
other
platforms,
and
he
had
commented
this
here,
which
I
thought
was
an
interesting
comment.
A
A
A
B
My
main
concern
was
last
time
that
this
new
api
is
being
added
to
this
cross
engine
api,
header
files
and-
and
we
say
like
this-
we
suggest
native
api.h
and
this
js
native
api.h
is
truly,
should
work.
No,
it's
actually
not
necessarily
even
node.js
specific
we're
saying
that
it's
across
engine
generic
apis
which
we're
proposing
to
use
between
javascript
engine
and
native
code,
so.
B
A
A
Create
too
many
different
api
files,
if
that
makes
sense,
but
I
mean
if
it
makes
sense
to
to
create
a
new
one
in
order
to
have
the
best
functionality.
Maybe
that
is
the
route
to
go.
B
B
Correctly,
maybe
I
misunderstand
the
purpose
here,
but
I
think
it's
should
be
used
from
some
application
who
is
hosting
node.js,
so
hosting
scenario
is
different
from
access
extension
scenario,
so
one
api
is
for
extensions
and
kind
of
uber
api
for
the
hoster
right.
So
I
think
this
new
apis,
it's
definitely
kind
of
for
for
application
to
host
node.js.
As
a
library,
I
think
it
should
be
different,
different
set
of
apis.
That
does
make
sense
that
that's
right,
let's
try
a
different
header.
B
I
know
like
we
don't
want
to
kind
of
create
more
headers,
but
that's
I
guess
it
would
be
one
of
the
reasons
gotcha
right.
B
A
B
B
A
This
embedding
89
into
a
separate
other
okay,
and
then
this
one
here
should
we
I'm
not
exactly
sure
what
he
means
by
mixed
use
with
conversions
between
va
local
and
nabi.
A
Because
I
mean
yeah,
it
does
seem
weird
if
this
is.
A
Yeah
so
let's
see,
if
you
can
give
us
a
little
bit
of
clarification
on
that,
okay,
but
his
the
pr
does
pass
all
checks.
So
it's
really
now
just
a
matter
of
reviewing
and
finalizing
and
making
making
decisions
on
how.
B
A
Think
I
did
see
yes,
an
api
embedding
this
one
here,
where
he's
calling
those
two
functions,
that
he's
suggesting
an
api
create
platform,
and
I
think
this
one
does
the
create
environment.
Yes,
and
then
he
has
some
other
helpers
to
call
me
and
await
me.
Let's
see.
B
This
approach,
then
we're
just
passing
all
these
parameters
exactly
how
we
pass
to
note
just
executable
file.
I
think
it's
it's
great,
because
we
don't
need
to
reinvent
the
wheel
right.
People
can
only
supply
this
string
with
parameters
and
it's
in
some
sense
it's
abi
safe.
We
just
have
a
string
right.
It's
it's
very,
very
kind
of
simple.
A
Right,
I
think
there
was
two
different
two
different
string
arguments,
one
for
the
engine
and
one
for
the
script.
If
we
go
to.
A
Create
platform,
I
think
it's
yes,
there's
the
cli
arguments
and
no
js
cli
options.
You
know
so
like
we
had
the
concern
of
you
know
being
able
to
configure
the
engine
or
the
underlying
engine
as
much
as
possible.
You
know
if
you're
doing
the
embedding-
and
I
guess
this
this
current
setup
with
these
two
different
string
arguments
that
would
work
as
long
as
all
of
the
configurations
that
you
want
to
do
are
actually
handled
in
the
in
that
those
string
arguments.
A
You
know
it's
like
increasing
the
heap
size
or
something
like
that.
I'm
not
sure
if
there
would
be
some
other
type
of
configurations
that
you
would
want
to
do.
That
is
on
the
underlying.
A
B
I
think
if
it
will
be
just
node
specific
api,
so
we
in
this
case
we
don't
really
can
we
should
not
concern
about
other
engines
at
all
in
this
case
right.
Okay,
so
I
think
what
we're
saying
like
it's
it's
some
kind
of
api
which
we
want
to
host
node.js
as
a
dll
or
like
as
a
so
like
as
a
module.
A
Effect
right
so
in
that
case,
this
sort
of
makes
sense
because
they're
all
pretty
node,
not
node
specific,
but
we
wouldn't
have
to
worry
about
other
engines
using
them
if
we
did
have
it
in
this
secondary
header
file,
that's
specific
for
node
hosting
api.
B
And
we
want
it
to
be
a
c-based
api
for,
like
one
reason
like
so,
if
somebody
wants
to
use
as
a
host
application,
not
c
plus
plus,
but
some
other
language
say
rust
or
like
c
sharp,
but
not
they
have
a.
They
can
speak
through
c
based
apis,
but
working
with
c
plus
plus,
because
all
these
mangled
names
it's
not.
A
A
Okay
but
yeah,
so
he
does
have
some
unit
tests,
and
so
everything
is
passing.
So
it's
just
now
sort
of
finalizing
if
this
needs
to.
If
we
do
want
this
sort
of
separation
to
occur
and
michael
will
be
back
next
week,
so
maybe
have
some
additional
input
onto
that.
A
A
I
remember
you
had
looked
at
this
and
made
a
comment
regarding
the
adding
base
class
as
a
value
as
an
argument,
rather
instead
of
having
to
call
this
this
way
of
three
separate
classes
or
functions
here,
and
his
main
concern
was
that
adding
a
new
parameter
was
not
possible
unless
we
created
an
api
defined
class
two.
A
But
then
I
highlighted
that
since
we
renamed
an
api
to
node
api,
newly
added
symbols
use
node
api
prefix.
So,
instead
of
having
an
api
defined
class
2,
we
could
prefix
everything
with
node
api.
A
Yeah
this
was
his
original
suggestion
to
have
these
three
and
then
we
can
just
have
one
for
node
api
defined
class,
which
adds
the
base
class
right.
Okay,
I
commented
that
almost
two
weeks
ago,
but
there
hasn't
been
any
additional
work
on
this
one.
A
It's
still
sort
of
failing
on
the
initial
linting
of
the
commit
message,
but
maybe
he'll
continue
working
on
this
in
the
future,
but
this
has
been
a
highly
requested
feature
as
well.
I
remember
gabriel
had
also
tried
working
on
something
like
this.
That
used
like
he
ended
up
using
run
script.
B
Yeah,
the
biggest
challenge
is
calling
base
class
constructor.
I
think
it's
it's
it's
all
about,
and
it's
it's
not
simple.
If
you,
if
you
look
at
typically
implementation
for
low
low
end
engines,
people
you
have
to
use
some
kind
of
reflections,
some
some
other
more
modern
apis,
but.
A
All
right,
okay,
I'm
also
wondering.
A
Like
he
ended
up
needing
to
return
a
function,
template
or
at
least
some
opaque
type,
that
represents
a
function
template
because
that's
the
thing
that
you
have
to
to
use
in
v8
to
actually
extend
the
class
from
my
understanding,
I'm
not
sure,
if
just
providing
in
a
new
base
class
parameter,
which
would
be
a
you
know,
a
real
javascript
value.
A
B
And
now
we
create
a
new
new
class,
we
can
always
associate
using
some
kind
of
internal
field.
We
can
associate
with
a
function
template
so
thank
you
yeah,
but
you're
right.
It
may
be
some
other
scenarios.
If
we
extend
in
one
native
function
template
with
another
function
template
it
would
probably
work.
But
the
question
now,
like
I
say
if
you
have
some
kind
of
javascript
class
and
you
want
to
have
native
codes
on
how
to
inherit
from
it,
it
becomes
more
interesting.
A
I
can
see
that
being
a
problem,
and
I
think
that
is
a
valid
use
case.
You
know,
like
you,
have
some
javascript
class
that
you
construct
or
create
the
definition
for,
and
then
you
want
your
c
plus
plus
native
class
to
extend
that
one
right
and
then,
if,
if
we're
just
modifying
our,
you
know
our
definition
of
the
what
we
store
for
an
api
value
that
we
return
from
the
define
class,
we
wouldn't
have
that
ability
to
do
that
from
the
javascript
class
right
and
I'm
not
sure.
A
Yeah,
I
think
that's
why
gabriel
had
to
do
some
sort
of
run.
Script
with
you
know
running
javascript
code
in
the
module
itself.
In
order
to
do
that,
I
don't
remember
how
it
was
done,
but
I
do
remember
he
had
to
do
some
weird
hacky
stuff
with
run
script
and
then
it
it
didn't
fly
so
he
ended
up.
You
know
closing
that.
B
B
Matrix
like
a
native
versus
javascript
object,
and
so
like
four
different
cases,
like
probably
say
like
three
kids
right,
so
it's
a
lady
from
native
media
from
javascript
and
javascript
from
native.
So
always
three
different
scenarios
must
work
somehow
right.
B
A
Probably
not
yeah,
I
don't
think
we
can
so
we're
almost
out
of
time.
So
let
me
just
finish
this
comment
that
we
need
to
ensure
that
we
can
perform.
B
A
A
Okay,
accent
needs
a
bleeding.
A
All
right,
we
can
comment
that
then
we
are
a
little
over
time,
but
is
there
anything
else
that
anybody
else
would
like
to
discuss
or
talk
about
before
we
close
it
for
the
week.