-
Michael Pyne authored
This imports some of the basic support classes from the Perl Mojolicious distribution for use in kdesrc-build. We don't use it for much currently but it will enable us to replace much of the current kdesrc-build custom modules with higher-performing and better-supported code. It will also permit features that have been requested for awhile. In particular, will replace: * IPC stuff for async (in favor of Mojo::IOLoop->subprocess) * Exception classes (in favor of Mojo::Exception) * Much of ksb::Util is replaced by Mojo::Util * Weird custom logging (in favor of Mojo::Log) * File templating (in favor of Mojo::Template and Mojo::Loader) and will add: * Useful co-routines (someday, assuming we can make Future::AsyncAwait a dependency... and even if not, we can use continuation-passing style now). * Useful Web clients/user-agent (for pulling information from Bugzilla and Gitlab) * Useful Web serving (to permit kdesrc-build to be API introspected by a GUI client such as a Plasmoid during a build). * an event loop (including "event emitter" that can be connected like a Qt signal/slot) Embedding isn't my preferred means, so I arrange for the embedded Mojolicious to be overridable by system Perl. But doing it this way avoid having users have to deal with cpanminus or perlbrew just to run kdesrc-build. Luckily Mojolicious is a very light capability in comparison to what it provides, and in pure Perl format to boot.
0ee3c807
This project is licensed under the GNU General Public License v2.0 or later.
Learn more
Loading