- What is puli/cli used for?
- puli/cli provides command-line tools for managing Puli projects, a PHP package management system that discovers and exposes package resources. It can install packages, manage repositories, and inspect resource mappings. It is a standalone CLI, not a Laravel runtime package.
- Is puli/cli compatible with Laravel?
- No, puli/cli is not a Laravel package and has no service provider, facade, config publishing, or runtime integration. Its architecture fit is poor for Laravel application code. If needed at all, it belongs in developer tooling or CI/build steps.
- Does puli/cli support Laravel 10 or Laravel 11?
- puli/cli has no Laravel version support matrix and was last released in January 2016. Modern Laravel apps on PHP 8.1+ and Symfony 6/7 are likely to hit Composer conflicts. Do not add it to the main application composer.json without a proven dependency-resolution result.
- How do I install puli/cli?
- It is installed with Composer as puli/cli, but the safer approach is an isolated tooling project or disposable container rather than the main Laravel app. Pin the exact version and lockfile, then confirm PHP and Symfony Console compatibility. Avoid global installation on developer machines.
- Is puli/cli abandoned or actively maintained?
- puli/cli is abandoned upstream, with no release since 2016-01-14 and only 51 stars. The repository provenance is unknown, which makes security and license review harder. Any adoption requires internal ownership for patching and documentation.
- Can I use puli/cli in production?
- It is not recommended for production runtime use because it is a standalone build-time utility with stale dependencies and no security response. Keep it out of production dependencies and the request lifecycle. If legacy support is unavoidable, isolate it in CI or a dedicated Docker image.
- What are alternatives to puli/cli in Laravel?
- Laravel-native mechanisms cover most needs: Composer autoloading, Laravel package discovery, configuration, filesystem/storage abstractions, Flysystem, and Artisan commands. These avoid the abandoned Puli CLI and its dependency risk. First map any existing Puli resource mappings to those equivalents.
- How do I migrate from Puli to Laravel?
- Inventory existing Puli resource mappings and document the legacy use case and owner. Map each need to Composer autoload, Laravel package discovery, config, filesystem/storage, or Artisan commands. If transition support is required, freeze puli/cli in a CI job or Docker image, then remove it after migration.
- What PHP and Symfony versions does puli/cli require?
- The package was last released in January 2016, so expect old PHP and Symfony Console constraints. Exact requirements should be checked in the package metadata and resolved in a disposable proof of concept. Modern PHP 8.1+ and Symfony 6/7 environments are likely to conflict.
- Is puli/cli safe to use, and what are the security risks?
- Technical risk is high because the package is abandoned, has unpatched transitive dependencies, and comes from an unknown repository. There is no vendor support or security response path. The MIT license allows forking, but forking creates ownership and maintenance cost rather than removing risk.