Problem/Motivation
The pipeline for the latest commit to the dev branch failed: https://git.drupalcode.org/project/a11y_autocomplete/-/pipelines/389284
Steps to reproduce
Trigger the pipeline on Gitlab.
Proposed resolution
Update dependencies and .gitlab-ci.yml as needed.
Remaining tasks
Fix failing testUpdate Browserlist DB- Manually confirm that build artifacts are working as expected after
rollupupgrades. [automated tests are passing, so this may be unnecessary]
User interface changes
API changes
The logic change removes the autocomplete-change event from any case of the input losing focus.
Any code that depends on autocomplete-change events in this case will need to adapt.
In most cases that are listening for autocomplete-change events from the input, a standard blur event listener will work as a substitute. Though the blur event wasn't fired on Firefox in the automated tests, it is fired in manual testing on a real browser.
In cases where the blur event doesn't fire from the input, the autocomplete-change event also wouldn't fire because it is triggered from within a blur event handler.
Data model changes
Issue fork a11y_autocomplete-3498078
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #3
darvanenWell, the yml is now compatible, but the tests are all broken. I had a go at repairing the dependency scanning job using https://docs.gitlab.com/ee/user/application_security/dependency_scanning... but I think I would need maintainer access to do it fully.
The audit fails because there's an old dependency on rollup:2.57.0 which is brought in by test-runner among other things:
The tests don't run with the current set up dependencies because pnp is complaining about short circuits. I tried adding the explicit
shortCircuit: truereturn parameters in resolve and load but then it failed on webpack (only). (didn't commit)This needs someone who understands this setup to give it an overhaul, I'm out of my depth :(
Comment #4
kentr commentedComment #5
kentr commentedlintandauditjobs are passing.Tests are running, but one is failing in Firefox. Can someone familiar with the tests look at it?
One of the audit errors was for
eslint. Upgrading that andeslint-plugin-jsdocas required introduced a lot ofjsdoclint warnings. Therefore, I set--max-warnings=-1temporarily to keep the warnings from causing job failure. Someone will need to review the warnings and tweak the rules or the code.I upgraded both the playwright and main docker images.
For the main image, I used
drupalci/php-8.3-apache:productionbecause thedrupalciimages are used in thegitlab_templatesproject.I reasoned that there would be maintenance benefits with using the "official" images, and there might be a caching benefit in Gitlab. Also, the
drupalciimage already hasgit.Another audit error was for
rollup-plugin-terser, which minifies the build artifacta11y.autocomplete.min.js. After switching to@rollup/plugin-terser, the resultinga11y.autocomplete.min.jsis slightly different than before. So, it should be checked.The browserlist DB still needs updating.
Comment #6
kentr commentedComment #7
kentr commentedI made the changes discussed in Slack and updated the IS.
Details on the logic changes are in the comments and commit messages.
Pipeline is green.
Comment #10
nod_Thanks a lot for getting that resolved!