►
Description
Join members from the ASP.NET teams for our community standup covering great community contributions for ASP.NET, ASP.NET Core, and more.
Suggest an idea for a standup: http://aka.ms/dotnet-standup-suggestion
A
A
B
B
A
A
B
B
A
B
A
B
A
B
A
B
It
says
here
shared
GPU
memory,
one
gig
of
8,
but
the
Nvidia
on
my
laptop
has
6
gigs
of
dedicated
ram.
Like
my
perspective
is
if
it's
plugged
in
it
there's
no
reason
it
should
not
be
using
dedicated
whenever
so
I
spent
that
there
is
a
misconfigurations
there's.
No
other
explanation.
I
have
done
something
wrong.
I
think
also
that
I
have
a
feeling,
like
my
machine,
is
optimized
that
I
might
turn
it
into
a
tablet
at
any
moment
right.
This
is
a
surface
book
right,
so
I.
B
A
A
A
A
I
gonna
get
a
desktop
for
work,
I'm,
just
the
docking
redocking
lifestyle
as
someone
who's
in
that
of
meetings
all
day,
I'm,
just
sick
of
waiting
for
things
and
I
Drive
to
fall
came
on
just
from
this,
and
it
is
capable.
Don't
get
me
wrong,
it's
actually.
Quite
you
know
it's
impressive.
What
modern
laptops
can
do,
but
it
they
just
pale
to
a
desktop.
That's
a
third
of
their
price.
A
They
just
cannot
compete
when
it
comes
to
push
the
keyboard
and
it's
instantly
up
and
I
can
start
moving
windows
around
and
reply
in
Outlook
and
I.
Don't
have
to
wait
for
15
seconds
or
even
worse,
the
one
that's
really
been
bugging
me:
I,
don't
if
it
bugs
you
and
yeah
we'll
talk
about
that
in
a
minute.
A
The
one
that's
really
been
bugging
me
is
the
eye
I'll
close,
my
laptop
at
the
end
of
the
day,
I
stick
at
my
bag
and
then,
if
I'm,
making
a
really
good
person,
I,
don't
touch
it
again
until
I
get
to
work
the
next
morning.
Right
because
that's
what
you
should
do
as
much
as
I
can
I
can
afford
to
do
that
and
then
so
I
do
that
I
get
to
work
and
I
go
to
my
first
meeting,
I
open
it
and
then
literally
for
the
first
five
minutes,
its
unusable
and
I.
Don't
and
I'm.
A
Not
it's
not
hyperbole,
I'm,
not
saying
five
minutes
and
I
mean
25
seconds
literally
for
the
first
five
minutes.
Everything
wakes
up
and
says:
I
have
to
go
and
check
to
see
if
something
happened
in
the
last
14
hours.
Since
you
used
me
and
by
the
way
I'm
gonna
take
all
your
CPU
and
all
your
interrupts
and
your
mouse
is
gonna
lag
literally,
while
you're
trying
to
move
across
the
screen-
and
it's
not
just.
A
A
B
Get
that
everyone
thinks
that
they're
invincible
and
they
are
I
can't
malware,
but
but
really
you
can't
like
I'm,
not
gonna,
get
malware,
I
promise.
It's
not
me
and
I
feel,
like
one
processor
of
my
machine
is
dedicated
to
running
anti-malware
in
the
in
the
off
chance
that
one
of
the
zip
files
that
I
downloaded
ten
years
ago
might
have
malware
in
it.
But
I
don't
see
why
you
need
to
for
each
over
my
zip
files
right
for
malware
cuz.
A
I'm
pretty
sure
it
ain't
there.
The
thing
that
really
affects
me
is
that
I
remember
going
to
mix
in
2000
and
ten
I
think
it
was
the
last
mix,
maybe
and
I
think
it
was
snow.
Ski
was
on
stage
and
he
showed
I
nine,
the
native
web
right.
That
was
the
thing
we
were
doing
ten
years
ago,
the
native
web,
and
he
showed
a
video.
It
was
like
a
flak
file
like
that
flex
audio.
It
was
a
video
file
if
LD
Val
saw
something
playing
in
the
that's
a
nice
ceiling
playing
in.
B
A
A
B
B
A
B
A
A
A
Video
online
became
something
that
we
could
all
look
forward
to
and
then
fast-forward
you
know
six
years
literally
was
less
than
a
decade
and
we
had
multiple
1080p
rendering
on
a
laptop
on
battery
power
yeah
and
it,
and
it
was
really
good
and
the
CPU
wasn't
really
involved
and
then
fast
forward
to
today,
and
it
feels
like
it
feels
like.
Maybe
you
know
what
this
is
it?
A
Maybe
this
is
the
difference
between
bandwidth
and
latency,
and
you
know
how
they
say
like
ones
once
you
get
the
baton,
the
bandwidth
is
very
different
to
latency
and
you
weren't
once
you
get
the
going
as
long
as
you've
got
the
bandwidth,
it
won't
skip
like
it's
there.
It's
gonna
go
it'll,
render
it's
fine,
but
latency,
you'll
notice.
Every
single
thing
that
gets
called
you
know
causes
a
stoppage
and
latency
and.
A
B
A
B
A
B
A
Yeah,
fair
enough:
it's
like
all
the
people
who
tell
me
to
use
outlook
for
web
and
then
I
go
and
try
and
in
the
first
three
minutes,
I'm
cursing
and
I
have
to
go
back
to
Outlook
desktop
because
none
of
my
keyboard
shortcuts
work
and
I
can't
navigate
with
the
arrow
keys
and
I
can't
do
all
the
things
that
I
have
to
be
able
to
do
to
effectively
manage
my
emails.
Yeah
I.
Try
I
really
do
try.
When
people
give
me
these
suggestions,
I
go
and
try
it
again.
The.
B
B
A
A
Pane
behaves
very
differently,
so
when
I,
you
can't
actually
use
any
short
key
to
navigate
through
individual
messages
in
a
thread
and
then
have
the
navigation
pane.
The
preview
pane
sorry
on
the
right
like
scroll
into
or
show
a
preview
of
what
you've
currently
got
hovered.
That
does
not
exist
in
Outlook
for
web.
As
far
as
I
understand,
that
is
the
primary
way.
I
look
at
email
in
Outlook,
because,
mostly
in
my
look
at,
is
heavily
threaded.
A
As
you
all
know,
working
here
on
the
same
teams
that
I
do
and
so
I
arrow
up
and
I
left
and
right
arrow
to
collapse.
Oh
I
do
all
that
stuff.
All
the
time
and
I'm
constantly
looking
at
the
right-hand
preview
pane
to
read
what
is
in
that
in
that
in
what
I'm
currently
I
selected,
but
I
just
couldn't
find.
B
A
B
A
A
A
B
A
B
Okay,
so
so
I
did
that
one
mm-hmm
but
I
have
another
one.
That's
August,
8th
right,
so
I'm
gonna
go
and
say,
choose
a
date
and
I'll
say
alright.
I'll
do
it,
but
I
get
back
from
Belgium,
so
save
out
of
my
thing
interesting.
So
it's
it's!
It's
the
psychic
weight
of
the
thing
hanging
out
there
in
my
face
is
gone
and
now
it'll
come
back
well.
B
A
B
A
A
It
was
a
small
release,
it's
fair
to
say
that
that
was
a
release
purposely
designed
to
sync
with
build,
and
so
it
was
a
it
was
a
shorter
milestone
than
we
had
had
for
the
previous
previews
we're
currently
working
hard
on
preview
6,
which
is
a
slightly
larger
milestone
and
we
hope
to
land
pretty
much
the
rest
of
the
features
that
we're
we're,
hoping
to
see
in
nickel
of
3
and
that
that's
all
up
and
down
the
stack.
Every
move
right
down
from
the
host.
A
You
know,
they're
done
it
executable
itself,
all
the
way
up
through
the
CLR
core
FX
and
the
various
out
models,
the
things
that
will
come
a
little
bit
later
after
preview
6
or
some
of
the
tooling
things
that
we
want
to
light
up
in
the
new
visual
studio
in
Visual
Studio
for
Mac.
Those
things
are
slated
to
have.
Some
of
those
things
are
slated
to
happen
after
preview
6,
as
we
get
closer
towards
the
GA
in
September,
which
was
the
other
thing
that
we
announced,
which
was
the
schedule
for
that
nickel
3.
B
A
B
B
B
A
B
A
A
A
B
So,
let's
talk
about
that?
Okay!
So
let's
go
to
the
dotnet
and
let's,
let's
pretend
that
I
don't
work
here!
Okay
and
let's
say,
run
apps,
do
this:
that's
full
build
apps!
Okay,
you
know,
I
can
use
20,
2017
and
2020.
19
cool
can't
find
the
version
you
want
cool
I
can
I
can
hack
this
URL
yep.
So
here,
on
the
left
hand,
side
we've
got
current
two
to
four
should
do
for
right.
Yep.
A
B
A
A
A
B
A
A
B
B
A
No
because
the
install
is
all
ref
count,
each
other,
so
I
I
think
most
developers
understand
the
concept
of
a
ref
count
where
you
have
a
shared
resource
and
then
the
people
who
are
sharing
the
resource
increment,
say
yes,
I
am
currently
using
this
and
then
something
else
is
yes.
I'm
currently
using
this
at
the
ref
canvas
now
too,
and
if
someone
says
I
don't
need
this
anymore,
the
ref
count
goes
down
to
one
and
the
resource
is
not
released
until
it
hits
zero,
and
so
that
is
true
with
well
authored
installers.
A
If
we
don't
make
a
mistake,
is
that
you
can't
break
something
by
uninstalling,
something
if
something
else
needs
it.
That
was
a
lot
of
some
things,
but
you
get
what
I
mean
so
dotnet
Visual
Studio
will
lay
down
a
version
of
the.net
core
SDK.
If
you
choose
Nicole
workload
during
visual
studio
installation
time,
and
then
you
can
install
different
versions,
add
a
band
or
herb,
as
we
call
it.
Oob
out-of-band
CVS
release
and
some
via
some
dotnet
core
versions
are
only
available
as
uber
releases.
A
For
example,
dotnet
core
2.2,
which
we
showed
here,
is
not
actually
installed
by
vyas
by
default.
It
is
not
a
default
option
when
you
tick
dotnet
core
you
don't
get
to
point
to.
We
did
not
include
it
in
vs
2017
at
all.
You
had
to
install
it
as
an
as
an
uber
in
2019.
It
is
an
optional
component.
So
if
you
wanted
to
install
dotnet
core
via
your
visual
studio
installation
with
vs
2019,
our
2.2
is
an
option
and
that's
tied
back
to
the
whole
LT
s
versus
current
thing.
A
We
didn't
want
to
have
an
on
LTS
release
installed
by
V
s
1600
by
default,
the
60
no
and
self
is
LTS,
and
that
just
introduces
complications
with
regards
to
servicing
and
I
said
there
you
go
here
is
the
is
this
your
blog
okay
and
that's
a
little
screenshot
that
little
screenshot?
There
is
from
the
downloads
page
just
the
web
page
above
the
one
you
were
showing
before,
which
is.
B
A
Versions
and
that
you
know
quite
clearly
shows
which
ones
are
LTS
and
which
ones
are
current
and
which
ones
are
still
in
preview.
At
the
time
you
wrote
that
obviously
were
still
in
preview,
alright,
and
so
the
problem
that
we've
had
with
the
version
proliferation
on
people's
machines
is
caused
by
a
couple
different
things.
One
in
before
300
I'll
talk
about
before
300
and.
A
A
A
A
B
A
A
Let
me
talk
about
yeah,
so
let
me
just
I'll
continue
on
from
our
ones.
Keep
that
up.
So
those
three
things
that
you've
shown
there
are
basically
what
contribute
to
the
size
of
your
dotnet
core
installation
before
three.
Oh
all,
right
you've
got
the
SDKs
themselves,
you've
got
the
shared
runtimes
and
then
you've.
B
B
B
A
They
all
version
with
every
single
thing
that
you
bring
in
generally
something
in
there
at
least
one
of
those
will
version,
if
not
all
three
alright
so
depends
on
the
size
of
the
servicing
release
and
because
dotnet
core
is
side
by
side
by
default
in
the
2x
time
frame.
Every
time
you
install
one,
it
doesn't
an
uninstall,
the
previous
thing.
A
Okay,
now,
if
you're
using
the
vs
preview
channel,
which
I
think
you
have
been
judging
by
what
you
have
installed,
the
vs
preview
channel
will
often
deliver
you
a
preview
version
of
the
SDK,
because
the
SDK
part
of
it
is
tied
to
visual
studio
because
msbuild,
a
shared
and
Roselyn
a
shared
new
get
is
shared,
and
so,
if
you're
on
the
preview
channel,
it
will
install
rant.
You
know
new
previews,
of
whatever
the
next
servicing
release
is
NBS,
as
well
as
the
next
feature
release,
even
if
dotnet
core
itself
hasn't
raved.
If
it's
still
ten.
B
B
B
A
A
You
have
another
location
when
you
get
packages
get
restored
to,
that
is
mutable.
This
one
is
immutable.
Nothing
gets
added
here
unless
an
installer
lays
it
down.
Okay,
when
you
run
you
get
restore,
they
don't
go
here.
They
go
into
your
user
profile
into
the
dot
new
get
folder,
and
so,
if
you
were
delete,
if
you
were
to
delete
all
of
this,
your
machine
would
still
work.
B
A
A
A
B
A
B
B
A
B
A
Only
if
it's
in
Program
Files,
that
is
configured
by
default
when
you
do
a
dotnet,
restore
to
use
that
program
files,
location
as
a
fallback,
feed
or
I
think
it
has
another
technical
name,
remember
what
it
is,
and
so
we
won't
download
them
if
it
finds
them
there
and
it
won't
copy
them
into
your
user
profile.
They
just
live
in
Program,
Files,
okay,
but.
A
B
A
B
A
They're
not
catch
they're,
not
compressed
they
compressed
when
they're
in
nutcake
form,
because
that's
a
zip
file,
but
on
here
they
have
to
be
expanded
because
your
IDE
needs
to
be
able
to
open
the
XML
files
to
show
you
statement,
completion
help,
okay
and
it
might
deliver.
You
know
14
different
languages
to
do
so
for
a
bunch
of
those
packages.
So
a
lot
of
it
is
is
multiple.
It's
not!
It's
not
duplicated.
It's
triplicated!
Okay!
A
Are
you
more
up
to
14
times
one
for
each
language
and
there's
a
whole
bunch
of
historical
reasons
about
why
the
trade-offs
that
we
make
whether
we
should
always
acquire
things
on
demand
from
the
internet,
which
then
leads
to
problems
with
regards
to
I
mean
to
do
a
thing
which
I
thought
I
had
it
installed?
I
got
in
a
plane,
and
now
I
can't
do
that
thing
versus
the
disk
space
that
it
takes.
A
You
versus
the
install
time
versus
the
size
of
the
download
you
had
to
start
with,
for
install,
etc,
etc,
etc,
and
we've
constantly
you
know,
over
the
whole
10
years,
I've
been
here
playing
with
those
trade-offs
and
as
the
industry
trends,
change
and
hard
drives
get
cheaper
and
internet
gets
faster
in
some
places
and
others
we
we
reevaluate
those
trade-offs
and
so
for
2x.
I've
kind
of
you
know
laid
it
out.
This
is
everything
that
there
is.
A
You
can
safely
delete
everything,
but
if
you
want
the
lien
as
possible
to
X
install,
what
you
want
to
do
is
delete
every
uninstall,
every
SDK
except
the
latest
one
okay,
and
then
install
just
the
runtimes
that
you
need.
So
the
latest
SDK
will
come
with
the
latest
matching
runtime.
So
to
dock
you
dot
three
or
four
or
whatever
it
is,
and
then,
if
you
need
to
run
to
one
apps
or
you
need
to
run
one
one
apps
or
one
o
apps,
you
can
just
install
those
runtimes.
Okay,
you
get
those.
B
B
A
B
A
B
B
B
A
B
A
B
Not
for
a
couple
reasons,
so
first
I
am
on
an
internal
network
right
now,
because
I
happen
to
be
in
the
local
office.
Okay,
but
when
you're
on
VPN,
it's
a
little
more
challenging
to
stay
fresh
yep,
but
additionally
I,
because
I
want
to
be
no
disrespect
closer
to
the
community.
That
I
am
to
you.
Yes,
I
tend
to
run
with
the
community,
run
yes,
so
that
I'm
seeing
their
reality
and
not
internal
reality
right
is
that
make
sense.
A
A
B
A
As
long
as
the
new
version
you're
installing
is
in
the
same
band
as
that,
so
it's
100
something
it'll
just
remove
any
previous
100
something
okay
and
for
a
preview.
So
that's
why
you
only
have
one
version
once
we
get
you
know
to
GA
or
whatever
you
want
to
call
it
released
in
September,
and
then
we
start
working
on
the
next
feature:
release
of
the
SDK,
which
is
likely
going
to
be
302
hundred.
A
A
A
The
world
one
is,
it
might
be
better
for
your
scenarios
and
your
workflows
to
it
may
not
be
you.
You
probably
haven't
considered
all
the
ways
it
interacts
with
different
versions
of
Visual
Studio
like
if
you
have
you
know
different
channels
of
vs
from
different
versions
of
vs.
How
does
it
interact
with
that?
Does
it
work
with
vs
code,
which
has
very
different
way
of
finding
net
than
vs
does,
and
then
we
have
to
consider
server,
installs
and
runtime
installs
separately
from
SDK,
because
they
have
different
implications.
A
B
B
A
Except
for
what's
in
Program
Files,
because
the
SDK
and
2x
does
bring
a
whole
bunch
of
new
get
packages
with
it's
actually
the
largest
part,
the
largest
part
of
the
payload,
all
because
the
build
for
projects
in
into
X
is
NuGet
packages.
You
have
package
references
in
your
project
for
a
spinet
call
and
that's
where
it
finds
the
reference
assemblies,
that's
where
it
finds
the
XML
intellisense
files
out
where
that's
where
it
finds
the
msbuild
targets
they're
in
NuGet
packages.
Now
in
three
Oh,
that's
not
the
case
in
three
Oh.
A
We
have
changed
the
what
we
call
the
composition
model
of
dotnet
core
projects,
so
there's
still
SDK
projects
that
hasn't
changed,
but
we
now
have
a
thing
called
a
framework
reference,
and
so
people
might
remember
in
a
spinet
core
2.1,
we
introduced
the
shared
framework
phrase
banette
core,
as
opposed
to
using
the
the
other
thing.
We
had
the
the
store
the
package
store.
A
So
that's
kind
of
gone
now
so,
instead
of
using
a
package
reference
to
represent
a
shared
framework,
now
we
have
a
new
thing
in
amis
bill
could
a
framework
reference,
and
that
also
is
something
that
nougat
understands,
and
so
you
don't
need
NuGet
packages
to
build
in
a
spinet
core
app
unless
you're
referencing,
you
know
an
external
NuGet
package.
So
if
you
do
file
new
a
spinet
core
in
300,
eventually
there
depending
on
which
template
you
choose,
you
won't
have
a
package
reference.
A
B
A
And
tu2-
and
there
is
a
folder
under
your
SDK
folder,
where
you
were
looking
before.
If
you
look
into
300
hive,
you'll
find
a
place
where
ref
PACs
are
installed
and
a
reference
pack
it's
just
like
they
used
to
be
before
we
had
new,
get,
is
basically
a
flat
layout
of
stuff
needed
to
build
a
snare
as
certain
types
of
applications
and
they
aren't
new,
get
the
SDK
will
acquire
them
from
new
get
on
your
behalf.
A
If
it
realizes
you
don't
have
them,
but
they're
not
new
get
and
the
Vantage
of
that
is
they
don't
carry
runtime
assets.
They
only
carry
build
time
assets,
which
means
that
we
can
be
much
more
granular
about
what's
installed
on
the
machine
and
we
don't
have
to
duplicate
or
triplicate
or
to
quadruplicate
or
whatever.
The
word
is
a
quad
block.
8,
all
lots
of
copies
are
the
same
files
across
you
know
various
NuGet
package
versions
or
ref
packs
or
runtime
pets,
etc,
etc,
and
so
what
you'll
find
the
end
result
of
that?
A
There
should
be
a
lot
less
disk
space
taken
up
for
a3
or
application.
It
should
build
faster
because
there's
less
stuff
in
the
build
graph
for
the
tools
to
reason
about
for
a
spinet
core
things
now
as
soon
as
you
need
something
external
or
something.
That's
not
in
the
shared
framework.
You'll
add
a
package
reference
just
like
normal
and
that's
how
you'll
get
stuff,
but
for
stuff,
that's
very
core
to
the
platforms
and
ships
in
the.
A
A
B
A
That
and
then
the
other
thing
that
we're
trying
to
fix
that
download
page
that
you
showed
it
is
pretty
good
like,
especially
when
you
compare
it
to
other
download
pages
for
other
stacks
like
go
and
look
at
the
Java
download
page,
and
you
know
you'll
hate
yourself,
it's
a
pretty
good
download
page.
It
has
good
information,
but
it's
still
a
lot
of
information
like
you
know
so,.
B
Small
fun
story:
yeah
I
know
this.
Lady
know
she
is
now
almost
she's
in
her
40s
and
she
has
like
this
is
a
stock
photography
that
she
did
not
really
like
20
years
ago.
That's
fantastic
and
she
has
been
the
Java
download
lady,
the
entire
time.
I
think
she
was
paid
like
50
bucks
and
she's
not
happy
about
this.
Okay,
yeah.
A
B
B
A
A
A
A
We
have
a
prototype,
we're
working
on
right
now,
but
we're
not
ready
to
show
yet,
but
I
hope
that
we
will
be
able
ready
to
show
soon
that
basically
builds
what
we're
calling
a
universal
installer
and
so
the
dotnet
core,
and
a
little
bit
a
little
bit
like
the
vs
installer
that
you
showed
before
right,
which
is
known
as
Willow
internally,
so
the
dotnet
called
Universal
installer
it.
The
hope
is
that
in
the
future-
and
it
won't
be
part
of
three
Oh
it'll-
be
past
three,
oh,
but
it
should
be
well
before
done
at
five.
A
We
hope
would
be
what
you
experienced
as
a
customer
when
you're
installing
net
on
Windows
and
on
a
Mac
okay
on
Linux,
you
use
apt-get,
and
you
use
the
package
managers
on
your
thing.
That's
fine,
but
on
Windows
machines
and
Mac
machines,
where
you're
installing
SDKs
and
runtimes
for
servers
for
Windows.
Today
you
have
to
go
to
the
download
page
and
find
the
right
link.
You
have
to
read
it
all
go
like
am
I
doing
run
times
in
my
own
way.
A
Do
but
as
a
day,
if
you
kind
of
just
want
to
know,
you
know
just
give
me
some
name,
just
man,
we
used
to
work
with
Karen
used
to
say
justjust.
Just
give
me
some
name
just
go
to
the
page
and
I
just
want
some
done
net.
Just
give
me
some
done
it
don't
make
me
read
at
home
to
do
so
and
so
we're
trying
to
get
to
a
situation
where
you
there's
one
download
button.
You
know
the
web
page.
You
can
figure
out
why
we're
sure
I'm
like
it
does
now.
A
It
says
yeah
download
net.
You
click
that
thing
you
get
a
lightweight
installer
that
then
defaults
and
says
well,
based
on
your
machine.
I.
Think
you
want
these
things.
You
know
you
can
detect
vs.
It
can
detect
that
you're
on
a
Windows
client
OS
versus
a
server
OS,
and
it
can
choose
the
right
things
and
then
it
also
gives
you
the
options
to
select
other
things.
So,
for
example,
if
you
just
want
to
install
the
ACE
Burnett
core
module
for
RS,
which
you
can't
do
today,
you
would
be
able
to
do
that
through
this
install.
A
It
would
also
support
multiple
version
channels
so
that
it,
you
could
say
well,
yeah
I,
want
the
latest
SDK
because,
as
I
just
said,
you
should
always
have
the
latest
SDK,
but
I
need
to
run
2.1
apps
because
that's
LTS
well,
it
would
offer
you
the
2.1
runtime.
We
don't
have
an
experience
like
that
today,
you
have
to
go
and
get
the
to
one
runtime
installer
separately
after
you've
installed
the
SDK
there's
no
CLI
experience
for
SDKs
or
runtimes.
Today
we
have
aspirations
to
have
the
CLI.
Allow
you
to
launch
the
Universal
installer.
A
The
versions
of
es
that
we
have
to
support
is
actually
getting
very
expensive,
and
so
we're
gonna
have
to
do
this
work
to
not
only
make
it
a
better
experience
for
everyone,
but
to
avoid
the
cost
that
we're
paying
right
now.
So
we
see
that
as
the
future.
So
my
hope
is
that
by
the
end
of
this
year
the
dotnet
download
experience
and
keeping
it
up
to
date
on
my
machine
experience
will
be
drastically
improved
because
the
result
of
the
300
changes
we're
making
and
this
upcoming
Universal
installer.
So
yeah.
B
B
B
B
A
A
B
A
B
A
A
Because
we
don't
have
that
yet
I'll
talk
about
that
right.
So
in
preview
5
we
enable
of
300.
We
enabled
a
single
files
bin
sorry,
so
stand
alone
has
been
enabled
since
the
beginning
of
dotnet
core
the
new
thing.
If
you
go
back
to
your
project
file
that
you
had
your
props
file
public
say
mal
file.
A
So
if
you
look
at
line
a
15,
publish
single
file
is
the
new
thing
that's
available
in
preview
5,
and
this
is
the
single
XE
launcher
that
we
talked
about
phonetic
or
3,
which
will
basically
take
everything
that
would
have
all
those
300,
not
items
that
you
said,
because
this
is
a
self-contained
app
and
just
sticks
them
in
a
self-extracting
AXI.
Now
you
can
do
framework
dependent
single
file
as
well.
You
don't
have
to
do
self-contained
single
file.
You
can
do
framework
dependent
single
file.
A
The
way
it
works
is
that
executable,
when
it
runs,
will
generate
an
ID
based
on
an
algorithm,
and
then
it
will
look
for
a
folder
in
a
temp
location
with
that
name.
If
that,
if
it
doesn't
exist,
it
will
extract
the
contents
of
that
XE
into
that
folder,
and
then
it
will
boot
the
application
from
that
location.
Ok,
so
this
is
work,
that's
been
done
in
the
dotnet
host.
That
is
the
executable,
and
so
you
end
up
with
one
executable
and
yeah
it'll
be
one
of
those
they're
generally.
B
A
Then
you
have
to
see
the
dll's
are
being
loaded
from
temp
location.
So
but,
as
you
said,
that's
huge
right.
You
did
single
file
and
you
did
self-contained
and
it's
everything.
Now
you
had
to
specify
a
runtime
identifier
right
now.
You
have
to
tell
it
where
you're
generating
this
XE,
for
because
X
is
our
platform
specific,
so
you
have
to
say:
win
x64!
That's
what
the
rewrite.
A
So
it's
not
portable.
You
can't
take
this
single
XE
and
run
out
on
legs.
Alright,
you
have
to
you,
have
to
build
it
separately
for
each
machine
now
what's
coming
in
preview,
six
is
the
ability
to
also
enable
trimming
or
linking
okay
we're
using
the
mono
linker.
This
is
not
it's
and
you
can
kind
of
think
of
it.
A
B
B
A
A
B
B
This
it'll
run
yeah,
but,
but
today
and
today
in
this
prototype,
slash
whatever
it
it's
putting
files
it's
reading
files
out
of
a
compressed
format,
it's
saving
them
to
disk,
it's
picking
them
up
again.
So
there's
some
dancing
that
doesn't
need
to
be
done.
It's
got
files,
it
doesn't
necessarily
need,
and
it's
still
gotta
go
in
JIT
it
once
it's
all
done
so.
A
A
And
the
äôt
or
native
code
that
was
created
by
the
ready
to
run
tool
and
so
that
it
can
fall
back
if
you
try
to
run
that
dll
on
a
machine
that
is
the
wrong
business
or
the
wrong
native
target.
It's
an
armed
machine
instead
of
an
x86
machine,
for
example,
it'll
just
load
the
il
right
and
it'll
JIT
it
on
the
fly
for
you,
and
so,
but
what
you
can
do
now
is
publish
ready
to
run
equals
true,
we're
ready
to
run
your
application
assemblies,
anything
that
did
not
the.
A
Or
any
NuGet
packages
that
you
had
that
brought
in
dll's,
they
would
get
ready
to
run
or
crushed
gems
as
well,
and
then,
on
top
of
that,
three-oh
enables
tiered
compilation
by
default,
which
is
the
new
mode
of
the
jitter
that
can
recompile
the
machine
code
of
even
those
cross-gender
bits
at
runtime
to
further
enhance
them
for
the
actual
CPU.
That
you're
running
on
hang.
A
Ok,
so
that
that
capability
is
on
by
default
in
3.
Oh,
that's,
the
new
tier
compilation,
JIT
and
that
helps
you.
It
does
a
couple
things.
It
will
improve
the
startup
time
the
application
cuz
it
can
do
a
sort
of
lower
quality,
JIT
compilation
of
your
aisle
up
front
to
get
you
going
quicker
and
then
it
will
look
at
what
code
is
being
executed
in
your
app
and
then
we
compile
that
harder,
it'll
recompile,
that
with
better
quality,
which
can
take
a
bit
longer
but
produce
faster
code.
A
A
The
one
of
the
problems
with
ready
to
run
is
because
it
can't
do
certain
optimizations
with
assemblies
that
are
marked
as
ready
to
run.
For
example,
it
can't
in
line
methods
across
assembly
boundaries,
and
so
what
happens
is
you
can
lose
performance
with
a
ready
to
run
application?
For
example,
when
we
submit
our
tech
and
power
framework
benchmarks,
we
actually
turn
off
they're
ready
to
run
loading
in
the
host
so
that
we
get
the
jitter
to
compile
everything
at
runtime,
which
means
it
can
optimize
things
in
the
most
the
most
beneficial
way
in
300.
B
B
Let
me
rephrase
what
is
the
difference
between
messing
around
with
a
linker
from
two
years
ago
and
messing
around
with
someone's
warp
packer
deal.
That's
used
for
other
things
versus
waiting
until
the
fall
like
what
will
be
better
or
worth
waiting
for
for
our
thing
versus
some
of
these
technologies
that
bundle
and
zip
up
our
stuff
and
simulate
a
single.
A
Session
I,
don't
know
enough
about
how
the
approach
of
the
other
technologies
use,
but
I'll
wax
lyrical
about
a
couple
things
as
best
I
can
so.
First
of
all,
the
bundling
tech
that
we're
putting
in
net
core
3
maintains
the
ability
to
do
things
like
profiling
and
debugging
without
any
convoluted
mismatches.
Ok,
because
it
actually
maintains
assembly
sort
of
modular
assembly,
modularity
and
identity
into
your
application.
I'll
merge,
for
example,
used
to
destroy
that
right.
You
kind
of
like
it
just
merged.
A
A
Just
went
off
in
here
that
was
ominous,
and
so
that's
one
thing.
Second
of
all.
Obviously
this
one
is
in
the
dotnet
core
product,
so
it's
supported
by
Microsoft.
That's
obviously
a
big
deal
to
a
lot
of
customers,
and
so,
rather
than
using
the
piece
of
tech,
you
can
use
that
one.
That's
just
a
question
of
support.
Yeah
yeah.
B
A
Regards
to
the
approach,
the
first
one
as
I
said,
we,
the
mono
approach,
the
mono
linker
has
a
bunch
of
different
dials
and
knobs
I'm,
actually
not
aware
of
how
much
of
that
we're
exposing
yet
and
that's
one
of
the
things
I'm
looking
forward
to
playing
with
once
it
drops
in
the
preview
6
belt.
Also,
how
will
they
work
for
different
application?
Types
is
interesting,
so
obviously
the
mono
linker
is
primarily
been
tested
to
date
with
mobile
applications,
because
that's
what
we're
it's
used
in
the
xamarin
applications
and
this.
B
A
Those
those
approaches
to
building
applications
or
frameworks
can
make
it
very
difficult
for
linkers
that
rely
on
static
analysis,
because
they
can't
tell
what
you're
going
to
do
at
runtime
and
they
may
remove
code
out
that
it
turns
out.
You
actually
needed
because
code
that
needs
it.
It
doesn't
exist
yet
because
we
don't
generate
it
until
run
time.
Okay,
and
so
we
have
to
look
at
that
as
part
of
as
part
of
this
stuff
landing.
So
what's
the
difference?
There's
lots
of
differences,
but.
B
Also
I
understand
that,
is
it
not
the
intent
that,
like
the
basics,
like
the
naive
implementation
of
a
single
X,
he
is
unzip
into
a
temp
folder
and
run
yes
and
the
idealized
one
would
be
a
highly
optimized
tree,
trimmed
cross-gender
executable
with
just
the
stuff
that
you
need.
No
more,
no
less.
Yes,.
A
A
That
that
is
on
the
table
currently
for
dotnet
five
cool,
so
I'll
hope.
So
this
is
the
first
iteration
of
our
single
file
story.
Where
you
can
optionally,
then
add
cross-gen
or
ready
to
run,
and
you
can
optionally
add
the
il
linker,
the
trimmer,
which
will
get
you
so
far
and
then
the
hope
for
dotnet
5
is
to
bring
monos
full
a
ot
tech,
which
was
part
of
the
announcement
at
Build,
to.net
core
and
that's
effectively.
What
dotnet
5
is
right.
Dotnet
5
is
net
core.
A
The
next
version
+
the
mono
IOT
runtime,
which
is
different
2
cor
cor
cor
cor
is
the
CLR
runtime
with
the
jitter
in
net.
Core
mono
has
its
own
runtime
written
from
scratch
effectively
with
its
own
jitter,
which
is
only
used
in
some
environments.
It
has
an
il
interpreter
which
we
don't
have
in
core
CLR.
A
To
saying
these,
you
know
it's
always
a
set
of
trade-offs.
This
is
computer
science.
This
is
software
development
right,
so
it's
always
a
set
of
trade-offs.
We
all
want
everything
all
the
time,
but
sometimes
you
have
to
give
option
so
that
they
can
choose
the
right
deployment
path
based
on
where
they're
going
and
the
trade-offs
they
want
to
make.
A
The
big
thing
is,
we
want
to
make
it
so
that's
available
to
all
the
dotnet
app
types
it
doesn't
matter
if
you're
doing
mobile,
apps
or
desktop
apps
or
console
apps
or
API
services
or
blazer
applications
in
the
browser
or
traditional,
a
spinet
core
apps.
It
doesn't
matter
or
IOT
apps
on
machine
learning,
apps
with
dotnet
core
you'll
be
able
to
use,
have
the
same
option
for
all
of
them.
Okay
with
the
second
trade-off.
A
So
if
you
want
the
small
as
possible,
XE
and
you're
willing
to
sacrifice
a
little
bit
of
startup
time
or
a
little
bit
of
runtime
throughput,
then
you
can
choose
one
runtime.
But
if
you
want
a
separate,
a
separate
set
of
trade-offs
and
you
can
use
it-
you
know
you
can
you
can
tweak
the
knobs
the
other
way.
So
all.
B
A
A
B
B
B
B
Things
are
getting
better,
I
want
a
surface
book
pro
book
to
rather,
and
even
though
we're
sitting
here
complaining,
yeah
I'm,
still
on
a
team's
call,
I've
just
updated
two
different
for
I've
jumped
in
a
time
we've
been
hanging
out
here
in
an
hour
Ivan
Ivan
installed.
You
know
twelve
different
SDKs
I
in
stated
two
versions
of
Visual
Studio
and
I'm,
using
teams,
and
it's
still
working
and
I'm
nothing's
broken
yeah.
Oh
my
god,
as
I
complain
about
computers,
they
are
doing
their
jobs
yeah.
We
just.
B
A
The
thing
that
really
acts
me
yeah,
that's
the
thing
it
really
yeah.
So
in
summary,
we
didn't
talk
much
about
dotnet
5.
Obviously
that
was
the
other
big
announcement
from
build
was
talking
about
what
dotnet
will
look
like
moving
forward.
I
briefly
just
said:
basically,
what
no.5
is
we
will
have
a
35
will
release
next
November
2020.
That's
the
other
thing
that
we
announced
was
the
reliable.
A
Database
releases,
so
every
2
years
you'll
get
an
LTS
of
the
new
net,
so
dotnet
core
3.1
will
be
November
this
year.
That
will
be
the
LTS
for
the
3
wave
and
then
dotnet
5
will
not
be
LTS.
It
will
be
done
at
6.
That
will
be
the
LTS
after
that
will
be
2,
which
is
2
years
after
the
previous
LTS.
So
that's
the
new
cadence
every
two
years
you
can
LTS
and
each
one
is
supported
for
3
years.
So
you
get
three
years
to
once.
A
A
Large
move
I
totally
acknowledge
that
we're
going
from
you
one
15-year
framework.
That's
windows,
only
monolith.
You
know
it's
installed
on
the
machine.
It
generally
isn't
side
by
side
to
a
very
different
model
for
dotnet,
which
has
to
run
everywhere
and
so
folks
who
have
been
on
the
sort
of
dotnet
core
journey
with
us
from
dotnet
core
one
Dante
core
wonder
was
it
could
be
painful.
A
If
you
were
there
in
project
Jason,
moving
to
CS
proj,
we
had
a
migration
tool,
it
wasn't
perfect,
but
once
we
are
TM
dim
1o
on
CS
protein,
one
one
was
fairly
straightforward.
Moving
to
oh,
we
changed
a
bunch
of
composition.
We
went
from
you
get
packages
to
runtime
store.
We
did
a
bunch
of
things,
but
most
customers,
I've
spoken
to
who
were
there
on
one
X
and
moved
to
2.
X
were
able
to
do
that
so
fairly
successfully.
It
wasn't
a
massive,
arduous
task.
A
It
may
have
taken
you
a
couple
days
for
a
complicated
application
and
then,
obviously
from
2
1
to
2
2
was
pretty
trivial.
It's
you
know
change.
Some
references
follow
the
migration
guide
issue.
You
really
should
be
going
to
do
each
project
in
a
matter
of
minutes,
moving
from
2x2
304
asp,
net
core
applications
fairly
straightforward
again,
the
project
file
just
gets
simpler
than
it
was
in
you'll.
B
B
Percent
of
people
do
not
be
able
to
move,
but
I
was
at
a
very,
very
large
Bank
in
Europe
a
couple
of
weeks
ago,
and
they
had
like
a
million
lines
of
code,
like
literally
a
million
million
and
a
half
lines
of
code,
a
thousand
projects
and
they're
slowly,
building
a
conversion
tool,
they're
identifying
namespaces
that
are
compatible
they're
running,
creating
a
database
of
a
portability.
Analyzer
results
to
figure
out
what
plugins
are
gonna,
be
horrible
and
what
aren't
yep.
But
at
the
same
time
you
can
run
a
dotnet
core,
3
application
and
call
Windows.
B
B
Understand
that
I
think
that's
worth
calling
out
that
dotted
5
and
a
quarry
whatever.
If
you're
on
Windows
you're
moving
a
Windows
application.
It
is
a
different
task
to
state
I'm,
moving
for
the
dotnet
framework,
4.8
2.85
in
some
theoretical
future
right
and
I'm,
taking
my
entire,
my
Windows
app
that
uses
WCF
and
Windows
transaction
managers
and
comm
objects
and
I'm
gonna
make
it
Lenox.
That's
a
different.
It's
a
very
different
task.
Yeah.
A
Over
just
fine
at
c-sharp
it's
what
that
code
is
calling.
That
is
your
pregnancies
where
we
see
most
of
the
folks
having
heart
ache,
you
can
write
tools
that
convert
project
files.
You
can
write
tools
that
do
analysis
and,
and
you
know,
remove
code
or
add
code
or
generate
code
like
any
any
team
of
any
reasonable
size.
I've
worked
in
in
20
years
had
some
type
of
code
generation
tool,
whether
they
bought
it
or
they
wrote
it.
Most
people
end
up
doing
that
type
of
thing.
A
So
that's
and
I
think
most
people
accept
that
for
this
nature
of
a
change,
that's
going
to
happen,
the
more
painful
things
are,
the
things
that
people
have
alluded
to,
like
you
know
no
WCF
server
in
net
five
donek
or
three
or
net
five
is
obviously
going
to
be
painful
for
some
folks
who
still
have
a
requirement
for
the
features
of
wucf
server.
We
do
have
WCF
client
because
obviously
Interop
interrupting
with
WCF
service
or
servers
that
you
know
use.
A
Some
of
those
features
are
from
new
applications,
including
desktop
applications,
is
important
and
then
also
web
forms.
Now
I
will
say
we
have
a
lot
more
customers
using
a
spinet
MVC
than
we
do
web
form.
Some
MBC's
been
out
what
10
years
now
so
like
it's
a
full
decade,
the
dates
been
an
NBC
has
been
out,
but
of
course,
there
are
still
people
actively
working
on
web
forms.
Applications
I,
don't
know
if
they're
making
new
applications
as
much
as
they
are
people.
A
You
know
maintaining
existing
applications
and,
as
we've
said,
and
we've
talked
to
a
lot
of
these
customers
like,
let's
be
very
clear,
we
do
talk
to
customers
a
lot
and
we
see
the
full
gamut
from
folks
who
have
you
know:
DSP
X
Files,
with
all
the
code
in
the
code
behind
very
well
factored
oh
I
just
need
to
move.
My
UI
I
mean
I,
say
just,
but
obviously
there's
still
a
large
amount
of
work,
but
a
lot
of
those
customers
have
been
doing
that
stuff.
Anyway,
a
lot
of
people
went
through
the
MS
Ajax
transition.
A
A
lot
of
folks
started
removing
logic
from
their
web
forms
apps
and
moving
to
more
JavaScript
centric.
You
know
client
interaction
models
over
the
past
decades,
and
you
know
even
more
customers
went
to
MVC
and
ported
their
aspx
applications
to
MVC
in
this
past
time
and
they
move
to
a
spinet
court.
Quite
a
lot
easier,
MVC
application.
So
there
are,
there
are
a
few
different
approaches.
Folks
can
take.
A
Stack
Overflow
is
going
through
this
at
the
moment
you
know
Nick
and
the
folks
there
are
publicly
showing
the
details
of
how
they're
approaching
it
and
you
know,
and
they
they're
their
eyes
wide
open.
They
knew
it
was
going
to
be
a
lot
of
work.
Yeah,
I,
think
they've
they've
said
it's
going
to
be
about
eighteen
months
to
two
years
to
fully
complete
and
they
have
a
very
complicated
set
of
applications.
It's
not
just
one
app
right.
A
It's
it's
dozens
of
applications
that
work
together
to
form
a
system
and
they're
doing
what
you'd
expect
they're
there
they're
moving
the
shared
code
as
much
as
possible.
They
they
take
all
code
that
are
shared
out
of
the
applications,
put
it
into
dotnet
standard
class
libraries
to
get
the
the
actual
apps
as
thin
as
possible,
so
that
they
only
do
the
bits
that
touch
the
pixels
or
the
bits
that
touch
the
wire
is
what's
left
in
those
edge
applications,
and
then
they
start
the
process
of
moving
those
applications
to
dotnet
core.
A
Now
that
the
bulk
of
the
code
and
the
logic
has
been
moved
into
libraries
that
can
be
shared
there,
they're
still,
mostly
in
that
that
phase
of
moving
shared
code,
I,
believe
or
they're
coming
up
to
the
end
of
it.
I
think
I
talked
to
Nick
a
couple
of
weeks
ago
and
they're
now,
looking
at
moving
their
waser
code,
for
example,
so
we
added
features
based
on
their
feedback
in
a
spinet
core
three
preview,
five
and
to
enable
razor.
A
What
do
they
call
them
like
razor
functions
in
the
in
an
a
CS
HTML
functions
block
and
they
use
that
heavily
throughout
the
UI
for
Stack
Overflow
and
we've
talked
about
the
customers
who
are
taking
different
approaches.
Some
customers
so
I'm
gonna
leave.
My
web
forms
application
as
it
is,
but
I'm
gonna
use
IES
virtual
directories
to
create
new
areas
of
the
application
in
a
spinet
core
and
then
share.
B
A
I've
seen
even
more
complicated,
you
know
integrated
applications
where
they're
not
even
the
same
stacks
like
the
st.,
the
same
app
from
the
customers,
point
of
view
using
it
and
the
browser
is
looks
like
one
app,
but
it's
actually
a
Java
JSP,
app,
plus
an
ASP,
app
plus
some
other
type
of
technology,
and
you
share
CSS
and
use
iframes,
and
that's
how
you
you
make
your
migration
over
time.
I
have.