Re: filesystem notification extension

From: Date: Tue, 30 Jul 2024 08:16:41 +0000
Subject: Re: filesystem notification extension
References: 1 2 3 4  Groups: php.pecl.dev 
Request: Send a blank email to pecl-dev+get-17598@lists.php.net to get a copy of this message
On 27-07-2024 16:52, Christoph M. Becker wrote:
On 13.06.2024 at 14:28, Frederik Bosch wrote:
On 13-06-2024 13:55, Derick Rethans wrote:
On 12 June 2024 16:46:31 BST, Frederik Bosch<f.bosch@genkgo.nl>  wrote:
Conforming to the policies mentioned on the PECL Publishing page, I am sending this message to request access to publish a filesystem notification extension on PECL. First a little introduction. I have been a PHP-dev for more than 20 years and a few years ago I have contributed to PHP with the SameSite RFC. I am also maintaining the MoneyPHP package. Regarding the extension I would like to publish on PECL, I have been searching for a cross-platform filesystem notification library but I could not find any. The inotify extension has not been updated since 2020. Only after I decided to create this package, the first userland package (azjezz/assess<https://packagist.org/packages/azjezz/assess>) arrived on Packagist. I think an extension with filesystem notifications would be really helpful. Therefore I created the php-ext-fs-notify package<https://github.com/genkgo/php-ext-fs-notify>. The extension name is fs-notify. To develop the extension I decided to use the PHPER (PHP Enjoy Rust) framework<https://github.com/phper-framework/phper>. I basically used it to create a PHP interface around notify-rs<https://github.com/notify-rs/notify>. This week the package got to a first version that is ready to use for the public. At the moment it supports Linux and macOS filesystem notifications for PHP 8.1, 8.2 and 8.3. I would love to have access to PECL to publish this extension.
The idea for an extension for this sounds reasonable. I've just had a look, but I can't get this to compile with the standard phpize && ./configure && make sequence, which is going to be required if this is going to be installed through the PECL installer.
Sorry, I was under the impression that I first had to request access. I have added the config.m4 file so you should be able to compile the extension. It does require cargo <https://doc.rust-lang.org/stable/cargo/getting-started/installation.html> though.
I have only rough knowledge of pecl (the command) since I'm mostly working on Windows, and I don't know anything about Cargo. So I don't have the faintest idea whether that requirement would be a stopper to add the extension to PECL. Do we have precendent for that requirement? I've seen on <https://github.com/phper-framework/phper>, that <https://pecl.php.net/package/skywalking_agent> is also build using PHPER, but <https://github.com/apache/skywalking-php> doesn't claim to require Cargo. Maybe you, Frederik, or Derick or somebody else can clarify? Cheers, Christoph Hi Christoph,
On the Skywalking PHP page you can see that it also requires Cargo. And like my proposed FS Notify extension there is no Windows support yet. https://skywalking.apache.org/docs/skywalking-php/next/en/setup/service-agent/php-agent/readme/ I made an improvement in the README on the repository page, how to build it from source. The steps are similar as with Skywalking PHP. https://github.com/genkgo/php-ext-fs-notify If you have any additional question, feel free to ask! Regards, Frederik

« previous php.pecl.dev (#17598) next »