Highlights: 🎉 🚀
- Benchmarks refinements galore with more benchmarks and more comprehensive benchmarking instructions. 🎠
geocode
: The Geonames index's configuration metadata is now available with thegeocode index-check
subcommand. No need to maintain a separate metadata JSON file. This should make it even easier to maintain multiple Geonames index files with different configurations without having to worry if you're looking at the right metadata JSON file. 🎠cat
:rowskey
subcommand is now 27% faster 🏇🏽tojsonl
: parallelized with rayon, making it 33% faster! 🏇🏽- smaller qsv binary size and faster compile times if the
to_parquet
feature is disabled. If you're good enough withsqlp
's ability to create a parquet file from a SQL query, qsv's binary size and compile time will be markedly smaller/faster. 🏇🏽 - minor perf tweaks & optimizations -
count
andluau
commands 🏇🏽
Added
geocode
: added Geonames index file metadata toindex-check
subcommandtojsonl
: parallelized with rayon #1338to
: addedto_parquet
feature. #1341benchmarks
: upgraded from 3.0.0 to 3.3.1- you can now specify a separate benchmarking binary as we dogfood qsv for the benchmarks and some features are required that may not be in the qsv binary variant being benchmarked
- added additional
count
benchmarks with--width
option - added additional
luau
benchmarks with single/multi filter options - added additional
search
benchmark with--unicode
option - show absolute path of qsv binaries used (both the one we're dogfooding and the one being benchmarked) and their version info before running the benchmarks proper
- ensured
schema
benchmark was not using the stats cache with the--force
option
Changed
cat
: use an empty byte_record var instead of repeatedly allocating a new one in a hot loop eddafd1count
: minor optimization bb113c0luau
: minor perf tweaks c71cd16 and f9c1e3c- (deps): bump Geosuggest from 0.4.5 to 5.1 #1333
- (deps): use patched version of calamine which has unreleased fixes since 0.22.0
- build(deps): bump flexi_logger from 0.27.0 to 0.27.2 by @dependabot in #1328
- build(deps): bump indexmap from 2.0.0 to 2.0.1 by @dependabot in #1329
- build(deps): bump hashbrown from 0.14.0 to 0.14.1 by @dependabot in #1334
- build(deps): bump file-format from 0.20.0 to 0.21.0 by @dependabot in #1335
- build(deps): bump indexmap from 2.0.1 to 2.0.2 by @dependabot in #1336
- build(deps): bump regex from 1.9.5 to 1.9.6 by @dependabot in #1337
- build(deps): bump jql-runner from 7.0.3 to 7.0.4 by @dependabot in #1340
- build(deps): bump csvs_convert from 0.8.7 to 0.8.8 by @dependabot in #1339
- build(deps): bump actions/setup-python from 4.7.0 to 4.7.1 by @dependabot in #1342
- build(deps): bump reqwest from 0.11.21 to 0.11.22 by @dependabot in #1343
- build(deps): bump csv from 1.2.2 to 1.3.0 by @dependabot in #1344
- build(deps): bump actix-governor from 0.4.1 to 0.5.0 by @dependabot in #1346
- applied select clippy suggestions
- update several indirect dependencies
- pin Rust nightly to 2023-10-04
Removed
geocode
: removed separate metadata JSON file for Geonames index files. The metadata is now embedded in the index file itself and can be viewed with theindex-check
command.- removed redundant setting from profile.release-samply in Cargo.toml 2a35be5
Fixed
geocode
: when producing JSON output with the now subcommands (suggestnow,
reversenow
,countryinfonow
), we now produce valid JSON. We previously generated JSON with escaped/extra quotes as it was formatted to be included in CSV files, which is required for thesuggest
,reverse
andcountryinfo
subcommands as they are designed to process CSVs with multiple rows, thus requiring escaped JSON. Thenow
commands are only meant for one result so there's no need to escape quote the JSON. #1345schema
: fixed--force
flag not being honored
Full Changelog: 0.115.0...0.116.0