wexample-wex-addon-dev-php 12.2.0__tar.gz → 12.3.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.2.0 → wexample_wex_addon_dev_php-12.3.0}/PKG-INFO +8 -8
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/README.md +4 -4
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/pyproject.toml +4 -4
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/file/php_composer_json_file.py +19 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/composer/commands/service/install_local.py +17 -1
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/service/watch.py +50 -8
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/workdir/php_symfony_workdir.py +4 -1
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/workdir/php_workdir.py +22 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/__pycache__/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/config_value/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/config_value/php_package_readme_config_value.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/const/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/const/tags.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/file/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/formatter/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/formatter/php_code_formatter.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/php_addon_manager.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/py.typed +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/resources/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/resources/design_rules/php_code.md +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/resources/docker/Dockerfile.roave +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/resources/writing_rules/php_code.md +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/composer/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/composer/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/composer/commands/service/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/composer/commands/service/refresh_lock.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/composer/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/composer/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/composer/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/caddy/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/caddy/Caddyfile +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/dev/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/local/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/local/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/prod/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/php/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/samples/php/web.ini +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/frankenphp/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/app_service.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/db/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/db/migrate.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/maintenance/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/maintenance/disable.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/maintenance/enable.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/service/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/service/install_local.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/commands/service/refresh_lock.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/laravel/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/ai/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/ai/shared/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/ai/shared/context.j2 +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/ai/shared/php.j2 +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/caddy/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/caddy/Caddyfile +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/dev/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/local/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/local/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/prod/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/php/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/samples/php/web.ini +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/php/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/commands/runtime/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/env/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/env/local/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/phpmyadmin/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/agents/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/agents/editor/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/agents/editor/agent.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/agents/editor/context.j2 +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/shared/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/ai/shared/context.j2 +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/app_service.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/service/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/service/deploy.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/commands/service/install_local.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/knowledge/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/knowledge/entity.md +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/env.build +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/images/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/images/Dockerfile.dev +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/docker/images/Dockerfile.release +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/dev/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/local/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/local/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/prod/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/symfony/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/commands/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/commands/service/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/commands/url/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/commands/url/replace.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/docker/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/.wex.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/docker/docker-compose-cli.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/env/dev/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/env/local/wp-cli/.gitkeep +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/samples/env/prod/docker/docker-compose.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/services/wordpress/service.yml +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/workdir/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/workdir/php_package_workdir.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/src/wexample_wex_addon_dev_php/workdir/php_packages_suite_workdir.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/tests/.gitkeep +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/tests/workdir/__init__.py +0 -0
- {wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/tests/workdir/test_php_package_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.3.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
|
|
@@ -13,9 +13,9 @@ Requires-Dist: attrs>=23.1.0
|
|
|
13
13
|
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
|
-
Requires-Dist: wexample-wex-addon-ai>=
|
|
17
|
-
Requires-Dist: wexample-wex-addon-app>=
|
|
18
|
-
Requires-Dist: wexample-wex-addon-dev-javascript>=8.
|
|
16
|
+
Requires-Dist: wexample-wex-addon-ai>=16.0.0
|
|
17
|
+
Requires-Dist: wexample-wex-addon-app>=32.0.0
|
|
18
|
+
Requires-Dist: wexample-wex-addon-dev-javascript>=8.2.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.3.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
|
|
|
@@ -275,9 +275,9 @@ Visit the [Wexample Suite documentation](https://docs.wexample.com) for the comp
|
|
|
275
275
|
- cattrs: >=23.1.0
|
|
276
276
|
- wexample-filestate-php: >=6.4.0
|
|
277
277
|
- wexample-filestate-symfony: >=2.0.0
|
|
278
|
-
- wexample-wex-addon-ai: >=
|
|
279
|
-
- wexample-wex-addon-app: >=
|
|
280
|
-
- wexample-wex-addon-dev-javascript: >=8.
|
|
278
|
+
- wexample-wex-addon-ai: >=16.0.0
|
|
279
|
+
- wexample-wex-addon-app: >=32.0.0
|
|
280
|
+
- wexample-wex-addon-dev-javascript: >=8.2.0
|
|
281
281
|
|
|
282
282
|
## Versioning & Compatibility Policy
|
|
283
283
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# wex_addon_dev_php
|
|
2
2
|
|
|
3
|
-
Version: 12.
|
|
3
|
+
Version: 12.3.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
|
|
|
@@ -252,9 +252,9 @@ Visit the [Wexample Suite documentation](https://docs.wexample.com) for the comp
|
|
|
252
252
|
- cattrs: >=23.1.0
|
|
253
253
|
- wexample-filestate-php: >=6.4.0
|
|
254
254
|
- wexample-filestate-symfony: >=2.0.0
|
|
255
|
-
- wexample-wex-addon-ai: >=
|
|
256
|
-
- wexample-wex-addon-app: >=
|
|
257
|
-
- wexample-wex-addon-dev-javascript: >=8.
|
|
255
|
+
- wexample-wex-addon-ai: >=16.0.0
|
|
256
|
+
- wexample-wex-addon-app: >=32.0.0
|
|
257
|
+
- wexample-wex-addon-dev-javascript: >=8.2.0
|
|
258
258
|
|
|
259
259
|
## Versioning & Compatibility Policy
|
|
260
260
|
|
|
@@ -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.3.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" },
|
|
@@ -22,9 +22,9 @@ dependencies = [
|
|
|
22
22
|
"cattrs>=23.1.0",
|
|
23
23
|
"wexample-filestate-php>=6.4.0",
|
|
24
24
|
"wexample-filestate-symfony>=2.0.0",
|
|
25
|
-
"wexample-wex-addon-ai>=
|
|
26
|
-
"wexample-wex-addon-app>=
|
|
27
|
-
"wexample-wex-addon-dev-javascript>=8.
|
|
25
|
+
"wexample-wex-addon-ai>=16.0.0",
|
|
26
|
+
"wexample-wex-addon-app>=32.0.0",
|
|
27
|
+
"wexample-wex-addon-dev-javascript>=8.2.0",
|
|
28
28
|
]
|
|
29
29
|
|
|
30
30
|
[project.readme]
|
|
@@ -93,6 +93,25 @@ class PhpComposerJsonFile(AppDependenciesConfigFileMixin, JsonFile):
|
|
|
93
93
|
# wrappers are unwrapped to native str — matches the dict[str, str] signature.
|
|
94
94
|
return require.to_dict_or_none() or {}
|
|
95
95
|
|
|
96
|
+
def get_dev_autoload_directories(self) -> list[str]:
|
|
97
|
+
"""Directories autoloaded in development only, as `autoload-dev` maps them."""
|
|
98
|
+
autoload_dev = self.read_parsed().get("autoload-dev") or {}
|
|
99
|
+
directories: list[str] = []
|
|
100
|
+
|
|
101
|
+
for paths in (autoload_dev.get("psr-4") or {}).values():
|
|
102
|
+
directories.extend([paths] if isinstance(paths, str) else paths)
|
|
103
|
+
directories.extend(autoload_dev.get("classmap") or [])
|
|
104
|
+
|
|
105
|
+
return [directory.rstrip("/") for directory in directories if directory]
|
|
106
|
+
|
|
107
|
+
def get_dev_dependencies_versions(self) -> dict[str, str]:
|
|
108
|
+
require_dev = self.read_config().search(path="require-dev")
|
|
109
|
+
|
|
110
|
+
if not require_dev:
|
|
111
|
+
return {}
|
|
112
|
+
|
|
113
|
+
return require_dev.to_dict_or_none() or {}
|
|
114
|
+
|
|
96
115
|
def set_private_registry_packages(self, package_names: list[str]) -> bool:
|
|
97
116
|
"""Bound every custom composer registry to the private packages.
|
|
98
117
|
|
|
@@ -23,6 +23,10 @@ VENDOR_DEV_DIR = "/var/www/vendor-dev"
|
|
|
23
23
|
# /usr/bin/composer pinned to an older php) pass their own composer_bin.
|
|
24
24
|
COMPOSER_BIN = "composer"
|
|
25
25
|
|
|
26
|
+
# What `composer install` exits with when composer.json has changed since the
|
|
27
|
+
# lock was written.
|
|
28
|
+
COMPOSER_EXIT_LOCK_OUTDATED = 4
|
|
29
|
+
|
|
26
30
|
|
|
27
31
|
@command(
|
|
28
32
|
type=COMMAND_TYPE_SERVICE,
|
|
@@ -56,6 +60,11 @@ def composer__service__install_local(
|
|
|
56
60
|
|
|
57
61
|
vendors = " ".join(sorted(php_packages.to_dict().keys()))
|
|
58
62
|
|
|
63
|
+
# A composer.json edited since the lock was written makes `install` refuse
|
|
64
|
+
# to start (exit code 4). Locally that lock has no value to keep: it is
|
|
65
|
+
# written again from composer.json, exactly as deleting it would — and only
|
|
66
|
+
# then, so an up-to-date lock is installed as it is.
|
|
67
|
+
#
|
|
59
68
|
# Composer keeps the (possibly stale) registry version of a package even
|
|
60
69
|
# when a newer local source exists, so the deterministic wiring is a
|
|
61
70
|
# forced symlink over vendor/ — every local package of each declared
|
|
@@ -63,7 +72,14 @@ def composer__service__install_local(
|
|
|
63
72
|
script = f"""
|
|
64
73
|
set -e
|
|
65
74
|
cd {APP_DIR}
|
|
66
|
-
|
|
75
|
+
status=0
|
|
76
|
+
{composer_bin} install --no-scripts || status=$?
|
|
77
|
+
if [ "$status" -eq {COMPOSER_EXIT_LOCK_OUTDATED} ]; then
|
|
78
|
+
echo " composer.lock is behind composer.json, writing it again"
|
|
79
|
+
{composer_bin} update --no-scripts
|
|
80
|
+
elif [ "$status" -ne 0 ]; then
|
|
81
|
+
exit "$status"
|
|
82
|
+
fi
|
|
67
83
|
for vendor in {vendors}; do
|
|
68
84
|
[ -d "{VENDOR_DEV_DIR}/$vendor" ] || continue
|
|
69
85
|
mkdir -p "vendor/$vendor"
|
|
@@ -27,6 +27,45 @@ PREPARE_STEPS = [
|
|
|
27
27
|
]
|
|
28
28
|
|
|
29
29
|
|
|
30
|
+
# What the list of entries is built again with, between two watches.
|
|
31
|
+
REGENERATE_STEPS = [
|
|
32
|
+
"cache:clear --no-warmup",
|
|
33
|
+
"loader:generate-encore-manifest",
|
|
34
|
+
]
|
|
35
|
+
|
|
36
|
+
# Webpack is told its entries once, when it starts, so a file created while it
|
|
37
|
+
# runs is compiled by nobody and served to no one. The watchdog in the loader's
|
|
38
|
+
# encore config stops the watch on that code and nothing else, and this starts
|
|
39
|
+
# it again with a list built afresh.
|
|
40
|
+
#
|
|
41
|
+
# The loop runs here, on the host, and not in the node container: the list is
|
|
42
|
+
# built by php, which the node image of some apps does not carry, and a loop
|
|
43
|
+
# inside it could only give up there. From here each step goes to the
|
|
44
|
+
# container that can run it — the watch to node, the list to the php one — so
|
|
45
|
+
# every app restarts on its own. Ctrl-C leaves for good, as it should.
|
|
46
|
+
ENTRY_LIST_CHANGED_EXIT_CODE = 75
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
def build_watch_loop(node_container: str, php_container: str) -> str:
|
|
50
|
+
import shlex
|
|
51
|
+
|
|
52
|
+
regenerate = " && ".join(
|
|
53
|
+
f"php bin/console {step} >/dev/null" for step in REGENERATE_STEPS
|
|
54
|
+
)
|
|
55
|
+
|
|
56
|
+
return f"""
|
|
57
|
+
trap 'exit 0' INT TERM
|
|
58
|
+
while true; do
|
|
59
|
+
docker exec -ti -w {shlex.quote(APP_DIR)} {shlex.quote(node_container)} yarn watch
|
|
60
|
+
code=$?
|
|
61
|
+
[ "$code" -eq {ENTRY_LIST_CHANGED_EXIT_CODE} ] || exit "$code"
|
|
62
|
+
|
|
63
|
+
echo "[watch] the list of entries changed, building it again"
|
|
64
|
+
docker exec -w {shlex.quote(APP_DIR)} {shlex.quote(php_container)} /bin/sh -c {shlex.quote(regenerate)} || exit $?
|
|
65
|
+
done
|
|
66
|
+
"""
|
|
67
|
+
|
|
68
|
+
|
|
30
69
|
@command(
|
|
31
70
|
type=COMMAND_TYPE_SERVICE,
|
|
32
71
|
description="Prepare the front build and start the webpack watcher (local env only)",
|
|
@@ -66,17 +105,20 @@ def symfony__service__watch(
|
|
|
66
105
|
f"No container for the '{NODE_SERVICE}' service — the watcher runs there."
|
|
67
106
|
)
|
|
68
107
|
|
|
108
|
+
php_container = service.addon_manager.get_service_docker_container_name(
|
|
109
|
+
service.name
|
|
110
|
+
)
|
|
111
|
+
if not php_container:
|
|
112
|
+
raise RuntimeError(
|
|
113
|
+
f"No container for the '{service.name}' service — the list of entries is built there."
|
|
114
|
+
)
|
|
115
|
+
|
|
69
116
|
context.io.log("[watch] starting webpack watch…")
|
|
70
117
|
return InteractiveShellCommandResponse(
|
|
71
118
|
kernel=context.kernel,
|
|
72
119
|
content=[
|
|
73
|
-
"
|
|
74
|
-
"
|
|
75
|
-
|
|
76
|
-
"-w",
|
|
77
|
-
APP_DIR,
|
|
78
|
-
node_container,
|
|
79
|
-
"yarn",
|
|
80
|
-
"watch",
|
|
120
|
+
"/bin/sh",
|
|
121
|
+
"-c",
|
|
122
|
+
build_watch_loop(node_container, php_container),
|
|
81
123
|
],
|
|
82
124
|
)
|
|
@@ -695,7 +695,10 @@ class PhpSymfonyWorkdir(PhpWorkdir):
|
|
|
695
695
|
excluded_segments = frozenset(excluded)
|
|
696
696
|
|
|
697
697
|
children_filter = self._create_php_file_children_filter()
|
|
698
|
-
|
|
698
|
+
base_filter = children_filter.filter
|
|
699
|
+
children_filter.filter = lambda path: base_filter(
|
|
700
|
+
path
|
|
701
|
+
) and excluded_segments.isdisjoint(path.parts)
|
|
699
702
|
|
|
700
703
|
return children_filter
|
|
701
704
|
|
|
@@ -10,6 +10,8 @@ from wexample_wex_addon_ai.workdir.mixin.with_ai_workdir_mixin import (
|
|
|
10
10
|
from wexample_wex_addon_app.workdir.code_base_workdir import CodeBaseWorkdir
|
|
11
11
|
|
|
12
12
|
if TYPE_CHECKING:
|
|
13
|
+
from pathlib import Path
|
|
14
|
+
|
|
13
15
|
from wexample_config.const.types import DictConfig
|
|
14
16
|
from wexample_config.options_provider.abstract_options_provider import (
|
|
15
17
|
AbstractOptionsProvider,
|
|
@@ -55,6 +57,9 @@ class PhpWorkdir(WithAiWorkdirMixin, CodeBaseWorkdir):
|
|
|
55
57
|
|
|
56
58
|
return manifests
|
|
57
59
|
|
|
60
|
+
def get_dev_dependencies_versions(self) -> dict[str, str]:
|
|
61
|
+
return self.get_app_config_file().get_dev_dependencies_versions()
|
|
62
|
+
|
|
58
63
|
def get_main_code_file_extension(self) -> str:
|
|
59
64
|
from wexample_filestate_php.const.php_file import PHP_FILE_EXTENSION
|
|
60
65
|
|
|
@@ -84,6 +89,16 @@ class PhpWorkdir(WithAiWorkdirMixin, CodeBaseWorkdir):
|
|
|
84
89
|
return False
|
|
85
90
|
return any(tests_path.rglob("*Test.php"))
|
|
86
91
|
|
|
92
|
+
def is_dev_code_path(self, path: Path) -> bool:
|
|
93
|
+
# autoload-dev is where composer itself draws the line; tests/ is the
|
|
94
|
+
# convention when a package declares none.
|
|
95
|
+
directories = self.get_app_config_file().get_dev_autoload_directories() or [
|
|
96
|
+
"tests"
|
|
97
|
+
]
|
|
98
|
+
root = self.get_path()
|
|
99
|
+
|
|
100
|
+
return any(path.is_relative_to(root / directory) for directory in directories)
|
|
101
|
+
|
|
87
102
|
def prepare_value(self, raw_value: DictConfig | None = None) -> DictConfig:
|
|
88
103
|
from wexample_filestate.const.disk import DiskItemType
|
|
89
104
|
|
|
@@ -170,6 +185,8 @@ class PhpWorkdir(WithAiWorkdirMixin, CodeBaseWorkdir):
|
|
|
170
185
|
)
|
|
171
186
|
from wexample_filestate_php.file.php_file import PhpFile
|
|
172
187
|
|
|
188
|
+
root = self.get_path()
|
|
189
|
+
|
|
173
190
|
return ChildrenFilterOption(
|
|
174
191
|
pattern={
|
|
175
192
|
"class": PhpFile,
|
|
@@ -178,4 +195,9 @@ class PhpWorkdir(WithAiWorkdirMixin, CodeBaseWorkdir):
|
|
|
178
195
|
},
|
|
179
196
|
name_pattern=r"^.*\.php$",
|
|
180
197
|
recursive=True,
|
|
198
|
+
# Symfony writes its compiled container under var/, test kernels
|
|
199
|
+
# included (tests/Fixtures/App/var/cache): generated code, not ours
|
|
200
|
+
# to format. Read relative to the workdir, which may itself sit
|
|
201
|
+
# under /var.
|
|
202
|
+
filter=lambda path: "var" not in path.relative_to(root).parts,
|
|
181
203
|
)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wexample_wex_addon_dev_php-12.2.0 → wexample_wex_addon_dev_php-12.3.0}/tests/workdir/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|