diff --git a/CHANGELOG.md b/CHANGELOG.md index 5552915..06c4b9d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ * Update Composer to version 2.7 * Update NodeJS to version 20.x LTS * Upgrade base to Debian Bookworm (12.5) +* Add support for autocomplete (composer & symfony) ## 3.11.0 (2023-05-30) diff --git a/infrastructure/docker/services/php/Dockerfile b/infrastructure/docker/services/php/Dockerfile index 1cee63d..7296194 100644 --- a/infrastructure/docker/services/php/Dockerfile +++ b/infrastructure/docker/services/php/Dockerfile @@ -17,6 +17,7 @@ RUN apt-get update \ RUN apt-get update \ && apt-get install -y --no-install-recommends \ + bash-completion \ procps \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/* @@ -118,11 +119,27 @@ COPY --from=composer/composer:2.7.7 /usr/bin/composer /usr/bin/composer RUN mkdir -p "/home/app/.composer/cache" \ && chown app: /home/app/.composer -R +ADD https://raw.githubusercontent.com/symfony/symfony/refs/heads/7.2/src/Symfony/Component/Console/Resources/completion.bash /tmp/completion.bash + +# Composer symfony/console version is too old, and doest not support "API version feature", so we remove it +# Hey, while we are at it, let's add some more completion +RUN sed /tmp/completion.bash \ + -e "s/{{ COMMAND_NAME }}/composer/g" \ + -e 's/"-a{{ VERSION }}"//g' \ + -e "s/{{ VERSION }}/1/g" \ + > /etc/bash_completion.d/composer \ + && sed /tmp/completion.bash \ + -e "s/{{ COMMAND_NAME }}/console/g" \ + -e "s/{{ VERSION }}/1/g" \ + > /etc/bash_completion.d/console + # Third party tools ENV PATH="$PATH:/var/www/tools/bin" # Good default customization RUN cat >> /etc/bash.bashrc <