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

MySQL 8.0 deprecation warnings #7173

Open
sbulen opened this issue Dec 1, 2021 · 4 comments
Open

MySQL 8.0 deprecation warnings #7173

sbulen opened this issue Dec 1, 2021 · 4 comments
Labels
Milestone

Comments

@sbulen
Copy link
Contributor

sbulen commented Dec 1, 2021

Description

Receiving the following warnings when restoring an SMF DB using MySQL 8.0.20:

WARNING: mysqli_warning  'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.
WARNING: mysqli_warning  Integer display width is deprecated and will be removed in a future release.
WARNING: mysqli_warning  'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release. 

All simple fixes, just tedious. Changes needed throughout installer & upgrader, & also in settings management for $db_character_set.

Steps to reproduce

  1. Restore an SMF DB from a mysqldump export into a MySQL 8.0.20 DB

Environment (complete as necessary)

  • Version/Git revision: current
  • Database Type: MySQL
  • Database Version: 8.0.20
  • PHP Version: 8.0.13
@sbulen sbulen changed the title MySQL 8.0 warnings MySQL 8.0 deprecation warnings Dec 1, 2021
@Sesquipedalian Sesquipedalian added this to the 2.1.0 milestone Dec 8, 2021
@sbulen
Copy link
Contributor Author

sbulen commented Dec 29, 2021

I really don't think this is a 2.1.0 requirement. Could we remove or change the milestone?

@sbulen
Copy link
Contributor Author

sbulen commented Dec 30, 2021

I see this as being in 3 parts:

  • INT display width cleanup. Soon is good, just not a 2.1.0 dependency.
  • STRICT mode cleanup. Soon is good, just not a 2.1.0 dependency.
  • UTF8/UTF8MB3/UTF8MB4 clarifications. Should be incorporated into Mysql mb4 #6409 .

@sbulen sbulen removed this from the 2.1.0 milestone Jan 12, 2022
@Sesquipedalian
Copy link
Member

I'm fine with changing the milestone, so long as no actual database changes will be required to fix this.

@Sesquipedalian Sesquipedalian added this to the 2.1.1 milestone Jan 24, 2022
@Sesquipedalian Sesquipedalian modified the milestones: 2.1.2, 2.1.3 Apr 4, 2022
@sbulen sbulen removed this from the 2.1.3 milestone Sep 28, 2022
@sbulen sbulen added this to the 2.1.5 milestone Jun 14, 2023
@sbulen sbulen self-assigned this Jun 14, 2023
@sbulen
Copy link
Contributor Author

sbulen commented Jul 9, 2023

Some more reading regarding these changes:

Today, "utf8" is an alias for "utf8mb3", but that is going to change to "utf8mb4". In fact, utf8mb3 itself - the SMF current default - is being deprecated:
https://dev.mysql.com/doc/refman/8.0/en/charset-unicode-utf8.html

Benefits, including utf8mb4 is faster:
https://dev.mysql.com/blog-archive/mysql-8-0-when-to-use-utf8mb3-over-utf8mb4/

Integer display width is deprecated:
https://dev.mysql.com/worklog/task/?id=13127
https://dev.mysql.com/doc/refman/8.0/en/numeric-type-attributes.html
https://stackoverflow.com/questions/58938358/mysql-warning-1681-integer-display-width-is-deprecated

@sbulen sbulen removed their assignment Mar 1, 2024
@Sesquipedalian Sesquipedalian modified the milestones: 2.1.5, 3.0 Alpha 3 May 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants