Skip to content
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

Implement a .zip writer #115

Open
asinghvi17 opened this issue Jun 13, 2024 · 5 comments
Open

Implement a .zip writer #115

asinghvi17 opened this issue Jun 13, 2024 · 5 comments

Comments

@asinghvi17
Copy link
Member

This would be as simple as amending the function here

function write(path::AbstractString, o::Writer; force=false)

to switch behaviour based on the file name and return ZipFile file descriptors instead. This would be similar to the behaviour we introduced in .zip reading.

See
https://github.com/fhs/ZipFile.jl/blob/a599b0aac5d17403fdbbc4ea63612be299cf8417/src/ZipFile.jl#L14-L1
for some example code that can do this, it seems quite straightforward.

@evetion
Copy link
Member

evetion commented Jul 2, 2024

Only half joking, ideally we dumb down/nag about Shapefile writes, and default/advice to things like geopackage instead. And post about http://switchfromshapefile.org/

@rafaqz
Copy link
Member

rafaqz commented Jul 2, 2024

Probably we need a native geopackage writer first ;)

@evetion
Copy link
Member

evetion commented Jul 2, 2024

Fair point, let's add it to the board and put it higher prio than this zip writer :)

@asinghvi17
Copy link
Member Author

The reader in GeoPackage.jl semi works, it just needs to be cleaned up a lot + optimized :D. I'm not sure about the writer though, that seems like a lot of work...

@nhz2
Copy link

nhz2 commented Jul 2, 2024

So that you know, ZipFile.jl can be super slow when compressing large files: https://discourse.julialang.org/t/file-zipping-taking-longer-for-large-files/115963.

I made https://github.com/JuliaIO/ZipArchives.jl to save Zarr data in a .zip file, but it might also be useful here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Todo
Development

No branches or pull requests

4 participants