Re:_git:_dfae67d10c3f_-_main_-_bsd.port.mk:_Use_ zstandard_as_default_compression_for_FreeBSD_14+

From: Baptiste Daroussin <bapt_at_FreeBSD.org>
Date: Fri, 06 May 2022 04:43:30 UTC

Le 6 mai 2022 02:03:45 GMT+02:00, Bryan Drewery <bdrewery@FreeBSD.org> a écrit :
>On 5/5/2022 3:18 PM, Mark Millard wrote:
>> On 2022-May-5, at 14:57, Mark Millard <marklmi@yahoo.com> wrote:
>> 
>>> On 2022-May-5, at 14:49, Bryan Drewery <bdrewery@FreeBSD.org> wrote:
>>> 
>>>> On 5/5/2022 1:03 AM, Mark Millard wrote:
>>>>> On 2022-May-5, at 00:37, Mark Millard<marklmi@yahoo.com>  wrote:
>>>>>> This seems to have caused my poudriere-devel based bulk build activities
>>>>>> to do things like:
>>>>>> 
>>>>>> [00:00:15] Checking packages for incremental rebuild needs
>>>>>> [00:00:15] Deleting at-spi2-core-2.36.0.tzst: unknown or obsolete file
>>>>>> [00:00:15] Deleting avahi-app-0.8.tzst: unknown or obsolete file
>>>>>> [00:00:15] Deleting cmake-3.22.2_1.tzst: unknown or obsolete file
>>>>>> [00:00:15] Deleting compton-20160907_6.tzst: unknown or obsolete file
>>>>>> [00:00:15] Deleting cups-2.4.1.tzst: unknown or obsolete file
>>>>>> [00:00:15] Deleting curl-7.83.0.tzst: unknown or obsolete file
>>>>>> [00:00:15] Deleting dbus-1.14.0,1.tzst: unknown or obsolete file
>>>>>> [00:00:15] Deleting dbus-glib-0.112.tzst: unknown or obsolete file
>>>>>> [00:00:16] Deleting freebsd-release-manifests-20220428.tzst: unknown or obsolete file
>>>>>> [00:00:16] Deleting gcc11-11.3.0.tzst: unknown or obsolete file
>>>>>> . . .
>>>> 
>>>> What version of Poudriere?
>>>> Any file names .tzst *is invalid*. It should be .pkg as far as I'm aware.
>>> 
>>> # poudriere version
>>> poudriere-git-3.3.99.20211130
>>> 
>>> The change to the bsd.port.mk default chnaged the names
>>> generated in the poudriere builds of packages from .txz
>>> for the symbolic links to the .tzst for them. For example:
>>> 
>>> # ls -Tld /usr/local/poudriere/data/packages/main-CA53-default/.real_1651657473/All/u-boot-orangepi-plus-2e-2022.04_1.*
>>> -rw-r--r--  1 root  wheel  282629 May  4 00:21:04 2022 /usr/local/poudriere/data/packages/main-CA53-default/.real_1651657473/All/u-boot-orangepi-plus-2e-2022.04_1.pkg
>>> lrwxr-xr-x  1 root  wheel      37 May  4 00:21:05 2022 /usr/local/poudriere/data/packages/main-CA53-default/.real_1651657473/All/u-boot-orangepi-plus-2e-2022.04_1.tzst -> u-boot-orangepi-plus-2e-2022.04_1.pkg
>> 
>> I should have also provided:
>> 
>> # file /usr/local/poudriere/data/packages/main-CA53-default/.real_1651657473/All/u-boot-orangepi-plus-2e-2022.04_1.*
>> /usr/local/poudriere/data/packages/main-CA53-default/.real_1651657473/All/u-boot-orangepi-plus-2e-2022.04_1.pkg:  Zstandard compressed data (v0.8+), Dictionary ID: None
>> /usr/local/poudriere/data/packages/main-CA53-default/.real_1651657473/All/u-boot-orangepi-plus-2e-2022.04_1.tzst: symbolic link to u-boot-orangepi-plus-2e-2022.04_1.pkg
>> 
>>> Older build activity has the .txz symbolic link. For example:
>>> 
>>> # ls -Tld /usr/local/poudriere/data/packages/main-CA53-default/.real_1651657473/All/py38-cryptography-3.3.2.*
>>> -rw-r--r--  1 root  wheel  770496 Apr 28 06:13:02 2022 /usr/local/poudriere/data/packages/main-CA53-default/.real_1651657473/All/py38-cryptography-3.3.2.pkg
>>> lrwxr-xr-x  1 root  wheel      27 Apr 28 06:13:02 2022 /usr/local/poudriere/data/packages/main-CA53-default/.real_1651657473/All/py38-cryptography-3.3.2.txz -> py38-cryptography-3.3.2.pkg
>>> 
>> 
>> # file /usr/local/poudriere/data/packages/main-CA53-default/.real_1651657473/All/py38-cryptography-3.3.2.*
>> /usr/local/poudriere/data/packages/main-CA53-default/.real_1651657473/All/py38-cryptography-3.3.2.pkg: XZ compressed data, checksum CRC64
>> /usr/local/poudriere/data/packages/main-CA53-default/.real_1651657473/All/py38-cryptography-3.3.2.txz: symbolic link to py38-cryptography-3.3.2.pkg
>> 
>> So the .tzst vs. .txz naming apparently does match the content produced.
>> 
>> 
>
>I see. These symlinks should just be removed / stop being generated. Once again Poudriere does not know about the change and needs special handling. Someone complained to me today that pkgclean is removing all packages which now makes some sense since special handling would be needed for this new extension.
>
>

Nothing to do on pkg side.

Pkg did create symlinks to .txz now .tzst for backward compatibility, it was optin the time for .pkg transition, this needs to be remove now, I ll do that asap

Bapt