github jqnatividad/qsv 0.119.0

latest releases: 0.135.0, 0.134.0, 0.133.1...
10 months ago

Highlights:

As we prepare for version 1.0, we're focusing on performance, stability and reliability as we set the stage for qsv pro - a cloud-backed UI version of qsv powered by Tauri, set to be released in 2024. Stay tuned!

  • diff is now out of beta and blazingly fast! Give "the fastest CSV-diff in the world" a try 😉!
  • joinp now supports snappy automatic compression/decompression!
  • sqlp & joinp now recognize the QSV_COMMENT_CHAR environment variable, allowing you to skip comment lines in your input CSV files. They're also faster with the upgrade to Polars 0.35.4.
  • sqlp now supports subqueries, table aliases, and more!
  • luau: upgraded embedded Luau from 0.599 to 0.604; refactored code to reduce unneeded allocations and increase performance (more than doubling performance!) as we prepare for extended recipe support.
  • cat is now even faster with the --flexible option. If you know your CSV files are valid, you can use this option to skip CSV validation and make cat run twice as fast!
  • qsv can now add a Byte Order Mark (BOM) header sequence for Excel-friendly CSVs on Windows with the QSV_OUTPUT_BOM environment variable.
  • stats, sort, schema & validate are now faster with the use of atoi_simd to directly convert &[u8] to integer, skipping unnecessary utf8 validation, while also using SIMD CPU instructions for noticeably faster performance.

Added

  • diff: added option/flag for headers in output by @janriemer in #1395
  • diff: added option/flag --delimiter-output by @janriemer in #1402
  • cat: added --flexible option to make cat rows faster still #1408
  • sqlp & joinp: both commands now recognize QSV_COMMENT_CHAR env var #1412
  • joinp: added snappy compression/decompression support #1413
  • geocode: now automatically decompresses snappy-compressed index files #1429
  • Add Byte Order Mark (BOM) output support #1424
  • Added Codacy code quality badge 9959129

Changed

  • stats, sort, schema & validate: use atoi_simd to directly convert &[u8] to integer skipping unnecessary utf8 validation, while also using SIMD instructions for noticeably faster performance
  • cat: faster cat rows #1407
  • count: optimize --width option #1411
  • luau: upgrade embedded Luau from 0.603 to 0.604 #1426
  • use ato_simd for fast &[u8] to int conversion #1423
  • luau: performance refactor 4cebd7c
  • build(deps): bump csv-diff from 0.1.0-beta.4 to 0.1.0 by @dependabot in #1394
  • build(deps): bump serde_json from 1.0.107 to 1.0.108 by @dependabot in #1393
  • build(deps): bump indexmap from 2.0.2 to 2.1.0 by @dependabot in #1397
  • build(deps): bump jql-runner from 7.0.4 to 7.0.5 by @dependabot in #1399
  • build(deps): bump jql-runner from 7.0.5 to 7.0.6 by @dependabot in #1400
  • build(deps): bump file-format from 0.21.0 to 0.22.0 by @dependabot in #1401
  • build(deps): bump cached from 0.46.0 to 0.46.1 by @dependabot in #1403
  • build(deps): bump serde from 1.0.190 to 1.0.192 by @dependabot in #1404
  • build(deps): bump tokio from 1.33.0 to 1.34.0 by @dependabot in #1409
  • build(deps): bump flexi_logger from 0.27.2 to 0.27.3 by @dependabot in #1410
  • build(deps): bump qsv-stats from 0.11.0 to 0.12.0 by @dependabot in #1415
  • build(deps): bump itertools from 0.11.0 to 0.12.0 by @dependabot in #1418
  • build(deps): bump rust_decimal from 1.33.0 to 1.33.1 by @dependabot in #1420
  • build(deps): bump polars from 0.35.2 to 0.35.4 by @dependabot in #1425
  • build(deps): bump uuid from 1.5.0 to 1.6.0 by @dependabot in #1428
  • bump MSRV to 1.74.0
  • apply select clippy suggestions
  • update several indirect dependencies
  • pin Rust nightly to 2023-11-18

Fixed

  • pseudo: detect when more than one column is selected for pseudonymization 0b09372
  • dotenv (.env) tweaks/fixes #1427
  • fix several typos 723443e
  • fix several markdown lints

Removed

  • remove fast-float as std float parse is now also using Eisel-Lemire algorithm #1414

Full Changelog: 0.118.0...0.119.0


NOTE:

To verify prebuilt binary zip archives - click here.

Don't miss a new qsv release

NewReleases is sending notifications on new releases.