Skip to content

2.1.0

Compare
Choose a tag to compare
@Totktonada Totktonada released this 18 May 22:36
· 17 commits to master since this release

Overview

This release accumulates changes made since 2019.

Breaking changes

This release should not break existing code.

Bugfixes

  • <connection object>:reset() now raise an error at failure to change a user
    (PR #43).

    Also this method was missed in the documentation and added now.

  • Fixed connections accounting in the connection pool (#33, PR #42).

    <connection object>:close() on a connection from the pool now returns it to the pool.

    <pool object>:close() now closes all connections originated from the pool.

    Attempt to call <pool object>:put(<connection object>) on a connection that is already put in the pool now returns an error.

    <connection object>:close() and <pool object>:close() were missed in the documentation and added now.

  • Prevent possible deadlock in the case, when the pool is used from different fibers (#34, PR #55).

  • <connection object>:close() now returns true instead of 1 (PR #42).

New features

  • Added use_numeric_result = <boolean> option to mysql.connect() and mysql.pool_create() to choose a shape of the <connection object>:execute() result (PR #25).

    Default (false) is the old behaviour, where rows are <column name> = <value> mappings. When the option is set to true, the rows are just arrays of values and columns metatada is returned separately.

  • Added timeout = <number> option to <pool object>:get() (PR #28).

  • Added keep_null = <boolean> option to mysql.connect() and mysql.pool_create() to choose whether NULL values will be encoded as nil or box.NULL in a <connection object>:execute() result (PR #8).

    Default (false) is the old behaviour: nil. When the option is set to true, box.NULL is used.

Build

  • Fixed RPM package build for CentOS 6 (#53, PR #).
  • Fixed build with CMake 3.20+ (#59, PR #60).
  • Use git+https// protocol in the rockspec (PR #62).