ProfessionalWiki / chameleon

Provides a highly flexible and customizable skin using Bootstrap 4
https://www.mediawiki.org/wiki/Skin:Chameleon
Other
115 stars 63 forks source link

Fatal error: `NormalizedExceptionTrait` #403

Closed bovender closed 7 months ago

bovender commented 7 months ago

I've been running MediaWiki with the ChameleonSkin in a Docker container for several years. Today I rebuilt the container (MediaWiki ~1.39) and I am prompted with the following error:

Fatal error: Trait "Wikimedia\NormalizedException\NormalizedExceptionTrait" not found in /var/www/html/includes/Settings/Config/PhpIniSink.php on line 12

When I skip the installation of ChameleonSkin, the error goes away.

What happened?

Dockerfile ``` FROM mediawiki:1.39 RUN apt-get update && apt-get install -y --no-install-recommends \ cron \ libpq-dev \ libzip-dev \ msmtp \ unzip \ zlib1g-dev RUN docker-php-ext-install -j"$(nproc)" \ pgsql \ zip RUN pecl install redis && docker-php-ext-enable redis COPY wiki.ini /usr/local/etc/php/conf.d/wiki.ini RUN chown www-data -R /var/www/html/images RUN ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime # Install Composer and the Chameleon skin # ADD composer.phar /usr/local/bin/composer # RUN chmod +x /usr/local/bin/composer COPY --from=composer:latest /usr/bin/composer /usr/local/bin/composer WORKDIR /var/www/html COPY composer.local.json composer.local.json RUN mkdir -p .composer/cache && \ chown -R www-data:www-data composer* .composer RUN export COMPOSER_ALLOW_SUPERUSER=1 && \ export COMPOSER=composer.local.json && \ composer config --no-plugins allow-plugins.wikimedia/composer-merge-plugin true && \ composer config --no-plugins allow-plugins.composer/installers true && \ composer require --no-update mediawiki/chameleon-skin:dev-master && \ # composer require --no-update mediawiki/sub-page-list "~3.0" && \ composer update ```
bovender commented 7 months ago

While I still don't quite know what went wrong, I was able to solve the problem by removing these commands from the Dockerfile:

export COMPOSER_ALLOW_SUPERUSER=1 && \
export COMPOSER=composer.local.json && \

The image gets built without problems, and my Wiki appears to be running just fine.