├── .github └── workflows │ ├── release.yaml │ └── test.yaml ├── .gitignore ├── Cargo.lock ├── Cargo.toml ├── LICENSE-APACHE ├── LICENSE-MIT ├── Makefile ├── NOTES.md ├── README.md ├── TODO ├── VERSION ├── benchmarks ├── .DS_Store ├── Makefile ├── README.md ├── aggregate.png ├── aggregate │ ├── bench.sh │ ├── datafusion.sh │ ├── df_commands.txt │ ├── dsq.sh │ ├── duck_parallel.sh │ ├── octosql.sh │ ├── results.json │ └── xsv.sh ├── compression.sql ├── count.png ├── count │ ├── bench-sqlite.sh │ ├── bench.sh │ ├── datafusion.sh │ ├── df_commands.txt │ ├── dsq.sh │ ├── duckdb.sh │ ├── duckdb_parallel.sh │ ├── octosql.sh │ ├── pandas.sh │ ├── results-sqlite.json │ ├── results.json │ ├── rust-xsv.sh │ ├── sqlite-cli-import.sh │ ├── sqlite-csv.sh │ ├── sqlite-utils.sh │ ├── sqlite-vsv.sh │ ├── sqlite-xsv-reader.sh │ └── sqlite-xsv.sh └── setup.md ├── cbindgen.toml ├── docs.md ├── scripts └── publish_release.sh ├── sqlite-dist.toml ├── sqlite-xsv.h ├── src ├── lib.rs ├── meta.rs ├── util.rs ├── xsv.rs ├── xsv_fields.rs ├── xsv_reader.rs └── xsv_rows.rs ├── test.sql ├── tests ├── data │ ├── empty.csv │ ├── glob │ │ ├── a.csv │ │ ├── b.csv │ │ ├── c.csv │ │ ├── empty.csv │ │ └── empty2.csv │ ├── glob_error │ │ ├── a.csv │ │ ├── b.csv │ │ └── c.csv │ ├── invalid-header.csv │ ├── invalid-row.csv │ ├── not_enough_columns.csv │ ├── quote_stress.csv │ ├── student_files │ │ ├── a.csv │ │ ├── a.psv │ │ ├── a.tsv │ │ ├── b.csv │ │ └── c.csv │ ├── students.csv │ ├── students.csv.gz │ ├── students.csv.zip │ ├── students.csv.zst │ ├── students.psv │ ├── students.tsv │ ├── students_no_header.csv │ └── too_many_columns.csv ├── test-loadable.py └── test-quote-stress.sql └── tmp └── test_latin1.csv /.github/workflows/release.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/.github/workflows/release.yaml -------------------------------------------------------------------------------- /.github/workflows/test.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/.github/workflows/test.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/.gitignore -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/LICENSE-APACHE -------------------------------------------------------------------------------- /LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/LICENSE-MIT -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/Makefile -------------------------------------------------------------------------------- /NOTES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/NOTES.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/README.md -------------------------------------------------------------------------------- /TODO: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/TODO -------------------------------------------------------------------------------- /VERSION: -------------------------------------------------------------------------------- 1 | 0.2.1-alpha.13 -------------------------------------------------------------------------------- /benchmarks/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/.DS_Store -------------------------------------------------------------------------------- /benchmarks/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/Makefile -------------------------------------------------------------------------------- /benchmarks/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/README.md -------------------------------------------------------------------------------- /benchmarks/aggregate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/aggregate.png -------------------------------------------------------------------------------- /benchmarks/aggregate/bench.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/aggregate/bench.sh -------------------------------------------------------------------------------- /benchmarks/aggregate/datafusion.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | datafusion-cli -f ./df_commands.txt -------------------------------------------------------------------------------- /benchmarks/aggregate/df_commands.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/aggregate/df_commands.txt -------------------------------------------------------------------------------- /benchmarks/aggregate/dsq.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | dsq ../_data/yellow_202104.csv 'SELECT passenger_count, COUNT(*), AVG(total_amount) FROM {} group by 1;' -------------------------------------------------------------------------------- /benchmarks/aggregate/duck_parallel.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/aggregate/duck_parallel.sh -------------------------------------------------------------------------------- /benchmarks/aggregate/octosql.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/aggregate/octosql.sh -------------------------------------------------------------------------------- /benchmarks/aggregate/results.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/aggregate/results.json -------------------------------------------------------------------------------- /benchmarks/aggregate/xsv.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/aggregate/xsv.sh -------------------------------------------------------------------------------- /benchmarks/compression.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/compression.sql -------------------------------------------------------------------------------- /benchmarks/count.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count.png -------------------------------------------------------------------------------- /benchmarks/count/bench-sqlite.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/bench-sqlite.sh -------------------------------------------------------------------------------- /benchmarks/count/bench.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/bench.sh -------------------------------------------------------------------------------- /benchmarks/count/datafusion.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | datafusion-cli -f ./df_commands.txt -------------------------------------------------------------------------------- /benchmarks/count/df_commands.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/df_commands.txt -------------------------------------------------------------------------------- /benchmarks/count/dsq.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | dsq ../_data/totals.csv 'select count(*) from {}' -------------------------------------------------------------------------------- /benchmarks/count/duckdb.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/duckdb.sh -------------------------------------------------------------------------------- /benchmarks/count/duckdb_parallel.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/duckdb_parallel.sh -------------------------------------------------------------------------------- /benchmarks/count/octosql.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | octosql 'SELECT count(*) FROM totals.csv' -------------------------------------------------------------------------------- /benchmarks/count/pandas.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/pandas.sh -------------------------------------------------------------------------------- /benchmarks/count/results-sqlite.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/results-sqlite.json -------------------------------------------------------------------------------- /benchmarks/count/results.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/results.json -------------------------------------------------------------------------------- /benchmarks/count/rust-xsv.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | xsv count ../_data/totals.csv -------------------------------------------------------------------------------- /benchmarks/count/sqlite-cli-import.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/sqlite-cli-import.sh -------------------------------------------------------------------------------- /benchmarks/count/sqlite-csv.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/sqlite-csv.sh -------------------------------------------------------------------------------- /benchmarks/count/sqlite-utils.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/sqlite-utils.sh -------------------------------------------------------------------------------- /benchmarks/count/sqlite-vsv.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/sqlite-vsv.sh -------------------------------------------------------------------------------- /benchmarks/count/sqlite-xsv-reader.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/sqlite-xsv-reader.sh -------------------------------------------------------------------------------- /benchmarks/count/sqlite-xsv.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/count/sqlite-xsv.sh -------------------------------------------------------------------------------- /benchmarks/setup.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/benchmarks/setup.md -------------------------------------------------------------------------------- /cbindgen.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/cbindgen.toml -------------------------------------------------------------------------------- /docs.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/docs.md -------------------------------------------------------------------------------- /scripts/publish_release.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/scripts/publish_release.sh -------------------------------------------------------------------------------- /sqlite-dist.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/sqlite-dist.toml -------------------------------------------------------------------------------- /sqlite-xsv.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/sqlite-xsv.h -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/src/lib.rs -------------------------------------------------------------------------------- /src/meta.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/src/meta.rs -------------------------------------------------------------------------------- /src/util.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/src/util.rs -------------------------------------------------------------------------------- /src/xsv.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/src/xsv.rs -------------------------------------------------------------------------------- /src/xsv_fields.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/src/xsv_fields.rs -------------------------------------------------------------------------------- /src/xsv_reader.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/src/xsv_reader.rs -------------------------------------------------------------------------------- /src/xsv_rows.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/src/xsv_rows.rs -------------------------------------------------------------------------------- /test.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/test.sql -------------------------------------------------------------------------------- /tests/data/empty.csv: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/data/glob/a.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/glob/a.csv -------------------------------------------------------------------------------- /tests/data/glob/b.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/glob/b.csv -------------------------------------------------------------------------------- /tests/data/glob/c.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/glob/c.csv -------------------------------------------------------------------------------- /tests/data/glob/empty.csv: -------------------------------------------------------------------------------- 1 | id,name,age,process -------------------------------------------------------------------------------- /tests/data/glob/empty2.csv: -------------------------------------------------------------------------------- 1 | id,name,age,process -------------------------------------------------------------------------------- /tests/data/glob_error/a.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/glob_error/a.csv -------------------------------------------------------------------------------- /tests/data/glob_error/b.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/glob_error/b.csv -------------------------------------------------------------------------------- /tests/data/glob_error/c.csv: -------------------------------------------------------------------------------- 1 | id,name,age 2 | 1,craig,70 3 | 2,catherine,90 4 | 3,coin,80 5 | -------------------------------------------------------------------------------- /tests/data/invalid-header.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/invalid-header.csv -------------------------------------------------------------------------------- /tests/data/invalid-row.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/invalid-row.csv -------------------------------------------------------------------------------- /tests/data/not_enough_columns.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/not_enough_columns.csv -------------------------------------------------------------------------------- /tests/data/quote_stress.csv: -------------------------------------------------------------------------------- 1 | a,b,c 2 | 1,",' -------------------------------------------------------------------------------- /tests/data/student_files/a.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/student_files/a.csv -------------------------------------------------------------------------------- /tests/data/student_files/a.psv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/student_files/a.psv -------------------------------------------------------------------------------- /tests/data/student_files/a.tsv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/student_files/a.tsv -------------------------------------------------------------------------------- /tests/data/student_files/b.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/student_files/b.csv -------------------------------------------------------------------------------- /tests/data/student_files/c.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/student_files/c.csv -------------------------------------------------------------------------------- /tests/data/students.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/students.csv -------------------------------------------------------------------------------- /tests/data/students.csv.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/students.csv.gz -------------------------------------------------------------------------------- /tests/data/students.csv.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/students.csv.zip -------------------------------------------------------------------------------- /tests/data/students.csv.zst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/students.csv.zst -------------------------------------------------------------------------------- /tests/data/students.psv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/students.psv -------------------------------------------------------------------------------- /tests/data/students.tsv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/students.tsv -------------------------------------------------------------------------------- /tests/data/students_no_header.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/students_no_header.csv -------------------------------------------------------------------------------- /tests/data/too_many_columns.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/data/too_many_columns.csv -------------------------------------------------------------------------------- /tests/test-loadable.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/test-loadable.py -------------------------------------------------------------------------------- /tests/test-quote-stress.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tests/test-quote-stress.sql -------------------------------------------------------------------------------- /tmp/test_latin1.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asg017/sqlite-xsv/HEAD/tmp/test_latin1.csv --------------------------------------------------------------------------------