-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove Tar.Make and Archive modules #107
Comments
|
CueKeeper is using very out-of-date versions of things anyway, so doesn't need to block this. Looks like it's only using |
can I work on this? |
@0x0god can you first reply in reynir/mirage-block-partition#7 my questions about the code? It is okay if you want to work on this instead. |
Yes okay, i will try this instead |
@dianaoigo I will assign you this issue. I think you need to comment here before I can do it. |
@reynir, yes. please do. already started working on it |
I would argue for the opposite: iterating on tar archives is super useful. I like the A recent use-case I'm having is examining a tar.gz archive using lwt as a backend. It feels like I'm writing a lot of complicated boiler-plate code that should really be somewhere in this package. |
@MisterDA interesting that you're using the I'm still not sure what the best way is here, one path is to make the tar-mirage interface the one to use (and provide a lwt-only version thereof -- maybe with functors pre-initiated)? |
Sorry, I've double-checked: I'm not using I've been hacking using tar today, and I think what I wanted was
I haven't looked at tar-mirage yet! Will report. |
@MisterDA thanks for your comment. I think it would be nice to then (a) remove as outlined in the subject of this issue and (b) if you (or someone else) could PR the stuff you use in "obuilder" (is it similar to what tezos uses?), so that can be integrated!? |
After a bit of hack on ocaml-tar, I've changed my mind. I think simplifying it is good. |
Done in #127 |
The
Tar.Make
functor does not seem to be used much if at all in other code bases. Neither seemsTar_unix
orTar_lwt_unix
to be used.Aside from the low or lack of usage, the
Tar.Make
functor'sIO
argument differes from the arguments toTar.HeaderWriter
andTar.HeaderReader
in that theIO
module works onbytes
buffers while the other ones work onCstruct.t
buffers, andIO
is not parameterized over an async module. Internally, theTar.Make
functor createsHeaderWriter
s andHeaderReader
s, too. A number of the functions inTar.Make
are as well marked as deprecated.Futhermore, the Tezos codebase according to this comment opted to use their own implementation over
Tar_lwt_unix
as the performance of some of the functions are poor.In order to ease maintenance I would like to remove these modules that are not seeing much usage and perform poorly.
The text was updated successfully, but these errors were encountered: