►
From YouTube: /lgtm with Tremor
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
Hello
and
welcome
today
on
lgtm
we're
taking
a
look
at
the
tremor
project.
I
am
joined
by
two
fantastic
guests,
potentially
three
we're
still
waiting
to
find
out.
What's
going
to
happen
with
that,
can
we
start
off
with
a
little
bit
of
an
introduction?
Please,
let's
start
on
the
bottom
left,
we'll
start
with
you
matthias
and
then
we'll
move
over.
C
Yeah
hi,
I'm
matthias,
I'm
I'm
working
at
the
tremor
team
from
a
core
team,
so
to
say
I'm
basically
working
at
wave
as
a
wafer
sponsoring
our
open
source
work
had
tremor
and
open
sourced
it
yeah.
I'm
I'm
basically
doing
100
rust
all
day
and
it's
it's
a
lot
of
fun
and
yeah.
Let's
we
want
to
show
you
how
to
contribute.
D
Yeah
also
working
full-time
at
wayfair
on
open
source
and
tremor
interesting
enough.
It
was
through
a
conference
in
berlin.
What
was
that
about
two
years
ago
now,
matthias
yeah
or.
D
Found
us
we
were
announcing
the
project
as
open
source
and
in
the
fullness
of
time
he
actually
joined
us
full-time
to
work
on
the
project,
so
we
met
through
community
and
heinz,
and
I
also
met
through
the
airline
community
many
many
years
ago.
So
a
lot
of
the
origins
of
the
project,
even
though
it
started
inside
a
large
e-commerce
organization
actually
came,
came
from
community
and
relationship
built
through
open
field
points.
A
All
right,
thank
you
both
for
introducing
yourselves
so
before
we
begin
this
little
bit
of
housekeeping.
This
is
a
an
official
cncf
event,
so
the
code
of
conduct
is
an
action.
The
gist
of
it
is
please
be
nice
and
respectful
to
myself
to
the
co-presenters
and
to
everyone
in
the
chat.
Also,
kubecon
is
one
month
away,
kubecon
north
america.
D
Sure
so,
in
a
nutshell,
tremor
is
a
general
purpose
event
processing
engine,
so
we
are
generally
used
in
production
to
ship
or
distribute
data
from
a
to
b.
Traditionally,
in
terms
of
our
production
use
cases.
This
has
been
log
shipping
at
scale,
the
shipping
metrics
and,
more
recently,
we're
looking
at
the
search
domains.
D
Our
primary
purpose
is
to
do
this
with
a
high
quality
of
service
and
that
scale.
This
can
mean
very
different
things
for
very
different
use
cases.
So
we
also-
and
this
is
not
an
explicit
goal
or
not
something
we
try
to
improve
as
a
priority.
D
B
A
A
A
B
Oh
yeah,
yes,
hello,
I'm
heinz!
I
can't
deal
with
audio
and
video
on
linux.
Obviously
I'm
sorry
yeah
I
at
the
other
two
I
work
on
tremor
and
have
quite
the
fun
doing
that
when
the
audient
video
is
working.
B
E
A
E
A
Okay,
so
we've
already
had
a
quick
overview
of
of
what
trevor
is
and
do
we
really
want
to
cement
that,
with
a
couple
of
use
cases
that
maybe
either
you're
using
it
for
yourself
or
you've
got
you
know
other
customers
that
are
using
it?
For
I
don't
know
customers
and
open
source
users,
I'm
not
sure
what
the
best
part
is,
but
you
used
to
immerse
used
immersed
exactly
yeah.
B
D
B
Hopefully,
yeah
yeah,
basically
it's
they
use
it
mostly
for
ingesting
data,
so
getting
data
from
systems
from
software
that
sends
logs
from
files
pull
them
into
tram.
I
use
that
to
do
a
bit
of
pre-processing
and
clean
up
normalization,
all
the
funny
things
which
lets
you
you
can
do
when
you
process
the
data,
put
them
in
you,
unified
format
and
then
well,
send
it
off.
E
D
D
Match
and
pull
data
together
and
then
a
lot
of
the
connectivity
then
is
built
on
top
of
tremor,
which
is
a
low
code
environment
and
that
low
code
environment
is
built
on
top
of
rust,
which
isn't
either.
Of
these
things
definitely
a
very,
very
low
level
experience
as
we
have
come
to
learn
and
love
yeah
well,.
C
And,
what's
common
to
all
those
to
most
cases
is
that
tremor
is
really
kind
of
not
100
transparent,
but
a
really
fast
and
really
a
man
in
the
middle
of
like
and
doing
some
etl.
But
it's
fast,
it's
not
not
batching,
it's
really.
So
if
you
want
to
have
some
hop
in
between
to
control
your
data
flow,
this
this
is
where
trauma
shines.
C
A
A
Right
not
a
problem,
so,
let's
hop
over
here
I
have
the
tremor
website
here,
which
is
looking
nice
and
refreshed.
So
if
you
want
to
learn
more
about
trevor.
D
We
went
live
yesterday.
We
have
an
amazing
mentee
through
the
linux
foundation,
mentorship
program,
sharon,
big
wade,
sharon
redesigned
our
entire
web
design
and
delivery.
Experience
based
on
docusaurus
came
up
with
the
design
for
the
new
website
and
all
of
the
framework
elements
and
ported
in
all
of
our
old
content.
So
jared
became
our
newest
maintainer.
Yesterday
we
hope
it's
easier
to
navigate
than
the.
B
B
A
All
right:
well,
I've
also
got
the
repository
here.
So
one
of
the
things
we
like
to
do
on
lgtm
is:
can
I
give
people
a
high
level
overview
or
code
walkthrough
of
what
they
can
expect
when
they
come
to
the
project?
I
prefer
trevor
runtime,
which
I
believe
is
the
main
repository
and
the.
B
Organization,
oh
man,
repository
yep
and
nearly
all
the
code
lives
there.
So
we
don't
use
a
full
mono
repository
setup.
We
have
a
kind
of
in
between
where
it
made
sense
to
us,
where
the
all
the
code
that
isn't
primarily
built
to
share
lives
in
a
shared
repository,
which
is
the
tremor
runtime.
Where
you
look
at
and
with
shared,
I
mean
reused
outside
of
drama,
and
then
we
have
a
few
crates
which
we
felt
are
so
general
that
well
we
pull
them
out
and
put
them
into
their
own
repositories.
B
So
it's
easier
for
people
to
contribute
to
them.
Should
they
wish
to
and
contributing
to
tremor
starting
at
tremor.
Runtime
is
the
perfect
place,
and
if
you
scroll
through
it,
you
will
see
a
few
starting
point
repositories
and
they
usually
start
with
tremor
minus
something.
B
B
The
influx
line
protocol
pipeline
for
all
the
pipelining
code,
which
kind
of
underpins
most
of
the
communication
going
from
in
tremor
start
to
end
the
big
one
tremor
script,
where
a
lot
of
well
all
of
the
logic,
really
lives
when
it
comes
to
writing
scripts
or
pipelines
or
queries,
pipelines
is
overloaded
word
tremor
value,
which
is
the
abstraction
of
the
value
model
we
have,
and
basically
how
the
data
that
you
get
in
tremor
is
then
represented
in
memory
and
how
you
can
access
it,
manipulate
it
and
all
the
fun
things
and
source
which
well
covers
all
the
rest.
A
Perfect,
all
right
so
when
people
come
to
here,
they've
got
access
to
these
different
sub
projects
within
the
main
repository
where
they
can
begin
to
contribute
are
any
of
them
easier
from
a
perspective
of
someone
new
to
the
project
to
get
involved
with
than
others
like.
Would
they
dive
straight
in
the
trimmer
script
or,
as
it
maybe
makes
a
lot
of
sense
to
start
the
cli
or
something.
B
B
B
Cli
is
a
lot
of
boilerplate,
I
would
say
so
probably
easy
to
contribute,
but
not
the
most
fun
or
exciting
one.
Well,
at
least
for
me,
I
mean
some.
D
Tremorclife
would
be
great
if
you're
interested
in
programming
languages,
then.
A
A
B
Else
there
is
tremor
www,
which
is
the
documentation
repository.
Then
there
is
so
for
people
who,
like
design,
who,
like
tech,
writing
who,
like
we
learned
a
new
work
yesterday,
information
architecture
the
day
before
yesterday,
that
would
be
tremolo
www.
B
B
E
B
A
B
A
B
So
if
you
love,
building
containers
and
optimizing
them
and
making
them
awesome,
there
is
the
whole
docker
thing:
if
you
like,
rpms
and
debian
packages,
there
is
packaging.
If
you
know
how
to
compile
with
mozilla.
Please
help
us,
because
we
still
can't
get
that
running.
There's
ci
stuff
in
the
dot
github
part,
so
yeah.
A
Thank
you
now.
What
would
be
a
good
way
for
people
to
find
a
an
issue
to
begin
contributing
to
that,
assuming
that
they
maybe
they're
not
using
it
already
or
they're,
not
using
extensively
enough
that
they've
got
you
know
bugs
or
features
that
they
want
to
bring
to
the
project,
but
they
just
want
a
casual
meandering
way
to
find
something
to
work
on.
Do
you
have
any
just
labels
or
anything
like
that
that
people
should
be
aware.
B
Yes,
multiple
ones,
depending
on
what
you're
looking
for
so
one
thing
is
we
try
to
take
care
apart
in
all
cncf
mentorship
programs
that
are
around.
So
if
it's
time
for
that
look
on
the
cmcf
mentorship
website,
there
is
probably
a
tremor
project
or
to
advertise
there
in
which
we
then
can
donate
a
considerate
amount
of
time
in
helping
mentoring
in
that.
B
The
second
thing
is
issues.
We
have
the
very
common
good
first
issue
label,
which
is
the
first
place
to
look.
If
you
want
to
contribute
something
new
yeah
that
would
be
the
nice
one
in
what
is
it
aubergine?
B
A
B
B
A
Oh,
it's
all
good
okay,
so
I
have
already
conveniently
cloned
the
tremor
runtime
repository
to
my
local
machine
awesome.
I
don't
really
know
where
to
start-
and
you
know,
we've
got
all
these
subfolders.
I
don't
know
if
I
have
to
work
from
them
directly
as
they're
tooling
at
the
top
level.
Why
don't
you
give
me
a
little
bit
of
them
about
how
we
build
this
project,
then.
B
Yeah
so
since
it's
a
rust
project,
if
you
have
rust
installed
and
perhaps
cmake-
and
this
can
be
found
in
our
documentation,
what
exactly
you
need,
but
I
think
your
laptop
is
set
up
already.
It
is
as
simple
as
cargo
build
and
what's.
E
A
A
B
A
A
good
laptop!
Well,
I
hope
so
I
guess
the
important
thing
here
is,
if
you
have
worked
with
a
rust
project
before
the
tooling
is
all
going
to
feel
very
natural
and
there
you're
not
going
against
the
grain
too
much
you're.
Just
like
you,
said,
cargo
built
nice
and
easy
yeah.
B
So,
let's,
let's
leave
that
there
yeah
it
was
more
complicated
at
the
very
beginning,
but
we
tried
to
minimize
the
dependencies
to
well
what
is
really
needed
and
we
do
ship
with
a
dev
container.
So
if
you're
in
a
system
where
you
don't
know
where
to
start
and
use
vs
code,
it
will
ask
you
hey,
there's
a
dev
container:
do
you
want
to
use
that.
D
A
A
Yeah,
I
I
don't
know
if
it
is
just
my
mac,
but
I
can't
really
open
docker
at
the
same
time
as
I'm
streaming
like,
I
just
end
up
getting
infinite
beach
balls.
So
let's
not
do
the
dev
container.
A
B
We
actually
thought
about
something,
so
we
we
stole
an
issue
from
the
good
first
issue
list
and
removed
the
label
and
so
that
we
don't
run
into
the
situation
that
someone
steals
it
and
goes
to
work
on
it,
and
we
are
left
here
without
any
issue
to
work
on
and
we
have
obviously
cheated
and
prepared
the
solution
in
our
minds
so
that
we
are
not
like
wow.
How
do
we
do
this
now?
And
so,
if
you
go
to
issue
12
12.
A
D
A
A
B
So
so
stream
are
named
pipes
with
which
you
can
connect
different
select
statements
or
different
operators
in
a
tremor
pipeline,
and
this
is
all
nice
and
fun
as
long
as
you
give
your
stream
good
names
with
complexity,
you
get
into
the
point
where
you
might
have
10
streams
and
a
thousand
lines
of
code.
Hopefully
you'll
never
get
there.
D
D
So
this
breaks
one
of
our
primary
principles
or
goals
and
that
it
should
be
highly
usable
and
it
shouldn't
make
people
think
this,
unfortunately
forces
people
to
think
and.
D
E
D
D
So
but
it
really
does
impact
usability,
sometimes
we're
blind
to
usability
issues
because
we
mentally
work
around
them
and
we
need
people
with
fresh
eyes
to
tell
us
that
we're
wrong,
and
we
really
should
simplify
it,
because
it's
confusing-
and
this
is
a
great
example
of
where
we
didn't
do-
the
right
thing,
although
we
tried
to-
and
this
is
one
excellent
way
to
give
feedback
to
the
project-
is
tell
us
we're
wrong
politely
and
then
we'll
go
and
we'll
fix
it.
D
This
is
a
great
example
of
a
wonderful
way
to
contribute
is
to
suggest
a
fix
where
something
just
doesn't
feel
right
or
fit
right,
and
it's
slowing
you
down.
B
A
D
A
A
All
right,
as
my
mission
now
after
this
episode,
is
to
convert
everyone
to
the
way
of
the
right
hand,
side
sidebar
on
everything
anyway.
Sorry
to
do
this
w
there.
Where
are
we
looking
then,
to
make
this
change?
This
feels
like?
Maybe
it
should
be
in,
I
don't
know.
If
I
can
go,
am
I
going
to
guess
common
tremor
comment.
C
B
B
Well,
yes,
let's
start
with
the
tests,
we
have
a
folder
called
test.
Why.
D
D
B
Yeah,
so
so
you
have
this,
there
are
folders.
Like
query.
Query
error.
Query
warning
it's
it's
too
small
for
me
to
read,
but
this
is
what
I
remember
so
select
statements
and
statements
for
streams
are
at
the
query
level
right.
So
this
is
the
right
area
to
look.
B
We
want
to
test
for
an
error,
so
the
folder
we
would
be
looking
at
would
be
query
errors
in
there
we
have
a
nice
helpful
file
called
new.sage,
because
there's
a
bit
of
boilerplate
involved
that
we
don't
want
people
to
force
to
rewrite
over
and
over
again,
so
in
each
of
those
folders
we
have
in
ush,
which
you
could
call
with
the
name
of
the
new
test
case.
You
want
to
add.
It
makes
the
new
test
case
and
then
tells
you
which
files
to
edit.
B
D
A
B
D
B
A
B
Could
open
a
new
tap
yeah.
A
B
B
B
A
D
Yeah
on
this
on
the
terminal,
we
typically
on
the
interactive
command
line.
You'll
get
syntax,
highlighted
errors
so
that
it's
easy
to
parse
visually,
but
in
the
test
framework
we'll
remove
the
highlighting
so
that
it's
easier
to
assert
based
on
the
content.
B
D
Do
like
how
the
gentleman
with
the
cows
added
an
easter
egg
into
the
test
case
that
we
will
find
in
a
minute.
B
D
Might
actually
fire
off
another
build,
but
now
that
you've
run
the
build,
we
can
use
the
tremor
command
line
interface
to
run.
B
A
D
B
D
Yes,
and
the
great
thing
about
rust
is
when
we
went:
oh
rust
has
awesome
errors.
We
should
copy
what
they're
doing
that
was
three
years
ago
and
they've
obviously
been
improving
error,
hygienic
errors
and
rust
for
three
and
a
half
years.
So
as
we
just
about
got
to
their
level
of
awesomeness,
they
just
went
into
the
next
ballpark
altogether.
So
now
we
need
to
up
our
game
again.
A
B
Going
to
change
look
at
the
code.
Yes,
so
we
get
a
head
start
on
that
and
since
we
cheated,
we
actually
know
which
code.
That
is
all
right.
A
B
So
it
is,
this
is
about
the
scripting
language,
so
it
lives
in
tremor
script.
So
we
look
in
the
source
directory.
All
the
source
code
is
and
the
the
way
traverse
script
works
it
takes.
B
E
E
D
A
B
We
want
to
look
at
the
query
code.
We
look
at
the
folder
query.
B
D
Likely
incorrectly
moments
ago,
and
as
this
is
live,
I'm
going
to
own
up
to
it,
whereas
we
don't
want
to
change
the
runtime
here,
because
it
makes
more
sense
for
this
fix
for
this
error
to
happen
at
compile
time,
we
have
all
the
information
in
front
of
us
so
that,
as
you're
trying
to
compile
this
script,
we
can
give
you
a
good
hygienic
error.
So
we're
going
to
be
changing
the
raw
ast
before
we
optimize
it
for
execution
rather
than
the
runtime
one.
D
C
B
So
that
the
user
that
writes
this
gets
told
hey
something,
doesn't
work
and
doesn't
need
to
have
this
error
when
he
is
on
a
live
system
or
she
is
on
a
live
system
so
and
you're
already
at
the
right
place.
You
see
the
implementation
for
query
raw
right
there
and
there
we
have
a
function
called
upscript,
where
we
are
still
looking
for
better
names.
It
basically
updates
up
the
script
from
the
raw
to
the
non-raw
version.
B
B
And
this
is
where
we
can
just
iterate,
so
the
solution
we
magically
came
up
with
over
the
last
days,
while
we
looked
at
the
issue
and
absolutely
didn't
prepare
this
at
all
was
using
a
hash
set,
which
is
basically
a
set
implementation
and
rust
to
track
all
the
streams
that
already
exist.
A
Okay,
so
I'm
assuming
and
this
four
loop
we
can
have
access
to
the
tokens
within
the
statement.
A
B
So
we
can
use
a
nice
shortcut
that
rust
provides
with
this
e-flat
and
we
can
do
an
flat
and
now
we
can
match
against
something,
and
we
want
the
raw
statement
stream
statement.
So
raw
statement,
raw,
sorry,
stmt
raw,
you
can
cheat
in
line
63.
We
match
against
the
module
statement
already,
so
we
want
to
match
against
the
raw
statement
here.
Yes,
colon,
colon
and
stream.
B
So
now
comes
the
block.
This
basically
is
execute
this
block.
If
e
happens
to
match
the,
how
did
you
do
that?
That
fast
did
you.
A
B
B
B
B
Is
the
generic
error,
generic
error,
which
basically
is
print
a
string,
but
since
we
want
to
have
hygienic
errors,
meaning
errors
that
point
to
the
right
place
in
code?
You
need
to
provide
generic
error.
What
this
code
is
and
this
you
can
do
by
simply
see
I
hate
this
word
by
pointing
at
the
token.
So
if
you
put
ampersand
s
in
here,
it
will
point
to
the
statement.
E
B
And
then
the
second
one
ampersand
s
again,
so
it's
outer
and
inner.
If
we
have,
for
example,
a
co.
D
If
we
could
identify
the
name-
which
I
think
is
s
dot
id,
we
can
use
that
as
the
inner
and
it
will
narrow.
D
D
We
have
a
bother
a
bunch
of
other
information
that
you
won't
see
in
these
script,
where
we're
processing
the
nodes,
but.
D
B
B
That
it
is
scary,
so
inline
64
it
should
be
s
dot
id,
not
s
dot
name,
as
that
name
doesn't
exist.
B
A
Okay,
so
let's
jump
over
here
and
we
got
a
failed
test
run.
I
guess
we
expected
that.
B
B
It
will
tell
us
what
it
expected
as
an
error
and
what
it
got
as
an
error
if
you
look
quickly
at
line
three
of
your
terminal
as
set
expected
error,
but
got
a
success.
Yes,
since
when
you
run
the
tests,
we
had
the
error,
the
bug
that
the
error
was
an
error
so-
and
this
is
getting
confusing
the
test
error,
because
there
was
no
error
which,
for
error
test
is
a
error.
B
D
E
D
B
B
Which
is
super
convenient,
there's
also
a
err
underscore
generic
which
doesn't
return
the
result
struct.
So
it's
a
50
50
chance
with
chance
chance
which
one
you
use.
B
The
trade
bound
yes,
and
so
in
the
where
we
did
it
slightly
different
in
our
preparation
that
we
absolutely
didn't
do
is
we
executed
this
code
in
line
73
after
updating
the
statement
and
not
matching
against
the
raw
statement?
B
So
if
you
were
to
move
the
whole
block,
63
67
down
to
line
73
well,
not
anymore
73.
Now
it's
69.
B
In
between
technically
so
both
works,
because
we
need
to
pull
the
other
dot
up
in
front
of
it,
and
this
is
where
you
see
this
call
to
up
where
we
don't
have
a
nice
name,
because,
right
now,
it's
a
raw
e
is
a
raw
statement
or
other.
Here
is
now
a
raw
statement
and
with
calling
up,
we
turn
it
into
a
non-raw
statement.
B
B
Yeah,
so
now
we
just
split
the
logic
of
this
into
the
one
is
push
the
statement
and
the
other
is
updated
from
a
raw
statement
to
a
non-raw
statement,
and
then
you
technically,
this
would
still
work.
If
you
now
use
s
f
in
the
in
line
72
instead
of
s,
but
the
nicer
one
would
probably
be
to
match
against
f
instead
of
e
in
line
7.
D
Now
it
will
interestingly
single
letter.
Names
are
something
we
need
to
revisit,
for
example,
with
rust
when
naming
lifetimes,
a
lot
of
the
rust
documentation
will
use
single
letter
lifetimes
like
a
and
b,
and
we
could
never
remember
which
lives
longer
or
which
doesn't
live
as
long
because
those
names
didn't
mean
anything
to
us
based
on
the
semantics
of
the
code,
so
we
tend
to
use
words
like
script
or
event.
Obviously,.
D
Than
the
event,
and
that
to
us
is
more
usable
and
easier
to
remember
and
easier
to
forget
so
that
when
we
read
it
later,
we
immediately
understand
it
and
we.
B
D
C
C
B
B
That
just
points
to
the
right
metadata
and
an
ampersand
in
front
of
the
string
because
it
can't
be,
but
this
has
to
do
with
what
we
pass
in.
This
is
a
the
generic
type
that
we
pass
in,
so
you
could
use
a
string
string
and
you
have
to
pass
in
a
reference.
Otherwise,
there
are
issues
with
the
size.
B
Yeah,
that's
that's
a
common
thing
if
you
have
a
generic
function
that
takes
a
argument
that
implements
a
certain
trait
and
this
time
it's
the
two
string
state.
Sorry
type
trade
good,
my
mind
is
broken.
It
uses
a
two
string
trait
and
you
see
s
to
string
and
you
want
to
pass
in
a
still.
You
have
to
pass
in
a
ampersand
style,
so
a
pointer
to
or
reference
to
this
string
in
memory,
because
this,
if,
if
it's
generic
function,
what
gets
passed
it
needs
to
be
some
kind
of
reference.
So
it
knows
the
size.
B
Okay,
being
a
reference,
looks
good.
D
D
Is
it's
hard
on
developers
while
we're
developing,
but
it's
awesome
to
disadvantage
and
everyone.
B
Yeah,
that's
a
warning:
let's
see
if
it
fails
first
and
then
we
can
rename
it
otherwise.
You
have
to
wait
again
for
100
million
years
until
it
compiles.
D
D
B
D
Of
those
conversations
because
russell
wins
and
it
frees
up
so
much
time
and
mental
bandwidth.
D
B
B
But
it's
a
good
practice
to
batch
up
errors
if
you're
doing
something
like
that,
so
not
cancel
the
build
after
the
first
error
you
see
but
wait
for
it
for
until
you
see
all
the
errors,
so
you
can
patch
them
in
or
fix
them
in
one
go
and
don't
have
to
compile
all
the
time.
The
alternative
is
get
a
threadripper
cpu.
B
B
B
B
We
don't
know,
probably
because
we
allow
printing
errors,
single
line
and
multi-line
and
we're
too
lazy
to
make
an
if
statement
for
multi-line
errors
that
it
then
won't
add
the
space.
D
Awesome
you
just
made
tremor's
query
language
stricter
in
a
wonderful
and
more
usable
way,
so
now
we're
now
we're
getting
there.
We
can
see
the
modified
code.
The
next
thing
we
would
probably
do
is
to
do
a
check
that
all
the
linting
passes.
So
the
cargo
clippy
minus
minus
all,
add
an
item
to
the
change
log
and
saying
we
fixed
an
issue
and
we
increased
the
strictness
of
the
query
language
for
duplicate
stream
names
and
it's
ready
for
a
pr.
E
B
D
Yeah,
that's
awesome
all
right.
Let's
just
check.
D
D
So
all
of
those
automated
tasks
will
execute
on
the
pr.
Don't
worry
if
you
miss
any
of
them.
We
don't
worry.
If
we
miss
any
of
them,
it
will
catch
anything
that
you
miss
and
you
can
just
update
and
push
again
onto
the
pr
and
eventually
those
tasks
and
checks
will
go
green
and
that's
pretty
much
yeah.
Okay,
yeah.
B
B
You
can
also
make
it
nice,
so
we
have
an
rfc
process
which
for
larger
changes,
we
ask
people
to
file
rfc.
They
live
on
the
website
too.
This
isn't
rfc
worthy
because
it
fixes
a
bug.
Not
every
bug
needs
an
rfc,
so
you
can
just
throw
this
out
or
leave
it
empty.
E
D
Then
it
doesn't
need
an
rfc,
but
a
major
change
to
the
language.
A
major
change
to
the
runtime.
Anything
that
would
be
not
binary,
compatible,
gets
an
rfc
and
goes
into
an
open
review
process.
So
the
community
has
time
to
feed
it
back
in
our
governance
and
in
our
documentation.
We've
said
that
this
open
review
is
two
weeks
for
projects
that
take
longer
than
two
weeks
we're
thinking
of
just
keeping
it
open
for
review
until
it
gets
to
the
point
where
it
gets
murdered.
E
C
C
D
And
to
widen
the
review.
A
B
Yes,
and
no
so
we
require
performance
benchmarks
for
changes
where
it's
impactful,
meaning
it
is
on
the
hot
path
for
an
event
going
through
the
pipeline,
and
I
hope
we
spelt
this
out
in
this
text
well
enough
that
it
would
be
understandable
for
someone
but
I'll
sum
it
up.
We
care
a
lot
about
performance
and
that
tremor
is
fast.
B
So
when
we
change
something
that
touches
the
hotpass,
we
try
to
run
benchmarks.
A
first
step
is
well.
If
you
make
a
pull
request,
run
a
benchmark
if
it
doesn't
work
on
your
machine
or
you
need
help
ping's
one
of
us,
and
we
will
do
it
for
you.
We
have
a
set
of
benchmarks.
You
can
run
there's
a
bench
folder,
there's
a
cli
tool
which
runs
benchmarks,
but
for
most
pull
requests.
It's
enough
to
mention
either
delete
it
and
we
will
see
it
ourself
or
mention
why
you
don't
run
benchmarks.
D
B
Don't
need
a
performance,
we
don't
need
it.
If
you
would
want
to
make
a
very
perfect
in
quotes
or
elaborate
pull
request,
you
would
put
something
in
we.
This
happens
during
compile
time,
no
hot
code
impact.
If
it's.
B
A
Okay,
so
we're
looking
at
the
pro
request
process
here,
it's
told
me.
I
should
probably
update
the
changes.
B
B
D
A
bug
fix,
okay,
we
know
some
projects
are
super
strict
on
having
individual
prs.
D
You
find
a
few
typos
along
the
way,
fix
them
and
yeah,
and
we
will
see
that
you're
fixing
typos
as
well
and
we'll
bless
them.
We
love
those
little
fixes.
We
do.
D
Little
keyboard
typos
mistakes,
everyone
does
so
we're
not
super
strict
on
those,
and
if
you
see
a
few
and
you
decide
to
pick
them
off
along
the
way,
we're
happy
to
just
merge
them
straight.
I
know.
C
D
Projects
like
all
of
these
like
neatly,
separated
we're
a
little
bit
more
relaxed
on
those
little
things.
D
A
D
There's
no
one's
name
code
in
in
this
code
path.
You
could
say:
we've
reasoned
about
it,
so
I
would
check
that.
B
Yeah,
but,
but
generally
what
we
do
if
you
leave
this
open,
something
like
the
rfc
required.
If
you
want
to
check
it
off,
because
you
say
there
isn't
one,
you
can
check
it
off.
If
we
see
it
in
there
in
a
pr
that
isn't
requiring
an
rfc,
we
will
check
it
off
for
you.
But
if
you
check
it
off,
you
get
the
review
quicker,
because
we
see
okay,
six
out
of
six
checklist
items
are
done.
A
B
Yeah
yeah,
so
we
know
that
the
ci
will
fail
on
this
one,
because
you
got
a
warning
and
we
don't
allow
warnings.
So
we
can
wait
now
until
the
ci
fails
or
we
can
already
do
the
fakes
and
be
sneaky,
because
if
you
do
cargo
check
minus
minus
all
you
will
see
that
it's
like!
Oh,
no.
D
A
A
B
You
fixed
our
tremor,
so
so,
what's
the
next
ticket
you're
working
on.
D
A
A
E
A
All
right
well,
thank
you
all
for
joining
me.
That
was
a
great
fun
getting
an
introduction
to
tremor
looking
at
how
we
can
contribute
to
a
rust-based
project
as
well
as
no
good
contributions
to
the
website
and
the
documentation.
So
hopefully
people
have
their
interest
peaked,
I'm
sure
they
can
reach
out
to
you.
You
have
a
very
active
discord
server
as
well.
That's
listed
on
the
tremor.rs
website,
so
people
should
just
come
and
say
hello,
get
involved,
yeah.