[RFC] Remove support for basis knits?

John Arbash Meinel john at arbash-meinel.com
Sat Jun 17 03:12:28 BST 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Aaron Bentley wrote:
> All knits can have a 'basis'.  This basis knit is used whenever
> possible, for getting data.
> 
> However, it appears they are broken.  To wit:
> 
>             for comp_id in basis_versions:
>                 data_pos, data_size =
> basis._index.get_data_position(comp_id)
>                 records.append((piece_id, data_pos, data_size))
>             components.update(basis._data.read_records(records))
> 
> basis_versions is a list of all the required versions that are present
> in the basis.  If it is non-empty, then (eventually)
> records.append((piece_id, data_pos, data_size)) is called.  However,
> piece_id is undefined.  Since our test suite passes, it appears this
> code is not tested, so basis_knits are probably unused.
> 
> Supporting basis knits uglifies our code somewhat, and makes it harder
> to refactor (as I'm doing for log performance).  Therefore,  I propose
> we remove support, until such time as they're actually being used.
> 
> Aaron

If it isn't used and isn't tested, I'm okay with removing it. Better to
use Knit.join(), rather than keeping it in separate knits.

John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFEk2UMJdeBCYSNAAMRAjqnAJ4k02YSZcQPz3w2mojhXPvfZFCFdACgnQsp
v+7/BfSerGZUoHAk5sLAI80=
=FSfg
-----END PGP SIGNATURE-----




More information about the bazaar mailing list