Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:121954 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 46798 invoked from network); 8 Dec 2023 05:57:53 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 8 Dec 2023 05:57:53 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 963DD180031 for ; Thu, 7 Dec 2023 21:58:05 -0800 (PST) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-3.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from mail-pg1-f175.google.com (mail-pg1-f175.google.com [209.85.215.175]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Thu, 7 Dec 2023 21:58:05 -0800 (PST) Received: by mail-pg1-f175.google.com with SMTP id 41be03b00d2f7-5bdb0be3591so1436369a12.2 for ; Thu, 07 Dec 2023 21:57:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1702015070; x=1702619870; darn=lists.php.net; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=upjcXBefmJD2GEtbNmdfw9sh+eK0TdCq1KoCp1/QLvg=; b=Y/KWLPRxX9yDajs5jc7YP9zufowth55nUnOi7kbFcNqXCZfLxhx1VGJ0CeosuRwh/s Bb/M1Xto8nie+ySQs8X/Plmbg0jguiLmcxHrAArsIJhcHTyON3VlFb68IpVow4iXCr0y hTrvk53KOS9ISTI7aYdBvUG19sakBiHMd5gRUXtEHKCz3oIXjCKMjxbzft1Q+PGsehAQ +q1cSq3KFYzOFpwY/TSTORb42txzbep98AwlT1moUZ396w3QwDqpfnw/8FTVM446Sf9F L2kNu5r6yg+1Qcrh4qW+HZuanaAzBw0iDyUatp02efbTnym9MirbXKMx6c000weCCt8u 29aQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702015070; x=1702619870; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=upjcXBefmJD2GEtbNmdfw9sh+eK0TdCq1KoCp1/QLvg=; b=Rc33wRy8H2xmIFlc0/i6fVKw2Tf9hp6N6VtxZ9VLP4t1ZpRdCH83VLLg0GpuxrctXI 2wlhSLntsDZ5jyYRhOCmOouiezF3SXpacbcmzmAj/vqjVNu9IfXBVB9GVC8Q7zTAMHYW /bfeC45PATUfhcE0S3TVsNiaqGI6SId8FtV+wM9diRApoPS+CCRZ3bU/V3jCr2RaP6ko fGnUSGfXmqqMqQ7HdmGKsQFbfTzRG8vWJ082/6A6NjLePNWR4bwLWefSe2oomfs/JApy M2MUQUcf22YnAI43mEIT3DKllJJP6vJz7YVke6vC1RETSMwMEI0FT9w4wQ/YfqTwl29P /lRQ== X-Gm-Message-State: AOJu0YwdjiV0klVMYehoekwQTYLZPgAXTr45UrtSTtLpvJK5vEflaWFz siSuYR2aCsNTfzo/o9G8ep1TvExhPJIFFdbQLrY= X-Google-Smtp-Source: AGHT+IGukm/ipc8vn27P77v8WUQVYIilzMmsriOBWpxwVncjX3stzDCHE83qbwzfRVXilZIpMf1LpzG1bytDk0C5C0c= X-Received: by 2002:a05:6a21:188:b0:18c:4811:cf69 with SMTP id le8-20020a056a21018800b0018c4811cf69mr5315292pzb.61.1702015070256; Thu, 07 Dec 2023 21:57:50 -0800 (PST) MIME-Version: 1.0 References: <8d4bcca5-a2ce-5ee1-1aed-02076539433a@php.net> In-Reply-To: Date: Fri, 8 Dec 2023 12:57:38 +0700 Message-ID: To: Tim Starling Cc: Derick Rethans , PHP Developers Mailing List Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [PHP-DEV] New "PECL" From: pierre.php@gmail.com (Pierre Joye) Hello Tim, On Wed, Dec 6, 2023 at 9:05=E2=80=AFAM Tim Starling wrote: > Have you considered keeping the support matrix in the registry > database, instead of in pecl.json? Then it can be updated with new > build/test information after release. We do it for windows, used by pickle, you can see one part here: https://windows.php.net/downloads/php-sdk/deps/dllmapping.json The other parts being part of each extension. It could be achieved similarly for linux package managers, maybe maintained by them directly. A few years back, I made some tests on windows and linux using https://conan.io/ and https://vcpkg.io/, they both work on most platforms PHP supports and also have cmake integration (php build using cmake has been worked done, very nicely :). Having maintained these parts for many years, dealt with 3rd parties (developers of librairies, distro packages maintainers, etc) as well as dealt with many end users (php developers), I must say I would absolutely not start to define our own things but rely as much as possible on the well working existing solutions. On the same topic, npecl's requirements (why not a RFC/proposal btw?) are kind of out of sync with what I have seen and still see. F.e., doing it outside the composer ecosystem will most likely create a niche and not a wide adoption.There have been a lot of efforts put into similar topics since 5.3 and a lot of learning, it may be a good thing to learn from them. There are also tools now available to give developers out of box tools to define whatever environments they may need and switch between them within a click or command line (Laravel community created a few good ones, mac for the biggest one, and other platforms), having them rely on php's platform for the core and non core extensions (including their respective deps) will be amazingly helpful. Cheers, --=20 Pierre @pierrejoye | http://www.libgd.org