Skip to content

Commit 73e5641

Browse files
authored
release/v0.9.2 (#619)
release v0.9.2
1 parent 62d336f commit 73e5641

29 files changed

+569
-462
lines changed

.github/ISSUE_TEMPLATE/bug_report.yml

+2-1
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,8 @@ body:
7171
attributes:
7272
label: Version of the release
7373
options:
74-
# <newest-release=v0.9.1>
74+
# <newest-release=v0.9.2>
75+
- v0.9.2
7576
- v0.9.1
7677
- v0.9.0
7778
- v0.8.7

CHANGELOG.md

+28
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,34 @@
22

33
All notable changes to this project will be documented in this file.
44

5+
## [0.9.2] - 2024-12-22
6+
7+
### Library
8+
9+
- Added `StringPattern` and made `Automaton` no longer borrow the query. ([#117](https://github.com/V0ldek/rsonpath/issues/117)[#613](https://github.com/V0ldek/rsonpath/issues/613))
10+
11+
- The `Automaton` struct borrowed the source query, which also caused the Engine to carry the query's lifetime with it.
12+
The actual data being borrowed were the `JsonString` values for member transitions.
13+
In preparation for [#117](https://github.com/V0ldek/rsonpath/issues/117)we remove the borrowed `JsonString` and replace it
14+
with `StringPattern`. For UTF-8 the `StringPattern` will be a more complex struct that precomputes some stuff for efficient matching later.
15+
For now, it's a thin wrapper over a `JsonString`.
16+
- During construction we may create many transitions over the same pattern.
17+
To reduce the size of the automaton we cache the patterns and put them into an `Rc`.
18+
This may get optimised later to instead use some kind of inline storage, but it's unlike to actually matter.
19+
I ran the benchmarks and saw no measurable difference between the previous version and this one.
20+
21+
### Dependencies
22+
23+
- Bump arbitrary from 1.3.1 to 1.4.1
24+
- Bump clap from 4.5.2 to 4.5.23
25+
- Bump color-eyre from 0.6.2 to 0.6.3
26+
- Bump log from 0.4.21 to 0.4.22
27+
- Bump memmap2 from 0.9.4 to 0.9.5
28+
- Bump simple_logger from 4.3.3 to 5.0.0
29+
- Bump smallvec from 1.13.1 to 1.13.2
30+
- Bump thiserror from 1.0.58 to 2.0.9 (#617). ([#617](https://github.com/V0ldek/rsonpath/issues/617))
31+
- Remove `nom` as a direct dependency of `rsonpath-lib`
32+
533
## [0.9.1] - 2024-04-03
634

735
### Bug Fixes

Cargo.lock

+5-5
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

+61-2
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,19 @@ exclude = ["crates/rsonpath-benchmarks", "crates/rsonpath-test-codegen"]
1111

1212
resolver = "2"
1313

14+
[workspace.package]
15+
version = "0.9.2"
16+
authors = ["Mateusz Gienieczko <[email protected]>"]
17+
readme = "README.md"
18+
license = "MIT"
19+
repository = "https://github.com/rsonquery/rsonpath"
20+
homepage = "https://rsonquery.github.io/rsonpath/"
21+
edition = "2021"
22+
1423
[workspace.dependencies]
1524
# Project crates
16-
rsonpath-lib = { version = "0.9.1", path = "./crates/rsonpath-lib", package = "rsonpath-lib", default-features = false }
17-
rsonpath-syntax = { version = "0.3.1", path = "./crates/rsonpath-syntax" }
25+
rsonpath-lib = { version = "0.9.2", path = "./crates/rsonpath-lib", package = "rsonpath-lib", default-features = false }
26+
rsonpath-syntax = { version = "0.3.2", path = "./crates/rsonpath-syntax" }
1827
# Main dependencies
1928
arbitrary = { version = "1.4.1" }
2029
cfg-if = "1.0.0"
@@ -26,6 +35,56 @@ pretty_assertions = "1.4.1"
2635
proptest = "1.5.0"
2736
test-case = "3.3.1"
2837

38+
[workspace.lints.rust]
39+
explicit_outlives_requirements = "warn"
40+
semicolon_in_expressions_from_macros = "warn"
41+
unreachable_pub = "warn"
42+
unused_import_braces = "warn"
43+
unused_lifetimes = "warn"
44+
45+
[workspace.lints.clippy]
46+
allow_attributes_without_reason = "warn"
47+
cargo_common_metadata = "warn"
48+
cast_lossless = "warn"
49+
cloned_instead_of_copied = "warn"
50+
empty_drop = "warn"
51+
empty_line_after_outer_attr = "warn"
52+
equatable_if_let = "warn"
53+
expl_impl_clone_on_copy = "warn"
54+
explicit_deref_methods = "warn"
55+
explicit_into_iter_loop = "warn"
56+
explicit_iter_loop = "warn"
57+
fallible_impl_from = "warn"
58+
flat_map_option = "warn"
59+
if_then_some_else_none = "warn"
60+
inconsistent_struct_constructor = "warn"
61+
large_digit_groups = "warn"
62+
let_underscore_must_use = "warn"
63+
manual_ok_or = "warn"
64+
map_err_ignore = "warn"
65+
map_unwrap_or = "warn"
66+
match_same_arms = "warn"
67+
match_wildcard_for_single_variants = "warn"
68+
missing_inline_in_public_items = "warn"
69+
mod_module_files = "warn"
70+
must_use_candidate = "warn"
71+
needless_continue = "warn"
72+
needless_for_each = "warn"
73+
needless_pass_by_value = "warn"
74+
ptr_as_ptr = "warn"
75+
redundant_closure_for_method_calls = "warn"
76+
ref_binding_to_reference = "warn"
77+
ref_option_ref = "warn"
78+
rest_pat_in_fully_bound_structs = "warn"
79+
undocumented_unsafe_blocks = "warn"
80+
unneeded_field_pattern = "warn"
81+
unseparated_literal_suffix = "warn"
82+
unreadable_literal = "warn"
83+
unused_self = "warn"
84+
use_self = "warn"
85+
# Panic-free lints
86+
exit = "warn"
87+
2988
[profile.dev]
3089
lto = false
3190

Justfile

+9-3
Original file line numberDiff line numberDiff line change
@@ -276,13 +276,19 @@ release ver:
276276
cargo build
277277
cargo +nightly fuzz build
278278

279+
# Execute prerequisits for a release of `rsonpath-syntax` for the given version.
280+
release-syntax ver:
281+
#!/usr/bin/env nu
282+
let ver = "{{ver}}";
283+
sed -i $'s/^version = "[^"]*"/version = "($ver)"/' "./crates/rsonpath-syntax/Cargo.toml"
284+
sed -i $'s/^rsonpath-syntax = { version = "[^"]*"/rsonpath-syntax = { version = "($ver)"/' "./Cargo.toml"
285+
279286
[private]
280287
release-patch ver:
281288
#!/usr/bin/env nu
282289
let ver = "{{ver}}";
283-
let crates = ["rsonpath", "rsonpath-lib", "rsonpath-benchmarks", "rsonpath-test", "rsonpath-test-codegen"];
284-
$crates | each { |cr|
285-
let path = $"./crates/($cr)/Cargo.toml";
290+
let paths = ["./Cargo.toml", "./crates/rsonpath-benchmarks/Cargo.toml", "./crates/rsonpath-test-codegen/Cargo.toml"];
291+
$paths | each { |path|
286292
sed -i $'s/^version = "[^"]*"/version = "($ver)"/;s/^rsonpath-lib = { version = "[^"]*"/rsonpath-lib = { version = "($ver)"/;s/rsonpath-test-codegen = { version = "[^"]*"/rsonpath-test-codegen = { version = "($ver)"/' $path;
287293
};
288294

0 commit comments

Comments
 (0)