wexample-wex-addon-dev-php 12.1.0__tar.gz → 12.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/PKG-INFO +4 -4
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/README.md +2 -2
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/pyproject.toml +2 -2
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/workdir/php_package_workdir.py +37 -2
- wexample_wex_addon_dev_php-12.2.0/tests/workdir/__init__.py +0 -0
- wexample_wex_addon_dev_php-12.2.0/tests/workdir/test_php_package_workdir.py +54 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/__pycache__/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/config_value/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/config_value/php_package_readme_config_value.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/const/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/const/tags.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/file/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/file/php_composer_json_file.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/formatter/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/formatter/php_code_formatter.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/php_addon_manager.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/py.typed +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/resources/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/resources/design_rules/php_code.md +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/resources/docker/Dockerfile.roave +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/resources/writing_rules/php_code.md +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/composer/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/composer/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/composer/commands/service/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/composer/commands/service/install_local.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/composer/commands/service/refresh_lock.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/composer/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/composer/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/composer/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/caddy/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/caddy/Caddyfile +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/dev/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/local/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/local/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/prod/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/php/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/php/web.ini +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/frankenphp/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/app_service.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/db/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/db/migrate.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/maintenance/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/maintenance/disable.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/maintenance/enable.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/service/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/service/install_local.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/service/refresh_lock.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/laravel/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/ai/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/ai/shared/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/ai/shared/context.j2 +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/ai/shared/php.j2 +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/caddy/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/caddy/Caddyfile +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/dev/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/local/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/local/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/prod/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/php/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/samples/php/web.ini +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/php/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/commands/runtime/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/env/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/env/local/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/agents/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/agents/editor/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/agents/editor/agent.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/agents/editor/context.j2 +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/shared/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/shared/context.j2 +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/app_service.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/service/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/service/deploy.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/service/install_local.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/service/watch.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/knowledge/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/knowledge/entity.md +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/env.build +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/images/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/images/Dockerfile.dev +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/images/Dockerfile.release +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/dev/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/local/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/local/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/prod/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/symfony/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/commands/service/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/commands/url/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/commands/url/replace.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/docker/docker-compose-cli.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/env/local/wp-cli/.gitkeep +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/services/wordpress/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/workdir/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/workdir/php_packages_suite_workdir.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/workdir/php_symfony_workdir.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/src/wexample_wex_addon_dev_php/workdir/php_workdir.py +0 -0
- {wexample_wex_addon_dev_php-12.1.0 → wexample_wex_addon_dev_php-12.2.0}/tests/.gitkeep +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: wexample-wex-addon-dev-php
|
|
3
|
-
Version: 12.
|
|
3
|
+
Version: 12.2.0
|
|
4
4
|
Summary: Extends wex with PHP-specific development commands for Composer, Laravel, Symfony, and WordPress services running in Docker containers
|
|
5
5
|
Author-Email: weeger <contact@wexample.com>
|
|
6
6
|
License: MIT
|
|
@@ -14,7 +14,7 @@ Requires-Dist: cattrs>=23.1.0
|
|
|
14
14
|
Requires-Dist: wexample-filestate-php>=6.4.0
|
|
15
15
|
Requires-Dist: wexample-filestate-symfony>=2.0.0
|
|
16
16
|
Requires-Dist: wexample-wex-addon-ai>=15.0.0
|
|
17
|
-
Requires-Dist: wexample-wex-addon-app>=31.
|
|
17
|
+
Requires-Dist: wexample-wex-addon-app>=31.1.0
|
|
18
18
|
Requires-Dist: wexample-wex-addon-dev-javascript>=8.1.0
|
|
19
19
|
Provides-Extra: dev
|
|
20
20
|
Requires-Dist: pytest; extra == "dev"
|
|
@@ -23,7 +23,7 @@ Description-Content-Type: text/markdown
|
|
|
23
23
|
|
|
24
24
|
# wex_addon_dev_php
|
|
25
25
|
|
|
26
|
-
Version: 12.
|
|
26
|
+
Version: 12.2.0
|
|
27
27
|
|
|
28
28
|
`wex_addon_dev_php` extends the wex CLI with PHP-specific development commands for Composer, Laravel, Symfony, and WordPress services running in Docker containers. It is aimed at PHP developers who manage their apps through wex and need framework-aware automation — dependency wiring, migration runs, lock-file refreshes — executed directly inside the running service containers. The addon registers four workdir types (`php`, `php-package`, `php-packages-suite`, `php-symfony`) and contributes its commands through the standard `PhpAddonManager` plugin point.
|
|
29
29
|
|
|
@@ -276,7 +276,7 @@ Visit the [Wexample Suite documentation](https://docs.wexample.com) for the comp
|
|
|
276
276
|
- wexample-filestate-php: >=6.4.0
|
|
277
277
|
- wexample-filestate-symfony: >=2.0.0
|
|
278
278
|
- wexample-wex-addon-ai: >=15.0.0
|
|
279
|
-
- wexample-wex-addon-app: >=31.
|
|
279
|
+
- wexample-wex-addon-app: >=31.1.0
|
|
280
280
|
- wexample-wex-addon-dev-javascript: >=8.1.0
|
|
281
281
|
|
|
282
282
|
## Versioning & Compatibility Policy
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# wex_addon_dev_php
|
|
2
2
|
|
|
3
|
-
Version: 12.
|
|
3
|
+
Version: 12.2.0
|
|
4
4
|
|
|
5
5
|
`wex_addon_dev_php` extends the wex CLI with PHP-specific development commands for Composer, Laravel, Symfony, and WordPress services running in Docker containers. It is aimed at PHP developers who manage their apps through wex and need framework-aware automation — dependency wiring, migration runs, lock-file refreshes — executed directly inside the running service containers. The addon registers four workdir types (`php`, `php-package`, `php-packages-suite`, `php-symfony`) and contributes its commands through the standard `PhpAddonManager` plugin point.
|
|
6
6
|
|
|
@@ -253,7 +253,7 @@ Visit the [Wexample Suite documentation](https://docs.wexample.com) for the comp
|
|
|
253
253
|
- wexample-filestate-php: >=6.4.0
|
|
254
254
|
- wexample-filestate-symfony: >=2.0.0
|
|
255
255
|
- wexample-wex-addon-ai: >=15.0.0
|
|
256
|
-
- wexample-wex-addon-app: >=31.
|
|
256
|
+
- wexample-wex-addon-app: >=31.1.0
|
|
257
257
|
- wexample-wex-addon-dev-javascript: >=8.1.0
|
|
258
258
|
|
|
259
259
|
## Versioning & Compatibility Policy
|
|
@@ -6,7 +6,7 @@ build-backend = "pdm.backend"
|
|
|
6
6
|
|
|
7
7
|
[project]
|
|
8
8
|
name = "wexample-wex-addon-dev-php"
|
|
9
|
-
version = "12.
|
|
9
|
+
version = "12.2.0"
|
|
10
10
|
description = "Extends wex with PHP-specific development commands for Composer, Laravel, Symfony, and WordPress services running in Docker containers"
|
|
11
11
|
authors = [
|
|
12
12
|
{ name = "weeger", email = "contact@wexample.com" },
|
|
@@ -23,7 +23,7 @@ dependencies = [
|
|
|
23
23
|
"wexample-filestate-php>=6.4.0",
|
|
24
24
|
"wexample-filestate-symfony>=2.0.0",
|
|
25
25
|
"wexample-wex-addon-ai>=15.0.0",
|
|
26
|
-
"wexample-wex-addon-app>=31.
|
|
26
|
+
"wexample-wex-addon-app>=31.1.0",
|
|
27
27
|
"wexample-wex-addon-dev-javascript>=8.1.0",
|
|
28
28
|
]
|
|
29
29
|
|
|
@@ -27,6 +27,16 @@ if TYPE_CHECKING:
|
|
|
27
27
|
|
|
28
28
|
@base_class
|
|
29
29
|
class PhpPackageWorkdir(WithRunnerWorkdirMixin, PhpWorkdir):
|
|
30
|
+
@staticmethod
|
|
31
|
+
def line_opens_a_comment(line: str) -> bool:
|
|
32
|
+
"""Whether a line is a comment, judged on the characters it opens with.
|
|
33
|
+
|
|
34
|
+
A line-level test and not a parse: it catches the docblock body and the `//`
|
|
35
|
+
line, which is where a class gets *mentioned* rather than used. A name trailing
|
|
36
|
+
real code after a `//` on the same line stays reported — rarer, and for a
|
|
37
|
+
dependency check erring toward reporting is the right way round.
|
|
38
|
+
"""
|
|
39
|
+
return line.lstrip().startswith(("*", "//", "#", "/*"))
|
|
30
40
|
def get_package_import_name(self) -> str:
|
|
31
41
|
"""Get the full package import name with vendor prefix."""
|
|
32
42
|
return f"{string_to_pascal_case(self.get_vendor_name())}\\{string_to_pascal_case(self.get_project_name())}"
|
|
@@ -60,12 +70,37 @@ class PhpPackageWorkdir(WithRunnerWorkdirMixin, PhpWorkdir):
|
|
|
60
70
|
def search_imports_in_codebase(
|
|
61
71
|
self, searched_package: PhpPackageWorkdir
|
|
62
72
|
) -> list[SearchResult]:
|
|
63
|
-
"""Find PHP `use`/qualified references to the given package.
|
|
73
|
+
"""Find PHP `use`/qualified references to the given package.
|
|
74
|
+
|
|
75
|
+
Two shapes count as an import: the `use` statement, and the fully qualified
|
|
76
|
+
name written inline (`new \\Wexample\\Foo\\Bar()`). The second is why matches
|
|
77
|
+
have to be sifted afterwards — a fully qualified name reads the same inside a
|
|
78
|
+
docblock, and an `@deprecated` note pointing at the class that replaces this
|
|
79
|
+
one is documentation, not a dependency.
|
|
80
|
+
|
|
81
|
+
The `use` branch needs no sifting: it is anchored on `^\\s*use`, which a
|
|
82
|
+
docblock's leading `*` already prevents from matching.
|
|
83
|
+
"""
|
|
64
84
|
import re
|
|
65
85
|
|
|
66
86
|
pkg = re.escape(searched_package.get_package_import_name())
|
|
67
87
|
pattern = rf"(?m)^\s*use\s+{pkg}(?:\\\\[\w]+)*\s*;|{pkg}(?:\\\\[\w]+)*(?!\w)"
|
|
68
|
-
|
|
88
|
+
results = self.search_in_codebase(pattern, regex=True, flags=re.MULTILINE)
|
|
89
|
+
|
|
90
|
+
lines_by_path: dict[str, list[str]] = {}
|
|
91
|
+
kept: list[SearchResult] = []
|
|
92
|
+
|
|
93
|
+
for result in results:
|
|
94
|
+
path = str(result.item.get_path())
|
|
95
|
+
if path not in lines_by_path:
|
|
96
|
+
lines_by_path[path] = result.item.read_text().splitlines()
|
|
97
|
+
|
|
98
|
+
lines = lines_by_path[path]
|
|
99
|
+
line = lines[result.line - 1] if result.line <= len(lines) else ""
|
|
100
|
+
if not self.line_opens_a_comment(line):
|
|
101
|
+
kept.append(result)
|
|
102
|
+
|
|
103
|
+
return kept
|
|
69
104
|
|
|
70
105
|
def search_in_codebase(
|
|
71
106
|
self, string: str, *, regex: bool = False, flags: int = 0
|
|
File without changes
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
import pytest
|
|
4
|
+
|
|
5
|
+
# The line that set this off: an `@deprecated` note naming the class that replaces
|
|
6
|
+
# this one. Verbatim from symfony-helpers' SystemParameter.php.
|
|
7
|
+
DEPRECATION_NOTE = (
|
|
8
|
+
" * @deprecated use `Wexample\\SymfonyPlatform\\Entity\\Configuration`, which holds a"
|
|
9
|
+
)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def test_a_docblock_body_is_a_comment() -> None:
|
|
13
|
+
assert _line_opens_a_comment(DEPRECATION_NOTE)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
def test_a_name_trailing_real_code_stays_reported() -> None:
|
|
17
|
+
"""Documented limit: only the line's opening decides, so this is still an import."""
|
|
18
|
+
assert not _line_opens_a_comment(
|
|
19
|
+
"$c = new \\Wexample\\SymfonyPlatform\\Entity\\Configuration(); // built here"
|
|
20
|
+
)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
@pytest.mark.parametrize(
|
|
24
|
+
"line",
|
|
25
|
+
[
|
|
26
|
+
"// use Wexample\\SymfonyPlatform\\Entity\\Configuration;",
|
|
27
|
+
"# Wexample\\SymfonyPlatform\\Entity\\Configuration",
|
|
28
|
+
"/* Wexample\\SymfonyPlatform\\Entity\\Configuration */",
|
|
29
|
+
" * @see Wexample\\SymfonyPlatform\\Entity\\Configuration",
|
|
30
|
+
],
|
|
31
|
+
)
|
|
32
|
+
def test_every_comment_opener_is_recognised(line: str) -> None:
|
|
33
|
+
assert _line_opens_a_comment(line)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
@pytest.mark.parametrize(
|
|
37
|
+
"line",
|
|
38
|
+
[
|
|
39
|
+
"use Wexample\\SymfonyPlatform\\Entity\\Configuration;",
|
|
40
|
+
" use Wexample\\SymfonyPlatform\\Entity\\Configuration;",
|
|
41
|
+
" $c = new \\Wexample\\SymfonyPlatform\\Entity\\Configuration();",
|
|
42
|
+
"class SystemParameter extends AbstractEntity",
|
|
43
|
+
],
|
|
44
|
+
)
|
|
45
|
+
def test_real_code_is_not_a_comment(line: str) -> None:
|
|
46
|
+
assert not _line_opens_a_comment(line)
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
def _line_opens_a_comment(line: str) -> bool:
|
|
50
|
+
from wexample_wex_addon_dev_php.workdir.php_package_workdir import (
|
|
51
|
+
PhpPackageWorkdir,
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
return PhpPackageWorkdir.line_opens_a_comment(line)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|