Newsgroups: php.internals,php.internals.win Path: news.php.net Xref: news.php.net php.internals:125475 php.internals.win:1295 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by qa.php.net (Postfix) with ESMTPS id 733101A00BD; Sun, 8 Sep 2024 09:31:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1725788026; bh=maF4nJNiFM66gq8OyYuf2874klJAtqiUXnCTlkwE1dk=; h=Date:To:Cc:From:Subject:From; b=W7K+CuxFA/a5bulvU5+Pwzci2hOhoHbu7OfkvGwm/Er0aAMo31Xy8V1kRSoeXu562 Heb6wVLV/KjWOCsu60l1M7AFPSpCEd6wGyPRTpyjdSMAZVC1J5//KItAEfSHWpyQUA URABJk0uQxK3UbPIrcvOa3S4AU1jyGiZMZbCmhE1Ew8SjMtt23lxaqMB/Q3jczGEji i+Q8vIcsX+dCDx/zzmP9t5z2R/BryJRGtbZg6c/TQwGiNzA5Vi8fhfRQmcaMU2rM5Z brE9ArlS9FtT4OTgvzhtUA0QryRpVXYCG/qazlhEc6V4jGvwkiC51jO7C/Xwr1wDEh 8V29cKm7DTkug== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 449DD180053; Sun, 8 Sep 2024 09:33:45 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS, FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS; Sun, 8 Sep 2024 09:33:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1725787902; x=1726392702; i=cmbecker69@gmx.de; bh=/A5D2u0zPGv2nO4D9l0BwQctr/m0Pozi1BsR7Fx2m3s=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:To:Cc:From: Subject:Content-Type:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=ByK4yEG9AYGfY4X9UBwplsgp9avvOxFQvnO3gnVyx5vWf0rSBzsNZKGO6pAccjnd Dy7VFSCjppYxQ3nfBoTdznUtw0NfpggnqlAPI2Cz5EuYdq/nPsjnCwVgCAJ8CsKZL ZlG7t4uNy6zH8DooZiMZjPmVa8O+8XonHnWwm2V0J8QPq5zu6W3HOc60AERavZ0IY 05IPtpXChLZZIMAxB1wnjYO+Uo2dQR5OF+/050ljNIPBGjuYbdgrkOYca+pF8iw42 yi7JOFsDZ6thSgrT0S2ZOdAXrBhp2SN1irQZsyep8i8VlOmPEh+RO/VGaJrxuXBpL VT6u52b/7uI6IG2MuQ== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.2.130] ([79.251.205.37]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1N3KTo-1s5oTs2wja-00u08Z; Sun, 08 Sep 2024 11:31:42 +0200 Message-ID: Date: Sun, 8 Sep 2024 11:31:42 +0200 Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: PHP internals list Content-Language: de-DE Cc: internals-win Subject: [PHP-DEV] Maintain Windows PHP dependency builds in a GH repo Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:ooWV6vyopttiKz4ZUSrCKmXkJl+cKCNG6zaTMsLvqItV53Atx2k KgNB2zTS3Zgg3BfKgoCPLl+FfyZXXFzue+6eQNWQnhbromAH4X02+u/ikUwa2S899oxc5th uwxMT3TSZBwVgN+wlCycXosu7IF5MyitGWdph7OHSQ77nWpFF2GHY2R79+uBe1+SIj6O88h PW/gKnfxBQxCG737r+4Ew== UI-OutboundReport: notjunk:1;M01:P0:SqtRC7U13ro=;hzHWWdrGw9y8qWvqCTszycJc198 KM+BpUZxtKw0SdnqEUJWYmeTcVwNt8AcVNh/TcWMUt+0OSf/xV74nzmEQq7R+Lo8x/sB4VHbC v8p0QNVKs3ijpHUQfEM/SIoaGpTwFIOnvN5fZzcHkPEbkKoQiFBZOoh7fKMtwXGvr9ud6JZzp cnm/SnMquz8LwA0a5o+hHAfwcV2MazkwTqf5vfi5IO+UDM21gAkhghrnKx26gg+iIbq0phcH/ 6Iv7k0vXOP0lP7eoiXgYtoPOIc2HRrOMFfGQ8i+n8WpJ7QlVSXjCUT8I8UBdVjZh0Ny4MqRFc foB3Mqxg1dB1guwGJOQS8DgEvkWltuYd0MyX3v/l1G4wdYg2YVsu9mAyAg5gpAeKDBQGE5Psb WKhEPPUqNhO1dkBuGuUV/ksziFrDpgarY3muvnKmw9vuPFwjWTRRStNhcy6WtF9LPS2wBGLPa H/Mkk2FwOhgmji7XDjBMQyHQpkCX5csDU2yeI8/zr0GrSkPQvNByIQT0GyL9mscdYVKbXj9OB Eo1xpr4AlJ58xLLN/hhlUpBTUircHtl50Qfobfh2YGzNREHVJwpchN0KWTllcwDQA5nsiBiN6 5DvUmuJ1biDmAVK+/5EygIS9lqeszq8B7r0dvdi7r0B4AVmDWAu3uBHK+as6+gwoB4wSN5XOj 93mByIZIxe3DnRbGZIpY4wcB79ZiWoopALYemYnTDLmvKHkFanMtuemcteGhMV5fGq8KWVBm+ BipTvOb+fQgcvFeT7kXUf8/zg84hT8ID0A0H5ZRX+qI5y4PPW9VJOaw2DHakiOpO56yWdcya/ oyagDlggE/dg/jnJIrKzy9It7ZuvUJKEUnE56NSfHrelc= From: cmbecker69@gmx.de ("Christoph M. Becker") Hi all, this is about the PHP dependencies for Windows which are available at . As is, new dependency builds are uploaded manually. This has a couple of problems: * only few people can do these uploads At first, that is a good thing, because many people could easily step on each other's toes, since there are no locks when uploading. However, whenever a new dependency build needs to be uploaded, you need to get one of these few people to actually do the upload. It is not clear who is allowed to do it, and who has time. * the process is not transparent I.e. there is no easy way of being informed about updates, so you would need to regularly run `phpsdk_deps -u`, often just to see that there are no updates available. * there is no history of the series While not super important, it would be nice to able to fetch an older set of dependencies to be able to build an older PHP version with its original dependency version (a step towards reproducible builds). * the process is prone to error It's all too easy to make some mistakes when editing the series files. Sometimes you forget to updates one of the series files, sometimes you have a typo (e.g. you add an x64 dependency to an x86 series file), sometimes you may update a series file which is not supposed to be updated. And not so rarely, you may forget to archive a dependency version which is no longer required. All these problems could be solved, or at least mitigated, by setting up a Github repository for the dependency builds and the series files. The upload could be as simple as a cron'd `git pull` on the server. The history of the series would be implicitly tracked (or even explicitly when using tags). Users who want to be informed about new dependencies could subscribe to that repository. And mistakes are less likely to occur due to the improved transparency, and there could be even GH actions which do some basic sanity checks. The only potential drawback I see would be the size of the repository. While I believe the new repo would be way smaller than our distribution repo[1], and we might exclude vc11 and vc15 builds, it may still be too large for practical handling. But in this case we can consider using Git LFS[2] which has been developed to address this issue. What do you think? Would this require the RFC process? Note that I am deliberately referring to php-sdk/deps/ only, since this appears to be the most important part for now. Uploading the QA and release builds of PHP is not supposed to be an issue, and the PECL dependencies are less important than the PHP dependencies (besides these do not have series files, which simplifies the upload process). [1] [2] Christoph