- Assign NIFs to
ERL_NIF_DIRTY_JOB_{CPU,IO}_BOUND
accordingly (#119)
- Improve compatibility with latest Decimal
- Use
ArrowArrayInitFromType
when building list of strings
- Added an environment variable
ADBC_BUILD
. Set totrue
to force compile locally. - Updated to ADBC library 16-rc0.
- Added an environment variable
ADBC_PREFER_PRECOMPILED
. Set tofalse
to force compile locally.
- Updated to ADBC library 15.
- Fixed the issue with the
clean
target in the Makefile not removing all relevant files (#109)
- Updated to ADBC library 14, https://github.com/apache/arrow-adbc/releases/tag/apache-arrow-adbc-14
- Updated to DuckDB 1.1.2, https://github.com/duckdb/duckdb/releases/tag/v1.1.2
- Added precompiled binaries for
aarch64-linux-gnu
.
- Handle
nil
values inAdbc.Column.materialize/1
for decimal type (#103)
- Precompiling NIFs on
ubuntu-20.04
thus lowering the minimum required GLIBCXX version to3.4.21
.
-
To avoid allocating data twice for inputs, the results now by default will return references in the data field of
Adbc.Column
.If you need to use them in the Elixir world, you can use
Adbc.Result.materialize/1
andAdbc.Column.materialize/1
to convert the data to regular Elixir terms.iex> {:ok, results} = Connection.query(conn, "SELECT 123 as num, 456.78 as fp") {:ok, results = %Adbc.Result{ data: [ %Adbc.Column{ name: "num", type: :s64, metadata: nil, nullable: true, data: [#Reference<0.351247108.3006922760.20174>] }, %Adbc.Column{ name: "fp", type: :f64, metadata: nil, nullable: true, data: [#Reference<0.351247108.3006922760.20175>] } ], num_rows: nil }} iex> Adbc.Result.materialize(results) %Adbc.Result{ data: [ %Adbc.Column{ name: "num", type: :s64, nullable: true, metadata: nil, data: [123] }, %Adbc.Column{ name: "fp", type: :f64, nullable: true, metadata: nil, data: [456.78] } ] }
- Signed integer types and functions are now renamed from
s{8,16,32,64}
toi{8,16,32,64}
- Updated to ADBC library 12.
- Boolean arrays are now correctly parsed.
- Include
CMakeLists.txt
in package files
- Added support for dictionary encoded array
- Added support for run-end encoded array
- Include
CMakeLists.txt
in package files
- Remove debug print
-
Use
Adbc.Column
for inputs and outputs of result setsAdbc.Column
is a new module that represents columns in a result set. It supports all primitive types and lists of primitive types (nested list support is not yet implemented).Use `Adbc.Result.to_map/1`` to convert a result set to a maps of lists, where each key is a column name and the value is a list of values for that column.
-
Add
ADBC_CACERTS_PATH
to allow for custom certs (#75) -
Support bind named parameters via
Adbc.Column
(#84) -
Expose more APIs (#64)
Adbc.Database.get_option/2
Adbc.{Database,Connection}.{get,set}_option
Adbc.Connection.query_with_options/4
- Fix: set parameter length (rows) correctly (#85)
- Fix: parsing dense/sparse union (#63)
- Fix erroneous ADBC driver URLs
- Update to ADBC 0.11.0-rc0
- Builtin support for DuckDB
- Fix tables in inline docs of
Adbc.Connection
(@lkarthee in #57) - Default to erlang certificate store (@lkarthee in #57)
- Update to ADBC 0.10.0
- Using NIF version 2.16 for all precompilation targets (@cocoa-xu in #54)
- Add API for prepared queries (@dlindenkreuz in #51)
- Update to ADBC 0.8.0
- Fix URLs for downloading drivers
- Update to ADBC 0.7.0
- Parse date, time, and timestamps
- Add
Adbc.Connection.get_driver/1
- Add
Adbc.Connection.query!/3
- Initial release.