[Compress]Add some easy-to-use APIs for Zip and other archivers

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

[Compress]Add some easy-to-use APIs for Zip and other archivers

Peter Lee
Hi all.

I'm thinking about adding some easy-to-use APIs for Zip. Currently I got
some ideas :
1. Add extractAll(String targetPath) in ZipFile : extract all the files to
the specific directory.
2. Add getInputStream(String fileName) in ZipFile : get the input stream
for a file by name.

And I believe these could also work in other archivers like tar, 7z and
some other format.

Do you think if this is a good idea or not?

Lee
Reply | Threaded
Open this post in threaded view
|

Re: [Compress]Add some easy-to-use APIs for Zip and other archivers

Stefan Bodewig
On 2020-03-09, Peter Lee wrote:

> I'm thinking about adding some easy-to-use APIs for Zip. Currently I got
> some ideas :
> 1. Add extractAll(String targetPath) in ZipFile : extract all the files to
> the specific directory.
> 2. Add getInputStream(String fileName) in ZipFile : get the input stream
> for a file by name.

> And I believe these could also work in other archivers like tar, 7z and
> some other format.

> Do you think if this is a good idea or not?

There is https://issues.apache.org/jira/browse/COMPRESS-118 which at one
point in time was the issue with the most votes IIRC.

Around the time the ZipSlip vulnerability had to be fixed in various
projects we discussed adding such a high-level API to Compress. You can
find some code that I sketched back then inside of the examples package.

At that time the majority of Compress developers felt a high-level API
was out-of-scope for Compress and many people felt effort should rather
be spent at Commons VFS. See the threads

https://lists.apache.org/thread.html/0b86f62127f771a8ac3b6357a1c1bdb6b4d21bf18bc4a30d0b3650c8%40%3Cdev.commons.apache.org%3E

https://lists.apache.org/thread.html/bb205705291c00ac8d36516b287a14d814dc5f1fe4d422f3f5c0db28%40%3Cdev.commons.apache.org%3E

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: [Compress]Add some easy-to-use APIs for Zip and other archivers

Peter Lee
Just finished reading the COMPRESS-118 and the 2 threads. I have to say
that's a lot of content. :)

I have also read the Archiver and the Expander, and I do like them a lot.
They have great abstraction, and the implementation for
callback(CloseableConsumer and Finisher) do impressed me.

In the threads someone was concerning that only few people use Commons
Compress - I can tell that it's not that case : I'm in a big company in
China and I can tell many teams are using Commons Compress. No need to
worry about that.

It seems other guys in threads are concerning about the real need for
users. With enough feedback from users, everyone would agree with these
high-level APIs. Maybe I can help you with it - just do some interviews to
the users.
Reply | Threaded
Open this post in threaded view
|

Re: [Compress]Add some easy-to-use APIs for Zip and other archivers

garydgregory
Peter,

Please also take a look at Apache Commons VFS.

Gary

On Tue, Mar 10, 2020 at 4:30 AM Peter Lee <[hidden email]> wrote:

> Just finished reading the COMPRESS-118 and the 2 threads. I have to say
> that's a lot of content. :)
>
> I have also read the Archiver and the Expander, and I do like them a lot.
> They have great abstraction, and the implementation for
> callback(CloseableConsumer and Finisher) do impressed me.
>
> In the threads someone was concerning that only few people use Commons
> Compress - I can tell that it's not that case : I'm in a big company in
> China and I can tell many teams are using Commons Compress. No need to
> worry about that.
>
> It seems other guys in threads are concerning about the real need for
> users. With enough feedback from users, everyone would agree with these
> high-level APIs. Maybe I can help you with it - just do some interviews to
> the users.
>
Reply | Threaded
Open this post in threaded view
|

Re: [Compress]Add some easy-to-use APIs for Zip and other archivers

Peter Lee
> Peter,
>
> Please also take a look at Apache Commons VFS.

Sure. I will look into Commons VFS. Thank you for your suggestion.