? Pending

User tests: Successful: Unsuccessful:

avatar HLeithner
HLeithner
20 Mar 2020

Summary of Changes

This PR adds the new option '--include-zstd' to the build script and some debug information.

This option will be used in the upcoming PR for packaging each PR with ready to install and upgrade .zip and .tar.zst files.

Zstandard is much faster on decompression and has a comparable compression ration then bzip2.

Benchmark and more information about Zstandard could be found at:

https://github.com/inikep/lzbench
https://facebook.github.io/zstd/

Testing Instructions

Build Joomla with --include-zstd and without this option

Expected result

With option: Get packages with .tar.zst
Without option: Don't get additional packages

Actual result

The same as Expected

avatar HLeithner HLeithner - open - 20 Mar 2020
avatar HLeithner HLeithner - change - 20 Mar 2020
Status New Pending
avatar joomla-cms-bot joomla-cms-bot - change - 20 Mar 2020
Category Repository
avatar wilsonge wilsonge - change - 20 Mar 2020
Status Pending Fixed in Code Base
Closed_Date 0000-00-00 00:00:00 2020-03-20 12:05:53
Closed_By wilsonge
Labels Added: ?
avatar wilsonge wilsonge - close - 20 Mar 2020
avatar wilsonge wilsonge - merge - 20 Mar 2020
avatar wilsonge
wilsonge - comment - 20 Mar 2020

LGTM

avatar zero-24
zero-24 - comment - 20 Mar 2020

Any reason to not backport this to the 3.x build script @HLeithner @wilsonge ?

avatar HLeithner
HLeithner - comment - 20 Mar 2020

Can be backported but there should be a discussion to activate it as default option for releases.
I didn't wanted to start this now but feedback is welcome on this topic.

I would suggest to remove bz2 and gzip and only support zip and zst starting for j4 but maybe there are concerns or automated scripts that break if we remove bz2 or gzip.

avatar zero-24
zero-24 - comment - 20 Mar 2020

It should not be used by default just extra i guess so the new workflow work the same for 3.x and 4.x I would not remove any package file in 3.x for sure.

avatar mbabker
mbabker - comment - 20 Mar 2020

Supporting any format not used in the CMS itself IMO is a waste of time and resources if I’m being blunt. Just cut it to ZIP or make the CMS work with all the formats in the build script. The odds of having tar on a system without zip are pretty darn slim at this point.

avatar HLeithner
HLeithner - comment - 20 Mar 2020

Actually one alternative wouldn't be wrong, I have many systems (linux servers) that don't have unzip installed but all of them has tar (not zst at this time)

avatar brianteeman
brianteeman - comment - 20 Mar 2020

does anything actually have zst installed. have to admit this is the first i have heard of it

avatar HLeithner
HLeithner - comment - 20 Mar 2020

Arch and Alpine Linux uses it as default package compression format. And if I understand it correctly Fedora switch to Zstandard for package compressin in F31 https://fedoraproject.org/wiki/Changes/Switch_RPMs_to_zstd_compression

I'm not sure about the status in debian based distros but there is a discussion about the support for zstd in deb format.

avatar mbabker
mbabker - comment - 20 Mar 2020

Actually one alternative wouldn't be wrong, I have many systems (linux servers) that don't have unzip installed but all of them has tar (not zst at this time)

Considering Joomla only supports one upgrade mechanism (the update component), and the only formats it supports IIRC are ZIP and JPA, does it even matter if an alternative is available for the update/patch packages? To use them means you’re doing upgrades in a non-recommended and non-supported manner.

You’ve got a fair point for new installations.

avatar HLeithner
HLeithner - comment - 20 Mar 2020

Considering Joomla only supports one upgrade mechanism (the update component), and the only formats it supports IIRC are ZIP and JPA, does it even matter if an alternative is available for the update/patch packages? To use them means you’re doing upgrades in a non-recommended and non-supported manner.

You’ve got a fair point for new installations.

Right maybe makes no sense for update packages and I don't think we will support it in the near future.

Add a Comment

Login with GitHub to post a comment