-
Notifications
You must be signed in to change notification settings - Fork 105
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
Fix: replace mysqljs with mysql2 #7590
Fix: replace mysqljs with mysql2 #7590
Conversation
Migrates from mysqljs to mysql2 to support MySQL 8.4+.
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.16.2 to 1.16.5. - [Release notes](https://github.com/sparklemotion/nokogiri/releases) - [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md) - [Commits](sparklemotion/nokogiri@v1.16.2...v1.16.5) --- updated-dependencies: - dependency-name: nokogiri dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]>
Bumps [rexml](https://github.com/ruby/rexml) from 3.2.5 to 3.2.8. - [Release notes](https://github.com/ruby/rexml/releases) - [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md) - [Commits](ruby/rexml@v3.2.5...v3.2.8) --- updated-dependencies: - dependency-name: rexml dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]>
Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 48.2.4 to 48.2.5. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Changelog](https://github.com/gajus/eslint-plugin-jsdoc/blob/main/.releaserc) - [Commits](gajus/eslint-plugin-jsdoc@v48.2.4...v48.2.5) --- updated-dependencies: - dependency-name: eslint-plugin-jsdoc dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]>
Bumps [sinon](https://github.com/sinonjs/sinon) from 17.0.2 to 18.0.0. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md) - [Commits](sinonjs/sinon@v17.0.2...v18.0.0) --- updated-dependencies: - dependency-name: sinon dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]>
updated-dependencies: - dependency-name: release-it dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]>
Updates the docker compose file to use mysql 8.4.
886de52
to
7a18256
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The code changes look very reasonable. And I feel that is an issue that needs to be addressed soon, so I'm happy to accept this PR.
I tested this branch on my local test setup and it works without any issues. All regular and end-to-end tests pass.
I did not test the parts of this related to running with Docker compose.
This PR replaces
mysql
withmysql2
. Learn more about some of the benefits of usingmysql2
here.The reason I am making this change is because MySQL 8.4 completely removed compatibility for the default authentication method we were using previously (mysql_native_password). If you tried to start the server with MySQL 8.4, you would receive this warning:
The
mysql
npm package is de facto deprecated in lieu of themysql2
npm package. There has been an outstanding pull request to add in the new authentication methods, but it doesn't look like this has any chance of being merged anytime soon.Note that, for docker, the plugin has been removed, but a new flag has been added
--mysql-native-password=ON
to enable the mysql-native password authentication. We'll likely need to switch off this in a future version to their SHA2 caching plugin. However, I'm not sure what that would involve at this point. Using this flag is a stopgap while we figure that out.