On Tue, 30 Jul 2024, Frederik Bosch wrote: > 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.bo...@genkgo.nl> wrote: > > > > > > > > > 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?
No, I don't think we don't. I would probably guess that a lot of people would have a C compiler, and not a whole rust toolchain installed as well. For the new PECL installer (PIE, https://github.com/php/pie) supporting this "style" hasn't been taken under consideration. I would also say that it is unexpected to suddenly also have to download a gazilion crates (it took 432MB!), on top of a whole rust compile stack. Server environments will not likely to have this pre-installed either. > > 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? > > 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! This is a problem: $ make test PHP_CONFIG=php-config cargo build --release Finished `release` profile [optimized] target(s) in 0.05s if [ -f ./target/release/libphp_ext_fs_notify.dylib ] ; then \ cp ./target/release/libphp_ext_fs_notify.dylib ./modules/fs_notify.dylib ; fi if [ -f ./target/release/libphp_ext_fs_notify.so ] ; then \ cp ./target/release/libphp_ext_fs_notify.so ./modules/fs_notify.so ; fi Build complete. Don't forget to run 'make test'. Your Makefile should skip this step if the result is already finished. ===================================================================== TIME START 2024-07-30 12:40:12 ===================================================================== No tests were run. That's also a problem. Tests are definitely a great thing to have. cheers, Derick