Releases: vapor/mysql-nio
Releases · vapor/mysql-nio
1.7.2 - Avoid double-logging queries
What's Changed
Avoid double-logging queries by @gwynne in #110
This logging is handled in MySQLKit and should not be present at the MySQLNIO layer.
Reviewers
Thanks to the reviewers for their help:
This patch was released by @gwynne
Full Changelog: 1.7.1...1.7.2
1.7.1 - Tidy up package a bit
Parse timestamp columns in text format. Fixes vapor/mysql-nio#71
Several very long overdue crash fixes
This patch was authored and released by @gwynne.
Items of note:
- Replaced all the
assert()
s,precondition()
s, andfatalError()
s with thrown errors as appropriate. Removes almost every source of crashes - especially ones caused by input the user has no control over - in the package. - Fixes #87 (unexpected packets with no active command cause an assertion failure)
- Fixes #91 (server error before handshake throws
invalidProtocolVersion()
instead of the appropriate.server(ERR_Packet)
) - CI and README updates
- Fixes the unit tests so they don't leave stale tables lying around.
With the rewrite finally back to being actively worked on, it became really obvious how easy these fixes were to make even in the existing code, and I decided users shouldn't have to wait any longer for them, even if the rewrite drops the next day.
Update min Swift version to 5.6 and make platform versions consistent
This patch was authored and released by @gwynne.
Add package minimum versions for all platforms
This patch was authored by @elGeekalpha and released by @0xTim.
Adds the correct platform versions to match the Swift Crypto dependency to enable building on all platforms.
Solves #81
Improve error handling
This patch was authored and released by @gwynne.
- "Connection closed" errors are now correctly reported when trying to issue queries on closed connections, instead of throwing various NIO errors.
- Query syntax errors are now explicitly reported.
- Unique constraint violation errors are now more consistently reported.
semver-minor
due to adding a new case on MySQLError
.
Widen our pin on Crypto versions: `"1.0.0" ..< "3.0.0"`
This patch was authored by @fabianfett and released by @gwynne.
Needs patch release.
Clean up the ByteBuffer utility methods
This patch was authored and released by @gwynne.
- Replace the
readNullTerminatedString()
implementation with the much more efficient version used by PostgresNIO. - Made
writeNullTerminatedString()
,writeLengthEncodedInteger()
, andwriteLengthEncodedSlice()
return the number of bytes written, to matchByteBuffer
method conventions. - Simplified
[read|write]LengthEncodedInteger()
, might be slightly faster but probably not enough to notice. - Remove a couple of unused utility methods altogether.