►
From YouTube: FE Pairing - 20200918 - Let's Review some MR's
Description
In this pairing session we walk through reviewing some MR's together.
00:00:00 - Start
00:01:07 - Start reviewing ["Remove unused HAML"][1]
00:15:30 - Create [follow-up MR][2]
00:19:30 - Start reviewing ["Add info_line"][3]
00:48:45 - Start reviewing ["test for vscode extension"][4]
[1]: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/42210
[2]: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/42713
[3]: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/42443
[4]: https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/merge_requests/97
A
Start
recording
and
I'm
gonna
start
sharing
my
screen,
so
I
have
a
number
of
merge
requests,
reviews
to
review
and
jose
has
gracefully
offered
to
pair
with
me
on
it.
I
haven't
ever
done
this
before,
so
I'm
looking
forward
to
it
same
yeah.
A
So
let's
do
I
did
just
get
back
on
this
one
and
that
one
is
and
the
pipeline's
running
so
that
one
should
be
fine.
I'm
just
gonna
go
up
and
we'll
check
it
out.
Oh,
this
would
be
really
cool.
This
has
to
do
with
the
vs
code
extension
and
I
haven't
even
checked
out
the
vs
code
extension
at
all,
so
that
would
be
really
cool
I
kind
of
but
I'll.
Let
you
see
I'll.
Let
you
pick
one
of
these.
If
you
think
here's
one
about
removing
unused
handle
templates,
that
sounds.
A
I'm
down
to
whichever
you
want:
okay,
let's:
let's
save
this
really
interesting,
one,
we'll
we'll
wet
our
review
appetite
and
then
we'll
let
the
the
we'll
save
some
of
these
that
vs
code
one
for
later.
Okay.
So
let's
check
this
out
all
the
hammel
templates
under.
A
B
A
A
The
only
thing
we're
really
concerned
about
is:
do
we
have
any
references
to
this
thing
so
one
way
of
doing
that
is
yeah.
I'm
just
gonna
check
out
the
branch
and
search
for
these
references.
I've
got
something
else
running
right
now,
but
I'm
gonna
dash
that.
A
And
I
have
a,
I
have
a
script
that
I
run
that
just
takes
all
of
the
merge
request
changes
and
put
puts
it
in
staged
files.
So
I
can
just
look
at
it
from
right
here
to
see
what's
actually
changing,
okay,
interesting,
but
it's
taken
some
time
which
is
unusual.
B
A
A
Lots
of
branches
and
yeah
you're,
probably
right
gosh.
I
don't
know
why
it's
taking
so
long.
Oh,
it's
auto
packing
repository
in
the
background
for
optimum
performance.
This
doesn't
really
feel
like
it's
in
the
background.
You
know
because
in
the
background
it
will
let
you
I.
B
A
Yeah
that
was
a
little
weird,
so
anyways
yeah.
I
remember
adding
this
warning,
so
I'm
surprised
to
see
that
commit
widget
isn't
used
anymore
yeah.
It's
just
the
view.
Part
is
used.
A
B
Yeah,
it's
not
even
used,
let's
probably
say
that
that
needs
to
be
deleted.
A
I
would
say
that
could
be
deleted
I'll,
go
ahead
and
make
another,
and
this
doesn't,
I
would
say,
I'm
not
going
to
block
emr,
because
we
didn't
delete
everything
we
could
have
deleted,
but
I
will
delete
it
and
make
note
of
that
change
so
that
we
can
even
open
up
his
follow-up
that
march
make
more
deleting
of
stuff.
B
No
idea
what
this
file
is
well,
it's
just
on
the
comment
at
the
top,
but
basically
hamline's
creates
a
bunch
of
to-do
items.
Okay,
so
in
case
you
were
skipping
on
your
hammer.
Linter
hamelin
to
do
basically
keeps
track
of
all
the
things
that
you
skip
rules
on,
so
we
can
come
back
to
it
later
and
fix
it
okay,
but
we
got
rid
of
this
so
yeah,
probably
in
the
next
hamlet,
probably
a
master.
B
A
Okay,
this-
this
is
a
little
scary,
this
one
this
is
called.
A
Diffs,
so
one
way
to
see
that
I
would
test
if
this
hamill
thing
is
rendered
is
adding
a
string
ending
thing
to
it
and
looking
for
all,
but
this
is
such
a
broad
word
that
yeah
it's
gonna
be
hard
to
find
it.
I
could
also
add
a
render
thing
in
front
of
it.
A
Diff
steps-
maybe
I
could
see
hey,
do
we
ever
do
a
diffs
thing
from
within
a
diffs
thing.
B
You
can
exclude
them
if
you're,
not
interested
in
the
view,
stuff
just
say
fail
to
exclude,
and
just
oh
you're
right,
you're
right
there
it
is
yeah.
I
could
do
that.
B
A
C
A
B
Okay,
let's
take
a
look
real,
quick
see
if
there
is
the
rule
there
just
to
make
sure
of
the
I
just
I'm
just
curious
if
there
is
like
a
on
that
div
from
the
merch
request,
if
there
is
an
actual
hammer
lens
like
oh
there's,
not
a
hamelin
disable,
I
thought
if
there
was.
Let
me
see
if
I
look
for
land.
D
A
That's
strange
yeah,
I
don't
know
cool
well
yeah,
so
why
are
we
okay?
Removing
these?
I
guess
the
only
place
they
were
used
was
were
here,
and
maybe
that
was
why
that
was
the
prompt
for
removing
yeah
someone.
It
looks
like
robert
was
looking
at
removing
fa
times
and
stuff
and
then
so.
C
A
A
B
A
What
do
you
think
can
we
can
we
really
get
is
is
searching
for
fa
times
enough.
Do
I
have
to
like
look
for
like
icon,
remove
or
something
I
don't?
I
don't
think
so
because
yeah,
because
we
do
this
fa
icon
exactly
so.
If
I
do
like
icon,
I
don't
I'm
not
I'm
looking
for
mainly
just
like
in
hamel
or
ruby
or
something
here
we
do
the
sprite
icon.
A
D
B
I
the
only
thing
that
I
would
do
yes
container
before,
because
this
also
looks
good
to
me,
but
I
will
run
it
as
run
as
if
foss
that's
the
command.
B
A
A
We're
recording
this.
We
are
recording
yeah,
but
I'm
not
gonna.
Thank
you
for
stopping
me,
but
I
should
be
oh
yeah.
I
was
about
to
show
the
all
right.
I'm
gonna
stop
sharing
my
scream
with
us.
A
Thank
you.
I
appreciate
it
and
yeah.
I
don't
know
what
I
was
thinking
about
doing
all
right,
I'm
filling
in
our
qa
thing,
all
right.
There
we
go,
it's
been
filled
in
and
one
password
is
closed
and
I'm
looking
for
one
with
the
merge
request.
A
Cool
yeah,
I
guess
our
feature
flag
for,
like
view
divs,
I
guess
it's
been
removed
now
yeah.
Let
me
just
double
check
too,
like
if
we're
doing
a
feature
for
diffs.
A
A
This
looks
good
to
me
and
adding
looks
good
to
me.
Jeff
sonic,
the
hedgehog
sounds
cool,
proving
and
going
to
run
as
if
us
for.
B
A
Yeah
definitely
cool
that
is
exciting.
This
is
this
was
an
awesome
merch
request
to
start
with,
I'm
gonna
approve
this
and
re-run
the
pipeline.
That's
all.
I
need
to
do.
Yeah,
okay,.
A
B
I
mean
I
mean
like
yeah,
but
you
have
the
div.
What
do
you
mean
you
already
have?
Which
file
needs
to
be
changed,
so
you
just
need
to
submit
a.
A
Comment,
well,
I
don't
want
to.
Oh
you
mean
I
could
just
change.
B
It
here
yeah,
but
well,
not
not
there
like
creating
a
new
merch
request,
but
only
with
that
change.
Oh
yes!
Yes,
that's
what
I'm
gonna
do?
Yes,
yes,.
A
Yeah,
okay,
I'm
re-running!
This
thing
great,
I'm
just
gonna
approve.
D
A
A
Maybe
I
should
have
waited
till
after
the
release.
We
can
always
revert
this,
though,
because
we
are
using
source
control
and
that's
a
good
thing
to
remember:
yeah
cool,
that's
great,
while
we're
here
yeah.
Let
me
go
ahead
and
make
this
commit
to
remove,
remove
unused
helper.
A
Yeah,
I
don't
need
this
commit.
I
don't
even
need
to
commit
body.
It's
only
like.
I
don't
know
three
lines.
Yeah,
I'm
gonna
create
a
new
branch.
I'm
gonna
check
out
what
branch
was
I
on
previously?
Oh,
no.
I
have
too
many
branches.
A
Oh
I
have
a
okay
delete
unused.
This
is
it
boom.
A
D
All
right
there
we
go.
D
A
A
Let's
see.
Oh,
I
left
I
must
have
left
the
patch
okay
yeah
this
one.
This
one
is
not
a
fresh
one
and
I
just
left
some
really
small
things
and
I'm
pretty
sure
it's
good
to
merge.
So,
for
the
sake
of
keeping
our
time
interesting,
I'm
not
like
this
isn't
interesting,
but
I'm
gonna.
A
A
Okay,
so
I'm
going
to
go
to
the
next
one
here
this
was
a
13.5
one
is
any
other
13.4
ones.
I
mean
we
already
yeah
we're
technically
already
in
you
know,
yeah
you
bring
up
a
good
point.
This
one
has
been
waiting
for
a
little
bit,
so
I
am
going
to
check
out
this
one.
A
All
right,
oh
cool.
I
just
got
this
thing
going:
remove
unused
helper
while
reviewing.
A
So
I
like
to
keep
my
like
things
that
I'm
waiting
for
I
kind
of
push
them
over
here.
In
my
browser
I
have.
I
have
two
buckets.
I
put
my
tabs
in
and
they're
separated
by
my
email
and
slack.
I
put
all
the
things
I'm
waiting
for
to
the
left
and
the
things
my
active
tabs
over
here
to
the
right.
While
reviewing
this,
I
noticed
you
notice.
There
was
a
helper
that
isn't
being
referenced.
A
It
and
I
don't
need
anything
else
there.
This
is
back
end.
Is
this
feature
maintenance?
Now?
Yes,
I
think
so.
Okay
and
I'll
put
in
my
group
are
we
in
13.5
now.
B
D
A
Cool
submit
that
and
we'll
wait
for
our
review
bot.
To
give
me
a
reviewer.
A
A
B
A
The
gear
there
you
go
yeah,
that's
why
I
have
a
tough
time
with
it,
but
still
now
it's
like
just
so
small.
B
A
Like
the
file
browser
that
I
do,
I
do
like
seeing
that
okay,
I'm
going
to
try
to
do
it
in
here
and
if
I,
if
you
start
seeing
me,
get
upset,
then
I.
A
Yeah
something's
wrong
with
me:
I'm
having
a
hard
time
reading
it
so
we're
adding
a
no
see.
So
this
will
bother
me.
I
can't
even
see.
If,
like
are
we
getting
a
computed?
Are
we
adding
a
method?
I
don't
know
all
right,
I'm
checking
it
out.
I
know
I
could
expand
this
stuff.
A
B
Okay,
that
race,
small
concern
of
mine.
Why
are
we
removing
it.
A
Yeah
info
messages,
we
are
adding
a
computed
and
I
imagine
yeah,
I
imagine
title
area
is
now
doing
the
sprint
f
stuff,
and
so
this
is
just.
A
Okay
over
here
we
were
doing
all
the
info.
Let
me
check
out
title
I'm
gonna
plan
on
coming
back
to
that,
but
yeah.
Let
me
check
out
title
area.
A
Okay,
so
one
so
one
interesting
thing
that
I
like
to
do
when
we
have
like
a
block,
that's
clearly
moved
from
one
place
to
another
place,
is
I'll
use
vemdif
to
compare
the
two
blocks
side
by
side.
A
But
that
might
be
a
little
overkill
right
now.
I
do
want
to
kind
of
understand
what's
going
on
here
previously,
so
it
looks
like
at
the
bottom
of
all
this
stuff.
Oh
no.
This
is
just
rendering
just
the
title
area,
so
yeah.
This
is
saying
there
should
be
no
visual
changes.
A
A
D
B
B
A
So
previously
we
had
a
span,
and
we
did
this
sprint
f
thing
and
then
loaded
it
through
there.
Yep
passing
of
the
dock
link
it
looks
like
docklink
is
the
only
variable
to
our
message,
but
then
we
had
it.
We
could
also
show
another
message
here
with
another
span.
A
But
we
moved
our
oh
yeah,
we
we
okay,
we're
still
importing
these
messages,
but
we
moved
them.
We
don't
have
to
expose
them
to
the
template
anymore,
which
is
cool
it's
nice.
These
are
still
coming
from
doc,
link
geo
link,
target
blank
content,
href
message,
dot,
link,
yeah
that
that'll
and
it's
expiration
policy,
help
page
path.
Okay,
that
all
sounds
nice
I'd
like
to,
I
think,
also
looking
at
the
tests
and
seeing
how
the
tests
have
changed
would
be
helpful
at
just
confirming
that
that
this
is
done.
But
this
this
makes
sense.
A
B
I
mean
we
should
probably
ask
for
your
screenshots,
because
paragraphs
sometimes
have
some
other
kinds
of
styles.
They.
A
B
A
A
A
And
then
there's
another
oh
gosh,
I
can't
say
sorry
to
interrupt.
B
I'll
be
right
back!
Oh
no,
you're,
good.
A
A
It
now
that
we
only
have
title
area,
we
probably
don't.
A
A
C
A
A
A
Nope.
I
don't
see
anything
there
yeah,
let's
check
out
these
tests,
I'm
going
to
close
this
stuff
out.
I'm
done
with
it.
A
A
Messages-
this
is
the
header
which
now
does
not
have
an
info
area
anymore,
because
we
are
just
passing
him
along
to
title
here.
A
I
am
gonna
leave
a
comment
that
so
doing
an
expectation
on
a
knot
like
knots
are
very
permissive,
which
means
that
it's
really
easy
to
end
up
getting
a
false
positive.
A
So
I'm
going
to
watch
this
and
I'm
going
to
see
what
happens
if
I
change
it
to
a
2
equal
because,
even
though
we're
expecting
something
to
not
exist,
it's
nice
to
still
capture
what
actually
does
exist
unless
you're
really
doing
like
this
component
doesn't
exist
or
I've
actually
like
have
a
finder
and
it's
unchecking.
A
This
thing
in
like
multiple
places,
and
I
see
that
we're
kind
of
doing
the
same
thing
here,
but
still
there's
like
some
coupling
here
to
the
point
where
like,
if
I
had
just
called
this
title
instead
of
text,
which
is
very
subtle,
this
is
always
gonna
pass,
which
is
not
great.
A
D
A
A
A
Okay,
but
over
here,
instead
of
doing
the
two
equal
array
containing,
let's
actually
just
assert
expiration.
A
This
I
think
I
made
jose.
I
think
I
bored
him
out.
Oh
hey,
I
was
just
talking
about
you
yeah
there
you
go.
I
was
saying
I
think
I
I.
B
Think
I
really
bored
jose.
No,
I
I
just
really
needed
to
attend
something.
Oh
no,
you're,
fine,
you're,
fine
jose,
is
like
I
needed
to
step.
A
Away
from
this
guy,
because
I'm
joking,
no,
what
what
I
just
done
here
was
previously
we're
doing
the
this,
this
expectation
to
say
hey.
We
expect
us
to
not
equal
that
we're
containing
this,
and
this
is
like
a
super
permissive
expectation,
because
if
I
had
even
like
typoed
something
here,
it's
not
it's
gonna
pass
like
there's
very
rarely
will
it
not
pass.
We
were
like.
We
did
then
copy
these
lines
down
here.
A
A
If,
if
you
can-
and
I
think
we
can
in
this
place,
I
think
it
makes
it
a
bit
more
more
helpful.
So
that's
the
comment
that
I'm
gonna
leave.
Oh,
it
looks
like
we've
done
it
a
couple
of
other
times
too
over
here,
yeah
and
we'll
just
do
the
same
thing
here
too
yeah.
So
we're
doing
this
not
to
equal
thing
and
I'm
suggesting.
Let's
just
keep
it.
C
A
A
Let's
just
do
it
when
the
expiration
is
message
does
not
exist,
message
does
not
exist.
This
is
when
it
does
exist,
and
here
he
says
when
there
are
no
yeah.
This
is
the
same
thing
as
messages
not
exist
yeah.
So
let's
do
this
that'd
be
fun.
That
might
be
a
nice
thing
to
leave
fine.
So
the
way
that
I
would
do
this
since
we
do
have
like
some
descriptions
and
stuff
here,
I
I
usually
have
a
description
as
one
of
the
parameters
to
my
parameterized
spec.
A
A
Yep,
when
expiration
policy
is
enabled
message
does
not
exist,
and
the
props
are
I'm
going
over
here
and
just
copy.
What's
inside
here.
A
Oh
delete
to
the
word:
yup
join
that
cool,
okay,
and
so
here
is
when
I
would
I'm
going
to
put
my
description.
A
A
I
think
maybe
would
we
expect
this
one
to
be
false,
because
I'm
looking
at
yeah
here
with
these
two
props,
it's
not
showing
up.
So
why
would
adding
another
prop
make
it
show
up?
Let
me
let
me
run
this
double
check
that
I
didn't
break
anything.
B
A
B
C
B
A
Very
smart
observation:
yes,
we're
trying
to
capture.
It
looks
like
we're
trying
to
capture
this
condition,
so
let's
double
check
that
we've
done
that
this
is
going
to
be.
We
want
to
see
when
this
is
true.
It
is
so,
if
we're
not
enabled.
A
B
A
Yeah,
so
what
is
the
case
that
makes
it
true?
This
case
makes
it
where
it
does
show
up.
So
then
I
want
to
just
flip
the
other
bits.
I
want
to
do
one
where
images
count
and
that's
what
this
one
is
checking
over
here.
I
want
to
do
one
where,
when
there
are
no
images,
when
there
are
no
images,
so
I
want
to
do
it
where
it
was
false,
but
image
count
is
zero,
like
that
one
should.
A
Pass
yep
yeah
and
if,
if
I
was
gonna,
do
this
really
well
like?
I
would
also
like
to
put
in
here
like
here's.
The
expectation
like
these
are
the
ones
the
values
I
expect.
I
expect
it
to
sometimes
show
it
up
and
of
expected
not
to,
and
then
it
makes
it
so
obvious
of
here's,
the
one
that
works
and
then
did
we
check
it
out
when
we
flipped
the
other
bits
that
it
doesn't
show
up.
A
So
I,
but
I'm
concerned
about
how
long
this
line
is
getting
right
now,
so
I
don't
want
to
totally-
and
I
don't
want
to
spend
too
much
time
on
this,
so
I'm
gonna
just
leave
these
descriptions,
but
I
did
catch
like
this.
A
One
is
only
helpful
if
I,
if,
if
we've
done
false
and
one
and
checked
this
one-
and
I
think
it's
worth
and
that's
something
that
showed
up
because
we
moved
it
to
parameterize
spec,
I
think
that's
worth
bringing
up
so
I'm
gonna,
I'm
gonna,
bring
it
up,
but
I'm
gonna
delete
this
one
because
we've
captured
that
now
the
way
I
do
this.
Yes,
let
me
check
here
so
I've
left.
A
Yeah
it
looks
like
this
is
the
only
thing
I've
done
so
I
usually
will
just
get
diff
oops,
I'm
not
doing
this
right.
I
usually
just
get
diff
this
and
I
just
copy
the
patch
to
my
clipboard
and
paste
it
in
the
comment.
Does
that
seem
helpful
to.
A
A
Okay,
I'm
gonna
leave
a
suggestion.
It
looks
like
this
test
for
hyde
expiration
policy.
Data.
True
is
only
helpful
when
enable
is
false.
A
B
B
I
keep
forgetting
that
about
the
details,
jack
the
details
tag
I
do
or
you
do
no.
I
I
tend
to
forget
about
that.
A
Yeah,
I
I
find
it
to
be
helpful
of
reducing
some
noise,
but
I
don't
I
don't
do
it
all
the
time.
Sometimes
I
go
really
far
and
I'll
say
and
I'll
add
below
this
and
I'll
say
you
can
apply
this
patch
by
running
like
by
copying
it
to
your
clipboard
and
like,
but
I
I
think
I've
already
sent
patches
to
robert.
If,
if
I'm
not
sure
someone
you
know
has
used
patches
before
then
I'll
just
leave
it
once
I
usually
do
that
for
like
community
contributors
or
something.
A
This
is
what
bothers
me
with
the
parallel
view,
because
I
think
I
really
wanted
to
comment
over
here.
Is
it
going
to
comment
in
this
in
the
scene?
Yes,.
A
Okay,
all
right
cool-
I
am
while
we're
here.
I
am
super
stoked
about
the
test
coverage
and
stuff
that
we've
done
with
this.
So
I'm
gonna
leave
a
oh,
but
I
also
forgot
to
mention
oh
yeah.
A
Does
this
patch
do
previously,
we
were
doing
a
not
too
equal
expectation.
A
This
is
a
very
permissive
expectation
and
can
be
vulnerable
to
false.
Positives
looks
like
we
can
strengthen
our
test
easily
by
using
two
equal.
A
Awesome-
and
so
this
is,
this-
is
nice,
oh,
this
is
beautiful,
describe
and
shows
a
message
when
the
props
contains
one
find
info
messages.
Oh
yes,
oh
nice
to
have
length
and
it's
fufu
bar
bar.
A
Yeah,
how
do
you
feel
yeah?
This
looks
good
to
me.
Okay,
I
have
a
this
is
one
of
those
cases
where
I
I
have
another
approach
that
I'd
like.
Oh,
we
could
do
it
like
this,
but
I
don't
need
to
do
that.
All
the
time.
A
A
I
think,
but
here's
the
thing
too,
is
I
don't.
I
don't
review
this
reviewing
process
as
like,
even
though
we
have
approvals
and
stuff
like
that,
like
I
really
want
to
emphasize.
This
is
a
collaboration
effort
like
we're
we're
just
collaborating
on
it,
anyways
cool
yeah.
I
have
some
some
small
comments
here,
but
then
we
should
be
good
to
go,
but
it
looks
like
nico
created
it,
but
would
you
mind
doing
oh,
he
did
create
it.
A
So,
just
for
this,
mr.
D
A
I
don't
even
have
this
running.
I
need
to
get
this
running
locally.
I
really
want
to
looking
at
this
now,
but
let's
just
check
out
the
code,
I
don't
think
I
even
have
the
project
cloned.
A
We
test
that
the
pipeline
status
bar
item
gets
correctly
populated.
It
seems
a
bit
finicky,
but
they
are
reliable,
looks
when
they
start
failing.
Okay,
it's
not
really
easy
right,
but
vs
code
debugging
helps
a
lot.
It's
very
cool,
I'm
gonna,
I'm
gonna!
I
know
I'm
gonna
wanna
review
this
locally.
Do
you
wanna?
Do
it
on
your
screen?
Do
you
wanna?
Do
you
wanna
drive
it.
B
I
have
no
idea
how
to
run
this
locally
yeah.
D
B
Just
a
quick
information:
I
just
realized
that
niko's
not
on
the
call-
and
we
just
reviewed
a
niko's
merchandise,.
A
A
I
think
that's
hard
to
do.
I
think
it'd
be
hard
to
review
someone
and
like
have
them
be
there
not
just
because
not
because
it's
like
anything
personal,
but
I
think
it's
just
be
so
hard
not
to
create
all
the
discussions
like
I
feel
like
you'd,
have
lots
of
discussions
that
would
be
generated
right
and
not
like
that's
a
bad
thing,
but
it's
just
maybe
maybe
some
of
these
discussions.
It's
really
good
that
they're
asynchronous
yeah.
That's
fair,
anyways,
yeah!
Okay,
so
I
check
this
out.
I'm
gonna
run
my
little
script.
A
A
I
know
I
I
may
have
done
that.
Oh
I
did
actually.
Yes,
I
do.
Okay,
let's
see
if
I
can
do
that,
get
review
and
be
me
nope.
A
A
Oh
we're!
Just
changing
some!
Oh
we
we
did
like
an
update
or
something
okay
for.
Are
you
familiar
with
msw
msw?
Not
really.
It's.
A
It's
it's
for
mock
service
worker
and
it
can
be.
A
Like
running
like
these
integration
tests
that
actually
supposed
to
hit
a
real
back
end,
you
can
fake,
the
back
was
looking
into
doing
it
for
our
front
integration,
tests
or
gitlab,
but
we
ended
up
doing
something
different.
So
these
are
so.
These
are
production
code
changes.
A
A
Yeah,
yes,
and
I'm
excited
to
start
learning
more
and
more
about
the
the
vs
code
integration
stuff.
I
really
really
really
want
to
bake
in
my
whole
workflow.
I
do
here
into
the
vs
code
like
that
would
be
amazing
like
if
I
could
see
comments
leave
comments
here.
I
can't
I
can't
wait
for
that.
You
wouldn't
leave
bs
code.
A
Yeah,
I
probably
wouldn't
yeah
here's
another
one.
A
I'm
guessing
like
we
had
I'm
guessing
that
this
caused
some
bugs.
I
kind
of
wonder.
B
Pipeline
so
wait
why
it
okay,
never
mind
so
refresh
pipeline
is
now
a
sync
method.
A
Well,
I
think
it
was
already
async,
but
we
we
didn't
yeah.
It
was
already
async,
but
I
guess
we
weren't
actually
waiting
for
it.
Here's
another
interesting
bit
too,
so
we
we're
creating
the
pipeline
status
and
we
also
set
this
interval
for
every
30
seconds,
we're
going
to
try
to
refresh
the
pipeline
status
yep,
but
we're
not
awaiting.
A
Yeah,
are
you
familiar
with
with
with
reactive,
extensions,
reactive
extensions,
not
really
yeah
rxjs
rxjs,
oh
okay,
yeah
that
one
yeah
they
have
baked
down.
So
it's
like
a
whole
another
paradigm,
but
they
have
really
baked
in
doing
like
these
kind
of
non-deterministic
stuff
of
like
we
want
to
pull
something
and
that
thing's
going
to
run
an
asynchronous
thing.
A
I
mean
really
really
well
like
where
I
can
pull
it,
but
don't
do
it
again
until
the
thing
finishes
like
and
that's
the
scary
thing
that
could
happen
here
is
since
we're
not
really
waiting
for
anything
we
trigger
it.
It
takes
forever,
then
we've
triggered
it
again
and
like
and
then
now
there's
a
race
condition
of
what
happens
and
reactive
extensions
helps
just
everything
go
through
one
stream
and
it's
and
there's
a
it's
very
esoteric
because
it
uses
some
very
specific,
like
function
names.
A
But
it's
once
you
grasp
what
can
be
automated
there
and
just
abstracted
away
is
really
nice
anyways,
I'm
just
ranting
about
nothing.
B
A
You
know
that's
a
really
good
question
so
rust.
I
would
say.
A
Go
reminds
me
more
about
of,
and
so
reactive
extensions
is,
is
like
a
polyglot
library
too,
like
you
can
use
it.
They
have
like
a
java
version,
and
it's
everywhere,
I
would
say,
go
has
a
like
baked
into
the
language.
It
has
this
thing
like
called
channels
which
are.
A
Streams-
and
so
I
would
say,
go
is
a
little
bit
more
like
that,
but
like
rxjs,
and
so
let
me
see
if
I
can
find
rxjs
polling
thing.
Api
or
interval.
Oh
yay,
yeah
yeah,
so
like
all
of
their
methods
like
they
all
have
these
like
marble
diagrams
of
like
how
they
get
hits
or
whatever,
and
so
like
here,
you're,
creating
an
interval
of
whatever,
and
so
none
of
it
actually
is
going
to
take
place
until
you
subscribe
to
that
observable.
A
But
you
could
do
something
like
okay,
we're
going
to
create
an
observer.
We've
we've!
You
know
this.
Marble
is
going
to
drop
every
thousand
milliseconds,
but
then
we're
going
to
map
each
one
of
those
to
an
asynchronous
call.
Then
we're
gonna
like
join
it
somehow
and
like
make
sure
that
we
don't
drop
another
marble
until
our
previous
one
was
done,
and
but
it
just
ends
up.
You
end
up
with
just
this
huge
chain
of
like
it's,
a
very
functional
kind
of
approach
to
things.
A
The
there
is
a
cognitive
overload
with
it,
though,
and
like
that's
but
angular,
like
their
framework
uses
rxjs
like
yeah,
that's
baked
into
it,
and
it
because,
because
it
does
abstract
away
a
lot
of
this
manual
managing
of
non-deterministic
things
and
state
it
abstracts
that
away,
which
is
really
nice,
but
the
abstraction
is
a
little
hard
to
to
wrap
your
head
around
it,
especially,
but
what
I
really
hope
to
do
since
since
we're
talking
about
this
more,
I
would
love
for
our
polling
library
to
be
rewritten
just
using
that,
so
that
I
don't
even
have
to.
A
I
don't
have
to
use
rx,
but
we've
rewritten
the
implementation
so
that
we're
not
doing
any
of
this
by
hand
anymore,
anyways,
yeah,
I'm
completely
ranting.
Now
about
nothing.
Okay,
we
gotta
fix
me
something
returns
current,
but
it
needs
token
service
as
a
dependency.
A
A
A
You
use
vs
code
yeah.
I
use
base
coat
you
you
answer
that,
like,
of
course
I
do
who
doesn't
use
vs
code.
B
A
So
I've
noticed
like
if
I
do
copy
or
I'll
notice
this,
especially
here.
If
I
do
like
copy
remote
url.
A
The
get
lens
extension-
and
if
I
really
it's
a
really
nice
extension,
but
it
like
pops
up
with
all
of
these
okay,
what
remote
did
you
want
to
actually
copy
from
that
might
be
what
this
git
service
is
talking
about,
something
about
baked
into
vs
code.
B
B
The
leave
like
a
gs
docket
there
hey
this
current
instance,
url
yeah,
because
it
says
right
there,
it's
ps,
vs
workspace.getconfiguration.
We
should
probably
point
to
the
corresponding
documentation
and
bs
code.
A
A
Url,
that
seems
like
it's
fine,
I'm
gonna
ask
I'm
gonna
leave
a
non-blocking
question.
I'm
just
like.
I
don't
really
know.
What's
going
on
here.
A
D
But
maybe
we.
A
This
is
a
nitpick,
not
not
a
night
pick
on
blocking
by
itself
was
excusing.
Maybe
we
could
specify
circular
dependency.
A
A
A
B
A
That's
a
good
point
too
so
going
down
to
here.
It
shows
correct
pipeline
info,
for
the
branch
see
the
this
in
it
does
the
work
it
will,
amongst
other
things,
fetch
all
pipelines
for
the
mr
branch.
It
will
then
ask
for
details.
B
Also,
if
we
we
have
the
same
initialization
code,
shouldn't
that
be
on
before
each.
B
Also,
which
that
doesn't
look
like
just
to
me.
A
Or
is
it
you
bring
up
a
good
question?
I
think
we're
using
our
own
assert
a
different,
assert
library.
Okay,
I
don't
really
know
100.
A
Why
or
oh
it's
because!
Oh
yes,
yes,
because
of
this
integration
test
stuff,
the
integration
test
is
in
it.
I
think
it
is
using
mocha
over
unit
tests.
I
think
they
were.
We
were
gonna
use
just,
but
I
think
this
one
is
not
doing
that.
B
C
A
Okay,
did
I
miss
something
I
mean
I'm
also
a
little,
I'm
also
a
little
concerned
like
so
I
passed
this
context
thing
to
status
bar
like
our
test
is
very
not
user
focused
like
I'm
not
actually
looking
at
the
status
bar
and
like
saying,
did
something
actually
change
here,
but
it's
some
sort
of
context
thing.
B
A
Like
that's,
how
we're
outputting
stuff
is
through
this
like
shared
variable,
but
that's
that
sounds
like
that's
another
thing,
but
I'm
gonna
ask
I'm
going
to
ask.
A
B
A
A
I
wonder
no
and
that's
what's
interesting
too,
with
projects
like
this
that
are
like
really
fresh
like
it's
it's
hard
finding
a
you
know,
especially
when
you're
just
reviewing
you
know
finding
the
focus
for
yourself,
but
then
also
on
the
mr
itself,
like
what
things
do
I
want
to
highlight,
or
not
so
we've
upgraded
and
now
it
fails
on
unhandled
requests.
Oh,
I
see.
Oh
okay,
that's
great.
A
A
Got
I
can't
wait
to
start
actually
contributing
to
this
cool
yeah?
Is
there
anything
else
that
you
would
add
here
or
that
you're
feeling
like.
B
B
I
I
just
wish
we
could
create
a
couple
of
issues,
one
to
use
graphql.
Let's
do
it
yeah
yeah.
Let's
see.
A
A
Yeah,
that
is
a
good
point.
Let's,
let's
do
both
of
those
I
kind
of
want
to
label
it
as
like.
Maybe
it's
like
a
proposal
yeah
that
helps?
A
Oh,
they
want
to
use
typoscript
yeah,
and
that
was
that
was
a
conversation
as
and
I
think
that
kind
of
thing
would
be
super
helpful
because
it
was
concerning
that
we
had
like
calls
that
were
actually
async,
but
we
didn't
await
them.
Using
typescript
would
have
caught
that
right,
but
I
think
what's
a
little
tough
is
it's
already
a
product?
It's
like
already,
it's
not
a
huge
project,
but
it's
still
existing
and
it
has
like
no
tests.
A
So
I
think
one
of
the
goals
was:
how
can
we
incrementally
go
there
and
like,
let's
make
sure
we
get
everything
tested
before
we
start
doing
a
project
migration
to
something
because
it
all
sounded
like
it
also
required,
like
shuffling
a
thing,
a
few
things
around
right,
so
I'm
gonna,
I'm
gonna
label
these
as
a
consider
graphql
api
over
rest,
api,
yeah.
B
Because
I'm
not
sure
at
what
point
we're
going
to
start,
you
know
adding
more
things
to
a
graphql
api
rather
than
the
b4
api
yeah.
Have
we.
A
Considered
this
yet
does
msw
have
support
for
mocking
graphql.
A
A
B
A
Like
that
new
issue
consider
rx
js
for
non-deterministic.
A
A
Set
up
some
intervals
and
various
and
various
fetches
asynchronously,
this
kind
of
thing
can
be
really
hard
to
manage
manually
and
there's
a
really
cool
library,
rx3s
that
exposes.
A
Strings
emphasis
on
the
really
cool.
What
do
you.
A
A
Okay,
cool
well,
hey!
I
know
we're
over
thanks
for
hanging
out
with
me
doing
some
of
these
review
stuff
together
will
ping
robert
nico
and
tomas
if
they're
cool
with
making
this
video
public
yep,
but
it
was,
it
was
fun
and
hopefully
it's
helpful
if
we
do
make
it
public
to
people
reviewing
code
and.
B
I
mean
yeah,
I
I
hope
I
hope
that
we
did
communicate
at
least
I'd
say
at
least
in
a
manner
that
didn't
didn't,
raise
any
alarms,
because
you
know,
I
think
so.