wexample-wex-addon-dev-php 12.11.1__tar.gz → 12.13.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.11.1 → wexample_wex_addon_dev_php-12.13.0}/PKG-INFO +6 -6
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/README.md +1 -1
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/pyproject.toml +5 -5
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/common/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/common/packagist_registry_gateway.py +5 -1
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/const/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/const/tags.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/deployment/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/deployment/step/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/deployment/step/symfony_env_local_deployment_step.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/formatter/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/formatter/php_code_formatter.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/resources/design_rules/php_code.md +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/resources/package_gitlab_ci.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/resources/writing_rules/php_code.md +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/composer/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/composer/commands/service/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/composer/commands/service/install_local.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/composer/commands/service/refresh_lock.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/caddy/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/caddy/Caddyfile +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/dev/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/local/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/local/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/prod/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/php/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/php/web.ini +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/frankenphp/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/app_service.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/db/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/db/migrate.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/maintenance/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/maintenance/disable.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/maintenance/enable.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/service/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/service/install_local.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/service/refresh_lock.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/ai/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/ai/shared/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/ai/shared/context.j2 +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/ai/shared/php.j2 +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/caddy/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/caddy/Caddyfile +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/dev/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/local/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/local/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/prod/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/php/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/samples/php/web.ini +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/php/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/agents/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/agents/editor/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/agents/editor/agent.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/agents/editor/context.j2 +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/shared/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/shared/context.j2 +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/app_service.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/service/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/service/deploy.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/service/install_local.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/service/watch.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/translations/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/translations/translate.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/knowledge/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/knowledge/entity.md +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/env.build +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/images/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/images/Dockerfile.dev +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/images/Dockerfile.release +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/dev/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/local/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/local/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/prod/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/symfony/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/workdir/php_package_workdir.py +72 -13
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/tests/.gitkeep +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/tests/workdir/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/tests/workdir/test_php_package_workdir.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/config_value/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/config_value/php_package_readme_config_value.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/file/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/file/php_composer_json_file.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/php_addon_manager.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/py.typed +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/resources/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/resources/docker/Dockerfile.roave +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/composer/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/composer/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/composer/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/composer/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/laravel/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/commands/runtime/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/env/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/env/local/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/commands/service/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/commands/url/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/commands/url/replace.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/docker/docker-compose-cli.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/env/local/wp-cli/.gitkeep +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/services/wordpress/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/workdir/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/workdir/php_packages_suite_workdir.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/workdir/php_symfony_workdir.py +0 -0
- {wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/src/wexample_wex_addon_dev_php/workdir/php_workdir.py +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.13.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
|
|
@@ -12,10 +12,10 @@ Requires-Python: >=3.10
|
|
|
12
12
|
Requires-Dist: attrs>=23.1.0
|
|
13
13
|
Requires-Dist: cattrs>=23.1.0
|
|
14
14
|
Requires-Dist: wexample-filestate-php>=6.5.0
|
|
15
|
-
Requires-Dist: wexample-filestate-symfony>=2.
|
|
16
|
-
Requires-Dist: wexample-wex-addon-ai>=19.
|
|
17
|
-
Requires-Dist: wexample-wex-addon-app>=34.
|
|
18
|
-
Requires-Dist: wexample-wex-addon-dev-javascript>=8.
|
|
15
|
+
Requires-Dist: wexample-filestate-symfony>=2.2.0
|
|
16
|
+
Requires-Dist: wexample-wex-addon-ai>=19.1.0
|
|
17
|
+
Requires-Dist: wexample-wex-addon-app>=34.5.0
|
|
18
|
+
Requires-Dist: wexample-wex-addon-dev-javascript>=8.8.0
|
|
19
19
|
Provides-Extra: dev
|
|
20
20
|
Requires-Dist: pytest; extra == "dev"
|
|
21
21
|
Requires-Dist: pytest-cov; 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.13.0
|
|
27
27
|
|
|
28
28
|
Extends wex with PHP-specific development commands for Composer, Laravel, Symfony, and WordPress services running in Docker containers
|
|
29
29
|
|
|
@@ -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.13.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" },
|
|
@@ -21,10 +21,10 @@ dependencies = [
|
|
|
21
21
|
"attrs>=23.1.0",
|
|
22
22
|
"cattrs>=23.1.0",
|
|
23
23
|
"wexample-filestate-php>=6.5.0",
|
|
24
|
-
"wexample-filestate-symfony>=2.
|
|
25
|
-
"wexample-wex-addon-ai>=19.
|
|
26
|
-
"wexample-wex-addon-app>=34.
|
|
27
|
-
"wexample-wex-addon-dev-javascript>=8.
|
|
24
|
+
"wexample-filestate-symfony>=2.2.0",
|
|
25
|
+
"wexample-wex-addon-ai>=19.1.0",
|
|
26
|
+
"wexample-wex-addon-app>=34.5.0",
|
|
27
|
+
"wexample-wex-addon-dev-javascript>=8.8.0",
|
|
28
28
|
]
|
|
29
29
|
|
|
30
30
|
[project.readme]
|
|
File without changes
|
|
@@ -8,7 +8,8 @@ _HAS_VERSION_STATUS_CODES: tuple[int, ...] = (200, 404)
|
|
|
8
8
|
|
|
9
9
|
@base_class
|
|
10
10
|
class PackagistRegistryGateway(AbstractGateway):
|
|
11
|
-
"""Thin HTTP gateway over Packagist's Composer v2 metadata
|
|
11
|
+
"""Thin HTTP gateway over Packagist's Composer v2 metadata, or a GitLab
|
|
12
|
+
composer registry's, which serves the same file.
|
|
12
13
|
|
|
13
14
|
Reads `p2/<vendor>/<package>.json`, the file composer itself downloads:
|
|
14
15
|
a version listed there is one a `composer update` run right after will
|
|
@@ -34,6 +35,9 @@ class PackagistRegistryGateway(AbstractGateway):
|
|
|
34
35
|
releases = response.json().get("packages", {}).get(package, [])
|
|
35
36
|
except ValueError:
|
|
36
37
|
return False
|
|
38
|
+
# Packagist lists the releases; a GitLab registry maps them by version.
|
|
39
|
+
if isinstance(releases, dict):
|
|
40
|
+
releases = list(releases.values())
|
|
37
41
|
|
|
38
42
|
wanted = version.removeprefix("v")
|
|
39
43
|
return any(
|
|
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
|
|
@@ -38,6 +38,17 @@ class PhpPackageWorkdir(WithRunnerWorkdirMixin, PhpWorkdir):
|
|
|
38
38
|
dependency check erring toward reporting is the right way round.
|
|
39
39
|
"""
|
|
40
40
|
return line.lstrip().startswith(("*", "//", "#", "/*"))
|
|
41
|
+
|
|
42
|
+
def get_gitlab_registry_url(self) -> str | None:
|
|
43
|
+
"""The GitLab composer registry of the group, when the suite publishes there.
|
|
44
|
+
|
|
45
|
+
`php.gitlab_registry.url`, the group's `packages.json`:
|
|
46
|
+
`https://gitlab.example.com/api/v4/group/<id>/-/packages/composer/packages.json`.
|
|
47
|
+
Each version is registered from its tag on the package's own project.
|
|
48
|
+
"""
|
|
49
|
+
return self.search_app_or_suite_runtime_config(
|
|
50
|
+
"php.gitlab_registry.url", default=None
|
|
51
|
+
).get_str_or_none()
|
|
41
52
|
def get_package_import_name(self) -> str:
|
|
42
53
|
"""Get the full package import name with vendor prefix."""
|
|
43
54
|
return f"{string_to_pascal_case(self.get_vendor_name())}\\{string_to_pascal_case(self.get_project_name())}"
|
|
@@ -160,7 +171,7 @@ class PhpPackageWorkdir(WithRunnerWorkdirMixin, PhpWorkdir):
|
|
|
160
171
|
|
|
161
172
|
path = self.get_path()
|
|
162
173
|
|
|
163
|
-
if not git_has_changes_since_tag(last_tag, "src", cwd=path):
|
|
174
|
+
if not git_has_changes_since_tag(last_tag, "src", cwd=path, content_only=True):
|
|
164
175
|
return UPGRADE_TYPE_MINOR
|
|
165
176
|
|
|
166
177
|
try:
|
|
@@ -218,6 +229,42 @@ class PhpPackageWorkdir(WithRunnerWorkdirMixin, PhpWorkdir):
|
|
|
218
229
|
# Uses git repo to deploy packages.
|
|
219
230
|
self.push_to_deployment_remote()
|
|
220
231
|
|
|
232
|
+
# Our own registry first, where the release counts: what the apps can
|
|
233
|
+
# install as soon as it is out, and what the publication waits for.
|
|
234
|
+
# Packagist follows from the tag, through the mirror, unwaited.
|
|
235
|
+
if self.get_gitlab_registry_url():
|
|
236
|
+
self._publish_to_gitlab_registry(tag)
|
|
237
|
+
|
|
238
|
+
def _publish_to_gitlab_registry(self, tag: str) -> None:
|
|
239
|
+
"""Register the version of tag in the composer registry of the package's
|
|
240
|
+
GitLab project, which the group's registry then serves."""
|
|
241
|
+
import re
|
|
242
|
+
import urllib.request
|
|
243
|
+
from urllib.parse import quote, urlencode
|
|
244
|
+
|
|
245
|
+
from wexample_helpers_git.helper.git import git_get_remote_url
|
|
246
|
+
|
|
247
|
+
api_url = self.get_gitlab_registry_url().split("/group/", 1)[0]
|
|
248
|
+
# The project is the package's origin: ssh://git@host:port/<group>/<name>.git
|
|
249
|
+
project_path = re.sub(
|
|
250
|
+
r"^(ssh://[^/]+/|git@[^:]+:|https?://[^/]+/)",
|
|
251
|
+
"",
|
|
252
|
+
git_get_remote_url(cwd=self.get_path()),
|
|
253
|
+
).removesuffix(".git")
|
|
254
|
+
request = urllib.request.Request(
|
|
255
|
+
f"{api_url}/projects/{quote(project_path, safe='')}/packages/composer",
|
|
256
|
+
data=urlencode({"tag": tag}).encode(),
|
|
257
|
+
headers={
|
|
258
|
+
"PRIVATE-TOKEN": self.get_env_parameter_or_suite_fallback(
|
|
259
|
+
"GITLAB_API_TOKEN"
|
|
260
|
+
)
|
|
261
|
+
},
|
|
262
|
+
method="POST",
|
|
263
|
+
)
|
|
264
|
+
with urllib.request.urlopen(request, timeout=30):
|
|
265
|
+
pass
|
|
266
|
+
self.log(f"{self.get_package_name()} {tag} registered on the GitLab registry.")
|
|
267
|
+
|
|
221
268
|
def _test_run_without_container(self) -> None:
|
|
222
269
|
"""In the php image of the runners, the dependencies included.
|
|
223
270
|
|
|
@@ -320,21 +367,33 @@ class PhpPackageWorkdir(WithRunnerWorkdirMixin, PhpWorkdir):
|
|
|
320
367
|
PackagistRegistryGateway,
|
|
321
368
|
)
|
|
322
369
|
|
|
323
|
-
if not self.is_published_publicly():
|
|
324
|
-
return
|
|
325
|
-
|
|
326
370
|
package = self.get_package_name()
|
|
327
371
|
version = self.get_setup_version()
|
|
328
|
-
gateway = PackagistRegistryGateway(
|
|
329
|
-
base_url="https://repo.packagist.org",
|
|
330
|
-
io=self.io,
|
|
331
|
-
timeout=10,
|
|
332
|
-
)
|
|
333
372
|
|
|
334
|
-
|
|
335
|
-
|
|
373
|
+
# The GitLab registry, when the suite publishes there, serves a version
|
|
374
|
+
# as soon as it is registered; Packagist, behind the mirror and its
|
|
375
|
+
# webhook, takes minutes, and nobody waits for it any more.
|
|
376
|
+
group_url = self.get_gitlab_registry_url()
|
|
377
|
+
if group_url:
|
|
378
|
+
gateway = PackagistRegistryGateway(
|
|
379
|
+
base_url=group_url.removesuffix("/packages.json"),
|
|
380
|
+
io=self.io,
|
|
381
|
+
timeout=10,
|
|
382
|
+
)
|
|
383
|
+
registry, delay_seconds = "the GitLab registry", 5
|
|
384
|
+
elif self.is_published_publicly():
|
|
385
|
+
gateway = PackagistRegistryGateway(
|
|
386
|
+
base_url="https://repo.packagist.org",
|
|
387
|
+
io=self.io,
|
|
388
|
+
timeout=10,
|
|
389
|
+
)
|
|
390
|
+
registry, delay_seconds = "Packagist", 30
|
|
391
|
+
else:
|
|
392
|
+
return
|
|
393
|
+
|
|
394
|
+
max_attempts = 20 * 60 // delay_seconds
|
|
336
395
|
|
|
337
|
-
self.log(f"Waiting for {package} {version} to appear on
|
|
396
|
+
self.log(f"Waiting for {package} {version} to appear on {registry}…")
|
|
338
397
|
|
|
339
398
|
def on_retry(attempt, max_a, delay, _exc, _msg) -> None:
|
|
340
399
|
self.log(
|
|
@@ -347,7 +406,7 @@ class PhpPackageWorkdir(WithRunnerWorkdirMixin, PhpWorkdir):
|
|
|
347
406
|
delay_seconds_callback=lambda _attempt: delay_seconds,
|
|
348
407
|
on_retry_callback=on_retry,
|
|
349
408
|
timeout_message=(
|
|
350
|
-
f"Timed out waiting for {package} {version} on
|
|
409
|
+
f"Timed out waiting for {package} {version} on {registry} after "
|
|
351
410
|
f"{max_attempts * delay_seconds // 60} minutes."
|
|
352
411
|
),
|
|
353
412
|
).run()
|
|
File without changes
|
{wexample_wex_addon_dev_php-12.11.1 → wexample_wex_addon_dev_php-12.13.0}/tests/workdir/__init__.py
RENAMED
|
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
|