Unreleased - ReleaseDate
0.5.5 - 2024-05-07
Rework the validation of names and aliases for aggregate UDFs. This fixes an issue where aliases could not be used for aggregate UDFs, and provides better error messages.
0.5.4 - 2023-09-10
Update the register
macro to allow specifying a custom name or aliases
#[register(name = "foo", alias = "bar")]
impl BasicUdf for MyUdfTy { /* ... */ }
0.5.3 - 2023-03-29
- Fixed compilation for
Option<&'a [u8]>
types. Added examplemishmash
to complement this
0.5.2 - 2023-03-23
- Bump dependencies to the latest version
- Update docs on feature flags
- [Internal] remove calls to
catch_unwind
- [Internal] refactor feature flag calls
- [CI] refactor CI
0.5.1 - 2023-01-04
Changed licensing from 'Apache-2.0' to 'Apache-2.0 OR GPL-2.0-or-later'
0.5.0 - 2022-12-20
- Added feature
logging-debug-calls
for full debug printing of call parameters
- Reworked behind the scenes for returning owned results (e.g.
String
) of any length, which nicely simplifies the API. - Now using an internal type wrapper to solve
Miri
's bad transmute suggestion
0.4.5 - 2022-12-10
- Added option to print full backtraces for buffer issues with
RUST_LIB_BACKTRACE=1
0.4.4 - 2022-12-10
- Corrected issue with the size of
unsigned long
that would cause MSVC to not compile (c_ulong
is 32 bits on MSVC, 64 bits everywhere else)
0.4.2 - 2022-12-08
- Feature
logging-debug
for potentially helpful output messages
- Removed
MARIADB_ROOT_PASSWORD
from dockerfile - Updated return buffer overflow action to return
NULL
instead copying some data. - Added type names to printed output
0.4.1 - 2022-12-08
- Corrected dependency version for
udf-macros
0.4.0 - 2022-12-08
This version is now yanked
- Mocks: added the
mock
module that provides ways to unit test UDFs. This is still a work in progress, and requires the featuremock
.
- Improved memory footprint of
SqlArg
- (internal) Cleaned up
wrapper
internal structure to some extent
Unfortunately, this version brought some minor breaking changes. Luckily most of these have little to no impact:
- Changed
SqlArg
value
andattribute
members to be methods instead. Migration: replace.value
and.attribute
with.value()
and.attribute()
get_type_coercion
now returns aSqlType
instead ofOption<SqlType>
0.3.10 - 2022-11-13
- Added dockerfile to build examples
- Added preliminary integration test framework
- [CI] cleaned up pipeline configuration
- Refactor wrappers to make use of the new
if let ... else
statements - Changed wrapper structs to make use of
UnsafeCell
for better mutability controlability
0.3.9 - 2022-11-09
- Gave a transparant repr to
ArgList
0.3.8 - 2022-11-04
- Updated documentation
0.3.7 - 2022-11-03
- Fixed broken link to
README.md
inudf/src/lib.rs
0.3.6 - 2022-11-03
- Changed
SqlResult::Decimal(&'a [u8])
to beSqlResult::Decimal(&'a str)
, since a decimal will always fall under ASCII.
0.3.5 - 2022-11-03
- Added
Copy
,Clone
,Debug
, andPartialEq
implementations toMaxLenOptions
0.3.4 - 2022-11-03
- Adjusted semantics of
udf_log
output
0.3.3 - 2022-11-03
[nonpublished]
0.3.2 - 2022-11-03
- Updated documentation around
AggregateUdf::Remove
0.3.1 - 2022-11-03
- Example for
lipsum
is now working properly - Improved documentation
0.3.0 - 2022-10-26
- Completed basic support for
#[register]
procedural macro - Added support for strings (buffers) as return type
- Changed trait signatures to include a
UdfCfg
- Changed config name to
UdfCfg
, added typestate