Repository navigation
Releases: sebyx07/zsv-ruby
Releases · sebyx07/zsv-ruby
Release list
v1.4.3
Release v1.4.3. See CHANGELOG.md for details.
v1.3.1
What's Changed
Bug Fixes
- Fixed macOS ARM build by dynamically detecting compiler name (gcc, gcc-14, clang, etc.)
- Fixed empty string parsing on macOS (fmemopen doesn't accept size 0)
- Fixed SSL certificate verification issues on macOS Ruby 3.4.7 with automatic retry
Improvements
- Performance optimization: header caching for faster hash building (~8% improvement in headers mode)
- Added
rb_hash_new_capasupport for Ruby 3.2+ hash preallocation - Added macOS ARM (macos-14) to CI matrix
Full Changelog
v1.3.0 - Initial Release
ZSV Ruby v1.3.0
SIMD-accelerated CSV parser for Ruby, powered by zsv.
Features
- 5-6x faster than Ruby's CSV stdlib
- Drop-in replacement API (
foreach,parse,read,open) - Headers mode (returns hashes)
- Custom delimiters (
,,\t,|, etc.) - Enumerable support (
map,select,each)
Installation
gem 'zsv'Quick Example
require 'zsv'
# 6x faster than CSV.foreach
ZSV.foreach("large.csv", headers: true) do |row|
puts row["name"]
endBenchmarks (Ruby 3.4.7)
| File Size | ZSV | CSV stdlib | Speedup |
|---|---|---|---|
| 1K rows | 1,013 i/s | 163 i/s | 6.2x |
| 10K rows | 54 i/s | 10 i/s | 5.3x |
| 100K rows | 5.3 i/s | 1.1 i/s | 5.0x |
Requirements
- Ruby 3.3+
- Linux or macOS (Intel & ARM)
🤖 Built with Claude Code