<lifeless> jelmer: what deltas does svn use?
<lifeless> ideally you can provide an adaptor to allow you to use insert_record_stream
<jelmer> it's byte-based
<lifeless> ok
<lifeless> so add_lines does get_lines(), applies delta, does a diff(), writes the text out
<jelmer> basically it's a list of instructions like "insert this sequence of bytes at offset X"
<lifeless> so we're doing twice as many get_lines() as needed
<jelmer> ah, cool
<lifeless> this will be nontrivial for you
<lifeless> but look at insert_record_stream
<lifeless> conceptually, you would define a new record type ('svn-delta')
<lifeless> and then look at KnitVersionedFile.insert_record_stream to teach it how to coerce that to a more useful form
<lifeless> the key thing is that in that function you can e.g. emit a knit record directly (because you may know what lines were altered, or something similar)
<jelmer> hmmok
<lifeless> some assembly will be required, but the goal of the interface is to permit this - as the first external user, you'll have to poke things to line up more