Incremental upgrade packages

I’ve enjoyed the portable version of SC for some time and still do, however I’m finding that recently, especially with the addition of Glaxnimate, unzipping the files takes an exceptionally long time. Would developers please consider posting an “upgrade” package containing only those files which are new to the latest release? Of course, keep the full-on packages as they are now, but an “incremental” package would certainly save a lot of time, at least in the Windows environment.

Cheers,

Hugo.

Hi @HFSC

Extracting a Shotcut portable zip file takes about 1½ minutes on my computer. This is still, I think, faster than installing the program. I’m curious to know what is an exceptionally long time for you?

For background, this is ShotCut Portable 230514.
HP 840G1 2 core laptop i5/1.9GHz/8GB with SSD system drive
Win10Pro 22H2
After a restart to do this with a fresh config and using the Windows embedded unzipper it took 13 minutes, 50 seconds to unzip all the files. I’m allowing 10 seconds for the time it took me to launch Snip&Sketch to capture what’s happening:

Where things slow down is the unzipping of all those small .svg files. The transfer rate bogs down into the 10’s of kB/sec. rather than the 40 MB/sec that is typical on this machine. If it wasn’t for that, the unzip would take much less time. FWIW, things aren’t much different on my Dell 7020 i5/3.3GHz/16GB desktop.

Surely, not all 19,000-odd files are updated from one version to the next?

H.

14 minutes does seem excessive.
Did you try to use a different unzipper? I’ve been using 7zip for years. Quite reliable and absolutely free.

1 Like

I’ve used 7-Zip for a very long time, but oddly enough not for Shotcut. Not sure why, but I will from now on. Didn’t know there was such a huge difference.

explorer_2023-05-29_15-42-39

2023-05-29_15-52-06

Windows 10 Home
Unzipping from/to the same HDD.
No anti-virus program other than Windows Defender.

1 Like

Does anyone use the Windows installer as well?

Glaxnimate added a overhead on the Windows installer for me. I was going to ask Dan about having a ticky on the installer to make Glaxnimate an option.

MusicalBox,

Thanks for the tip on using 7zip instead. Did that and the unzip time went down to 1m18s, same kind of time you quoted above. So 7zip is now my go-to unzipper. I’ve had it for years, same as you probably, but only use it for more sophisticated file compression operations like splitting and making executable encrypteds. Not no more. It does make one pause to think just how efficient other MS products might be?

Still, on a point of principle, should users be obliged to unzip thousands of little .svg files that change only rarely (I assume)? I don’t even use Glaxnimate which is what many of those files seem to be associated with!! As PaulusMaximus suggests, it would be nice to have Glaxnimate as an option. The Portable version I suppose would have to be a separate file without the GLX stuff. Yeah. It’s getting complicated.

Cheers,

Hugo.

1 Like

What is your upgrade process? Do you keep the old version and unpack the new version into a new folder? Or do you wipe out and replace the Shotcut folder with the new portable archive?

I rename the old folder to something like “shotcutx” and unpack the new version to “shotcut” which is where my Windows short cuts point. If I’m satisfied with the new version, I delete the “shotcutx” folder. I do keep at least one previous version of zip file in case I find something undesirable later on (very rarely; the only case in many years being the latest “dark themes” issue.).

At the risk of predicting your response, would unzipping files into the same folder skip those that are already there and tagged with the same date-size-etc attributes and make the process go faster? I don’t think I’ve ever tried that, but it would address the point I’m making about doing incremental upgrades with the Portable version. The only risk is that the previous version would be overwritten, thus losing the last copy that worked OK. Still, as I said, I do keep one previous version of zip file in my archive, so I do have a recovery path.

I was more curious about how many archived versions were being kept, and the amount of disk space that would be consumed by them.

A challenge of an incremental .zip is that unpacking it into the active Shotcut folder would contaminate the “previous version” archive. To keep the previous version, the current Shotcut folder would need to first be copied as a backup, or the previous .zip would need to be unpacked again. Both methods would write a ton of tiny .svg files again, so not really any gains are made by using an incremental .zip in that scenario.

That’s why I wondered about your workflow. An incremental seems to only work if there is no desire to keep the previous version around. Plus an incremental .zip would not delete any files that are no longer needed. For that reason and others (shared library versions, etc), I would not recommend unpacking multiple versions of Shotcut into the same folder.

EDIT: I think our edits happened at the same time. :slight_smile:

BTW, the only solution I can see to this problem is to ask the Glaxnimate developers/packagers to merge all their resource files into a .tar or some kind of database that contains multiple individual files/data.

Copying/moving 10.000+ small files takes time even on a very fast cpu+ssd, I don’t even want to imagine how much it would take on a low end/slow HDD. But on the other hand this is not that big of a deal, it happens once every few months and making this change sounds quite complicated and probably requires a lot of changes both at packaging and inside code.