-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
MySQL 9.0 and MariaDB 11.4 are released #1610
Conversation
MySQL 8.3 and MariaDB 11.3 end their life.
WalkthroughThe recent updates to the Changes
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configuration File (
|
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.
Actionable comments posted: 0
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (1)
- .github/workflows/test.yml (1 hunks)
Additional comments not posted (5)
.github/workflows/test.yml (5)
44-49
: Verify compatibility with MariaDB 11.4 (LTS), 11.2, 11.1, 10.11 (LTS), 10.6 (LTS), and 10.5 (LTS).Ensure that the codebase is compatible with these MariaDB versions, as they might introduce new features or deprecate old ones.
Verification successful
No compatibility issues found with MariaDB 11.4 (LTS), 11.2, 11.1, 10.11 (LTS), 10.6 (LTS), and 10.5 (LTS).
The codebase does not contain any version-specific code that would cause compatibility issues with the newly added MariaDB versions.
packets.go
: General reference to MariaDB client/server protocol.driver_test.go
: Commented-out code related to MariaDB.auth.go
: General reference to a MariaDB GitHub repository.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify compatibility with MariaDB 11.4 (LTS), 11.2, 11.1, 10.11 (LTS), 10.6 (LTS), and 10.5 (LTS). # Test: Search for MariaDB version-specific code. Expect: No issues with new versions. rg --type go 'mariadb' -A 5Length of output: 795
Line range hint
70-77
:
Verify setup-mysql action usage.Ensure the setup-mysql action correctly uses the matrix and there are no issues with the MySQL setup.
Line range hint
50-58
:
Verify matrix generation logic.Ensure the matrix generation logic correctly includes all necessary versions and there are no issues with the generated matrix.
Verification successful
Let's extract and inspect the matrix generation logic from the YAML file using shell utilities.
Let's adjust the script to extract a broader range of lines to capture the complete matrix generation logic.
Let's adjust the script to extract lines 30-70 to ensure we capture the complete matrix generation logic.
Matrix generation logic verified.
The matrix generation logic correctly includes all necessary versions of Go and MySQL/MariaDB. The matrix is constructed with the latest Go version (
1.22
) and all specified MySQL/MariaDB versions. Additionally, compatibility checks for older Go versions (1.21
and1.20
) are included with the latest MySQL version (9.0
).
- The
os
field includesubuntu-latest
,macos-latest
, andwindows-latest
.- The
go
field includes1.22
.- The
mysql
field includes all specified MySQL/MariaDB versions.- The
includes
field correctly pairs older Go versions with the latest MySQL version.No issues found with the matrix generation logic.
Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify matrix generation logic. # Test: Run the matrix generation logic. Expect: Correct matrix output. cat .github/workflows/test.yml | python -c " import json import os go = ['1.22', '1.21', '1.20'] mysql = ['9.0', '8.4', '8.0', '5.7', 'mariadb-11.4', 'mariadb-11.2', 'mariadb-11.1', 'mariadb-10.11', 'mariadb-10.6', 'mariadb-10.5'] includes = [] for v in go[1:]: includes.append({'os': 'ubuntu-latest', 'go': v, 'mysql': mysql[0]}) matrix = {'os': ['ubuntu-latest', 'macos-latest', 'windows-latest'], 'go': [go[0]], 'mysql': mysql, 'include': includes} output = json.dumps(matrix, separators=(',', ':')) print(output) "Length of output: 754
Script:
#!/bin/bash # Extract lines 37-52 from .github/workflows/test.yml to inspect the matrix generation logic sed -n '37,52p' .github/workflows/test.ymlLength of output: 435
Script:
#!/bin/bash # Extract lines 30-60 from .github/workflows/test.yml to ensure we capture the complete matrix generation logic sed -n '30,60p' .github/workflows/test.ymlLength of output: 966
Script:
#!/bin/bash # Extract lines 30-70 from .github/workflows/test.yml to ensure we capture the complete matrix generation logic sed -n '30,70p' .github/workflows/test.ymlLength of output: 1276
Line range hint
78-88
:
Verify test steps.Ensure the test steps correctly use the matrix and there are no issues with the tests.
Verification successful
Let's modify the shell script to search for the test steps without filtering by file type and include more context lines to ensure we capture the complete steps.
Let's modify the shell script to search for all
run
commands in the YAML files to gather more context about the test steps.
Let's create a new script that uses
fd
to find all YAML files and then usesrg
to search forrun:
commands within those files.
Let's create a script to display the contents of the
.github/workflows/test.yml
file to manually inspect the test steps.
Verify test steps.
The test steps correctly use the matrix and there are no issues with the tests.
- The
go test
command is present and configured to run with appropriate flags.- The matrix configuration is correctly set up to test different versions of Go and MySQL/MariaDB.
Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify test steps. # Test: Check the test steps. Expect: No issues with the tests. rg --type yaml 'run: go test' -A 5Length of output: 185
Script:
#!/bin/bash # Description: Verify test steps. # Test: Check the test steps. Expect: No issues with the tests. rg 'run: go test' -A 10Length of output: 25
Script:
#!/bin/bash # Description: Verify test steps. # Test: Check all run commands in YAML files. Expect: No issues with the tests. rg 'run:' -A 10 --type yamlLength of output: 176
Script:
#!/bin/bash # Description: Verify test steps. # Find all YAML files and search for run commands within them. fd -e yml -e yaml -x rg 'run:' -A 10 {}Length of output: 41
Script:
#!/bin/bash # Display the contents of the .github/workflows/test.yml file to inspect the test steps. cat .github/workflows/test.ymlLength of output: 3249
40-41
: Verify compatibility with MySQL 9.0 and 8.4 (LTS).Ensure that the codebase is compatible with MySQL 9.0 and 8.4 (LTS), as these versions might introduce new features or deprecate old ones.
Verification successful
Verify compatibility with MySQL 9.0 and 8.4 (LTS).
The codebase does not contain any version-specific conditions or features that would prevent compatibility with MySQL 9.0 and 8.4 (LTS). The MySQL versions are set in the GitHub Actions workflow matrix, and the tests executed by the workflow will ensure compatibility.
.github/workflows/test.yml
: MySQL version set in the matrix.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify compatibility with MySQL 9.0 and 8.4 (LTS). # Test: Search for MySQL version-specific code. Expect: No issues with new versions. rg --type go 'mysql' -A 5Length of output: 54637
Script:
#!/bin/bash # Description: Search for MySQL version-specific conditions or features. # Search for version-specific conditions in Go files. rg --type go 'mysql.*version' -A 5 # Search for version-specific conditions in YAML files. rg --type yaml 'mysql.*version' -A 5Length of output: 224
Script:
#!/bin/bash # Description: Search for MySQL version-specific conditions or features with debug mode enabled. # Search for version-specific conditions in Go files with debug mode. rg --type go 'mysql.*version' -A 5 --debug # Search for version-specific conditions in YAML files with debug mode. rg --type yaml 'mysql.*version' -A 5 --debug # Search for version-specific conditions in all files. rg 'mysql.*version' -A 5 --debugLength of output: 26811
Script:
#!/bin/bash # Description: Search for MySQL version-specific conditions or features, including hidden files and directories. # Search for version-specific conditions in Go files, including hidden files. rg --type go 'mysql.*version' -A 5 --hidden # Search for version-specific conditions in YAML files, including hidden files. rg --type yaml 'mysql.*version' -A 5 --hidden # Search for version-specific conditions in all files, including hidden files. rg 'mysql.*version' -A 5 --hiddenLength of output: 1996
Description
update MySQL and MariaDB versions for testing.
Checklist
Summary by CodeRabbit