Skip to content

Releases: go-sql-driver/mysql

v1.8.1

26 Mar 14:35
4395c45
Compare
Choose a tag to compare

What's Changed

Bugfixes:

  • fix race condition when context is canceled in #1562 and #1570

Full Changelog: v1.8.0...v1.8.1

v1.8.0

09 Mar 07:04
33b7747
Compare
Choose a tag to compare

What's Changed

Major changes

  • Use SET NAMES charset COLLATE collation. by @methane in #1437

    • Older go-mysql-driver used collation_id in the handshake packet. But it caused collation mismatch in some situation.
    • If you don't specify charset nor collation, go-mysql-driver sends SET NAMES utf8mb4 for new connection. This uses server's default collation for utf8mb4.
    • If you specify charset, go-mysql-driver sends SET NAMES <charset>. This uses the server's default collation for <charset>.
    • If you specify collation and/or charset, go-mysql-driver sends SET NAMES charset COLLATE collation.
  • PathEscape dbname in DSN. by @methane in #1432

    • This is backward incompatible in rare case. Check your DSN.
  • Drop Go 1.13-17 support by @methane in #1420

    • Use Go 1.18+
  • Parse numbers on text protocol too by @methane in #1452

    • When text protocol is used, go-mysql-driver passed bare []byte to database/sql for avoid unnecessary allocation and conversion.
    • If user specified *any to Scan(), database/sql passed the []byte into the target variabe.
    • This confused users because most user doesn't know when text/binary protocol used.
    • go-mysql-driver 1.8 converts integer/float values into int64/double even in text protocol. This doesn't increase allocation compared to []byte and conversion cost is negilible.
  • New options start using the Functional Option Pattern to avoid increasing technical debt in the Config object. Future version may introduce Functional Option for existing options, but not for now.

Other changes

New Contributors

Full Changelog: v1.7.1...v1.8.0

v1.7.1

25 Apr 10:04
f20b286
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.7.0...v1.7.1

Version 1.7

02 Dec 11:44
5cee457
Compare
Choose a tag to compare

Changes:

  • Drop support of Go 1.12 (#1211)
  • Refactoring (*textRows).readRow in a more clear way (#1230)
  • util: Reduce boundary check in escape functions. (#1316)
  • enhancement for mysqlConn handleAuthResult (#1250)

New Features:

  • support Is comparison on MySQLError (#1210)
  • return unsigned in database type name when necessary (#1238)
  • Add API to express like a --ssl-mode=PREFERRED MySQL client (#1370)
  • Add SQLState to MySQLError (#1321)

Bugfixes:

  • Fix parsing 0 year. (#1257)

Version 1.6.0

01 Apr 02:04
bcc459a
Compare
Choose a tag to compare

Major Release

  • Migrate the CI service from travis-ci to GitHub Actions (#1176, #1183, #1190)
  • NullTime is deprecated (#960, #1144)
  • Reduce allocations when building SET command (#1111)
  • Performance improvement for time formatting (#1118)
  • Performance improvement for time parsing (#1098, #1113)

See CHANGELOG.md for full details

Version 1.5.0

07 Jan 16:37
17ef3dd
Compare
Choose a tag to compare

Major Release

  • Added Go Module support
  • Dropped support for Go 1.9 and lower
  • Implemented Connector interface
  • Improved buffering
  • Added connection liveness check
  • Improved marking of bad connnections
  • Updated collations and made utf8mb4 default
  • Made mysql.NullTime compatible with sql.NullTime
  • Removed support for CloudSQL via appengine/cloudsql

See CHANGELOG.md for full details

Version 1.4.1

14 Nov 12:47
Compare
Choose a tag to compare

Bugfix release

  • Several fixes of the authentication handling
  • Fix TIME format for binary columns
  • Fix canceled context broke mysqlConn

See CHANGELOG.md for full details

Version 1.4.0

03 Jun 12:50
d523deb
Compare
Choose a tag to compare

Major Release

  • Multi-Results support
  • context.Context support
  • ColumnType support
  • caching_sha2_password (MySQL 8 default) and sha256_password authentication support
  • Transaction isolation level support
  • Read-Only transactions support
  • Many, many bugfixes

See CHANGELOG.md for full details

Version 1.3.0

01 Dec 11:58
Compare
Choose a tag to compare

Major Release

  • Microsecond resolution on date and time fields
  • Placeholder interpolation
  • Support for cleartext and native authentication plugins
  • Config struct and ParseDSN / FormatDSN funtctions exported
  • Read / Write timeouts
  • Support for JSON field type
  • Support for multi-statements and multi-results
  • Many, many bugfixes

See CHANGELOG.md for full details

Version 1.2.0

03 Jun 21:52
Compare
Choose a tag to compare

Major release

  • Several important bug fixes
  • Custom dial function support
  • Custom logger support
  • Google CloudSQL support
  • New parameter to set the connection collation

See CHANGELOG.md for full details