Skip to content

Releases: trilogy-libraries/trilogy

v2.9.0

11 Oct 23:41
v2.9.0
d22ed28
Compare
Choose a tag to compare

Added

  • Add support for the VECTOR type. #194

Changed

  • Mark C-extension as Ractor-safe. #192

Fixed

  • Fix bug allowing queries larger than the configured max_allowed_packet. #203
  • Restore error message context that was accidentally removed. #187

v2.8.1

13 May 18:08
v2.8.1
0a18015
Compare
Choose a tag to compare

Fixed

  • Fix "Got packets out of order" errors on connect. #184

v2.8.0

09 Apr 02:21
v2.8.0
4cd757e
Compare
Choose a tag to compare

Added

  • Add support for caching_sha2_password when using MySQL 8.0+. #165
  • Add support for mysql_clear_password client plugin. #171
  • Add connection #check. #154

Fixed

  • Use connect_timeout for initial connection. #159

v2.7.0

23 Jan 21:03
v2.7.0
90d81d2
Compare
Choose a tag to compare
  • Trilogy::SyscallError::* errors now use the standard Module#=== implementation #143
  • Trilogy::TimeoutError no longer inherits from Errno::ETIMEDOUT #143
  • Deprecated Trilogy::ConnectionRefusedError and Trilogy::ConnectionResetError, replaced by Trilogy::SyscallError::ECONNREFUSED and Trilogy::SyscallError::ECONNRESET #143

v2.6.1

04 Jan 22:32
Compare
Choose a tag to compare

Fixed

  • Report EOFError: TRILOGY_CLOSED_CONNECTION for SSL_ERROR_ZERO_RETURN
  • write_timeout on connection now raises Trilogy::TimeoutError (previously it raised EINPROGRESS)
  • Fix memory leak on failed connections
  • Fix memory leak when connecting to unix socket

v2.6.0

18 Sep 21:01
Compare
Choose a tag to compare

Changed

  • TCP_NODELAY is enabled on all TCP connections #122
  • Trilogy::EOFError is now raised for TRILOGY_CLOSED_CONNECTION instead
    of the generic Trilogy::QueryError #118
  • Trilogy::SyscallError now inherits Trilogy::ConnectionError #118

v2.5.0

16 Aug 18:36
v2.5.0
5678822
Compare
Choose a tag to compare

2.5.0

Fixed

  • Fix build with LibreSSL #73
  • Fix build error on FreeBSD #82
  • Fix Trilogy.new with no arguments #94
  • Fix issues with OpenSSL #95 #112
    • Avoid closing connections that are not connected
    • Always close socket on error
    • Clear error queue after close
    • Clear error queue before each operation to defend against other misbehaving libraries
  • Close connection if interrupted by a Ruby timeout #110
  • Correctly cast time of 00:00:00 #97

Added

  • Add option to disable multi_result capability #77
  • Add option to validate max_allowed_packet #84
  • Add binary protocol/prepared statement support to the C library #3
  • Cast port option to integer #100
  • Add select_db as an alias for change_db #101

v2.4.1

16 Aug 18:31
7ceee30
Compare
Choose a tag to compare

Fixed

  • Set error code on deadlock timeout errors #69

Changed

  • Remove superfluous multi_result connection option #68

v2.4.0

15 Apr 00:47
v2.4.0
32e135b
Compare
Choose a tag to compare

Added

  • Implement set_option functionality, and add #set_server_option method to the Ruby binding. #52
  • Implement multi-result support on the Ruby binding; TRILOGY_CAPABILITIES_MULTI_RESULTS flag enabled by default. #57
  • Add TRILOGY_FLAGS_CAST_ALL_DECIMALS_TO_BIGDECIMALS flag, which enforces casting to BigDecimal even for column types
    without decimal digits. #59
  • Implement #discard to close child connections without impacting parent. #65

Fixed

  • Fix msec values for time columns. #61

Changed

  • (BREAKING CHANGE) C API #trilogy_build_auth_packet accepts encoding option now. The Ruby binding for the
    Trilogy client can now accept an :encoding option, which will tell the connection to use the specified encoding,
    and will ensure that outgoing query strings are transcoded appropriately. If no encoding is supplied,
    utf8mb4 is used by default. #64
  • All SystemCallErrors classified as Trilogy::Error. #63

v2.3.0

02 Mar 15:52
v2.3.0
0776fcf
Compare
Choose a tag to compare

Added

  • Implement multi-statement support on the Ruby binding. #35
  • Add #connection_options method to Ruby binding. #48
  • Introduced a variety of more detailed error classes. #15 and #41

Changed

  • Cast to Integer rather than BigDecimal for column types without decimal digits. #37
  • Error codes 1044-1045, 1064, 1152-1161, 1205, and 1927 recategorized as ConnectionError. #15