Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:124910 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 344A71A00C8 for ; Mon, 12 Aug 2024 23:54:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1723506988; bh=6RBffblPAiJqFiSyGkTqidvxh+KBwNPXgjMp9xb5yrU=; h=Date:Subject:From:To:References:In-Reply-To:From; b=ZlgZT5G4o68wyeen5Kqyz5M6TMOUZ2/dMHN4wW4Z6U7GcpxrOS9ltOXeJBUuvvRvJ 2J7AX4MB8bzlkB2sPdTpzGoLzQOQD0usSiHpkJxCcNKZZBNy7RsRUTFXWo9+q/SnID ba3HHpMhXtkP2kbJBHEo6qo86E6C8hTTV/jNQ/rmMJzq1jIi/Sdg5ig59gWqTSJb1t 7IckifXYFINK1G6LzxxYi1YZXys1tqYHT57AZ70fCTIfiJ2kdzoQP4qNzK4/n0+RAE fC7QVXQ2p2Ij/B5sHREr10xczbaC+kJmy9IMfdmW+k2uezzCfzCkXsq3gxG8k8uSo5 3P8NbKXKHqUjw== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id E00931801EC for ; Mon, 12 Aug 2024 23:56:25 +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_H4,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.17.22]) (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 for ; Mon, 12 Aug 2024 23:56:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1723506876; x=1724111676; i=cmbecker69@gmx.de; bh=46rO4KOPudtDzzpO/GJ+fJni4TAQathf30H4b/7WxiY=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:From:To: References:In-Reply-To:Content-Type:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=mzOOCCbht+zVMj9SFTWdNTQ8mNiKJHSF/GmXZdqVeAHP1hAakLWWfyqY1YsV8a0o lV6NrFtEn2pSRNBvaNcYoLHOk7fgoYyYarIEdwTQs2+b/AdwC+n/KJ9uNMYfMzYgX 5kue0e1hHYSHTbH7mkQbeZaDGhClgElAxrDijD6tNPEq0ub13+/pv0JUp5aSg6y5Z LaWmi9h9CIir7b6WPs7SmogCvwBvnnCn9Uc7oNavgRyToprCDXY3cno56YuGt13ed ZgMrQDd01TUlGql36UakijwfZBJzLi2MJfXMIlriYxqY/Yl1OEQDu/uArzO0akQpF wWNlrIT0vhJjSe95XQ== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.2.130] ([79.251.205.37]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MjS9C-1rskWU0umg-00lyd3 for ; Tue, 13 Aug 2024 01:54:36 +0200 Message-ID: <898b1b11-9b1a-4adb-8409-209f3da555ff@gmx.de> Date: Tue, 13 Aug 2024 01:54:36 +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 Subject: Re: [PHP-DEV] PDO_Firebird: use C++? Content-Language: de-DE To: PHP internals References: In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:acwpgW/5JJkviEnySzBJpP509fyA7oxvvZ15/LwtTTbJAupmfOo /KrSo5zNnGfK1th0g5nUY16tR0YlwMtxSLGxTP4Xq/7JRcDZuAlHQQmcQPIrmYWcM+Ozb3u bH+A+KQR+A43b7AR1zORJK2KjWZ3xtevTXssq3qaqIquWo2D863dZBwco06Y5nV1pPOH2SW JFpZcCyQDaBGdYS0BnkYg== UI-OutboundReport: notjunk:1;M01:P0:f9oBv+q05yQ=;FpiSGJaedR2jnTh7EAhoenJh0jU KV7vm9E+kIBTeCT9w6nNQxuK8vQOmR3mRe3vvAIpokesadtNn5OlQkoJyqwQwYJSTDlnD9WtW QXubA9A8e0PJ6hqb7HDTsECzBCCdf0uggwzWauI2CCVo8RSRVY0QOZ5vBlX9YKDjr8qu9O7wg naprU/g1m3FpPYkJrG9bberASYdaejCZpEevagBf3UoUZOd55PDqgsvtQK+qxBB/2jyDAMvXF Bolx8yK7O+GYg6yHj/GdJtVf0+kvbtaEItIrBjBxCxg+dWAo+yzHyCk30jlf9HSnHdDy4gPg4 cBU+9/VvJlkFqf2kCUTKQlDouwqHzaqB4cTm36px8LYi5Q5AUy1ZArIVY9+75+D2nDaGtaxr3 W21nVy2kiOOybYlF/h//g+mTcpooVAQU3Ihlu+NM6L6XcdI6os6k/taK0mS4zAdtly+Bt6RM7 mKCXC+fVNHs+wGCo5Az/TwJkoXN2FXtSh4wgneCBNEdK2ulEcf1YOnNJbVdWR0llVPuN90s8z O9oYzK/+Pll8PVkB2lN15BZc7tRdT2ji4OxNT+vusXbM2lmsnFqPZXO9tOMkjAC4YRADPlc8w muCGB807zQVJoPzEQTXOCXp0FA5nFvO+8mQYFyWFYgCczuxKA6Cz5PIzFdge6mujEYJQ57JQH +eGo8jIFVS922/YcAKpYAq9rv+QPe1RBjCbQTXy5gvbgw0knG5l4NZ05ojVFooshabn6grWf5 8Vj1up2azjJopkNWQ6fCAYHhtATwFntsPmkeCL8LlT9T4iyduQCQoly3S1ZmC2B9vIeDviP68 6Qr+MPNWK9PsVGE4GMrs3KxEHvPUG5JyLjV0svi7anr+Y= From: cmbecker69@gmx.de ("Christoph M. Becker") On 10.08.2024 at 15:13, Christoph M. Becker wrote: > a week ago Denis Simonov submitted a PR[1] regarding formatting of the > new time zone types of Firebird 4.0 (which appears sensible per se). > This requires to access new Firebird APIs which are written in C++ (the > old Interbase APIs are still provided as C code). Now the Firebird > developers have written a tool for cross language support called > CLOOP[2] which allows to access the APIs written in C++ directly from C. > However, they do not provide these C APIs officially, so Denis provided > the minimal required C API for inclusion into the PDO_Firebird extension= [3]. > > In my opinion, this a somewhat fragile approach (especially since > CLOOP's C generator apparently hasn't been tested for a rather long > time[4]) and would personally rather use C++ to access the new APIs. > This would obviously require a C++ compiler to build PDO_Firebird (so > far a C compiler is sufficient), unless the C++ code (and the respective > functionality) would be optional. > > Another drawback would affect the Windows builds; so far these just > could use the Firebird kits provided by the Firebird developers (which > contain headers and pre-built libraries), but these don't contain any > C++ libraries, so the libraries would need to be built and hosted by > winlibs[5] (at least for the time being). > > I *assume*, however, that (Linux) distros already provide pre-built C++ > libraries since the new Firebird OO API is available as of Firebird 3.0. > Maybe someone can confirm that. > > So what do you think? Should we use C++ to access the new APIs, or > stick with C (and include the required declarations in PDO_Firebird)? > > [1] > [2] > > [3] > > [4] > [5] Thank you all for your comments! As far as I can see, there have been no objections to use C++ internally (and nicely tucked away) in PDO_Firebird, so I've just applied to be able to get feedback from users as soon as possible. If there are still (minor) issues to be resolved, please file tickets on Github. If there are strong objections against requiring a C++ compiler, please raise them here, or file a ticket on Github (). Thanks, Christoph