►
From YouTube: Node.js N-API Team meeting - April 15 2019
Description
A
A
A
So
the
first
one
is
no
js'
blog
post
I
think
that
might
actually
be
complete
right.
Yep
it's
live,
so
that
was
a
good
blog
post
that
went
out
and
one
thought
I
had
is
you
know
the
people
were
talking
about.
What
we
should
highlight
for
12:00
did
a
number
of
the
changes
related
to
that
is
12.
The
first
thing
they're
shipping
in
you
know
actually,
okay,.
B
A
Yeah,
if
you
just
caught,
you
know
that'll,
let
me
easily
say
hey.
This
is
the
case
for
why
this
should
be
one
of
the
highlights.
I
think
you
know
it's
a
good
way
to
highlight
any
API
as
well
again
to
say
look
for
make
we've
been
working
on
making
progress
across
releases
to
make
it
easier
for
know
that
ons,
you
know,
we've
been
working
on
API,
of
course,
there's
improvements
in
any
its
version.
A
A
A
A
A
A
A
E
A
A
A
B
A
B
A
A
B
A
A
A
Yeah
exactly
like
it's
definitely
four
hours
closer
than
Coover,
three
or
four
so
I
think
we
should
submit
this
one
as
well.
I!
Think
I
guess
we
should
just
wait
for
Jim
to
come
back
and
then
you
know,
unless
anybody
else
has
other
suggestions,
we
should
just
actually
submit
this.
One
sounds
good
along
with
the
comments
of
hey.
You
know
this
was
really
really
helped
us
last
year,
so
we're
really
hoping
to
get
it
in
again
this
year
and
I
guess
we
should
also
I
wonder
if
there's
like
anywhere
else
we
should
be
proposing.
A
B
A
A
A
B
Yeah,
that's
true:
yeah
we'd
probably
be
out
of
place,
but
I,
don't
know,
I
mean
I,
don't
know
for
for
things
like
for
things
like
SSR
might
sort
of
tail.
C
A
So
yeah
I
think
if
everybody
can
kind
of
think
of
conferences
that
might
make
sense
and
propose,
is
that
I
think
getting
into
one
or
two
more
like
in
a
workshop
type
environment
would
definitely
be
good
for
us
and
for
the
effort
yeah,
because
we
got
a
pretty
good
bump
from
the
note
coffee,
you
and
I
think
something
similar
a
few
few
more
times
somewhere
else.
I
think
might
would
be
good.
A
A
A
E
E
A
Think
before
I
did
that
I
want
us
to
convince
ourselves
we're
happy
with
either
option
but
I
like
the
real
you
know,
I
could
see
as
a
consumer
if
it's
all
in
one
there's
not
really
much
of
a
downside
other
than
space
I
guess
that
space
downside
then
the
biggest
concern
in
my
mind
is
the
is
the
the
expectation
that
this
group
would
maintain.
Whatever
goes
into
the
core
one
right,
yep,
and
so
it's
I
think
we
need
to
say
yeah
if
you
know
we're
comfortable
with
doing
that
and
ice
yeah.
C
A
A
Things
I'm
not
sure
we're
gonna
get
a
lot
of
feedback
because
the
module
is
you
know
it's
if
it
was
in
the
core
or
API
is
itself
I
think
we
get
feedback,
it
doesn't
hurt
to
ask
I'm,
just
not
sure
we're
gonna
get
an
answer
that
Cliff
clarifies
it
for
us,
like
the
TSC
model
is
really
the
people
doing
the
work,
we'll
figure
out
the
answers
right
and
if
there's
a,
if
there's,
if
there's,
if
there's
you
know,
conflict
or
whatever
they'll
help
resolve
it
but
like
in
this
case,
I
think
it
would
be
like
hey
if
we
said
we're
perfectly
comfortable
that
we
can
handle
all
the
work
and
likes
bring
stuff
in
then
they've
probably
score
for
that.
B
You
know
they
just
write
these
things
and
they
throw
them
on
NPM,
because
it's
so
simple
right
so
I'm
sure
I
mean
we
could
we
could
start
to
like
curate,
maybe,
but
but
aside
from
that,
I
I,
don't
know
if
you
know
I
mean
I,
don't
know
if
we
should.
You
know
make
an
explicit
effort,
because
we
might
end
up
duplicating
some
stuff.
That's
out
there,
even
potentially.
B
A
A
Then
so,
if
it's
something
which
is
I
mean
so
then
it's
generally,
if
somebody
comes
with
something
which
is
beyond
a
wrapper
of
core,
the
first
suggestion
will
be,
you
know,
create
a
create,
a
module,
and
you
know
add
add
your
references
here,
you
know,
will
help
publicize
it
but
create
a
separate
module,
and
then
you
know
on
you
know
things
like
the
where
that's
not
possible
or
you
know.
We
really
think
it
needs
to
be
in
core
more
the
special
case,
like
TFS
n,
where
it's
like.
A
E
A
E
A
A
A
A
A
Although
I
think
I
think
like
as
opposed
to
having
in
a
Google
Doc,
we
probably
want
the
text
in
the
repo
itself
linked
off
the
readme.
That
says
you
know
we
considered
these
two
approaches.
This
is
our
you
know.
Maybe
it
starts
out
with
like
here's
the
approach.
If
it's
something
that
wraps
it
will
take,
you
know
we'll
take
that
into
core
itself.
A
If
it's
not
wrapping
stuff,
our
general
approach
is
to
ask
that
you
do
it
in
an
ecosystem
module
here
the
two,
the
two
options
that
we
considered,
which
would
be
pretty
much
the
text
that
you
have
and
in
and
then
probably
up
front
as
well.
You
know
here's
a
link
where
you
can
PR
in
your
module
so
that
it's
visible
and
other
people
can
can
find
it
easily
off
the
real.
A
E
A
A
A
F
A
A
A
A
But
at
that
I
think
that's
about
all
I
can
I
can
say
at
this
point,
because
I
really
haven't
had
a
chance
to
do
I.
Don't.
C
C
C
A
Either
I
guess
it's
somebody
like
I
guess:
I'll
respond
to
saying
like
either.
We
basically
need
some
code
that
can
be
shared
publicly,
that
recreates
the
problem
or
like
I
might
be
able
to
suggest.
Like
you
know,
one
of
the
consulting
companies
like
I,
don't
know
if
near
form
does
would
do
something
like
that,
where
they
would
work
with
them
and
they
could
sign
an
NDA.
C
B
A
A
A
Basically
saying
hey,
you
know
looking
for
some
help
on
this
run,
willing
to
pay
cuz,
I
guess
I
should
mention
like
you
know,
IBM
sells
note
support
and
that
I
was
just
thinking
like
you
know
it's
to
take
money
for
a
one-off,
but
if
you
actually
bought
a
support
contract
from
somebody,
then
they'd
state
helped
you,
okay,
okay,
any
more
anything
else
to
discuss
on
that
front.
A
A
A
A
B
Yeah
that
that
does
kind
of
look
like
an
eyesore
a
little
bit,
because
the
it
really
should
be
the
optional
there's
I
mean
the
what
you
do
yeah
well.
What
what
you
do
in
the
on
okay
and
on
error
should
be
completely
up
to
you.
I
guess,
that's
that's
a
little,
but
I
can
see
it's
handy
to
be
able
to
say
you
can
have
these
functions
week.
A
A
B
B
Yeah
yeah
that
that
we
couldn't
really
personal
there
I
mean
we
could
pass.
We
could
pass
like
a
like
an
empty
function
like
a
like
an
empty
value
where,
where
the
end
is
null
and
the
nappy
value
that
it's
wrapping
is
not
so
so
you
know
we
could.
We
could
pass
like
nappy
colon
colon
function,
but
I'm
not
sure
if
you
can
give
a
default
value
to
a
part
to
to
a
reference.
I
don't
know
if
C++
to
know
that.
A
E
A
B
E
B
B
B
A
B
Okay,
so
so,
basically,
basically
by
default
by
default,
we
we
make
on
like
an
empty
function,
call
like
to
JavaScript,
it
accepts
no
or
it
passes.
No
whole
parameters
into
JavaScript.
It's
just
basically
like
call
back
bracket
back
brackets
is
what
it
looks
like
on
the
JavaScript
side
and
and
if
there's
an
error,
we
call
that
javascript
function.
Okay,
so
with
the
error
right.
A
B
Yeah
yeah,
that's
okay!
So
that's
our
default
behavior!
So
so,
if
we
added,
if
we
added
the
dummy,
if
we
added
this
dummy
function,
then
then
then
the
on
okay
Andy
on
error
would
basically
just
check
if
the
dummy
function
was
empty
and
and
and
all
only
call
into
JavaScript.
If
it's
a
real
JavaScript
function,
that's
all
so
we
just
wrap
these.
We
just
wrap
these
two
calls
in
an
if
and
that
would
be
it
exactly
and
yeah
I
guess
we.
B
Yeah,
but
that,
let
me
that's
the
same
thing
well,
I
mean
we
don't
want
a
real
function
at
any
point
right.
So
so
so
you
know
this.
This
underscore
called
callback
may
be
empty
at
that
point
like
we're.
Basically
we're
basically
not
checking,
except
for
not
we're,
not
know,
checking
callback
itself,
we're
not
tracking
the
contents
of
callback,
because,
ultimately,
ultimately,
even
though,
even
though
callback
is
is,
is
passed
by
reference
into
the
constructor
and
all
that
it's
still
not
a
ball,
because,
oh
because
at
its
heart
it's
just
a
pointer
right.
It's
just.
B
And
if
that
nappy
value
is
null-
and
it
can
be
now
because
it's
a
pointer,
then
we
can
check
to
see
that
it's
not
all
here
and
and
only
and
only
call
one
of
its
members,
if
it's
not
so
so,
essentially,
even
though
it's
a
even
though
it's
it's
like
a
C++
reference,
it
can
still
be
null
because
of
the
nature
of
the
class.
Oh,
it
would
be
like
a
function.
A
B
G
B
G
G
B
Exactly
so
so
we
do
so
so
we
create
like,
like
like
a
static
like
a
static
member
to
this
class.
It's
of
type
nappy
function
and
and
is
initialized
to
nothing
and
so
is
empty,
will
return
true
for
it
and
then,
and
then
we
use
that
we
pass
that
into
into
the
constructor
into
the
existing
constructors
from
the
new
constructors
and
that's
yep.
B
G
B
Well,
yeah
yeah:
it
is
kind
of
an
artifact
yeah,
that's
true,
but
we're
already
we're
already
past
the
point
where
we
are
we
are.
We
are
truly
purely
in
line
because
we
already
have
like
static
static
functions
which
are
the
the
pointers
to
which
we
pass
into
like
the
the
C
API.
We
have
to
write
Ram
so
so
so
that
we
are,
we
already
have
stuff
that
is
like
real,
rather
than
you
know
this.
This
was
this
was
part
of
the
reason
why
we
had
to
introduce
the
F
visibility
equals
hidden
for
OS.
B
10
is
because
we
do
have
symbols,
and
you
know,
including
an
API
dot.
H
in
your
code,
will
result
in
symbols
being
added
to
to
your
your
your
object,
file
and,
ultimately
to
your
library.
So
so,
yes,
we
have
symbols
to
our
name.
Basically,
and-
and
so
you
know
that-
that's
why
we
ran
into
this.
This
visibility
issue
on
OS
10,
and
this
is
gonna-
be
another
symbol
that
we
add,
there's
just
no
two
ways
about
it:
gotcha,
okay
and.
A
A
So
that
one
sounds
good
okay,
so
javascript
function
call
back
done.
No
support
for
promises.
B
Yeah
this
this
async
promise
we
have.
We
have
a
PR
for
racing,
promise,
I,
think
and
and
I'm
about
to
comment
to
Philip.
He
he
also,
he
also
submitted
an
issue
about
this
running.
Note
thread
idea
to
just
have
like
a
one-hour
thing
where
you
you're
just
have
to
be
checking
along
on
your
own
thread
and
and
by
the
way
I
want
to
run.
B
Something
in
the
note
read:
that's
it's
kind
of
like
a
variation
on
the
thread
safe
function
where,
where
the,
where
the
idea
is
not
that
you
have
a
function,
object
which
is
now
thread
safe,
but
rather
you
have
like
a
one-off.
You
have
a
reference
to
to
to
a
JavaScript
function
like
a
persistent
reference,
and
you
know
you
cannot
use
the
persistent
reference
on
your
own
thread,
and
so
you
have
this
like
running
node
thread
thing
where
you
passed.
B
The
persistent
reference
to
a
callback
which
you
know
will
be
will
run
on
the
node
thread
and
therefore
using
the
persistent
references
is
safe.
So
so
he
had
that
idea
and
I
was
about
to
comment
to
him
that
yes
great
run
with
it.
We're
happy
to
hear
it,
but
please
write
a
library,
because
we
decided
not
to
accumulate
everything
in
all
that
on
API.
So
something
to
that
effect,
I
was
about
to
comment
and
and
I
think
this
asing
promise
is
is
the
same
thing
like
it's:
it's
it
uses.
B
It
uses
a
sink,
which
is
no
the
add-on
API
wrapper.
It
uses
the
promise,
which
is
also
I,
know
that
on
API
wrapper,
but
putting
them
together
is
a
feature
above
and
beyond,
just
being
a
rapper,
and
so
it
is.
It
is
right
for
or
for
it's
for
its
own
NPM
package
or
for
for
depositing
in
another
NPM
package
that
we'll
have
that
deals
with
these
enhancements.
So.
A
Basically,
I
just
typed
this
one,
which
is
no
sperm
based
on
earlier
discussion.
Suggestion
would
be
to
create
an
NPM
modules.
It
goes
beyond
just
wrapping
any
functions,
yeah
exactly
yeah
yeah,
okay,
that
makes
sense
and
I
think
we're
out
of
time
for
this
week,
but
we
can
loop
back
to
the
next
ones
and
the
list
I
think
that's
good.
We're
making
some
suggestion.
A
I
think
also
there's
the
exploration
you
know
the
resolution
was
suggesting
something
new
and
it
may
be
that
the
suggestion
is
too
like
okay,
that's
good,
but
maybe
that
belongs
in
a
separate,
separate
package.
Just
because
you
know
we
need
something
that
maintains
nine
compatibility
in
the
first
place
right
right,
yeah,
yeah,.