►
From YouTube: .NET Design Review: Quick Reviews
Description
00:00:00 - Approved: Add StringContent ctor providing tighter control over charset https://github.com/dotnet/corefx/issues/7864#issuecomment-579398933
00:23:57 - Rejected: Is there a function to copy directories? https://github.com/dotnet/corefx/issues/15708#issuecomment-579405459
C
D
Problem
is,
though,
like
I
mean
this
is
the
this
is
the
argument
when
time
zones,
it's
on
the
team
out
in
various
areas
like
I
I,
generally
agree
with
crystal,
because
you
can't
see
what
other
systems
look
like.
They
don't
have
that
so,
for
example,
that
it
went
on
their
path,
locate,
simpler
stars
as
iostream
library,
locate
winner
tea
streaming,
API
that
they
have
read-only
streams
and
and
with
white
streams,
and
it's
a
mess
because
you,
basically
the
problem,
is
not
so
much
that
you
can
express
the
contextual
things
with
the
callers.
D
The
problem
is
the
combinatorial
results
from
that
and
like
in
video,
only
collections,
it's
relatively
easy
because
you
only
only
have
two
modes
but
the
streams.
For
example,
you
have
random
access.
You
have
read,
you
have
ride
ya,
seek
ability
right
like
that,
the
holy
compose
all
of
those
things
and
how
you
now
pass
things
around
in
a
same
way
and
that's
what
he
bus
classes,
iostream
library,
is
relatively
complicated.
Considering
that
all
you
wouldn't
want
is
just
be
the
text
file
right
and.
C
Well,
firm,
for
most
cases
you
say:
if
I'm
not
mutating
this
I
take
the
read:
only
I,
don't
care
about
right
support,
I,
don't
care!
If
it
exists,
you
only
care
that
you
can
read
and
access
elements.
That's
all
you're
going
to
do,
and
so
you
take
that,
and
that
means
you
can
take
both
streams
that
can
write
in
both
and
streams
that
can
read
because
of
the
inheritance
hierarchy.
And
if
you
care
about
mutability,
yes
and
you
take
the
spin
it
but.
D
It's
a
writable,
the
general
only
features
you
have.
If
you
only
have
two
features
you
can
express
it
in
hierarchy
as
soon
as
you
have
more
features,
how
do
you
express
a
and
B
but
not
C?
That's
the
problem
of
streams
right,
that's
why
that
keep
that
you
take
its
if
it
was
just
read
and
write
as
easy,
but
that's
the
the
fundamental
problem,
I
think
for
the
idea
that
use
interfaces
to
model
features.
D
If
you
have
combinatorial
I,
think
for
reading
for
read
and
write
and
with
collections
I
could
similar
to
spam
and
could
be
convinced
that
it
will
be
workable
model,
but
I
think
our
challenges
that
we
introduce
that
model
being
are
15
years
more
18
years
into
the
platform
right,
and
so
that's
also
why
it
is.
If
you
would
only
implement
with
only
interfaces
today
yeah
it
will
be
very
hard
for
you
doing
to
operate.
E
D
A
A
confidence
that
see
has
this
very
extensive
hierarchy
and
that
black
lines
in
shock
started
without
because-
and
this
was
very
like
he
put
so
much
more
weight
on
simplicity,
then
on
you
know,
the
kind
of
objectives
that
you
were
talking
about
being
able
to
you
know
have
some
current
is
expressed
in
signatures
in
type
system.
Yeah.
A
D
D
Me,
like
the
argument
of
adding
interfaces,
more
simplicity,
that
you
can
understand
our
design
more
because
things
are
more
uniform
right
now,
it's
kind
of
like
odd
and
honestly,
just
a
mistaken
or,
and
that
we
don't
have
it
and
that
honestly,
these
kind
of
oddities
make
it
harder
to
explain
to
people.
Does
everyone's.
E
Calculus
change,
if
we
ignore
the
interface
described
here
and
say
I
read
only
set,
is
literally
a
contains
T
method
that
returns
rule.
Otherwise,
it's
an
I
read
on
a
collection
like
you,
you
ignore
is
proper
subset
of
is
subset
of
overlap.
Side
equals
the
only
API
on
here
that
snooze
contains.
Does
that
make
everyone
more
comfortable
with
this
proposal?
No,
actually
we
don't
this
yeah,
because.
A
E
B
C
E
E
B
A
E
E
Okay,
so
said,
that's
so
that's
our
answer
about
so
we
say
if
you
want
contains
which
again,
if
you
read
this
issue
is
really
what
people
are
asking
for
then
use
link
because,
like
no
one
in
the
issue
is
actually
asking
for
I
read
only
set,
as
it's
listed
here
like
seriously.
No
one
was
asking
for
it.
B
E
D
A
E
D
B
E
D
I
think
it
is
an
issue
that
it
may
still
feel
being
you
probably
should
address
right,
like
I
mean
I,
don't
think
we're
saying
that,
like
the
only
anybody
said
like
you
should
not
have
them,
it's
just
super
noisy
and
is
there
another
way
to
do
the
customer
scenario?
I
think
the
question
is
more
like
well,
there
is
a
good
issue.
We
don't
have
that
interface,
it
looks
odd.
Do
we
care
and
I
think
that's
that's
kind
of
the
conversation
to
me
like
I
would
not
be
opposed.
I
probably
would
do
that
these
guys
here.
B
C
I
D
Off,
maybe
I
actually
did
not
see
this
one
here.
So
if
you
take
these
two
guys
off
and
we
just
talked
about
adding
the
interface
and
implementing
it,
does
anybody
feel
strongly
that
we
shouldn't
do
that?
Would
they
take
are
innumerable,
is
parameter
or
her
it
all
myself,
I
think
their
model
of
Avadh
hash
that
and
sorted
said
taken
it
again.
You
know
yes,.
C
B
A
B
D
B
F
D
That
is
to
pull
them
off,
like
you
know
the
interface
hierarchies
that
we
have,
because
some
of
them
are
shared
diamonds
by
construction
right,
where
you
have,
we
implement
an
idea,
nary
and
an
I
collection.
At
the
same
time,
they
both
inherit
from
the
same
things.
Now
you
have
to
default
into
physical
mutations
for
the
same
thing.
B
B
A
We
decided
that
we
are
adding
this
interface.
The
next
level
of
the
discussion
I
would
want
to
have
is
do
we
want
all
these
members
and
there
isn't,
for
it
is
if
the
main
reason
why
people
want
it
is
contains,
and
they
don't
want
to
use
link,
and
they
think
that
they
can
tell
you
know
better
protein
say
stuff
like
this
implementing
this
interface.
That
just
has
basically
contains-
and
you
know,
maybe
like
a
smaller
subset
of
these
methods
and
it's
super
simple,
implementing
subset
operations.
C
C
B
C
D
B
F
B
F
B
E
B
E
I
C
C
D
D
D
E
So
there
are
existing
overloads
right
now
that
allow
you
to
specify
the
media
type
in
the
encoding
as
separate
parameters,
but
control
over
the
actual
content
type
header
value.
None
of
those
existing
constructors
will
give
you
that
full
control,
whereas
if
you
pass
in
the
actual
header
here,
you
now
have
full
control,
so
I
don't
think
we
get
head
everything
to
take
this
year.
E
So
there
are
existing
overloads
to
take
encoding
and
string
for
content
out
before
media
type
and
the
way
that
those
header
the
way
that
those
constructors
work
is
they
concatenate
them
together
and
generate
the
header
string
for
you.
But
that
means
that
you
don't
have
control
over
the
header
string.
At
that
point,
you
don't
have
control
over
what
actually
gets
emitted.
That's
a
content,
type
response
and
I
see,
whereas
if
you
pass
in
the
actual
content
type
header,
which
is.
D
D
Ooh,
that's
what
I
meant
so
the
other
ones
that
I
saw
there
were
two
overloads
or
tweet
one.
Without
that,
just
the
video
one
roof
takes,
the
content,
type
is
or
the
media
type
is
a
string
and
one
that
takes
media
type
header
later.
That
seems
to
be
a
pattern
that
the
other
API
is
there.
Yes,
in
this
case,
it
seems
like
just
an
omission.
This.
B
E
G
E
E
B
E
D
But
it
I
could've.
B
D
I
think
the
problem
that
we
have
and
I'm
not
sure
what
other
things
we
edit
since
then,
but
in
the
past
we
didn't
want
to
add
io
API.
Is
that
have
policy
right?
So
the
question
is:
if
you
have
to
swallow
sorry
this
for
loop,
where
you
walk
over
the
things,
what
happens
if
one
of
the
copy
operations
fail,
do
you
undo
the
you
should
go
and
you
throw
an
exception?
Do
you
like?
What
do
you
want
the
baby
to.
B
Because,
presumably
because
somebody
come
in
so
we
have
directory
and
so
that
move
too,
but
not
copy
too
and
well,
you
can
say
well
it's
because
move
is
atomic.
So
there's
no
policy
yeah
if
it's
a
different
device
move,
is
actually
a
serial
copy
public
which
could
afford
in
the
middle
yeah.
So
we
have
if,
if
we
have
move-
and
it
doesn't
check
that
it's
not
staying
on
the
same
device,
yeah.
E
D
F
Like
directory
permissions,
sorry,
what
were
you
saying
for
directory
permissions?
Could
make
this
potentially
a
complex
thing
to
implement,
so
it
could
be
lagging.
Is
there's
a
question
of
if
this
would
do
that?
But
if
it
would,
then
it
might
be
good
to
have
a
convenience
method
here
that
users
wouldn't
have
to
incorrectly
implement
it
themselves.
I
think.
D
I
E
Yeah,
what
we,
what
we
could
do
them
is
if
we
want
to
say
that
behavior
should
be
part
of
the
API.
We
can
pump
this
back
with
plate.
Please
describe
very
succinctly
or
very
not
so
simple,
but
please,
please
describe
what
yeah
precisely
what
the
behavior
from
this
method
is
yeah,
given
all
these
out
cases,
because
someone
actually
did
comment
on
the
education,
so
yeah,
2017,
yeah
and.
C
A
E
B
E
B
C
A
C
A
I
don't
know
it
feels
a
bit
like
a
hug,
but
I
agreed
that
we
already
have.
We
are
already
kind
of.
We
have
a
lot
of
debt
because
we
have
a
lot
of
operations
that
don't
do
it,
but
I
am
NOT
I
I'm,
not
thrilled
about
the
method
that
taken
that
can
take
half
an
hour,
not
having
ability
to
cancel
it
and
I'm,
not
in
not
having
ability
to
record
progress,
13
and
so
on
and
so
on.
Maybe
we
should
properly
design
it
with
progress,
reporting
and
cancellation,
because.
D
B
C
B
D
B
Event
reporting
supposedly,
if
they
answer
a
minute
something
they
get
all
files,
gives
you
back
the
file
info
right.
So
it
like
it's
not
gonna,
take
an
hour.
The
delete,
recursively
like
I,
can't
think
of
a
file
system.
Word
delete,
would
take
hours,
I
mean
like
I
guess.
If
you
had
a
period
of
at
your
storage,
that
makes
me
mad.
B
Versus
copying
files
were
especially
if
it's
a
problem
device
boundary
it's
like
now,
you
have
to
care
about
all
the
data
and
not
just
all
the
tree
structure
yeah.
So
this
is
significantly
significantly
longer.
There's
the
question
of.
Is
it
Apple?
Preserving,
probably
not
because
it
you
can
say
the
CP
char?
Is
it
like
there's
just
a
whole
bunch
of
stuff,
but
I
think
it's
an
easy
thing
that
we
can
say
to
the
Shady's
fine,
but
I,
don't
think
that
it
I,
don't
know
that
it
makes
sense.
I
also.