diff --git a/CHANGELOG.md b/CHANGELOG.md index 981279d9..53598058 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,23 @@ All changes that a user can see are in this file. The version is 0.M.patch, wher ## Unreleased +## 0.1.24 (2026-10-13) + +A patch release on the way to M2. rupg now runs the operators and aggregates of the multirange types, and reads and writes the text search types `tsvector` and `tsquery` with their operators and the match operator `@@`. + +### Added + +- The operators of the multirange types, such as `+`, `-`, `*`, `&&`, `@>`, `<<` and `-|-`, and the set function `multirange_minus_multi` (#280). +- The aggregates `range_agg` and `range_intersect_agg` for ranges and multiranges (#281). +- The text and binary forms of `tsvector`, with `length`, `strip`, `setweight`, `ts_delete`, `tsvector_to_array`, `array_to_tsvector`, `ts_filter`, `unnest`, the operator `||` and the order of the vectors (#282). +- The text and binary forms of `tsquery`, with `numnode`, `querytree`, `tsquery_phrase`, the operators `&&`, `||`, `!!`, `<->`, `@>` and `<@` and the order of the queries (#283). +- The match operators `@@` and `@@@` of `tsvector` and `tsquery`, with weights, prefixes and the rules of PostgreSQL for `` (#284). + +### Fixed + +- A message of a function with a SQLSTATE of class `00` is now a `NOTICE`, as in PostgreSQL. Before, it was a `WARNING` (#283). +- The `Bind` message now sends the notices of the input functions of the parameters. Before, the session dropped them (#283). + ## 0.1.23 (2026-10-13) A patch release on the way to M2. rupg now reads and writes `aclitem` values and the values of the range and multirange types, and runs the operators of the range types. diff --git a/Cargo.lock b/Cargo.lock index 2d30a05c..e75fff89 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -257,7 +257,7 @@ dependencies = [ [[package]] name = "rupg" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-buffer", "rupg-common", @@ -272,7 +272,7 @@ dependencies = [ [[package]] name = "rupg-analyze" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-catalog", "rupg-common", @@ -283,11 +283,11 @@ dependencies = [ [[package]] name = "rupg-ann" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-buffer" -version = "0.1.23" +version = "0.1.24" dependencies = [ "loom", "rupg-common", @@ -297,41 +297,41 @@ dependencies = [ [[package]] name = "rupg-capi" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-catalog" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", ] [[package]] name = "rupg-cli" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg", ] [[package]] name = "rupg-cluster" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-column" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-common" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-contrib" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-crash" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg", "rupg-common", @@ -341,15 +341,15 @@ dependencies = [ [[package]] name = "rupg-encode" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-exchange" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-exec" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-analyze", "rupg-catalog", @@ -362,11 +362,11 @@ dependencies = [ [[package]] name = "rupg-ext" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-file" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", "rupg-platform", @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "rupg-func" -version = "0.1.23" +version = "0.1.24" dependencies = [ "md-5", "rupg-analyze", @@ -387,11 +387,11 @@ dependencies = [ [[package]] name = "rupg-graph" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-hot" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-buffer", "rupg-common", @@ -402,23 +402,23 @@ dependencies = [ [[package]] name = "rupg-import" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-index" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-jit" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-kernels" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-log" -version = "0.1.23" +version = "0.1.24" dependencies = [ "loom", "rupg-buffer", @@ -430,19 +430,19 @@ dependencies = [ [[package]] name = "rupg-opt" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-pgcatalog" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-plan" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-platform" -version = "0.1.23" +version = "0.1.24" dependencies = [ "libc", "rupg-common", @@ -450,15 +450,15 @@ dependencies = [ [[package]] name = "rupg-plpgsql" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-raft" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-server" -version = "0.1.23" +version = "0.1.24" dependencies = [ "ring", "rupg-common", @@ -470,7 +470,7 @@ dependencies = [ [[package]] name = "rupg-session" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-analyze", "rupg-catalog", @@ -486,22 +486,22 @@ dependencies = [ [[package]] name = "rupg-shim" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-sql" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", ] [[package]] name = "rupg-summary" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-table" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", "rupg-file", @@ -512,7 +512,7 @@ dependencies = [ [[package]] name = "rupg-tree" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-buffer", "rupg-common", @@ -522,7 +522,7 @@ dependencies = [ [[package]] name = "rupg-txn" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-buffer", "rupg-common", @@ -537,18 +537,18 @@ dependencies = [ [[package]] name = "rupg-types" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", ] [[package]] name = "rupg-wasm" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-wire" -version = "0.1.23" +version = "0.1.24" dependencies = [ "hmac", "md-5", @@ -822,7 +822,7 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "xtask" -version = "0.1.23" +version = "0.1.24" [[package]] name = "zeroize" diff --git a/Cargo.toml b/Cargo.toml index 42c1cf1d..35faf094 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -6,7 +6,7 @@ exclude = ["fuzz"] [workspace.package] # The version is 0.M.patch, where M is the last milestone that closed. See spec/23-milestones.md section 23.17. -version = "0.1.23" +version = "0.1.24" edition = "2024" # The MSRV is 1.88.0. Safe functions with target_feature need 1.86. core::hint::select_unpredictable needs 1.88. See spec/22-crate-layout.md section 22.11. rust-version = "1.88.0" @@ -20,47 +20,47 @@ readme = "README.md" # One version for the whole workspace. Internal crates are pinned exactly, so a partial publish cannot make a build with mixed versions. `cargo xtask version` changes all the pins together. [workspace.dependencies] -rupg = { version = "=0.1.23", path = "crates/rupg" } -rupg-analyze = { version = "=0.1.23", path = "crates/rupg-analyze" } -rupg-ann = { version = "=0.1.23", path = "crates/rupg-ann" } -rupg-buffer = { version = "=0.1.23", path = "crates/rupg-buffer" } -rupg-capi = { version = "=0.1.23", path = "crates/rupg-capi" } -rupg-catalog = { version = "=0.1.23", path = "crates/rupg-catalog" } -rupg-cli = { version = "=0.1.23", path = "crates/rupg-cli" } -rupg-cluster = { version = "=0.1.23", path = "crates/rupg-cluster" } -rupg-column = { version = "=0.1.23", path = "crates/rupg-column" } -rupg-common = { version = "=0.1.23", path = "crates/rupg-common" } -rupg-contrib = { version = "=0.1.23", path = "crates/rupg-contrib" } -rupg-encode = { version = "=0.1.23", path = "crates/rupg-encode" } -rupg-exchange = { version = "=0.1.23", path = "crates/rupg-exchange" } -rupg-exec = { version = "=0.1.23", path = "crates/rupg-exec" } -rupg-ext = { version = "=0.1.23", path = "crates/rupg-ext" } -rupg-file = { version = "=0.1.23", path = "crates/rupg-file" } -rupg-func = { version = "=0.1.23", path = "crates/rupg-func" } -rupg-graph = { version = "=0.1.23", path = "crates/rupg-graph" } -rupg-hot = { version = "=0.1.23", path = "crates/rupg-hot" } -rupg-import = { version = "=0.1.23", path = "crates/rupg-import" } -rupg-index = { version = "=0.1.23", path = "crates/rupg-index" } -rupg-jit = { version = "=0.1.23", path = "crates/rupg-jit" } -rupg-kernels = { version = "=0.1.23", path = "crates/rupg-kernels" } -rupg-log = { version = "=0.1.23", path = "crates/rupg-log" } -rupg-opt = { version = "=0.1.23", path = "crates/rupg-opt" } -rupg-pgcatalog = { version = "=0.1.23", path = "crates/rupg-pgcatalog" } -rupg-plan = { version = "=0.1.23", path = "crates/rupg-plan" } -rupg-platform = { version = "=0.1.23", path = "crates/rupg-platform" } -rupg-plpgsql = { version = "=0.1.23", path = "crates/rupg-plpgsql" } -rupg-raft = { version = "=0.1.23", path = "crates/rupg-raft" } -rupg-server = { version = "=0.1.23", path = "crates/rupg-server" } -rupg-session = { version = "=0.1.23", path = "crates/rupg-session" } -rupg-shim = { version = "=0.1.23", path = "crates/rupg-shim" } -rupg-sql = { version = "=0.1.23", path = "crates/rupg-sql" } -rupg-summary = { version = "=0.1.23", path = "crates/rupg-summary" } -rupg-table = { version = "=0.1.23", path = "crates/rupg-table" } -rupg-tree = { version = "=0.1.23", path = "crates/rupg-tree" } -rupg-txn = { version = "=0.1.23", path = "crates/rupg-txn" } -rupg-types = { version = "=0.1.23", path = "crates/rupg-types" } -rupg-wasm = { version = "=0.1.23", path = "crates/rupg-wasm" } -rupg-wire = { version = "=0.1.23", path = "crates/rupg-wire" } +rupg = { version = "=0.1.24", path = "crates/rupg" } +rupg-analyze = { version = "=0.1.24", path = "crates/rupg-analyze" } +rupg-ann = { version = "=0.1.24", path = "crates/rupg-ann" } +rupg-buffer = { version = "=0.1.24", path = "crates/rupg-buffer" } +rupg-capi = { version = "=0.1.24", path = "crates/rupg-capi" } +rupg-catalog = { version = "=0.1.24", path = "crates/rupg-catalog" } +rupg-cli = { version = "=0.1.24", path = "crates/rupg-cli" } +rupg-cluster = { version = "=0.1.24", path = "crates/rupg-cluster" } +rupg-column = { version = "=0.1.24", path = "crates/rupg-column" } +rupg-common = { version = "=0.1.24", path = "crates/rupg-common" } +rupg-contrib = { version = "=0.1.24", path = "crates/rupg-contrib" } +rupg-encode = { version = "=0.1.24", path = "crates/rupg-encode" } +rupg-exchange = { version = "=0.1.24", path = "crates/rupg-exchange" } +rupg-exec = { version = "=0.1.24", path = "crates/rupg-exec" } +rupg-ext = { version = "=0.1.24", path = "crates/rupg-ext" } +rupg-file = { version = "=0.1.24", path = "crates/rupg-file" } +rupg-func = { version = "=0.1.24", path = "crates/rupg-func" } +rupg-graph = { version = "=0.1.24", path = "crates/rupg-graph" } +rupg-hot = { version = "=0.1.24", path = "crates/rupg-hot" } +rupg-import = { version = "=0.1.24", path = "crates/rupg-import" } +rupg-index = { version = "=0.1.24", path = "crates/rupg-index" } +rupg-jit = { version = "=0.1.24", path = "crates/rupg-jit" } +rupg-kernels = { version = "=0.1.24", path = "crates/rupg-kernels" } +rupg-log = { version = "=0.1.24", path = "crates/rupg-log" } +rupg-opt = { version = "=0.1.24", path = "crates/rupg-opt" } +rupg-pgcatalog = { version = "=0.1.24", path = "crates/rupg-pgcatalog" } +rupg-plan = { version = "=0.1.24", path = "crates/rupg-plan" } +rupg-platform = { version = "=0.1.24", path = "crates/rupg-platform" } +rupg-plpgsql = { version = "=0.1.24", path = "crates/rupg-plpgsql" } +rupg-raft = { version = "=0.1.24", path = "crates/rupg-raft" } +rupg-server = { version = "=0.1.24", path = "crates/rupg-server" } +rupg-session = { version = "=0.1.24", path = "crates/rupg-session" } +rupg-shim = { version = "=0.1.24", path = "crates/rupg-shim" } +rupg-sql = { version = "=0.1.24", path = "crates/rupg-sql" } +rupg-summary = { version = "=0.1.24", path = "crates/rupg-summary" } +rupg-table = { version = "=0.1.24", path = "crates/rupg-table" } +rupg-tree = { version = "=0.1.24", path = "crates/rupg-tree" } +rupg-txn = { version = "=0.1.24", path = "crates/rupg-txn" } +rupg-types = { version = "=0.1.24", path = "crates/rupg-types" } +rupg-wasm = { version = "=0.1.24", path = "crates/rupg-wasm" } +rupg-wire = { version = "=0.1.24", path = "crates/rupg-wire" } # Outside crates. Each one is in the table of spec/22-crate-layout.md section 22.5. # libc: the system calls of rupg-platform on Unix, for example F_FULLFSYNC and getentropy. diff --git a/fuzz/Cargo.lock b/fuzz/Cargo.lock index 5131de6c..b0032aa7 100644 --- a/fuzz/Cargo.lock +++ b/fuzz/Cargo.lock @@ -207,7 +207,7 @@ checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" [[package]] name = "rupg" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-buffer", "rupg-common", @@ -221,7 +221,7 @@ dependencies = [ [[package]] name = "rupg-analyze" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-catalog", "rupg-common", @@ -232,7 +232,7 @@ dependencies = [ [[package]] name = "rupg-buffer" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", "rupg-file", @@ -241,18 +241,18 @@ dependencies = [ [[package]] name = "rupg-catalog" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", ] [[package]] name = "rupg-common" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-file" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", "rupg-platform", @@ -260,7 +260,7 @@ dependencies = [ [[package]] name = "rupg-func" -version = "0.1.23" +version = "0.1.24" dependencies = [ "md-5", "rupg-analyze", @@ -290,7 +290,7 @@ dependencies = [ [[package]] name = "rupg-hot" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", "rupg-file", @@ -299,11 +299,11 @@ dependencies = [ [[package]] name = "rupg-kernels" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-log" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-buffer", "rupg-common", @@ -313,11 +313,11 @@ dependencies = [ [[package]] name = "rupg-pgcatalog" -version = "0.1.23" +version = "0.1.24" [[package]] name = "rupg-platform" -version = "0.1.23" +version = "0.1.24" dependencies = [ "libc", "rupg-common", @@ -325,14 +325,14 @@ dependencies = [ [[package]] name = "rupg-sql" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", ] [[package]] name = "rupg-table" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", "rupg-file", @@ -342,7 +342,7 @@ dependencies = [ [[package]] name = "rupg-tree" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", "rupg-file", @@ -350,7 +350,7 @@ dependencies = [ [[package]] name = "rupg-txn" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-buffer", "rupg-common", @@ -364,14 +364,14 @@ dependencies = [ [[package]] name = "rupg-types" -version = "0.1.23" +version = "0.1.24" dependencies = [ "rupg-common", ] [[package]] name = "rupg-wire" -version = "0.1.23" +version = "0.1.24" dependencies = [ "hmac", "md-5",