Releases: timescale/timescaledb-toolkit
1.11.0
New Experimental Features:
- arm64/aarch64 DEB packages are now available for Ubuntu 20.04 (focal) & 22.04 (jammy), and Debian 10 (buster) & 11 (bulleye). @epgts
- #526: Add
integral
andinterpolated_integral
functions for the time_weight aggregate. Makestrapezoidal
an alias forlinear
intime_weight
as it might be a more familiar numeric integral method for some. @Smittyvb - #517: Add a gap preserving
lttb
namedgp_lttb
to handle downsampling of data with large gaps. @WireBaron - #513: Add
first_val
,last_val
,first_time
andlast_time
totime_weight
andcounter_agg
to access the first and the last data points within the aggregate data structures. @rtwalker - #527: Rename
{open, high, low, close}_at
as{open, high, low, close}_time
to be consistent with newly addedfirst_time
andlast_time
accessor functions. @rtwalker
Stabilizing Features:
- #498: Stabilize
asap_smooth
aggregate. @WireBaron
Bug Fixes:
- #509, #531: Fix bugs in
hyperloglog
. Error rates are now significantly more consistent when the number of buckets are close to the actual cardinality. @BenSandeen @davidkohn88 @WireBaron @jerryxwu - #514: Fix a bug in
toolkit_experimental.interpolated_delta
@WireBaron - #503: Fix bitwise logic in timevector combine @WireBaron
- #507: Fix a typo in
approx_count_distinct
@jeremyhaberman
Other Notable Changes:
- DEB packages for Ubuntu 18.04 (Bionic) on amd64 are now available.
- #536: Document requirement to use same compiler for cargo-pgx and Toolkit
- #535: Make tests pass in Canadian locales @Smittyvb
- #537: Enforce
cargo fmt
in CI @Smittyvb - #524: Updating Toolkit To Start Using Cargo Fmt @thatzopoulos
- #522: Move update-tester tests to markdown files @thatzopoulos
Shout-outs:
- @BenSandeen for fixing typos and errors in the hyperloglog++ implementation
- @jaskij for reporting security advisories and suggestion on documenting support for PG14
- @jeremyhaberman for fixing a typo in
APPROX_COUNT_DISTINCT_DEFAULT_SIZE
- @jledentu for reporting an error on
interpolated_delta
- @stevedrip for a very detailed bug report on hyperloglog++ and suggestions for fixing it
Full Changelog: 1.10.1...1.11.0
1.10.1
What's Changed
- Use pg14 as an example for instructions instead of pg13. Add reference to deb and rpm packages by @jerryxwu in #463
- Document supported platforms. by @epgts in #467
- Fixing off by one error in state_agg interpolate by @WireBaron in #465
- Stabilize timevector by @WireBaron in #488
- Stabilize LTTB by @WireBaron in #495
- Stabilize accessors. by @epgts in #491
- Monthly Normalization by @thatzopoulos in #490
- Create OHLC aggregate and accompanying accessors by @rtwalker in #496
Note that the 1.10.1 patch release is to fix an issue where the 1.9.0 release unintentionally identified the toolkit extension version as 1.10.0-dev
in the postgresql control file.
Full Changelog: 1.8.0...1.10.1
1.9.0
What's Changed - Known Issues. Use 1.10.1 instead!
- Use pg14 as an example for instructions instead of pg13. Add reference to deb and rpm packages by @jerryxwu in #463
- Document supported platforms. by @epgts in #467
- Fixing off by one error in state_agg interpolate by @WireBaron in #465
- Stabilize timevector by @WireBaron in #488
- Stabilize LTTB by @WireBaron in #495
- Stabilize accessors. by @epgts in #491
- Monthly Normalization by @thatzopoulos in #490
- Create OHLC aggregate and accompanying accessors by @rtwalker in #496
Full Changelog: 1.8.0...1.9.0
1.8.0
TimescaleDB Toolkit v1.8.0
Merged Pull Requests
Features
- Support explicit NULL values in timevectors by @WireBaron in #429
- Fix default collation deserialization by @JLockerman in #444
- Improve error message for HyperLogLog by @JLockerman in #451
- Saturating Math for i32/integers by @thatzopoulos in #454
- Adding interpolating accessors by @WireBaron in #456
- Create Count-Min Sketch crate by @rtwalker in #388
- approx count distinct by @thatzopoulos in #459
- Add
count_min_sketch
aggregate andapprox_count
accessor by @rtwalker in #458 - Make some changes to support aarch64-unknown-linux-gnu by @epgts in #434
Bug Fixes
Internal Improvements
- Include both pgx 0.2.x and pgx 0.4.x in CI image by @rtwalker in #417
- Prepare for the
1.8.0
cycle by @rtwalker in #416 update-tester
requires two versions ofcargo-pgx
by @rtwalker in #418- Don't install pgx as root or under
/
by @rtwalker in #421 - Fix failing update-tester in CI by @rtwalker in #427
- Update github cache keys. by @epgts in #428
- Lock pgx versions all the way. by @epgts in #430
- Upgrade to pgx 0.4.5 by @rtwalker in #408
- change which cargo-pgx subcommand is added to PATH in CI image. by @rtwalker in #436
- remove PATH hack in
tools/build
script by @rtwalker in #432 - GitHub Actions Improvements by @rtwalker in #437
- Run clippy GitHub Actions job without qualification by @rtwalker in #448
- Update README.md by @rtviii in #446
- Specify Ubuntu 20.04 instead of 'latest' in github configuration. by @epgts in #414
Others
- Paused building RPM packages because of the failure to build pgx on CentOS 7
Full Changelog: 1.7.0...1.8.0
1.7.0
TimescaleDB Toolkit v1.7.0
Merged Pull Requests
- Switch stabilization tests to new info by @JLockerman in #367
- Handle NULL output from our aggregates by @JLockerman in #379
- Prepare for the
1.7.0
cycle by @JLockerman in #380 - Return INTERVAL from duration_in(TEXT, StateAgg). by @epgts in #378
- Improve tools/build flexibility for local builds. by @epgts in #372
- Create typed specialization for freq_agg and topn_agg by @WireBaron in #389
- Copy almost all the counter_agg functions for gauge_agg. by @epgts in #394
- Remove GUC by @JLockerman in #395
- Allow manual packaging by @JLockerman in #399
- Use main branch by @JLockerman in #400
- Updating CI to rust 1.60 by @WireBaron in #405
- Updating postgres versions in ci Dockerfile by @WireBaron in #407
- Explicit version in our CI image by @JLockerman in #409
- Refactor TimeVector to greatly simplify structure by @WireBaron in #404
- Allow building CI image in Actions by @JLockerman in #412
- Create reportpackagingfailures.yml by @jerryxwu in #411
- Rename reportpackagingfailures.yml to report_packaging_failures.yml by @jerryxwu in #413
Closed Issues
- Incorrect NULL handling in hyperloglog #362
- percentile_agg throws "returned Datum was NULL" error since version 2.5.1 #383
- Refactor and simplify TimeVector #384
- substantial decline in performance of percentile_agg #397
- Specialize freq_agg and topn_agg for bigints and text rather than supporting AnyElement #376
- Using deprecated functionality in Rust 1.59.0 #353
- Refactor and simplify TimeVector #384
1.6.0
This release includes new and updated experimental functionality, as well as some internal updates.
Experimental Features
- #370 Implement a TopN (
topn_agg
) variant of ourfreq_agg
- #375 Add prototype
gauge_agg
and associated functionsdelta
,idelta_left
,idelta_right
,rollup
- #368 Add
into_values
function forstate_agg
- #330 improvements to
freq_agg
- #351 Make serialize functions strict to handle NULL values in partitioned aggregates
Internal Improvements
1.5.2
This release contains bug fixes since the 1.5.0 release.
This release is high priority for upgrade. We strongly recommend that you
upgrade as soon as possible.
Bug Fixes
- PR #351 - Make serialize functions strict
- There's a vulnerability in Toolkit 1.5 and earlier due to the fact that it creates a PLPGSQL function using
CREATE OR REPLACE
and without properly locking down the search path. This means that a user could pre-create the trigger function to run arbitrary code. To fix this we remove the trigger entirely; it no longer pulls its weight. This fix locks down our update scripts to only useCREATE OR REPLACE
when actually necessary; while we don't yet have an exploit for the other functions, it would be unsurprising if one exists.
1.5.0
This release includes new experimental functionality, as well as some internal updates.
Experimental Features
freq_agg
for estimating the most common elements in a columnstate_agg
for measuring the total time spent in different states
Internal Improvements
- Updated rust to 1.57
- Enforce clippy linting
1.4.0-cloud
Version 1.4.0 with more permissive permissions to work correctly when provided by a managed environment. Use the regular version of the release, unless you have specific reason to use this one.
1.4.0
This release updates the toolkit code work with Postgres 14. It also updates the extension to use the 0.2
version of pgx
.
Full Changelog: 1.3.1...1.4.0