Comments (3)
Ah, this might have something to do with the fact that zip archives don't seem to natively support symlinks. The tar headers do accept the symlink targets, but zip does not.
Apparently the zip
command has a --symlinks
option that does preserve them, to an extent, but with caveats: https://askubuntu.com/questions/1203925/using-zip-command-to-transfer-ubuntu-folders-with-symbol-links-in-them-to-window
Short answer: you can't [preserve symlinks] unless 1) the receiving file system supports linux symbolic links and 2) the target files/folders of the link are present
Thanks for setting up a reproducer. I'm just quickly triaging my backlog right now. Could you tell me if the error happens with tar archives too?
Anyway, the error shouldn't happen, I agree, I'm just trying to make sure I understand it well enough to make the right fix.
from archiver.
.tar.gz
does appear to work as expected.
the target files/folders of the link are present
Hmm, interesting. This does seem to be the case, but it just silently skips them. That'sā¦ terrible.
For what it's worth, the macOS compression utility is able to store them fine.
Screen.Recording.2024-01-11.at.12.03.31.PM.mov
Which created - which the cli unzip
command doesn't even have an issue with
from archiver.
Thanks; I agree something should be fixed, just not quite sure how yet. The ZIP file header doesn't seem to support symlink information, so I'm not sure how to archive the link? I can see how we can dereference the symlink and archive the target file, but not the symlink.
from archiver.
Related Issues (20)
- why '7z' not supported by Command HOT 2
- Unable to decrypt 7-ZIP file with password (err: breader.ReadByte: no data!) HOT 1
- Unable to decrypt 7-ZIP file with password (err: breader.ReadByte: no data!) HOT 1
- Is 7z supported by 4.0 Library? HOT 1
- RAR signature not found HOT 4
- If overwrite is enabled for unarchive, and the file being overwritten is a symlink, then it tries to follow the symlink, rather than replace it HOT 12
- Return io.Reader from archiver.FileSystem.Open(filename) HOT 1
- func FilesFromDisk filenames arg, if path seperator is not system defined, pathInArchieve may be wrong path HOT 7
- Tar files created inside the directory they are compressing are not walkable HOT 5
- file 2G.file: writing data: archive/tar: write too long HOT 1
- Listing files of an Encrypted RAR Without Password Input HOT 1
- The CompressFile function does not work HOT 2
- Unarchiving read-only folders fails HOT 1
- rardecode: RAR signature not found HOT 8
- Compare and sync two directories HOT 1
- Append/Insert files into an existing Zip file? HOT 14
- WIll there be support for just generic Archive and Extract to a dir? HOT 1
- sevenzip: unsupported compression algorithm HOT 4
- Add lzip support
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
š Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ššš
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ā¤ļø Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from archiver.