Merge pull request #201000 from drupol/php/8.2.0

php82: init at 8.2.0rc6
This commit is contained in:
Elis Hirwing 2022-11-20 16:01:00 +01:00 committed by GitHub
commit 14cc62d7e6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 104 additions and 9 deletions

View file

@ -139,6 +139,11 @@
other distributions.
</para>
</listitem>
<listitem>
<para>
PHP 8.2.0 RC 6 is available.
</para>
</listitem>
<listitem>
<para>
<literal>protonup</literal> has been aliased to and replaced

View file

@ -57,6 +57,8 @@ In addition to numerous new and upgraded packages, this release has the followin
`mod_php` usage we still enable `ZTS` (Zend Thread Safe). This has been a
common practice for a long time in other distributions.
- PHP 8.2.0 RC 6 is available.
- `protonup` has been aliased to and replaced by `protonup-ng` due to upstream not maintaining it.
- Perl has been updated to 5.36, and its core module `HTTP::Tiny` was patched to verify SSL/TLS certificates by default.

View file

@ -495,6 +495,7 @@ in {
php = handleTest ./php {};
php80 = handleTest ./php { php = pkgs.php80; };
php81 = handleTest ./php { php = pkgs.php81; };
php82 = handleTest ./php { php = pkgs.php82; };
phylactery = handleTest ./web-apps/phylactery.nix {};
pict-rs = handleTest ./pict-rs.nix {};
pinnwand = handleTest ./pinnwand.nix {};

View file

@ -0,0 +1,61 @@
{ callPackage, lib, stdenv, fetchurl, ... }@_args:
let
hash = "sha256-sbT8sIwle3OugXxqLZO3jKXlrOQsX1iH7WRH8G+nv8Y=";
base = callPackage ./generic.nix (_args // {
version = "8.2.0";
phpAttrsOverrides = attrs: attrs // {
src = fetchurl {
url = "https://downloads.php.net/~sergey/php-8.2.0RC6.tar.xz";
inherit hash;
};
};
inherit hash;
});
in
base.withExtensions ({ all, ... }: with all; ([
bcmath
calendar
curl
ctype
dom
exif
fileinfo
filter
ftp
gd
gettext
gmp
iconv
imap
intl
ldap
mbstring
mysqli
mysqlnd
opcache
openssl
pcntl
pdo
pdo_mysql
pdo_odbc
pdo_pgsql
pdo_sqlite
pgsql
posix
readline
session
simplexml
sockets
soap
sodium
sysvsem
sqlite3
tokenizer
xmlreader
xmlwriter
zip
zlib
]))

View file

@ -1,4 +1,4 @@
{ buildPecl, curl, fetchFromGitHub, lib, pcre2 }:
{ buildPecl, curl, fetchFromGitHub, lib, pcre2, php }:
buildPecl rec {
pname = "ddtrace";
@ -14,6 +14,7 @@ buildPecl rec {
buildInputs = [ curl pcre2 ];
meta = with lib; {
broken = lib.versionOlder php.version "8.1"; # Broken on PHP older than 8.1.
description = "Datadog Tracing PHP Client";
homepage = "https://github.com/DataDog/dd-trace-php";
license = licenses.apsl20;

View file

@ -1,4 +1,4 @@
{ buildPecl, lib, gpgme, file, gnupg }:
{ buildPecl, lib, gpgme, file, gnupg, php }:
buildPecl {
pname = "gnupg";
@ -29,6 +29,7 @@ buildPecl {
doCheck = true;
meta = with lib; {
broken = lib.versionOlder php.version "8.1"; # Broken on PHP older than 8.1.
description = "PHP wrapper for GpgME library that provides access to GnuPG";
license = licenses.bsd3;
homepage = "https://pecl.php.net/package/gnupg";

View file

@ -1,12 +1,18 @@
{ buildPecl, lib, oracle-instantclient }:
{ buildPecl, lib, oracle-instantclient, php }:
let
version = "3.0.1";
sha256 = "108ds92620dih5768z19hi0jxfa7wfg5hdvyyvpapir87c0ap914";
versionData = if (lib.versionOlder php.version "8.1") then {
version = "3.0.1";
sha256 = "108ds92620dih5768z19hi0jxfa7wfg5hdvyyvpapir87c0ap914";
} else {
version = "3.2.1";
sha256 = "zyF703DzRZDBhlNFFt/dknmZ7layqhgjG1/ZDN+PEsg=";
};
in
buildPecl {
pname = "oci8";
inherit version sha256;
inherit (versionData) version sha256;
buildInputs = [ oracle-instantclient ];
configureFlags = [ "--with-oci8=shared,instantclient,${oracle-instantclient.lib}/lib" ];

View file

@ -1,10 +1,18 @@
{ buildPecl, lib }:
{ buildPecl, lib, php }:
let
versionData = if (lib.versionOlder php.version "8.1") then {
version = "3.1.6";
sha256 = "1lnmrb5kgq8lbhjs48j3wwhqgk44pnqb1yjq4b5r6ysv9l5wlkjm";
} else {
version = "3.2.0RC2";
sha256 = "dQgXDP3Ifg+D0niWxaJ4ec71Vfr8KH40jv6QbxSyY+4=";
};
in
buildPecl {
pname = "xdebug";
version = "3.1.6";
sha256 = "1lnmrb5kgq8lbhjs48j3wwhqgk44pnqb1yjq4b5r6ysv9l5wlkjm";
inherit (versionData) version sha256;
doCheck = true;
checkTarget = "test";

View file

@ -15788,6 +15788,16 @@ with pkgs;
phpExtensions = php.extensions;
phpPackages = php.packages;
# Import PHP82 interpreter, extensions and packages
php82 = callPackage ../development/interpreters/php/8.2.nix {
stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
pcre2 = pcre2.override {
withJitSealloc = !stdenv.isDarwin;
};
};
php82Extensions = recurseIntoAttrs php82.extensions;
php82Packages = recurseIntoAttrs php82.packages;
# Import PHP81 interpreter, extensions and packages
php81 = callPackage ../development/interpreters/php/8.1.nix {
stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;