Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes & easier local dev #312

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

Lewiscowles1986
Copy link

This just updates a few things.

  • Documents ruby using wider version range (Still messes with my RVM, confirmed 2.7.6 works)
  • Updates node-sass docker-image and command(s) to run for M1 chip support
  • Adds makefile target to update the sub-modules

Copy link
Member

@Jean85 Jean85 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for your contribution! I've added a couple of points where we need to dig further...

@@ -1,5 +1,5 @@
source "https://rubygems.org"

ruby '>= 2.5', '< 2.6'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure this is sensible. The Ruby version that we're allowed to use is bound to the one available in the Platform.sh pipeline, which is in turn bound to whatever is available inside their PHP image.

Maybe we can increase the Ruby version by upgrading the PHP version?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The non-PHP language runtimes should not be tied to PHP version. Perhaps I am misunderstanding your point though. This does not prevent running with 2.5 as the lower bound is correct. This merely enables running with a higher upper-bound (tested working). The docker for example still uses ruby 2.5 (also the proof-reading it checks for reports numerous failures, but perhaps that can be solved separately).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Ruby runtime is unfortunately tied due to how the deploy pipeline works: with a single container. So, inside that single container, we require a specific PHP version, and inside we find another, specific, not-chosen-by-us Ruby version. That's why I was saying that upgrading PHP may lead to upgrading Ruby.

