ofek 13 hours ago

For those who are unaware, there is another project [1] that tracks upstream which adds support for various codecs like Zstandard. Many folks (such as myself) opt to install their releases instead.

[1]: https://github.com/mcmilk/7-Zip-zstd

  • doubled112 12 hours ago

    Perhaps a tangent, but until now, I've only seen or used "codec" in the audio/video sense. While somehow awkward, it seems this would also be correct, since it also compresses and decompresses. Video codec but archive format.

    Sometimes you see a word used a new way and wonder if you've just been wrong all these years.

    • heavyset_go 12 hours ago

      The defining factor isn't compression/decompression, it's just encoding.

      You'll see codec used in things like text encoding.

      • deaddodo 8 hours ago

        While technically true, the term has been largely co-opted by the A/V realm. It’s pretty rare to hear outside of the context.

  • _imnothere 11 hours ago

    Maybe it's just me but I got weird feelings seeing 7-Zip-zstd repo having more stars than it's upstream.

Dwedit 14 hours ago

7-Zip 15.05 is still useful today, because it was the last version to include built-in support for decompiling NSIS installer scripts. The feature was removed due to security concerns.

gertop 14 hours ago

I wish 7-zip would support .tar.gz the way WinRAR does.

WinRAR allows you to browse a .tar.gz without extracting it, 7-zip extracts the .tar to a temp file. It makes working with large .tar.gz files impossible.

(Yes I know that because of how .tar works WinRAR must decompresses it to build the files list. But it beats having to write a 1TB .tar to disk just to see the file listing.

  • genocidicbunny 13 hours ago

    WinRAR also seems to handle opening a file in an external app without manually extracting much better. I can just double-click a file in an archive and open it in an external app, while with 7-zip it seems to immediately delete the temporary file so the external app ends up trying to open a non-existent file. Rather annoying if you're just trying to quickly check something like the readme.txt in an archive.

    • gruez 13 hours ago

      >while with 7-zip it seems to immediately delete the temporary file so the external app ends up trying to open a non-existent file.

      No, 7-zip only deletes the file after you close its window, so as long as you don't close 7-zip any apps should be able to open those files. Winrar doesn't delete on close, but that has its own problems, namely that you accumulate a bunch of extracted files in your %TEMP% directory, and have to run disk cleanup to delete them.

      • genocidicbunny 13 hours ago

        I just tried it with 7-zip 19.0, and double-clicking a video file in a 7z archive, and VLC could not open the extracted file because it didn't exist.

        E: Tried again with procmon monitoring 7-zip, and after it completed writing the file it deleted it.

        • gruez 11 hours ago

          There must be something funky with your setup. I just tested using the exact version of 7-zip and latest version of VLC in a fresh windows VM, and it doesn't have you issue you described. I can even see the file lying around in %TEMP%\7z[random characters], and they aren't deleted until I close the 7-zip window.

  • blibble 14 hours ago

    how is that possible?

    tar.gz files don't have a central directory (like zip), and they are compressed as one stream (almost always non-seekable)

    • Dwedit 14 hours ago

      .tar itself gives you enough information to seek forward past each file, though every file must be visited.

      .gz does not give you enough information to randomly seek within the big compressed .gz file, so you cannot skip past files within a .tar archive.

      But if you load a .gz file and consume the entire stream, but keep periodic checkpoints of your past sliding window (about 64KB) every 1MB or so, you can get random access with 1MB granularity. You still had to consume the entire stream to build the lookup though.

    • nine_k 14 hours ago

      Decompress, scan as you go, discard. Having to read a few hundred GB and scan a terabyte is a nuisance. Not having to write a terabyte is priceless.

      • mikepurvis 14 hours ago

        Could also maintain an in-memory index so that you can go back after the fact and extract individual files.

        • duskwuff 14 hours ago

          That's less helpful than you might imagine - gzip isn't seekable by default; if all you know is the seek point, you still have to decompress everything up to that point to start decompressing from there. And if you have to do that, reading the tar headers as you go isn't a serious burden.

          What might help is saving the state of the decompressor periodically, rather than just the index in the file. But that's getting pretty far into the weeds for an optimization to an infrequently used feature.

    • wslh 14 hours ago

      I am guessing the gzip is retrieved as a stream and then reading the tar from that stream in memory?

pregnenolone 13 hours ago

I wish either RAR or 7-Zip would finally implement a memory-hard KDF for encrypted archives.

shmerl 12 hours ago

Lately I use zstd + tar for making archives that preserve file metadata.

doctorpangloss 15 hours ago

Why doesn't Windows ship with an unarchiving utility?

  • jchw 14 hours ago

    Windows has shipped with "ZIP folders" and the ability to create and extract ZIP files since the late 90s/early 2000s I believe (not sure exactly what version.) As of the latest versions of Windows 11, Windows ships with libarchive-based archive extraction, which should let you extract many archives natively (including 7-zip and RAR) via the UI as well as the CLI (via BSD TAR, which also ships with Windows these days.)

    • Dwedit 13 hours ago

      ZIP Folders was developed by Dave Plummer from Microsoft (who runs the Dave's Garage YouTube channel). It was made in his spare time, then was licensed to Microsoft afterwards.

      • Suppafly 13 hours ago

        >ZIP Folders was developed by Dave Plummer from Microsoft

        I'm not sure I'd tell people I did that if it were me.

      • TiredOfLife 6 hours ago

        Is there any proof that any version of windows shipped his implementation? Because many things that scammer (like literally he ran a pc tech support scam company) says have little to no relation to reality

    • genocidicbunny 13 hours ago

      I think those first appeared in some form in XP. I don't recall 2000 having support for it integrated into explorer.

      • Dwedit 12 hours ago

        They were introduced in the Microsoft Plus package for Windows 98, then finally integrated into Windows ME. Windows ME was released after Windows 2000, so the feature didn't appear there. But it did appear in XP. You could actually install the Windows ME version of the shell extension on 2000.

        • genocidicbunny 12 hours ago

          Ah, well that might explain my thinking it came around in the XP days - by then I had discovered the WinRAR indefinite trial, so I didn't really need an alternative.

  • jore 15 hours ago

    I think that at least since win10 there is zip embedded in windows, it’s just not 7z

    • lousken 14 hours ago

      it goes much further back than that, think it was xp

      the issue is that it sucks, it's at least 10x slower than 7 zip, maybe more, showing lots of files/folders freezes the explorer gui on w10 and it only supports .zip (which could've been changed on w11, never used, never tried)

    • gertop 14 hours ago

      Zip support has been in Windows since XP.

      In 11 (and maybe later 10 updates) they added 7z and rar support.

      • OptionOfT 10 hours ago

        Except weirdly enough, when you open a .zip there is an "Extract All" button.

        When you open a .tar.gz or a .rar that button is gone.

        For those you need to do right mouse on the .tar.gz or .rar and click "Extract All...".

        I miss the days when Windows' UI was consistent.

  • Suppafly 13 hours ago

    It does, but it's annoying because it treats things as folders, which I suppose is nice if you just want to look inside the zip, but a pain if you just want to extract something in a normal way like you'd do with any other unzipping utility.

    • SomeHacker44 38 minutes ago

      I wish there were an easy way to get Explorer not to show Zip files as a "folder." Such a huge anti feature for me.

  • FirmwareBurner 15 hours ago

    It does ship with one, right click on zip file -> extract all. Why are you posting incorrect information that would have been clarified to you by a 3 second google search beforehand?

    It didn't ship in the distant past due to anti-competitive reasons but it is there now.

    • rjsw 15 hours ago

      It doesn't ship with a working unarchive utility, the one that is included will discard anything that goes over the maximum pathname length.

      • monster_truck 14 hours ago

        It also tends to kill explorer any time you try to decompress anything you'd actually compress in the first place (ie 100gb of json or a db dump)

      • FirmwareBurner 14 hours ago

        Weird, I never ran into that issue. Am I holding it wrong?

    • doctorpangloss 15 hours ago

      It ships with a very terrible wizard. Maybe I should say, why does the Windows unarchiving feature suck?

      • jchw 14 hours ago

        I think you're talking about the extraction feature that came with ZIP folders. Aside from being clunky it's also rather inefficient and slow, it doesn't have any provisions for handling issues like mojibake, and is generally just not very robust. So why? AFAIK it's because the ZIP Folders/Visual ZIP code was basically integrated with Windows and then never updated. When it shipped in Windows XP (and possibly earlier, but I don't remember for sure) I think it was perfectly serviceable... it just didn't improve much over time.

        I can't really stomach Windows 11 so I don't personally use it but my understanding is that the latest version of Windows 11 has finally integrated a better solution, implementing archive extraction based on libarchive.

      • FirmwareBurner 14 hours ago

        >It ships with a very terrible wizard.

        Terrible how? It just needs to zip and unzip and it does that fine for most users. What else do you expect for casual users? For power usurers there's 7zip or WinRar or other solutions.

        > Maybe I should say, why does the Windows unarchiving feature suck?

        And what stopped you from saying that? HN rules say comments should be in good faith. What you said has clearly different meaning than what you say you meant.

        • Dylan16807 14 hours ago

          When it has bad support for just zip I think phrasing it as windows lacking an unarchiving utility is reasonable enough, and certainly not bad enough to get flagged like the comment currently is. It's not bad faith, jeez. I'm going to go vouch for the comment and hope it survives.

          And it's only because of that comment that I learned windows 11 finally improves things.

        • kotaKat 3 hours ago

          The Extraction Wizard is a bit clunky opening a dialog box asking where you want to extract things...

          ...then a brief flash as the decompress happens because it's no longer 1998 and we're not extracting 2 MB of ZIP files on a Pentium 166,

          ... then you get a silly "complete!" screen with a pre-filled checkbox that spawns another Windows Explorer window by default.

          Eh, three clunky "wizard" screens is a bit much for a "extract here..." command.

jainilprajapati 8 hours ago

I don’t know why we need this now because Microsoft had in build zip so

  • atmanactive 5 hours ago

    Because that one is rubbish, and this is gold.