►
From YouTube: 🖧 IPLD Every-two-weeks Sync 🙌🏽 2022-01-31
Description
An every two weeks meeting to sync up on all IPLD (https://ipld.io) related topics. It's open for everyone and recorded. https://github.com/ipld/team-mgmt
A
What
I
also
like
to
point
out
this
week
is
that
normally
so
we
have
this
public
meeting
and
then
we
have
an
after
party
and
everyone
is,
is
invited
to
join,
to,
for
example,
discuss
things
that
if
you
have,
for
example,
exciting
news
and
you
can't
share
them
publicly
as
it's
live
stream,
feel
free
to
stay
for
the
after
party.
A
And
then
it
might
happen
that
we
then
ask
you
to
leave,
because
then
it's
the
after
after
party
for
us,
if
we've
in
this
car,
have
to
discuss
any
employee
things
or
something
or
yeah,
because
it's
also
like
the
only
time
in
the
week
where
we
discuss
in
sync
between
each
other.
So
we
also
sometimes
need
some
time
to
check
all
right
and
also
and
the
other
meeting
notes.
A
B
Me,
okay,
I
don't
know
if
I
have
any
huge
headliner
news
lately,
just
kind
of
in
the
grind
of
things
we
had
somebody
discover
a
bug
in
selectors
recently,
so
our
goaling
implementation
has
some
fixes
for
something
that
was
previously
a
bit
of
a
crasher.
B
There's
a
link
in
the
notes
to
the
fixtures
that
helped
us
chase
it
down.
I'm
also
very
pleased
with
the
fixtures,
because
it
was
one
of
those
nice
clean
pr's
to
the
specs
repo.
So
I'm
going
to
point
at
that
one.
If
anybody
wants
to
make
fixtures
and
specs
prs,
it's
a
very
good
template
one
yeah.
She
turned
out
to
be
something
around
like
the
base
case
of
the
recursion
clauses
and
well
a
lovely
place
for
off
by
one
ears
anyway,
it's
fixed
now.
B
If
anyone
would
like
to
do
some
documentation
review,
I
finally
almost
finished
a
write-up
about
adl
signaling
and
there's
a
big
pr
in
the
ipld
ipld
repo
about
that
to
overview
it.
It
introduces
the
concept
of
signaling
and
like
most
things
in
that
repo,
it's
trying
to
talk
about
how
this
works
logically,
and
it's
not
talking
about
specific
implementation.
So
much-
and
this
document
in
particular,
is
trying
to
make
sure
that
it's
understood
that
there
are
a
lot
of
different
ways
to
do
signaling
mechanisms
and
say
hey
code.
B
Some
of
them
are
also
getting
implemented.
Will
scott
is
also
in
the
call
here
has
done
one
of
them
now
he's
done
signaling
with
selectors,
so
that's
cool,
I'm
gonna
call
that
done
right
yeah.
What
else,
and
I
had
a
lot
of
conversations
with
somebody
this
week-
interested
a
lot
in
type
systems
and
pitara
has
had
a
lot
of
notes
about
that.
I've
also
recently
written
up
some
fresh
notes
about
if
we
can
and
might
want
to
extend
the
definition
of
unions
with
another
representation
strategy.
B
They
would
also
add
a
lot
of
other
trade-offs
that
might
be
complex
to
implement,
depending
on
how
you
go
about
them.
So
there's
a
lot
to
consider
there
and
okay,
one
other
random
thing
that
I
want
to
just
relay
from
other
people.
Peergos
has
done
some
really
exciting
new
work
on
encryption
and
block
level
encryption
that
they've
written
up
recently
they've
got
a
nice
blog
post,
peergos.org
posts,
slash
baths,
that's
an
acronym
for
something:
I've
forgotten
what
block
block
access
tokens.
B
I
think
they've
done
a
bunch
of
work
on
not
just
an
encryption
strategy,
but
also
on
how
to
glue
the
authentication
token
transfer
onto
the
bitswap
transport.
If
I
understand
correctly
so
if
people
are
excited
about
that,
let's
go
read
more.
C
Sure
I
think
the
one
thing
in
ipld
land
that
I'm
currently
chasing
down.
We
got
a
request
on
generation
of
cars
that
people
want
to
be
able
to
efficiently
generate
a
car
starting
from
some
offset
in
it.
So
if
a
transfer
fails,
they
want
to
be
able
to
resume
it
and
say
we'll
now
regenerate
this
car,
but,
starting
from
you,
know
two
gigs
into
it.
C
Please,
because
the
hdp
range
request
that
would
come
in
downstream
would
ask
for
it,
starting
at
some
offset
in
it
and
they'll
keep
context
around
so
they'll
have
the
same,
like
progress
object
in
their
traversal
and
things
like
that,
but
they
want
to
sort
of
fast
forward
part
way
through
and
then
start
the
traversal
so
figuring
out
exactly
how
that
ability
to
skip
forward
and
only
do
the
things
you
need
and
what
you
would
want
to
cache
looks
like
through
a
couple
layers,
both
the
car
generation
and
creation
part,
and
then
within
that.
C
C
You've
got
your
progress,
object
that
you're
running
through
and
you
do
your
traversal
or
your
walk,
but
you
just
return
skip
until
you
get
to
the
place
that
you
need,
but
you
watch
sort
of
the
path
segments,
so
you
do
go
down
when
the
current
path
segment
matches
the
one
that
you
need.
C
So
it's
when
the
sort
of
current
path
segment
that
you're
evaluating
on
doesn't
match
that
you
skip
until
you
get
to
the
right
one.
This
needs
some
change
to
our
structure
in
progress
right
now.
Progress
keeps
a
map
of
scene
links
that
it
uses
to
not
reach
reverse
links.
If
that's
just
a
map,
you
don't
have
the
ability
to
rewind
to
a
previous
world
view
where
some
subset
of
links
have
been
seen,
because
you
don't
know
which
subset
of
links
are
seen
at
any
given
point.
C
We
need
to
now
both
collect
them
in
a
list
of
when
they're
seen
as
well
as
the
map,
so
that
we
can
say
I'm
going
back
to
this
position
in
the
traversal.
I
want
to
reset
my
map
to
the
subset
that
would
have
been
seen
at
that
position,
because
you're
skipping,
potentially
subtrees
that
would
have
caused
other
links
to
be
seen
that
are
now
no
longer
being
seen
because
you're
skipping
the
whole
subtree.
C
Yeah,
that's
fun,
so
I
believe
this
can
all
be
done
by
wrapping
the
link
system
and
progress
in
a
fun
hybrid
thing,
but
we
should
think
about
how
that
those
two
structures
should
be
decoupled
to
allow
that
to
work,
because
there's
some
interplay,
that's
non-trivial
in
doing
this,
and
so
I
will
have
a
thing
that
works
and
I
look
forward
to
the.
How
do
we
move
this
to
something
that
both
works
and
is
vaguely
plausible
and
mergeable.
A
Thank
you
next
on
the
list
is
myself.
I've
again
spent
some
time
on
rust,
ipad
d
and
rust.
Multi
formats
just
did
a
bunch
of
work,
but
the
exciting
thing
is
that,
hopefully
this
week
I
we
will
have
a
rust
multihash,
a
rust
cid
and
a
lip
ipl
d
release
with
some
yeah
fancy
new
stuff
and
then
already
the
things
queued
up
to
be
merged
into
the
master
branch.
A
So
but
first
getting
the
release
out
would
be
good
and
I've
already
also
tested
the
new
stuff
that
isn't
released
yet
with
lib
p2p
and
with
forest,
which
is
a
rust
implementation
of
icon.
So
there
it
works.
So
I'm
pretty
confident
that
the
releases
won't
break
anything
major.
A
Also,
though
the
api
changes
slightly,
but
that's
like
yeah
just
small
changes,
so
it's
not
a
big
deal
for
those
projects
all
right.
Next,
that's
all
I
have
next
on
my
list
is
rod.
D
D
So
I
was
doing
I've
been
doing
a
lot
of
graph
sync
work
and
it's
it's
going
through
a
transition
in
the
mesh
messaging
format,
from
the
current
protobuf
format
to
dagsebal
and
part
of
that
is
we're
using
bind
node,
and
so
it's
been
a
lot
of
exercising
bind
node
and
helping
find
bugs
and
rough
areas
and
daniel's
been
doing
an
excellent
job
of
ensuring
that
all
those
rough
dangerous
areas
are
cleaned
up
and
it's
production
ready
so
quite
happy
with
it.
It's
it's
nice
work.
D
D
This
is
a
use
case,
specific
thing
why
you
would
want
to
do
that,
but
there
are
good
reasons
why
you
would
want
to
just
make
a
curvy
one
and
use
the
v2
interface,
and
so,
and
one
of
the
reasons
is
the
cli.
Now
this
car
create
can
now
take
a
version
flag,
so
you
can
make
a
car
v1.
It's
not
always
a
car
v2,
which
is
nice
for
far
coin
in
particular,
and
then
go
unix,
fs
node,
the
adl
for
unix
fs.
I
did
some
work
on
that
to
make
it
the
output
happier.
D
So
particularly
the
t
size
was
missing
on
a
few
places
in
some
of
the
nodes
and
it
it's
not
a
huge
problem.
T
size
is
not
meant
to
be
mandatory,
but
there's
two
issues,
one
that
produces
different
bytes
for
same
input
and
two
there
are.
There
is
some
code
that
relies
on
t
size
to
to
assume
the
size
of
a
graph
underneath
a
node
with
with
dag
pbe
graphs,
so
part.
C
C
D
Yeah,
as
I
said,
it's
not
critical,
it's
just
that
we
do
have
net
like
estuary.
I
pointed
out
in
that
straight
estuary
is
actually
using
this
as
a
way
to
split
graphs
up
and
when
it's
wrong,
it's
sort
of
it
can
trip
up.
So
there's
a
lot
of
assumptions
that
we're
doing
t
size
right
anyway,
and
the
other
thing
was
the
hampt
wasn't
working
for
strata
directory.
So
just
did
some
work
on
the
hemp
in
unix
of
snow
and
now
making
the
same
bites.
D
I
reckon
unix
of
snow
is
getting
close
close
to
the
point
where
we
consider
when
we
can
start
to
consider
replacing
at
least
some
instances
of
go
unix
of
s
with
it.
That
would
be
really
interesting
to
experiment
with
in
go
ipfs
at
some
stage,
but
it's
a
you
know.
It
is
our
most
mature
adl.
So,
let's,
let's
make
it
good
there's
a
couple
of
minor
things
again:
iple
prime
dexy
ball
length.
Checking
on
encoder
developer.
Bytes
is
a
really
weird
case
where
it
was.
D
It
was
a
bug
in
bind
node
that
that
was
allowing
the
whole
system
to
produce
invalid
seaboard
bytes.
So
you'd
get
this.
This
c
bar
at
the
other
end
that
just
didn't
make
any
sense,
and
so
this
is
like
a
sanity
check
where
it
will
error
in
in
encode
if
the
rest
of
the
system,
if
one
of
the
type
nodes
or
the
just
one
of
the
nodes,
is
lying
about
how
many
elements
are
in
a
map.
D
I
think
it
is
for
that
so
yeah
there's
a
proposal
on
guibelia
encoded
length
function
so
that
you
can.
You
can
figure
out
how
many
bytes
a
node
will
take
up
when
it's
in
coherency
wall
there's
a
discussion
in
there
about
whether
it's
warranted
and
what
use
cases
this
might
be
useful
for
so
that
that
can
go
on,
and
yesterday
I
started
a
just
a
bit
of
fun,
an
equivalent
of
iple
garbage
thing.
I
wrote
in
javascript
a
while
back
just
to
produce
garbage
garbage
data.
D
I
don't
know
if
we
have
this
in
go
and
I
really
want
it,
and
so
I
have
a
working
one
now.
D
I
just
need
to
write
some
more
tests
for
it,
but
you
can
just
ask
it:
you
can
give
it
a
rough
size
and
it'll
sort
of
randomly
make
you
nodes
of
varying
complexity
that
you
can
then
run
through
things
like
an
encoded
links,
thing
to
check
that
it
works,
and
then
I
last
week
I
spent
a
couple
days
working
on
helping
lindsay,
get
ready
for
the
pln
launch,
pulling
together
an
ipld
curriculum.
D
We
did
a
bootcamp
version
0
last
year
and
using
the
learnings
from
the
bootcamp
to
do
the
launchpad,
pulling
together
a
bunch
of
curriculum,
a
lot
of
the
stuff
off
iple
to
io,
pointing
to
things
there,
videos
and
other
things,
putting
it
all
together
in
a
curriculum
with
some
write
up
around
it.
D
That
was
really
that
was
a
really
quick,
quick
bit
of
work,
but
there's
a
there's
a
lot
of
text
in
there
and
it
will
go
undergo
a
lot
of
changes,
because
that
was
a
really
sort
of
rough
first
draft,
so
that
that's
happening,
launch
pad
is
happening
this
week,
so
sort
of
a
rush
to
get
just
that
shipped.
And
then
I
assume
that
launchpad
version
2
will
be
even
more
clean
than
that
anyway.
That's
me.
E
Yeah
howdy
y'all-
I
haven't
been
here
for
a
while,
but
I've
been
at
the
intersection
of
did's,
decentralized
identifiers
and
verifiable
credentials,
mostly
in
the
healthcare
space,
which
is
my
day
job
and
that's
like
smart
health
cards
with
kovic
credentials.
So
we
worked
on
that
before
code.
E
It
actually
started
and
now
we're
working
on
something
with
consent,
management
for
release
of
information
using
verifiable
credentials
and
ideally
ipld,
but
a
lot
of
that
has
to
do
with
encrypted
data
lockers
or
this
idea
of
object,
capabilities
or
chain
credentialing,
ideally
word
where
ipld
actually
is
a
perfect
fit
for
that.
It's
just
a
matter
of
convincing
other
standards
that
ipld
is
mature
enough
actually
to
handle
these
use
cases.
F
Howdy
thanks
for
letting
me
join
in
for
those
I
haven't
met,
I'm
one
of
the
engineering
managers
here
at
protocol
labs
and
excited
to
be
getting
more
more
engaged
here,
but
awesome
to
see
all
the
progress
and
updates
yeah,
no
exciting
technical
accomplishments.
For
me,
but
you
know
there's
this
year's
protocol
labs
is
pushing
to
get
more
of
its.
You
know
just
internal
coordination,
etc
happening
closer
to
where
the
community
is
working.
F
It's
a
big
big
one
of
those
speed
bumps
is
just
the
entrenched
protocol
lab
slack
that
we
have
so
in
process
on.
You
know,
proposal
and
process
for
like
moving
out
of
that
into
into
spaces
like
in
the
discord.
You
know
more
to
come
on
that,
but
that's
that's
what
happening,
and
hopefully
you'll
see
more
activity
on
this
frontier
in
february.
A
Cool
yeah-
I
guess
that
that
we
so
so
our
public
channel
is
already
oh.
We
try
like.
Basically,
we
try
to
push
it
already
for
years.
I
think
that
the
team
is
on
the
public
ipld
channel
in
matrix,
which
is
also
bridge
to
discord
and
yeah.
So
I
guess
it's
it's
a
good
reminder
that
we
all
should
spend
more
time
on
that
one
and
post
our
things
there,
rather
than
internally
so
yeah.
F
Yeah,
we'll
have
a
forcing
fight.
I
mean
they're
got
to
figure
out
the
exact
date,
but
one
actually,
the
goal
is
to
sunset
pl
slack.
So
there
isn't
an
option
to
post
npl
slack,
but
that
there
will
still
be
private
channels
and
places
to
coordinate
but
like
let's
do
it
a
lot
closer
to
wherever,
where
we
hope
our
community
is
or
where
we
know
our
community
is.
B
Just
want
to
double
tap
on
that
real,
quick
anybody,
who's
on
matrix
fear.
Not
I
too
am
still
on
matrix
and
I
don't
think
I'm
going
anywhere
but
the
matrix
the
discord
bridge,
it's
there
so
no
worries
anyone.
A
G
A
All
right
cool,
so
what's
next
who's
next
is.
G
It
me
yes,
hello,
it's
my
first
time
here.
I
have
not
really
worked
on
something
that
is,
I
mean
I
guess
it
is
ipld
related,
just
not
the
current
cod
base.
Basically,
for
the
last
two
week,
I've
been
working
on
I've
been
trying
to
put
like
linux
repositories
on
ibfs,
and
I
was
finding
that
this
was
way
too
resource
intensive.
So
I've
made
something
that
is
a
lesser
possible.
G
So
that's
like
that's
very
custom
code
that
just
is
capable
to
like
chunk
files
and
make
directories
and
actually
handle
sim
link
too.
But
it's
doing
you
know
basic
unix
of
stuff.
The
goal
is
just
maybe
someone
will
find
it
interesting.
G
It's
like
the
only
real
dependencies
is,
go
ipldc
bore
and
like
go
cid,
everyone
go
multi-ash.
Everything
else
is,
I
guess,
like
ego
pro
two,
but
the
does
whatever
for
the
celt.
It
should
be
built
in
to
the
language
at
that
point
yeah.
So
that's
basically
it
so
you
give
it
like
a
directory
and
it
makes
a
car
out
of
it.
It
is
a
backhander
phone
buffer
with
a
certain
size
to
send
the
car
at
while
you
are
checking
it
and
so
right
now,
I'm
only
sensified
to
estuary,
but
yeah.
A
Cool
thanks,
that's
great,
so
we've
been
through
the
updates.
So
now
is
the
time
to
yeah
discuss
other
things.
So,
if
anyone
is
anything
you
can
put
it
on
the
agenda
list
or
you
can
just
yeah
raise
your
hand.
So
it's
also
if
you
want
to
again
like
introduce
yourself
or
if
you
just
want,
or
also
if
you
have
questions
so
this
is
also
the
room
to
ask
questions.
If
you
yeah
hit
any
problems-
or
I
don't
know
so
feel
free
to
speak
up
or
put
it
in
the
midi
notes.
C
Have
we
have
we
pointed
you
to
the
go
car
and
go
unix
fs
node.
G
So
I
will,
I
have
a
look
at
this
code,
but
I
don't
really
like
the
way
how
it
wants
to
use
the
data
store.
Yeah,
I
just
like
the
car
format
is
quite
simple.
Realistically,
my
only
complaint,
no,
I
have
to
complain
with
it,
but
the
only
real
complaint
I
have
is
the
fact
that,
like
it's
using
cids
and
not
multi-hash
for
identifying
blocks,
but
everything
else
is
very
simple
and
work
is
like
easy
to
understand.
So
I've
just.
G
I
did
not
find
a
way
to,
like
both
add
blocks,
create
the
car,
while
I'm
doing
it
like
I,
I
do
mean
the
same
at
the
same
time,
I'm
not
first
drinking
things
and
then
making
the
car
I'm
making
the
car
I'm
like
moving
files
in
place
with
copy
fire
range
in
linux,
and
so
I
I
I
was
finally
finding
like
it
would
be
pretty
hard
to
make
zero
coping
work
on
on
the
car
as
a
go
car
api.
G
Yeah,
it's
like
using
right
call
to
do
that
and
a
right
is
slow,
so
I'm
using
like
copy
fire
range
to
do
corner
copies
and
on
the
right
first
system
with
the
right
option,
and
all
of
this
it
like
makes
zero
copies.
So
it's
it's
not
actually
copies.
It's
like
the
the
car
file
has
some
data
pointing
to
the
data
of
the
first
file,
and
if
you
modify
any
one
of
them,
it
makes
a
copy
all
right.
So
it's
really
smart.
G
B
G
Yeah,
it's
not
even
unix.
Actually
you
don't
need
a
raw
sales
call,
because
if
you
use
io.copy
by
default,
like
you,
try
to
default
to
write
up
to
and
reader
from
api
and
file
implement
this
with
the
reader
from
api.
So
in
this
very
specific
case
you
could
use
just
io.copy
and
it
works,
but
like
I
would
need
to
give
a
file
pointer
or
nio.writer
pointer
to
the
car
and
while
I'm
sending
the
file,
which
I
don't
think
like
the
api
currently
does
right.
G
Also
one
thing
it's
like
now
that
maybe
a
sap
I
could
do,
but
I
did
not
do
look
enough,
but
I
had
issue
where,
like
the
api
were
requiring
on
me
to
like
know
the
cits
of
the
thing
I
want
to
put,
but
I
don't
actually
know
because
I'm
literally
reading
the
file
where
I'm
copying
it
and
so
like
since
the
cia
become
before
the
file.
G
So
what
I'm
doing
is
like,
I
literally
have
a
x
amount
of
lights,
the
big
file-
and
I
just
stick
like
to
the
end
and
I
make
a
smart
files.
It's
like
a
feature
linux
has
is,
you
can
seek
to
I
basically
like
6
to
30
gigabytes
and
I
write
seeking
down
so
every
time
I
have
a
file
of
set
counter
and
when
I
write
something
I
just
decrement
it,
and
so
that
allows
me
to
like.
G
B
B
Have
to
write
backwards
because
you
have
these
prefixes
and
you
can't
compute
them
until
after
for
what
it's
worth.
I'm
pretty
sure
people
did
discuss
that
at
length
when
they
were
designing
a
car
format.
But
the
choice
was
to
optimize
for
this
order,
because,
if
you're
going
to
verify
it,
while
you're.
G
G
B
And
then
okay,
I
have
a
question
I
didn't
know.
There
was
a
syscall
for
this,
so
you're
telling
me
you're
right
backwards,
starting
from
an
unfairly
large
offset
and
then
there's
like
a
reverse
truncates.
This
call,
so
the
file
starts
somewhere.
No.
G
So
that's
that's
said
there
is
not
that
cisco.
I
looked
it
up
and
there
is
not.
However,
what
you
can
do
is
you
can
like
clone
with
an
offset.
So
you
do
a
zero
copy
from
that
file
to
a
second
file
and
that
works.
However,
that's
the
paint
because
copy
fire
wrench
doesn't
do
that
because
it
seems
like
there
is
an
offset,
and
it
doesn't
like
that.
G
So
you
need
to
like
first
copy
the
first
few
by
to
align
it
to
your
to
your
file
system
block
size
so
like
whatever,
and
then
you
can
idle
file
clone
so
like
there
is
three
different
cisco,
no
two
different
one,
but
it's
not
actually
like.
It's
very
it's
clear
that
it's
a
new
feature
in
linux.
It
doesn't
clearly,
ideally
you
just
do
copy
fire
engine,
and
so
this
you
cannot
figure
it
out,
but
it
doesn't
in
all
cases.
So
it's
kind
of
sad.
G
H
H
In
the
chat
there
is
actually
this
call
to
trim
up
files
from
the
front
again
with
the
gypsy
polyfill.
You
know
the
way
it's
supposed
to
be
so
you
can
totally
do
that.
H
G
C
C
G
Exactly
so,
to
do
that,
I
just
use
two
megabyte
blocks
and
I
think
that,
like
you
can
route
about
like
4k,
something
like
that,
I
believe
my
block
size
is
4k,
so
I
have
four
kids
that
is
not
ruffling
yet
and
like
4k,
each
two
megabytes
is
it's
not
a
big
deal
if
you
use
smaller
block
size,
obviously
that
would
be
an
issue
like
more
it's
because
simply
it's
just
bigger
of
a
ratio,
but
I
on
two
megabytes,
like
I'm
at
this
point
where
I
cannot
test
the
speed
like
I'm,
either
bound
by
the
remote
service
I
use
or
I'm
bound
by
the
speed
of
my
disks,
even
when
I
test
this
with
a
ram
disk,
it's
my
cpu
getting
slow,
because
I
cannot
do
the
shutter,
56
or
blake
2
fast
enough.
H
A
couple
more
ideas:
you
can
totally
use
murmur
cache
for
your
quote-unquote
hashing.
If
you
actually
want
to
you
know
still.
B
H
There
is
a
very
cheap
non-graphic
hash
function
that
you
can
use
to
basically
yeah
effectively
remove
the
the
hashing
stuff
to
see
to
see
how
you
know
how
fast
you're
going.
Also
any
ryzen
cpu,
which
are
you
know,
pretty
much
ubiquitous
on
on
the
cloud
and
and
elsewhere
does
shot
with
six
at
about
three
gigabits.
A
second
sorry
gigabytes,
a
second
so
yeah.
G
I
have
directories
on
this.
You
have
to
have
like
safe
links,
so
I'm
not
going
to
do
that.
I
I
do
do
like
it's
only
on
one
fight,
because
I
was
scared
of
fd
exhaustion,
but
I
still
I
have
more
multi-threaded
chunking
so
like.
If
you
have
an
x,
a
a
quite
big
file.
G
Multiple
blocks
would
get
hash
at
the
same
time
and
like
by
default.
I
just
do
a
number
of
cpus,
but
you
if
you
have
a
really
fast
disk
and
you
want
huge
q
depth,
you
can
bump
that
like
to
whatever
big
number
you
want,
so
the
hashing
spin
you
can
just
like.
If
you
have
big
size,
you
can
just
throw
more
cpus
at
it
and
it
will
work.
G
Don't
know
if
I
said
it,
but
the
dogs
are
really
nice
like
generally,
if
I
don't
know
who
I'm
aware,
I
miss
compliments
for
this,
but
I
generally
just
look
the
docs
and
they
were
good.
So
I
just
like
followed
the
dogs.
I
didn't
do
anything
really
smart.
I
mean,
I
guess
the
zero
coping
stuff
is
quite
smart,
but
it
just
you
just
knowing
stuff
about
linux.
It's
not
specific.
G
Yeah,
oh
also
one
thing
my
my
crts
are
like
not:
they
don't
match
the
current
implementations
like
for
the
same
fire.
I
have
different
cids
because
I
use
different
lengths.
My
my
directory
and
my
my
roots
and
directory
creation
code
just
try
to
fit
as
much
stuff
until
reaching
the
block
limit.
So
I
have
like
two
megabyte
routes,
which
is
better
because
less
overhead,
but
the
current
like
may
try
to
make
something
balanced.
I
don't
I
don't
have
balance
here.
G
However,
I
have
balance
it
lifts
which
the
current
thing
doesn't
do
like
if
I
have
remainder
instead
of
having
like
also
leaf,
be
block
size
except
wine.
I
not.
I
have
like
the
remainder,
which
is
one
bite
on
each
leaf
until
the
remainder
is
done,
and
then
I
have
leaf
that
are
one
by
lower
than
the
first
one.
I
don't
know
if
that's
clear,
but
you
basically
like
all
only
for
one
bite
maximum
to
the
size
of
another
leaf
and
they
all
are
almost
the
same
size
which
I
found.
G
D
G
You
might
think
that
funny
just
force
the
creation
of
the
root.
I
could
not
come
up
with
an
easy,
reliable
formula
just
to
know
how
many
things
I
could
put
in
a
in
a
route
until
it
gets
too
big.
So
I
literally
do
a
binary
search
on
the
amulet
of
thing
I
put
in
the
root
until
it's
perfectly
at
two
megabytes
or
like
just
below
just
one
root
below
which
is
generally
fast
enough,
because
binary
searches
are
probably
surprisingly
useful,
like
log
base
2.
I
do.
I
really
need
to
explain
this,
but
it's
fast
enough.
D
G
G
Also
one
thing:
I
I've
encouraged
the
current
ipld
thing
when
you
create
routine
file
for
each
link.
It
has
an
empty
name
instead
of
not
specifying
the
names,
so
this
was
two
bytes
each
time
because
it
weighs
a
byte
for
the
named
signal
of
the
link
field.
I
don't
know
if
you,
if
how
comfortable
your
people
are
with
protobuf
but
like
basically,
the
first
thing
is
like
an
id
telling.
G
What's
the
next
field
going
to
be
and
then
for
variable
length
types,
it's
just
the
length
of
the
thing,
and
so
basically
I
notice
that
for
files,
all
links
have
a
name
that
is
equal,
like
two
quote:
unquote
code
mark.
So
this
is
an
empty
name,
but
it's
like
it's
a
leaf
inner
file,
so
I
don't
think
it
makes
sense
to
have
a
name
here.
Section
type
ld
code
base
produce
it
and
that
way
it's
to
bite
the
link,
which
is
probably
not
a
big
deal,
but
let's
just
find
it
like.
D
D
Does
that
work
to
specify
the
limits
and
the
boundaries
and
all
that
sort
of
stuff,
and
then
we've
just
sort
of
put
it
aside
and
say:
that's
that's
just
how
it
is
and-
and
we
can
you
know-
try
and
move
on
with
with
new
stuff,
but
for
file
data
that
wants
to
be
fbfs
compatible.
It's
got
to
fit
within
that
box
and
we've
sort
of
agreed
there's,
no
we're
not
going
to
attempt
to
improve
or
touch
that
it's
just
as
it
is,
and.
G
G
Yeah,
sorry,
if
you
decode
the
dac
pb
block,
take
any
deck
pb
block
but
make
it
either
decoder
route,
pass
it
to
the
pb
specification,
the
format
and
like
you
will
see
that
the
name
field
in
the
links
are
empty
for
files
roots
so
like
when
I'm
in
a
fire
root.
You
have
a
unix
of
s,
root
that
is
pointing
to
these
or
other
roots,
and
it's
not
a
directory,
so
it
doesn't
make
sense
to
have
a
name.
So
it's
an
empty
name.
G
However,
an
empty
name
needs
two
extra
bytes
one
for
signaling
and
one
for
the
zero
length.
It's
wasting
two
bytes
per
link
in
the
in
the
unix
affairs
roots,
but
that's
all
it
is.
C
G
So
it
might
just
feel
like,
but
like
the
golden
doesn't,
do
different
ascension
between
a
near
thing
and
a
zero
length
thing
like.
If
you
lend
nil,
it's
always
going
to
be
zero.
So
maybe
it's
just
that
that
is
working
because
golden
or
I
don't
know
if
it's
proto
buffs,
I
say:
hey,
that's
a
nil
string.
I
will
initialize
it
to
zero,
but
in
any
way
it's
working.
It
was
out
so.
D
This
is
an
interesting
upcoming
case
and
like
because
I
I
wrote,
there's
a
new
version
of
the
dag
pb
codec
for
go
ability,
prime
and
I
had
to
look
at
the
details,
but
I'm
suspecting
that
I
I
I'm
not
writing
that
field
out
when
it
doesn't
exist,
because
I
can't
we
had
this
discussion
last
year
about
the
these
optional
versus
nullable
fields
and.
G
D
Because
they,
because
that,
if
you
look
at
go
codec
dagpb,
it
doesn't
use
the
go
protobuf
stuff,
it
does
its
own
protobuf
authoring,
because
because
the
this
format
is
so
simple,
there's
just
there's
not
really
a
good
need
to
use
the
whole
library.
When
you
can,
you
know
all
through
it
pretty
cleanly
and
and
the
other
thing
that
that
library
does
is
it's.
D
G
D
Yeah
you
so
that
that
repository
does
does
have
some
layering
in
it
I
mean
it's
very
ipld,
prime
based,
but
there's
some
layering.
There
is
potential
to
make
some
of
this
private
stuff
public.
If
you
wanted
to
to
consume
it
from
the
outside
or
you
could
just
copy
and
paste
it,
I
guess
but
yeah
name,
it
name
is
optional.
So
in
that
one.
D
G
A
D
G
D
B
D
Is
that's
really
system
dependent
that
a
lot
of
systems
just
don't
it
doesn't
matter
like
a
lot
of
use
cases?
That's
not
interesting
at
all.
It's
just.
I
want
to
get
my
stuff
in
and
I
want
to
get
it
out,
but
there
are
other
places
where
that
does
matter
like
when
you,
when
you're
doing
de-duping
or
you're
doing
something
that's
got
some
sort
of
consensus
or
insurance
base.
A
All
right,
so
is
there
anything
else
so
because
I
know
there
might
be
a
gen
items
that
are
not
on
the
list,
but
people
told
me
that
they
want
to
talk
about
so
peter.
Do
you
want
to
talk
about
this
cid
thing
or?
Oh?
I
actually.
H
No,
I
actually
thought
that
you
would
bring
it
up
because
it
was
actually
mostly
your.
H
A
Okay,
so,
okay,
I
I
have
thought
you
bring
it
up.
Okay,
so
it's
so
is.
Is
there
so
if
there's
anything
else,
I
would
talk
about
anything
else,
because
I
would
try
me
try
to
recall
the
details
because
it
was
before
the
holidays.
So,
but
I
have
notes-
and
I
will
quickly
talk
about
it,
but
if
yeah
so
last
chance
to
talk
about
anything
else
else,
I
will
continue.
A
All
right,
so,
basically,
what
what
peter
and
I
was
talking
to
before
the
holiday
break
was
about.
A
Cids,
and
so
one
discussion-
we,
oh
I'm,
I
think
I'm
losing
the
connection.
Am
I
back.
H
A
Everyone
was
freezing
for
me,
which
is
normally
a
sign
that
I'm
the
one
who's
freezing.
So
we
talked
about
cds
and
one
one
discussion.
We
we
also
had
as
several
times
here
is
that
in
the
cd
there
is
this
field
called
coding
and
what
does
coding
actually
mean?
So?
Is
it
an
ipad
codec
or
what
is
it
actually
and
so?
A
If,
for
example,
people
put
some
new
multi-coded
code
into
the
multi-codec
table,
they
want
to
the
question
always
is:
do
you
want
to
put
it
into
sad
or
do
you
want
to
use
it
for
something
else,
but
we
don't
really
have
a
good
definition
on,
like
which
multi-coded
code
should
go
into
this
cid
field
called
codec
and
peter,
and
I
was
twisting
this
thing
and
what
we
came
up
with
is
the
idea
of
instead
of
having
it's
saying.
A
A
B
A
A
B
B
Okay,
that's.
E
H
H
We
have,
and
that's
where
we
propagated,
that
definition
back
there,
which
is
yep
and
where
basically,
this
yeah
and
where
this
discussion
came
from
was
basically
that
you
know
pinning
systems.
Transport
systems
did
not
care
what
the
codec
actually
describes.
They
only
care.
Do
I
follow
this
or
not,
and
if
do
I
follow
this,
then
they
need
to
somehow
obtain
the
knowledge
how
to
actually
follow
this,
but
for
most
of
the
stuff
like,
for
example,
take
take
the
falcon
chain
right.
H
There
is
actually
no
clear
place
to
know
that
the
moment
to
encounter
komar,
it's
not
something
that
you
should
think
of.
Traversing
like
there
is
nowhere
to
place
this
information,
and
that
basically
was
the
main
takeaway
that
when
we,
when
we
argue
like
well,
is
this
a
codec?
Is
this
an
ipod
codec
or
it's
like
some
other
weird
thing?
We
had
a
conversation
earlier
today
about
how
do
I
represent
multi-caches?
Can
I
just
put
a
quote:
unquote.
H
Codec
that
says
like
this:
a
multi-hash
that
most
of
the
systems
that
do
transport
do
not
care
about
this
at
all.
They
only
care.
Is
this
something
that
I
can
traverse
or
not
and
yeah
the
the
thing
is
we
kind
of
settled
on
like?
Oh,
we
actually
need
to
just
expose
this
information
somehow,
ideally
through
our
centralized
table
and
kind
of
you
know,
kept
that.
C
C
Ethereum
data
might
not
be
a
like
is
a
is
a
terminal
root
node
that
doesn't
have
any
other
sids
in
it.
Others
I
may
well
want
to
traverse
likewise
the
the
compes,
their
codec
of
the
data
that's
stored
in
a
filecoin
deal.
Maybe
anything
right
like
this
filed
the
label
of
this
filecoin
deal
like
it
points
to
the
sid
of
dagpb
or
it
points
to
something.
But
I'm
saying
this
is
actually
some
other
place
that
I'm
not
going
to
follow.
I
want
a
flag,
don't
traverse
this
year,
I'm
using
it
just
as.
C
B
H
Thought
exactly
like
what
is
describing.
This
is
selector
level
stuff,
basically
a
prescription,
whether
or
not
what
we
were
talking
about.
It's
the
traversability
at
all,
like
there
are
codecs
that
you
just
cannot
traverse
like
no
matter
how
hard
this
guy,
for
instance,
agrees.
If
that
is
true,.
B
Yeah
go
ahead.
I
agree
that
that
is
true.
There
exist
codecs,
which
do
not
have
links.
I
would
pick
a
different
word
than
traversability
for
this,
ideally
by
the
way,
because
we
called
stepping
over
nodes
to
be
traversal
in
a
bunch
of
places.
So
that's
anyway,
so
doing
like
link
jumps
from
one
block
to
another
block
is
only
possible
in
some
corrects.
Yes,
you
could
put
a
flag
in
the
multi-connect
table
that
says
true
or
false.
B
For
that,
I'm
not
sure
I
followed
what
use
that
has
other
than
documentational
value
like
is
that
going
to
actually
unlock
any
any
technical
capability
or
like
any
super
sizable
shortcuts
and
any
tooling.
D
D
So
I
guess
it
sounds
to
me
like,
like
you,
guys,
are
trying
to
make
the
case
for
having
this
information
encoded
in
the
multi-coded
table
such
that
you
could
extract
it
out
across
a
range
of
codecs.
I'm
just
how
many
codecs
we're
talking
about
here,
because
we're
there's
like
there's
raw
there's,
there's
jason,
there's
sibor!
H
D
I
get
that
I
just
you
know:
I've
got.
I've
got
two
codecs
in
that
little
hard
wired
thing,
which
is
it's
annoying
to
hardwire
things,
but
I
could
put
cbor
in
there.
It's
just
jsipp
if
it
doesn't
handle
playing
seaboard,
but
it's
like
it's
two
things
and
I
and
it
I
don't
know
how
to
pull
in
the
whole
table
to
do
that
kind
of
thing.
I
just
wonder
how
big
a
case
is
here
or
or
are
we
making
something
more
complex
than
it
needs
to
be?
D
D
H
Yeah-
and
this
goes
back
to
vulcan-
basically
because
the
conversation
started
from
what
is
the
second
variant
over
cidv1
like?
Is
it
an
ipl
decoding
or
not
and
talking
through
that?
The?
What
the
insight
was,
basically
that
the
distinction
isn't
what
kind
of
codec
it
is,
but
the
distinction,
the
interesting
part
of
this
distinction.
What
is
the
second
current
is
exactly
the
travis,
the
reversibility
of
the
thing,
because
everything
else
is
kind
of
application
level
concerns
work
accordingly,
if
I'm
this,
like
remembering.
A
So
I
think
that's
correct,
but
if
we
so
on
the
other
hand,
so
if
we
or
if
we
already
have
this
definition
of
the
iplene
codec,
I
guess
we
suppressing
the
first
step,
at
least
for
me-
would
be
to
make
things
clearer
in
this
ad
spec
would
be
to
clearly
say
it
needs
to
be
an
id
code
which
I
wanted
to
do
for
I
don't
know
how
many
years,
but
that's
that's
fine,
so
I
will
look
up
the
specification
and
see
if
it's
like,
but
yeah.
A
Well,
the
the
problem
there
is
when
we
say
if
we
use
this
definition,
then
of
course,
like
everything
that
comes
to
bytes
is
ipod.
I
guess
like
by
it's
an
ipad.
It's
an
ipld
data
model,
type
kind.
D
A
B
D
B
D
Because?
Because
because
you
know
the
more
we
talk
about
this,
the
more
we
get
towards
the
file
coin-
cids
compe
combi
com,
which
really
do
push
the
boundaries
of
this.
F
I
All
right,
let's
not.
B
I
A
This
is
the
best
way,
probably
yeah.
So
I,
but
like
I'm
just
saying
that
this
meeting
is
so
we
fit
the
hour
mark
so
hence
I
will
close
at
least
the
public
meeting
so
feel
free
to
stay
for
the
after
hour,
although
it
probably
will
be
quick
because
we
already
like
at
one
hour
and
normally
the
meetings,
don't
go
that
much
longer
so
anyway.
So
thanks,
everyone
for
attending
and
it's
great
to
see
so
many
people
here
and
I
hope
to
see
you
all
again
in
two
weeks.