Hence, running with a different Ruby version locally is not good IMHO, because it 's different from what will happen during the deploy.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So the ruby you are bound to use won't change from this line is I guess the confusion I am having. This allows the same lower and upper bound range of ruby runtimes, but additionally, adds the flexibility to not rely on (deprecated, end-of-life) ruby 2.6 [source[(https://endoflife.date/ruby)

I understand a little about how a box might have only a single runtime. So running this on that box should not break. If it does, please can you share the message?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My concern is that you may start having issues in the pipeline in PSH while deploying, while being unaware of that during local development, since you would be using a different version.

I know that it's EOL, and I'm tolerating it just because we're not actively deploying it, we're just using it to compile CSS and check links... But, in the end, I would be pretty happy to upgrade to PHP 8.1 and obtain a bump on Ruby too.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Any progress on sharing failure messages? I'm more or less stuck on fixing without.

Makefile Show resolved Hide resolved
--output-style=compressed \
source/_sass/all.scss \
output_dev/css/all.css
output_dev/css/all.css || true
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why would you make it like this? Having a failure should be reported.
Also, is NPX available inside the container?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NPX is available within this container as it's the standard docker nodejs. I pipe to true which does not change logging, but is unfortunate because despite succeeding node-sass was emitting warnings, and therefore giving non-zero error code.

user: 1000:1000
working_dir: /fig-website
volumes:
- .:/fig-website
entrypoint: 'sh'

node-sass:
image: catchdigital/node-sass:8.12.0-alpine
image: node:16-alpine
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here too: we need to check which version are we running inside the PSH pipeline, and align to that one.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So I've not checked the inner script will work with the years out of date catchdigital image. Surely "the pipeline" will run via docker-compose?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No it does not. It uses the PSH inner workings, see https://docs.platform.sh/languages/php.html

To be fair, it's been years since that was set up, so maybe we can review the docs and see if we can improve/refactor the deploy process.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If there are failures, I'm happy to try to accommodate not forcing that upgrade path; but without an identical environment, reproducing any issues that platform may have would be next to impossible for me. Admittedly this is not the greatest impression platform.sh could be leaving 😬; thank you for your patience and time discussing this with me.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the log of the current failing build. I think CSS is not getting generated:

 Found 911 commits
 
 Building application 'php-fig-website' (runtime type: php:8.0, tree: 7d4f91c)
   Generating runtime configuration.
   
   Installing build dependencies...
     Installing php build dependencies: composer/composer
     W: Changed current directory to /app/.global/composer/composer
     W: No composer.lock file present. Updating dependencies to latest instead of installing from lock file. See https://getcomposer.org/install for more information.
     W: Loading composer repositories with package information
     W: Info from https://repo.packagist.org: #StandWithUkraine
     W: Updating dependencies
     W: Lock file operations: 27 installs, 0 updates, 0 removals
     W:   - Locking composer/ca-bundle (1.3.4)
     W:   - Locking composer/class-map-generator (1.0.0)
     W:   - Locking composer/composer (2.4.4)
     W:   - Locking composer/metadata-minifier (1.0.0)
     W:   - Locking composer/pcre (3.1.0)
     W:   - Locking composer/semver (3.3.2)
     W:   - Locking composer/spdx-licenses (1.5.7)
     W:   - Locking composer/xdebug-handler (3.0.3)
     W:   - Locking justinrainbow/json-schema (5.2.12)
     W:   - Locking psr/container (2.0.2)
     W:   - Locking psr/log (3.0.0)
     W:   - Locking react/promise (v2.9.0)
     W:   - Locking seld/jsonlint (1.9.0)
     W:   - Locking seld/phar-utils (1.2.1)
     W:   - Locking seld/signal-handler (2.0.1)
     W:   - Locking symfony/console (v6.0.15)
     W:   - Locking symfony/filesystem (v6.0.13)
     W:   - Locking symfony/finder (v6.0.11)
     W:   - Locking symfony/polyfill-ctype (v1.27.0)
     W:   - Locking symfony/polyfill-intl-grapheme (v1.27.0)
     W:   - Locking symfony/polyfill-intl-normalizer (v1.27.0)
     W:   - Locking symfony/polyfill-mbstring (v1.27.0)
     W:   - Locking symfony/polyfill-php73 (v1.27.0)
     W:   - Locking symfony/polyfill-php80 (v1.27.0)
     W:   - Locking symfony/process (v6.0.11)
     W:   - Locking symfony/service-contracts (v3.0.2)
     W:   - Locking symfony/string (v6.0.15)
     W: Writing lock file
     W: Installing dependencies from lock file (including require-dev)
     W: Package operations: 27 installs, 0 updates, 0 removals
     W:   - Installing symfony/process (v6.0.11): Extracting archive
     W:   - Installing symfony/polyfill-php80 (v1.27.0): Extracting archive
     W:   - Installing symfony/polyfill-php73 (v1.27.0): Extracting archive
     W:   - Installing symfony/finder (v6.0.11): Extracting archive
     W:   - Installing symfony/polyfill-mbstring (v1.27.0): Extracting archive
     W:   - Installing symfony/polyfill-ctype (v1.27.0): Extracting archive
     W:   - Installing symfony/filesystem (v6.0.13): Extracting archive
     W:   - Installing symfony/polyfill-intl-normalizer (v1.27.0): Extracting archive
     W:   - Installing symfony/polyfill-intl-grapheme (v1.27.0): Extracting archive
     W:   - Installing symfony/string (v6.0.15): Extracting archive
     W:   - Installing psr/container (2.0.2): Extracting archive
     W:   - Installing symfony/service-contracts (v3.0.2): Extracting archive
     W:   - Installing symfony/console (v6.0.15): Extracting archive
     W:   - Installing seld/signal-handler (2.0.1): Extracting archive
     W:   - Installing seld/phar-utils (1.2.1): Extracting archive
     W:   - Installing seld/jsonlint (1.9.0): Extracting archive
     W:   - Installing react/promise (v2.9.0): Extracting archive
     W:   - Installing psr/log (3.0.0): Extracting archive
     W:   - Installing justinrainbow/json-schema (5.2.12): Extracting archive
     W:   - Installing composer/pcre (3.1.0): Extracting archive
     W:   - Installing composer/xdebug-handler (3.0.3): Extracting archive
     W:   - Installing composer/spdx-licenses (1.5.7): Extracting archive
     W:   - Installing composer/semver (3.3.2): Extracting archive
     W:   - Installing composer/metadata-minifier (1.0.0): Extracting archive
     W:   - Installing composer/class-map-generator (1.0.0): Extracting archive
     W:   - Installing composer/ca-bundle (1.3.4): Extracting archive
     W:   - Installing composer/composer (2.4.4): Extracting archive
     W: 3 package suggestions were added by new dependencies, use `composer suggest` to see details.
     W: Generating optimized autoload files
     W: 22 packages you are using are looking for funding.
     W: Use the `composer fund` command to find out more!
     Installing nodejs build dependencies: node-sass
     W: npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
     W: npm WARN deprecated [email protected]: this library is no longer supported
     /app/.global/bin/node-sass -> /app/.global/lib/node_modules/node-sass/bin/node-sass
     
     > [email protected] install /app/.global/lib/node_modules/node-sass
     > node scripts/install.js
     
     Cached binary found at /mnt/cache/npm/node-sass/4.14.1/linux-x64-72_binding.node
     
     > [email protected] postinstall /app/.global/lib/node_modules/node-sass
     > node scripts/build.js
     
     Binary found at /app/.global/lib/node_modules/node-sass/vendor/linux-x64-72/binding.node
     Testing binary
     Binary is fine
     + [email protected]
     added 197 packages from 143 contributors in 7.075s
     W: 
   
   Moving the application to the output directory
   Prewarming composer cache.
   
   Found a `composer.json`, installing dependencies.
     W: Installing dependencies from lock file (including require-dev)
     W: Verifying lock file contents can be installed on current platform.
     W: Package operations: 61 installs, 0 updates, 0 removals
     W:   - Installing symfony/flex (v2.2.3): Extracting archive
     W:   - Installing symfony/polyfill-php72 (v1.26.0): Extracting archive
     W:   - Installing symfony/polyfill-mbstring (v1.26.0): Extracting archive
     W:   - Installing symfony/polyfill-ctype (v1.26.0): Extracting archive
     W:   - Installing twig/twig (v2.15.3): Extracting archive
     W:   - Installing aptoma/twig-markdown (3.4.1): Extracting archive
     W:   - Installing dflydev/dot-access-data (v1.1.0): Extracting archive
     W:   - Installing dflydev/placeholder-resolver (v1.0.3): Extracting archive
     W:   - Installing fig/http-message-util (1.1.5): Extracting archive
     W:   - Installing react/promise (v2.9.0): Extracting archive
     W:   - Installing react/cache (v1.1.1): Extracting archive
     W:   - Installing react/event-loop (v1.3.0): Extracting archive
     W:   - Installing evenement/evenement (v3.0.1): Extracting archive
     W:   - Installing react/stream (v1.2.0): Extracting archive
     W:   - Installing react/promise-stream (v1.5.0): Extracting archive
     W:   - Installing react/promise-timer (v1.9.0): Extracting archive
     W:   - Installing react/dns (v1.10.0): Extracting archive
     W:   - Installing react/socket (v1.12.0): Extracting archive
     W:   - Installing psr/http-message (1.0.1): Extracting archive
     W:   - Installing ringcentral/psr7 (1.3.0): Extracting archive
     W:   - Installing webignition/disallowed-character-terminated-string (2.0): Extracting archive
     W:   - Installing webignition/string-parser (0.2.3): Extracting archive
     W:   - Installing webignition/quoted-string (0.2.1): Extracting archive
     W:   - Installing webignition/internet-media-type (0.4.8): Extracting archive
     W:   - Installing symfony/yaml (v4.4.45): Extracting archive
     W:   - Installing symfony/polyfill-php80 (v1.26.0): Extracting archive
     W:   - Installing symfony/polyfill-php73 (v1.26.0): Extracting archive
     W:   - Installing symfony/polyfill-intl-normalizer (v1.26.0): Extracting archive
     W:   - Installing symfony/polyfill-intl-idn (v1.26.0): Extracting archive
     W:   - Installing symfony/mime (v4.4.47): Extracting archive
     W:   - Installing symfony/http-foundation (v4.4.48): Extracting archive
     W:   - Installing symfony/http-client-contracts (v2.5.2): Extracting archive
     W:   - Installing symfony/event-dispatcher-contracts (v1.1.13): Extracting archive
     W:   - Installing symfony/event-dispatcher (v4.4.44): Extracting archive
     W:   - Installing symfony/var-dumper (v4.4.47): Extracting archive
     W:   - Installing psr/log (2.0.0): Extracting archive
     W:   - Installing symfony/debug (v4.4.44): Extracting archive
     W:   - Installing symfony/error-handler (v4.4.44): Extracting archive
     W:   - Installing symfony/http-kernel (v4.4.48): Extracting archive
     W:   - Installing symfony/finder (v4.4.44): Extracting archive
     W:   - Installing symfony/filesystem (v4.4.42): Extracting archive
     W:   - Installing symfony/deprecation-contracts (v3.0.2): Extracting archive
     W:   - Installing psr/container (1.1.2): Extracting archive
     W:   - Installing symfony/service-contracts (v2.5.2): Extracting archive
     W:   - Installing symfony/dependency-injection (v4.4.44): Extracting archive
     W:   - Installing symfony/console (v4.4.48): Extracting archive
     W:   - Installing symfony/polyfill-php81 (v1.26.0): Extracting archive
     W:   - Installing symfony/config (v4.4.44): Extracting archive
     W:   - Installing react/http (v1.8.0): Extracting archive
     W:   - Installing netcarver/textile (v3.7.7): Extracting archive
     W:   - Installing michelf/php-markdown (1.9.1): Extracting archive
     W:   - Installing doctrine/inflector (1.4.4): Extracting archive
     W:   - Installing dflydev/dot-access-configuration (v1.0.3): Extracting archive
     W:   - Installing dflydev/apache-mime-types (v1.0.1): Extracting archive
     W:   - Installing dflydev/canal (v1.0.0): Extracting archive
     W:   - Installing dflydev/ant-path-matcher (v1.0.3): Extracting archive
     W:   - Installing sculpin/sculpin (3.2.0): Extracting archive
     W:   - Installing scrivo/highlight.php (v9.18.1.9): Extracting archive
     W:   - Installing league/commonmark (1.6.7): Extracting archive
     W:   - Installing spatie/commonmark-highlighter (2.1.1): Extracting archive
     W:   - Installing symfony/polyfill-iconv (v1.26.0): Extracting archive
     W: Package symfony/debug is abandoned, you should avoid using it. Use symfony/error-handler instead.
     W: Generating optimized autoload files
     W: Class webignition\Tests\StringParser\ParseThroughParserTest located in ./vendor/webignition/string-parser/tests/PassThroughParserTest.php does not comply with psr-4 autoloading standard. Skipping.
     W: Class webignition\Tests\InternetMediaType\Parameter\SubtypeParserExceptionTest located in ./vendor/webignition/internet-media-type/tests/Parser/SubtypeParserExceptionTest.php does not comply with psr-4 autoloading standard. Skipping.
     W: Class webignition\Tests\InternetMediaType\ParameterParserTest located in ./vendor/webignition/internet-media-type/tests/Parameter/Parser/ParameterParserTest.php does not comply with psr-4 autoloading standard. Skipping.
     W: 40 packages you are using are looking for funding.
     W: Use the `composer fund` command to find out more!
     W: 
     W: Run composer recipes at any time to see the status of your Symfony recipes.
     W: 
   
   Executing build hook...
     PRETTY_NAME="Debian GNU/Linux 10 (buster)"
     NAME="Debian GNU/Linux"
     VERSION_ID="10"
     VERSION="10 (buster)"
     VERSION_CODENAME=buster
     ID=debian
     HOME_URL="https://www.debian.org/"
     SUPPORT_URL="https://www.debian.org/support"
     BUG_REPORT_URL="https://bugs.debian.org/"
     PHP 8.0.24 (cli) ( ZTS )
     Copyright (c) The PHP Group
     Zend Engine v4.0.24, Copyright (c) Zend Technologies
         with Zend OPcache v8.0.24, Copyright (c), by Zend Technologies
     ruby 2.5.5p157 (2019-03-15 revision 67260) [x86_64-linux-gnu]
     Platform.sh CLI installer
     
     Environment check
       [*] The "json" PHP extension is installed.
       [*] The "phar" PHP extension is installed.
       [*] Git is installed.
       [*] The "openssl" PHP extension is installed.
       [*] The "pcre" PHP extension is installed.
       [*] The "curl" PHP extension is installed.
       [*] The "pcntl" and "posix" extensions are installed.
       [*] The "allow_url_fopen" setting is on.
       [*] The "apc.enable_cli" setting is off.
     
     Download
       Finding the latest version... done
       Downloading version 3.86.1... done
       Checking file integrity... done
       Checking that the file is a valid Phar... done
     
     Install
       Making the Phar executable... done
       Moving the Phar to your home directory... done
       Executable location: /app/.platformsh/bin/platform
     
     Running self:install command...
     
     Copying resource files... done
     
     Setting up autocompletion... skipped (not a terminal)
     
     Selected shell configuration file: .environment
     
     Do you want to create the file automatically? [Y/n] y
     
     Configuration file created successfully: .environment
     
     To use the Platform.sh CLI, run:
         source ~/.environment # (make sure your shell does this by default)
         platform
     W: Installing dependencies from lock file (including require-dev)
     W: Verifying lock file contents can be installed on current platform.
     W: Nothing to install, update or remove
     W: Package symfony/debug is abandoned, you should avoid using it. Use symfony/error-handler instead.
     W: Generating autoload files
     W: 40 packages you are using are looking for funding.
     W: Use the `composer fund` command to find out more!
     W: 
     W: Run composer recipes at any time to see the status of your Symfony recipes.
     W: 
     Detected new or updated files
     Generating:   0%����  1%����  2%����  3%����  4%����  5%����  6%����  7%����  7%����  8%����  9%���� 10%���� 11%���� 12%���� 13%���� 14%���� 14%���� 15%���� 16%���� 17%���� 18%���� 19%���� 20%���� 21%���� 21%���� 22%���� 23%���� 24%���� 25%���� 26%���� 27%���� 28%���� 28%���� 29%���� 30%���� 31%���� 32%���� 33%���� 34%���� 35%���� 35%���� 36%���� 37%���� 38%���� 39%���� 40%���� 41%���� 42%���� 42%���� 43%���� 44%���� 45%���� 46%���� 47%���� 48%���� 49%���� 50%���� 50%���� 51%���� 52%���� 53%���� 54%���� 55%���� 56%���� 57%���� 57%���� 58%���� 59%���� 60%���� 61%���� 62%���� 63%���� 64%���� 64%���� 65%���� 66%���� 67%���� 68%���� 69%���� 70%���� 71%���� 71%���� 72%���� 73%���� 74%���� 75%���� 76%���� 77%���� 78%���� 78%���� 79%���� 80%���� 81%���� 82%���� 83%���� 84%���� 85%���� 85%���� 86%���� 87%���� 88%���� 89%���� 90%���� 91%���� 92%���� 92%���� 93%���� 94%���� 95%���� 96%���� 97%���� 98%���� 99%����100% (114 sources / 0.00 seconds)
     Converting:   0%����  1%����  2%����  2%����  3%����  4%����  5%����  5%����  6%����  7%����  8%����  8%����  9%���� 10%���� 11%���� 11%���� 12%���� 13%���� 14%���� 14%���� 15%���� 16%���� 17%���� 17%���� 18%���� 19%���� 20%���� 20%���� 21%���� 22%���� 23%���� 23%���� 24%���� 25%���� 26%���� 26%���� 27%���� 28%���� 29%���� 29%���� 30%���� 31%���� 32%���� 32%���� 33%���� 34%���� 35%���� 35%���� 36%���� 37%���� 38%���� 38%���� 39%���� 40%���� 41%���� 41%���� 42%���� 43%���� 44%���� 44%���� 45%���� 46%���� 47%���� 47%���� 48%���� 49%���� 50%���� 50%���� 51%���� 52%���� 52%���� 53%���� 54%���� 55%���� 55%���� 56%���� 57%���� 58%���� 58%���� 59%���� 60%���� 61%���� 61%���� 62%���� 63%���� 64%���� 64%���� 65%���� 66%���� 67%���� 67%���� 68%���� 69%���� 70%���� 70%���� 71%���� 72%���� 73%���� 73%���� 74%���� 75%���� 76%���� 76%���� 77%���� 78%���� 79%���� 79%���� 80%���� 81%���� 82%���� 82%���� 83%���� 84%���� 85%���� 85%���� 86%���� 87%���� 88%���� 88%���� 89%���� 90%���� 91%���� 91%���� 92%���� 93%���� 94%���� 94%���� 95%���� 96%���� 97%���� 97%���� 98%���� 99%����100% (134 sources / 2.08 seconds)
     Formatting:   0%����  1%����  2%����  2%����  3%����  4%����  5%����  5%����  6%����  7%����  8%����  8%����  9%���� 10%���� 11%���� 11%���� 12%���� 13%���� 14%���� 14%���� 15%���� 16%���� 17%���� 17%���� 18%���� 19%���� 20%���� 20%���� 21%���� 22%���� 23%���� 23%���� 24%���� 25%���� 26%���� 26%���� 27%���� 28%���� 29%���� 29%���� 30%���� 31%���� 32%���� 32%���� 33%���� 34%���� 35%���� 35%���� 36%���� 37%���� 38%���� 38%���� 39%���� 40%���� 41%���� 41%���� 42%���� 43%���� 44%���� 44%���� 45%���� 46%���� 47%���� 47%���� 48%���� 49%���� 50%���� 50%���� 51%���� 52%���� 52%���� 53%���� 54%���� 55%���� 55%���� 56%���� 57%���� 58%���� 58%���� 59%���� 60%���� 61%���� 61%���� 62%���� 63%���� 64%���� 64%���� 65%���� 66%���� 67%���� 67%���� 68%���� 69%���� 70%���� 70%���� 71%���� 72%���� 73%���� 73%���� 74%���� 75%���� 76%���� 76%���� 77%���� 78%���� 79%���� 79%���� 80%���� 81%���� 82%���� 82%���� 83%���� 84%���� 85%���� 85%���� 86%���� 87%���� 88%���� 88%���� 89%���� 90%���� 91%���� 91%���� 92%���� 93%���� 94%���� 94%���� 95%���� 96%���� 97%���� 97%���� 98%���� 99%����100% (134 sources / 0.14 seconds)
     Processing completed in 2.27 seconds
     W: Command failed: source/_sass/all.scss spawn source/_sass/all.scss EACCES
     Successfully installed bundler-2.3.26
     Parsing documentation for bundler-2.3.26
     Installing ri documentation for bundler-2.3.26
     Done installing documentation for bundler after 0 seconds
     1 gem installed
     W: Your RubyGems version (2.7.6.2) has a bug that prevents `required_ruby_version` from working for Bundler. Any scripts that use `gem install bundler` will break as soon as Bundler drops support for your Ruby version. Please upgrade RubyGems to avoid future breakage and silence this warning by running `gem update --system 3.2.3`
     W: [DEPRECATED] The `--path` flag is deprecated because it relies on being remembered across bundler invocations, which bundler will no longer do in future versions. Instead please use `bundle config set --local path '.bundle'`, and stop using this flag
     Fetching gem metadata from https://rubygems.org/......
     Using bundler 2.3.26
     Fetching rainbow 3.0.0
     Fetching public_suffix 4.0.6
     Fetching ffi 1.15.0
     Fetching mercenary 0.4.0
     Fetching yell 2.2.2
     Fetching racc 1.5.2
     Fetching parallel 1.20.1
     Installing parallel 1.20.1
     Installing rainbow 3.0.0
     Installing yell 2.2.2
     Installing mercenary 0.4.0
     Installing public_suffix 4.0.6
     Installing racc 1.5.2 with native extensions
     Installing ffi 1.15.0 with native extensions
     Fetching addressable 2.8.0
     Installing addressable 2.8.0
     Fetching nokogiri 1.12.5 (x86_64-linux)
     Installing nokogiri 1.12.5 (x86_64-linux)
     Fetching nokogumbo 2.0.5
     Installing nokogumbo 2.0.5 with native extensions
     Fetching ethon 0.14.0
     Installing ethon 0.14.0
     Fetching typhoeus 1.4.0
     Installing typhoeus 1.4.0
     Fetching html-proofer 3.19.1
     Installing html-proofer 3.19.1
     Bundle complete! 1 Gemfile dependency, 14 gems now installed.
     Bundled gems are installed into `./.bundle`
     W: Your RubyGems version (2.7.6.2) has a bug that prevents `required_ruby_version` from working for Bundler. Any scripts that use `gem install bundler` will break as soon as Bundler drops support for your Ruby version. Please upgrade RubyGems to avoid future breakage and silence this warning by running `gem update --system 3.2.3`
     W: NOTE: nokogumbo: Using Nokogiri::HTML5 provided by Nokogiri. See https://github.com/sparklemotion/nokogiri/issues/2205 for more information.
     Running ["HtmlCheck", "ScriptCheck", "OpenGraphCheck", "LinkCheck", "ImageCheck"] on ["output_dev"] on *.html... 
     
     
     Ran on 91 files!
     
     
     W: - output_dev/authors/alessandro/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/authors/crell/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/authors/davidbu/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/authors/michaelcullumuk/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/authors/railto/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/authors/tobiasnyholm/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2017/10/a-month-of-php-fig-1-october-2017/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2017/10/hello-world-the-php-fig-blog/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2018/02/a-month-of-php-fig-2-4-november-2017-to-january-2018/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2018/04/updates-from-php-fig-february-and-march/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2018/06/updates-from-php-fig-april-and-may/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2018/07/the-http-client-psr/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2018/09/summer-updates-from-php-fig-june-july-august/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2018/11/psr-18-the-php-standard-for-http-clients/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2018/11/updates-from-php-fig-september-october/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2019/02/updates-from-the-php-fig-november-december-january/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2019/05/updates-from-the-php-fig-up-until-the-may-elections/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2019/09/new-blog-psr-12-approval/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2019/10/upgrading-psr-interfaces/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2019/12/new-bylaw-and-next-election-cycle/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/2020/12/announcing-new-discord-server/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/page/2/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/bylaw/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/bylaws/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/discord/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/elections/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/event-dispatcher/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/first-post/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/http-client/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/http/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/httplug/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/interoperability/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/php-development/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/php-fig/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/php-fig/page/2/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/php-standard/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/psr-12/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/psr-14/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/psr/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/blog/tags/standard/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 15)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/bylaws/elections-and-vacancies/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/bylaws/fig-3-transition/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/bylaws/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/bylaws/licensing-policies/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/bylaws/mission-and-structure/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/bylaws/per-workflow/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/bylaws/psr-amendments/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/bylaws/psr-evolution/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/bylaws/psr-naming-conventions/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/bylaws/psr-workflow/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/bylaws/voting-protocol/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/faqs/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/get-involved/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/per/coding-style/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/per/coding-style/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/per/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/personnel/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-0/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-1/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-11/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-11/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-12/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-12/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-13/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-13/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-14/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-14/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-15/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-15/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-16/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-16/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-17/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-17/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-18/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-18/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-2/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-2/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-20/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-20/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-3/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-3/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-4/examples/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-4/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-4/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-6/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-6/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-7/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: - output_dev/psr/psr-7/meta/index.html
     W:   *  internally linking to /css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====, which does not exist (line 14)
     W:      <link rel="stylesheet" href="/css/all.css?BGPQK5YPXHQD2XFJ5JN6PAC7GFWLIGXGKRYT55TQNNNEBY5XPHFA====">
     W: 
     W: HTML-Proofer found 91 failures!
   
   E: Error building project: Step failed with status code 1.
 
 E: Error: Unable to build application, aborting.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Jean, take note that this is not even trying to run the node-sass command as far as I can see.

@Jean85 Jean85 added enhancement dependencies Pull requests that update a dependency file ruby Pull requests that update Ruby code labels Nov 28, 2022
@Lewiscowles1986
Copy link
Author

Lewiscowles1986 commented Nov 30, 2022

Just a note. Happy to change anything. Would prefer error message(s) that I can see. If nothing else this helped me to understand the cute source code boxes displayed (turns out understanding that was just CSS, no need to build the thing, only after getting it building did I realise it wasn't the include markdown, but the divs surrounding the code... 😊 )

@Crell
Copy link
Contributor

Crell commented Dec 5, 2022

Since production is on Platform.sh, why not just use the Lando-Platform.sh integration for local dev?

https://docs.platform.sh/development/local/lando.html

@Lewiscowles1986
Copy link
Author

Could this all be that the file-hashes have changed on re-build, and therefore this is why it is saying it cannot find the css? I'll need to take a look into the build, but I was fairly certain despite needing to suppress a failure, I was getting CSS from SCSS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file enhancement ruby Pull requests that update Ruby code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants