►
From YouTube: wasmCloud: Unit Testing Actors Demo, Union Support for Smithy Demo, Community Callout - 02/09/22
Description
wasmCloud is a platform for writing portable business logic that can run anywhere from the edge to the cloud, that boasts a secure-by-default, boilerplate-free developer experience with rapid feedback loop.
A
Welcome
to
wasm
cloud
wednesday
for
february
the
9th
2022.
we're
going
to
start
as
usual
with
quick
demo
and
we're
going
to
hand
off
to
nikki
who's
going
to
give
us
a
quick
readout
of
a
quick
change.
We
made
to
the
washboard
nikki
go
ahead.
You
have
a
permission
to
share.
B
Hi
everybody
thanks
for
this
opportunity.
It's
really
just
a
couple
of
very
simple
bug,
fixes
that
were
needed
to
be
done.
So
hopefully
everyone
can
see
my
screen.
This
is
actually
the
the
fixed
screen.
B
So
this
is,
after
the
fixes
were
in
place.
Basically,
it
was
to
simplify
some
of
the
copying
of
the
actor
and
provider
id
so
prior
to
this
change.
There
was
a
button
in
between
here.
Hopefully,
you
guys
can
see
my
mouse
between
the
copy
actor
id
and
the
settings
which
was
copy
host
id
and
the
reason
that
was
a
little
bit
confusing
was
because
a
host
id
is
down
here
and
it
didn't
have
the
original
few
characters.
B
So
before
the
bug
fix
people
just
saw
two
copy
icons
and
they
weren't
sure
you
know
what
is
what
so.
The
change
was
primarily
to
do.
Two
things
make
the
copy
icon
a
little
bit
more
explicit,
so
you
could
actually
see
some
of
the
first
few
identifiers,
so
this
wasn't
there
before-
and
this
wasn't
there
before
and
to
remove
the
host
id,
because
the
host
id
is
already
down
here.
B
So
I
think
the
net
effect
of
this
change
is
that
it's
a
lot
more
consistent
between
these
various
boxes
between
the
actors,
box,
the
provider
box
right
and
really
the
change
is
very
simple:
you
put
your
your
mouse
over
it.
It
says
copy
actor
id
that
was
there
before
copy
provider
id
again
that
was
there
before
and
now
you
know,
when
you
click
on
these
buttons,
they
just
simply
work
right.
I
won't
copy
it
and
show
it
to
you,
but
you
can
take
my
word
for
it.
B
The
other
item,
which
was
a
small
cleanup
which
was
called
by
brooks-
and
you
know,
asked
me
to
pick
up
as
well
this
copy
icon,
even
though
it
showed
the
first
few
characters
of
the
id
when
you
clicked
on
copy,
and
it
said
it
copied
it
didn't
actually
copy.
So
again
that
was
a
very
minor
bug
fix,
but
I
think
the
net
result
of
these
changes
is
even
though
they're
very
simple
changes,
but
I
think
it
does
help
with
the
clarity
of
the
dashboard
and
I
think
it's
a
little
bit
easier
to
use.
A
Well,
that's
awesome,
nikki.
I
really
appreciate
you
taking
the
time
to
knock
knock
these
out.
That's
absolutely
phenomenal!
There's
no
questions
for
nikki,
we'll
move
on
to
our
second
demo
brooks.
I
think
you
have
a
demo
that
was
driven
around
some
of
the
experience
that
matt's
and
someone
else
had
with
a
testing.
I
can't
remember
who,
honestly
out
of
slack.
C
Yeah,
I
think,
there's
slack
handle
maybe
bgk
or
something
like
that,
but
in
general
just
some
feedback
around
our
our
testing
flow
for
for
wasn't
cloud
in
general.
So
I
wanted
to
show
you
a
little
bit
of
an
improvement
that
we
have
for
actor
development.
C
So
if
you
use-
and
you
all
should
be
able
to
see
vs
code,
all
fine
and
good
I'll
be
doing
some
things
in
the
terminal
and
some
things
in
the
actual
window.
But
if
you
use
wash
to
generate
a
new
actor
project,
we
open
that
up
then
rust
analyzer
is
going
to
build.
You
know
what
what
we
saw
before
is
you
couldn't
actually
write
unit
tests
for
actors,
so
if
you
were
to
do
and
anybody
who's
written
rust
before
this
is
going
to
look
familiar.
C
But
if
you
haven't,
you
can
essentially
set
up
a
special
place
in
your
rust
files.
It
can
be
at
the
bottom.
It
can
be
in
a
different
file,
it
doesn't
really
matter,
but
just
a
special
place
that
you
can
define
tests,
and
this
will
only
compile
when
you,
you
run
cargo
test
and
you
can
use
it
to
assert
certain
functionality
in
your
code,
just
a
classic
unit
test.
C
C
Could
have
compiled
it
beforehand,
but
I
wanted
to
wanted
to
see
it
we'll
get
an
error
saying
you
can't
execute
a
binary
file
and
the
root
cause
of
this
is
when
you
compile
something
for
testing
mode.
Essentially
you
compile
it,
and
then
your
computer
tries
to
run
the
output
binary
to
run
the
tests
on
it
essentially
and
since
it's
a
webassembly
module,
my
computer
arch
mac
doesn't
know
how
to
run
a
webassembly
module.
So
there
are
various
different
ways
of
tackling
this.
C
You
can.
You
can
have
like
a
light
shim.
This
is
what
was
on
bind
gen
does
basically
just
like
launches
a
small
web
assembly
runtime
to
run
your
webassembly
module
inside
of
it.
This
is
certainly
something
that
we're
considering
and
want
to
move
towards
in
the
future
for
doing
like
complex
or
more
complex
integration
tests,
but
for
unit
tests
we
actually
were
able
to
make
a
change
to
the
wasmbus
macro
to
make
it
so
that
you
can
run
unit
tests
in
an
actor
file
without
doing
a
light
shim
without
too
much
configuration.
C
So
what
we
have
now
is,
if
you
run
cargo
tests,
is
that
what
I
did
before
yeah?
C
It's
not
dirty.
We
conditionally
compile
that
stuff
out
if
it's
not
on
the
webassembly
target,
so
you
can
actually
write
tests,
and
this
is
a
this
is
a
simple
example,
but
one
of
the
example
that
I
showed
in
the
in
the
documentation
I'm
about
to
publish
this
so
that
everybody
can
try.
This
out
is
we'd
love
to
be
able
to
we'd
love,
to
be
able
to
assert
things
that
our
actor
is
doing
right.
C
C
We
want
to
get
a
response
back
from
handling
the
http
request,
and
then
we
want
to
assert
things
about
that
response.
There's
a
little
bit
of
modification
that
you
have
to
do
here.
This
is
something
you'll
run
into
anytime
you're
doing
unit
tests,
but
specifically
for
rust
doing
async
tests
are
a
little
bit
more
difficult.
They
require
like
a
run
time
like
tokyo.
C
So
if
we
take
this
functionality
that
we
have
here
in
the
actor
handler
and
just
put
it
in
a
synchronous
function
where
we
don't
need
to
pass
a
self,
we
don't
need
to
pass
a
context.
We
can
test
more
the
pure
logic
than
like
an
integration
test.
So
if
we
have
a
handle,
http
request
function,
which
is
takes
in
an
http
request
and
returns.
C
C
So
all
I'm
doing
is
taking
all
of
that
out
and
putting
it
in
a
synchronous
function,
which
is
a
little
more
logic
based
it's
taking
the
request,
turning
into
a
response
not
dealing
with
anything
else,
but
what
we
can
do
now
is
we
can
actually
test
that
this
function
is
doing
what
we
want
it
to.
So
if
we
write
out
a
full,
a
full
unit
test
with
the
requests,
we
can
unwrap
that
because
it's
a
test
and
that's
fine,
we
can
assert
things
like
that.
C
The
response
status
code
is
200,
that
this
is
an
actual,
successful
http
request.
We
can
assert
things
like
the
response.
Dot
body
is
what
we
expect
it
to
be,
and
if
we
think
about
this
I
don't
know
if
you,
you
all,
have
seen
this
if
you've
seen
this
example
or
not
before,
but
what
this
hello
actor
is
doing.
Is
it's
essentially
saying
hello
and
then,
whatever
you
give
is
a
name
in
the
http
request.
We
say
hello
to
that
name.
C
C
Header
we
can
just
do
an
empty
hash
map
and
the
body
we
also
don't
care
about.
This
is
a
simple
unit
test,
making
sure
that
we're
getting
back
the
correct
body.
So
we
can
assert
that
the
response
is
hello,
awesome,
community
and
the
response
body
is
a
vector
of
bytes,
so
we
can
just
turn
that
into
a
string
instead.
C
So
we've
got
our
simple
unit
test
can
handle
http
request.
We
constructed
our
full
object,
we're
calling
the
function
that
we're
trying
to
assert
and
we
make
sure
that
it's
a
successful
response
and
we
have
the
body
that
we
expect.
Now
we
can
run
this.
We
can
actually
run
this
test
directly
from
the
s
code.
We
click
run
test
check
it
out.
We
get
an
okay
and
I'm
not
I'm
not
faking
anything.
If
we
fail
this
test,
assert
equals
two
or
whatever
we
get
a
stack
trace.
C
We
actually
are
you
know
doing
these
unit
tests
don't
mean
to
project
the
the
trust
issues
just
wanna
show.
This
is
a
real,
real
demo
that
we're
doing
and
there's
the
the
only
other
thing
that
I've
done
here
in
order
to
run
the
the
unit
test
in
vs
code.
Is
I
just
updated
my
my
rust
analyzer
when
you
run
a
test,
it
passes
the
native
target,
so
the
the
tl
dr
here
is
running
unit
tests
is
now
possible.
In
wasn't
cloud
actors,
it's
fairly
simple
doesn't
need
much
modification.
C
You
just
need
to
tell
cargo
to
run
the
test
on
your
machine's
target,
but
in
general
this
is.
This
is
a
big
step
forward,
because
there
wasn't
really
a
way
to
run
any
kind
of
cargo
test
on
an
actor
or
on
a
webassembly
module
without
having
that
shim,
and
that
adds
in
complexity.
You
may
need
to
download
wasm
time
or
with
lawson
bind
gin.
You
need
node.js,
or
things
like
that.
C
So,
like
I
mentioned,
this
is
all
ready
to
go.
When
you
generate
a
new
project
now
you
should
be
able
to
as
long
as
you
have
waz
and
bus
rpc,
0.7
or
later
you
should
have
access
to
being
able
to
do
this
and
we'll
have
a
new
section
in
our
documentation
coming
out,
probably
a
little
later
today
or
a
little
bit
a
little
bit
later
this
week
on.
Writing
these
tests.
So
looking
forward
to
see
if
this
helps
solve
some
of
the
pain
points
of
just
writing.
Some
simple
stateless
functionality,
tests.
A
Any
questions
for
brooks,
I
think
getting
that
example
checked
in,
would
be
awesome
and
making
sure
we
get
that
making
sure
we
get
the
documentation
out.
There
would
be
great.
I
know
that
this
was
a
real
pain
point,
and
I
think
my
favorite
thing
is
is
that
you
know
internally,
we
didn't
even
have
to
like
spike
to
say
tuscan
raider.
Thank
you
taylor.
I
guess
they
ride.
Banthus
we
didn't
even
have
to
spike,
like
the
team.
A
Just
kind
of
like
saw
the
pain
that
that
mats
and
vic
were
vg
were
having
and
or
vic
were,
having
and
just
kind
of
swarm
to
it
to
fix
it,
and
I
just
love
that
sort
of
like
care
for
everybody
across
the
community
and
for
the
folks
that
are
building
it.
A
I
think
max
has
some
awesome
pull
requests
in
flight
that
I
don't
want
to
spoil,
because
I
know
we
have
even
more
demos
today,
steve,
I
think
you
and
bailey
have
been
talking
about
a
great
one
for
the
sql
provider.
Do
you
want
to
do
a
quick
preview
of
what
you
guys
have
been
working
on.
D
Yes,
yes,
I
will
I'll
first
give
I
wanted
to
give
a
shout
out
to
to
matt
sparsen.
He
did
submit
a
pr
for
blob
store
interface
and
that's
we
had
before
the
migration
to
the
0.50
wasn't
cloud
host.
D
We
had
a
blob
store
capability
provider
interface
and
there
was
a
file
system
provider
and
an
amazon
s3
provider
that
used
that
interface
and
so
matt
responded
to
the
help,
wanted
tag
on
on
the
repo
and
has
picked
it
up
and
carried
the
ball
and
so
that
the
file
system
provider
is
in
progress
and
there's
also
an
s3
provider
in
progress
they're
both
using
the
interface
so
within
the
next
few
days
that
the
interfaith
pr
should
be
merged
and
we
should
have
a
couple
more
providers
soon.
D
So
that's
awesome
and
thanks
thanks
to
matt
for
for
that
work,
and
I
wanted
to
talk
about
unions
in
smithy
interfaces.
So
by
the
way,
there's
a
there's.
A
recent
video
I'm
going
to
paste
the
link
into
the
zoom
chat
here
that
amazon
posted
about
why
they
created
smithy
and
it's
kind
of
a
neat
overview
of
the
history.
Why
they
why
they
built
it
and
what
goals
it
solves
they
they
use.
Smithy
idl
for
describing
interfaces
for
something
like
270
services
is,
is
pretty
powerful.
D
D
A
window
with
my
ide
right
now
this
is
checked
in
as
a
pr
and
there's
some
notes.
There's
some
notes
in
the
readme
to
say
this
is
experimental,
but
we.
What
we
can
do
now
is
declare
a
union
if
you're
a
rest
developer,
it's
more
like
an
enum,
but
you
can.
D
So
this
is
the
kind
of
thing
that
could
be
consolidated
into
a
union,
but
one
of
the
big
motivating
cases
is
the
sql
interface,
where
we
want
to
be
able
to
do
prepared
statements
and
be
able
to
pass
a
bunch
of
parameters
in
with
a
prepared
statement,
and
that's
been
kind
of
hard
to
do,
and
we're
now
going
to
be
able
to
do
that.
D
D
So
here's
an
example
of
a
response
you
could
do
is
either
returning
data
or
an
error,
and
the
union
can
have
any
data
type.
D
It
could
be
a
structure
or
any
of
an
array,
any
kind
of
value,
here's
another
another
kind
of
thing
you
could
do
is
is
something
that's
analogous
to
a
json
value
where
it
could
have
any
type,
and
this
is
again
just
a
demo,
but
here's
a
value
that
could
take
any
of
these
data
types
all
the
way
down
to
a
float
or
a
blob
and
over
here
on
the
right.
D
If
you
can
see
that
see
the
screen
it
when
the
code
generator
processes
this,
it
creates
this
enum
in
rust.
It
gives
one
of
those
values
so
right
now
the
union
support
is
I
I
called
it
a
demo
release
we'd
like
to
get
some
feedback
on
it.
The
way
we
do
code
generation
could
change
a
little
bit.
D
So
I
wrote
I
wrote
in
there
that
over
the
next
45
days-
or
so
we'll
probably
experiment
with
this-
so
don't
use
it
for
production
code,
but
we
would
definitely
love
some
feedback
on
it
and
hear
about
how
you
might
want
to
use
it.
And
if
it's
useful
to
you.
A
All
right
well,
that
is
super
exciting.
I
I'm
really
excited
about
the
more
advanced
capabilities
steve
and
I
thought
your
demo
was
awesome
too.
You
know
there's
lots
of
room
for
people
to
demo
in
different
ways.
We
had
already
three
demos
today,
which
I
think
is
incredible.
Are
there
any
other
demos
on
the
call
today
or
anything
people
want
to
share
that
they're
working
on.
A
I
would
just
call
out
as
a
fun
demo
if,
if
people
did
not
see
it
in
slack,
I
would
encourage
you
to
check
out.
There
was
a
somebody
that
did
a
drive
by
on
our
slack
and
dropped.
A
new
video
game
they've
been
experimenting
with
to
the
2048
game.
It
was
just
really
neat
to
have.
A
You
know
another,
it's
always
fun
when
community
members
show
up
with
stuff
that,
like
you
know,
it's
like
that,
are
as
excited
about
wasm
cloud
as
we
are,
which
is
which
is
awesome,
and
I
hope
matt
to
your
point.
I
hope
that
he
open
sources
that
as
well-
and
you
know
like
just
continues
to
develop
and
you
know
plug
some
features
in
because
it
is
cool
to
see
people
building
a
lot
of
fun
stuff
in
a
wasm
cloud.
A
I
think
we've
got
a
few
other
topics
to
bring
up
today,
but
before
we
do,
I
kind
of
want
to
turn
to
two
community
topics.
The
first
topic
is
that
submissions
are
still
open
across
the
board
for
kubecon
eu.
A
A
couple
folks
from
the
cosmonautic
and
wasn't
cloud
team
will
for
sure
be
there
right
now
I'll
be
attending
a
tuesday
through
friday,
and
I
believe
that
brooks
and
taylor
are
also
going
to
be
in
town
manning
the
booth
and
helping
out
for
wasm
day.
We
still
need
volunteers
if
you're
interested
in
volunteering
and
even
more,
we
need
talks
about
any
cloud
native,
related
webassembly
talk,
whether
it's
wasm
cloud
or
not.
So
please
feel
free
to
get
your
submissions
in.
A
I
would
also
hopefully
mention
that
there
are
a
few
other
related
days
that
you
may
want
to
submit
to
as
well
kubernetes
on
edge
kubernetes
security
day
and
there's
a
kubernetes
telco
day
as
well.
So
if
you
need
any
collaboration
or
coordination,
if
there's
jeff
you-
and
I
met
late
last
week
about
maybe
some
of
the
things
that
we
would
collab
on
in
the
community,
you
know
if
there's
any
opportunities
to
to
bring
things
out.
A
Please
get
your
talk
submitted
if
you'd,
like
some
feedback
before
you
submit
your
talk,
just
reach
out,
we've
been
able
to
push
the
webassembly
day
back
to
february
28th
for
our
submissions
and
then,
as
a
committee,
we're
going
to
hustle
to
get
responses
back
asap
to
get
people
notified
by
early
march
for
attendance.
I
know
that
folks
have
been
booking
flights
and
flights
are
super
cheap
right
now
for
anybody
that
is
planning
on
going.
A
I
helped
I
was
working
with
a
team
earlier
this
week
and
they
booked
their
flights
for
like
400
bucks,
which
was
pretty
amazing,
they're
flying
into
barcelona
and
taking
the
train,
but
I
hope
to
see
as
many
people
there
safety
permitting
as
possible
and
then
I
wanted
to
quick
hand
the
mic
over
to
you
stuart.
If
you
don't
mind,
if
you
want
to
do
a
plug,
I
know
you've
got
your
event,
that's
in
flight,
and
you
can
let
us
all
know.
What's
going
on.
E
Thank
you
liam
yeah
march,
2nd
evening,
london
time.
So
I
guess
that's
6
30
our
time
it'll
be
1
30
your
time
right,
yeah
we're
having
a
hybrid
event.
We
love
webassembly
outside
the
browser.
E
E
We've
just
been
talking
about
it
just
before
this
meeting
about
web
assembly,
so
while
some
cloud
as
as
a
step
up
from
kubernetes
or
the
journey
from
kubernetes
to
to
wasn't
cloud
and
the
wider
context
of
web
assembly
in
that
in
the
cloud-native
distributed
application
space.
So
that's
really
really
exciting.
We,
we
may
have
some
other
speakers
as
well,
but
they're
not
confirmed
yet
so
invites
will
be
going
out
this
week
and
all
the
details
will
be
posted
up
and
I'll.
Let
you
know
where
the
urls
are.
A
All
right:
well,
whenever
you
get
the
self
sign
up,
stuart
feel
free
to
spam,
our
slack
and
get
it
to
channel
and
we'll
tweet
it
out
from
our
account
and
all
the
things
and
I'm
really
looking
forward
to
the
talks
as
well.
That's
it's
still
march
2nd!
Is
that
right.
E
March,
the
second
year,
which
is
wednesday
at
almost
exactly
this
time,
so
whatever
time
it
is
in
your
time
zone
now
that
is
the
time
it
will
be
well.
A
We're
all
going
to
transition
right
from
wasm
cloud
wednesday
to
to
your
event,
and
that
will
be
the
first
wasn't
called
wednesday
that
I'm
going
to
miss.
I
think
I'm
going
to
be
on
an
airplane
at
times,
so
on
the.
A
I
go
to
the
dr
kind
of
my
niece
is
getting
married
and
my
kids
are
going
to
play
their
violence
on
the
beach
so
and
I'm
going
to
drink
a
whole
bunch
of
pina
coladas.
But
that's
for
another
call,
great
any
other
social
or
community
news
that
anybody
wants
to
mention
any
other
events
in
flight.
C
I've
got
a,
I
do,
have
a
community
call
out
today,
so
I
can
go
ahead
and
do
that
so
community
call
out
this
week.
It
includes
one.
It's
just
one
issue,
one
thing
that
we
kind
of
talked
about
last
week,
but
us
it
wasn't
cloud
we're
constantly
trying
to
improve
our
documentation
and
especially
the
new
troubleshooting
guide
that
went
out
and
the
new
testing
guide
that
just
went
out.
I
merged
that
in
right
after
the
demo,
so
everybody
can
go
play
with
it.
C
You
know
we're
really
curious
if
you
have
gone
through
any
any
development
issues,
while
you've
been
working
on
wasmcloud.
If
there's
just
an
error
that
you
saw
on
the
host
logs,
that
you
didn't
exactly
know
how
to
track
that
down
and
find
out
what
that
meant.
You
know
there
are
things
that,
since
we've
been
working
on
wasn't
cloud
for
so
long,
we
know
where
to
look
for
certain
errors
and
for
somebody
who's
coming
and
new
to
developing
actors
and
providers
on
wasmcloud.
C
We
want
to
have
an
easy
way
for
people
to
be
able
to
search
those
errors
on
our
documentation,
and
so
I
know
that
this
is
a
little
bit
of
a
tough
call
out,
because
it's
kind
of
asking
people
to
go
back
in
their
brains
and
figure
out
like
remember
if
they
had
anything
but
just
a
general
call.
If
you,
if
you
try
out
the
actor
testing
framework,
if
you
are
playing
with
unions
or
if
you
I
know
mats
and
a
couple,
other
people
in
the
community
are
starting
to
write
their
own
capability
providers.
C
If
you're
running
into
anything
love
to
hear
about
it
here,
I'll
probably
keep
this
open
I'll,
probably
mention
it
again
next
week
and
then
close
it
a
little
bit
later.
I
want
to
time
boxes
so
that
this
issue
doesn't
just
live
forever,
but
we'd
love
to
have
any
additional
feedback
that
you
have.
So
this
is
kind
of
just
an
open
call
for
anybody
in
the
community
to
give
us
some
feedback
or
drop
some
errors
that
you've
seen
we're
confused
about.
E
I
think,
but
it
was
yeah
I'll
describe
it
in
the
issue.
Perfect.
A
Already
knocking
it
out
wonderful,
any
any
other
additional
topics
that
we'd
want
to
explore
or
discuss.
Next.
A
Okay,
super
well,
I
think
that
may
be
it
for
wasn't
cloud
wednesday.
I
think
a
super
productive
meeting
today
and
a
lot
of
awesome
momentum,
for
you
know
things
in
the
ecosystem.
In
the
community.
We
have
a
ton
of
new
capability
providers
coming
online,
as
people
have
really
started
to.
You
know
continue
to
build
out
some
cool
things
and
I'm
super
excited
I'll,
go
and
stop
the
recording
here.
As
usual.
I
hope
everybody
has
a
wonderful
week
have
a
great
day.