Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
115 commits
Select commit Hold shift + click to select a range
ef7e2f3
tracklib2 initial experiments
danlarkin Dec 3, 2021
dfc327e
tracklib2 TrackWriter
danlarkin Dec 3, 2021
b3c094d
move row & column writers into Section
danlarkin Dec 3, 2021
b9af9ba
writing types table
danlarkin Dec 4, 2021
f9e8813
make a bunch of things pub
danlarkin Dec 4, 2021
ea0c21e
move RWTFMAGIC to a new consts module
danlarkin Dec 6, 2021
bcfc738
upgrade crc dependency
danlarkin Dec 6, 2021
0bd320e
create crate::types and put things there
danlarkin Dec 6, 2021
5c1c3f3
write_metadata now takes a slice of MetadataEntry, not a Vec
danlarkin Dec 6, 2021
4343526
move header file_version and creator_version to crate::consts
danlarkin Dec 6, 2021
af0fe5d
don't write a crc after types table
danlarkin Dec 6, 2021
df91049
Section::write
danlarkin Dec 6, 2021
65b4d9d
pub fn write_track
danlarkin Dec 7, 2021
99365fb
don't need TimeError anymore
danlarkin Dec 7, 2021
095263a
read module with CRC code
danlarkin Dec 7, 2021
40ab2fb
crate::read::header module
danlarkin Dec 7, 2021
ec38b80
crate::read::metadata module
danlarkin Dec 7, 2021
189e701
parse_types_table
danlarkin Dec 7, 2021
9ddaa7a
CRCWriter
danlarkin Dec 12, 2021
973866b
use CRCWriter in header and metadata modules
danlarkin Dec 12, 2021
d6ec555
Data Table now includes all the info needed to parse each section
danlarkin Dec 13, 2021
060ee73
Each data column now has its own crc
danlarkin Dec 13, 2021
8aba3dc
move SectionType to crate::types
danlarkin Dec 16, 2021
11a102d
rename these test vecs to match their column names
danlarkin Dec 16, 2021
b7b2365
rewrite presence column writing code
danlarkin Dec 16, 2021
1ffe837
crate::read::presence_column module
danlarkin Dec 16, 2021
c9a96be
add crc32 to crate::read::crc
danlarkin Dec 16, 2021
90e98bd
code cleanup
danlarkin Dec 16, 2021
2997331
crate::read::data_table module
danlarkin Dec 16, 2021
f3953f1
proper conversion from nom::Err<TracklibError> to TracklibError
danlarkin Dec 16, 2021
394c97c
changes to the file format
danlarkin Mar 3, 2022
b7b08b7
crate::read::section_reader and crate::read::decoders modules
danlarkin Mar 7, 2022
92e1418
upgrade to 2021 edition
danlarkin Mar 9, 2022
523c7bd
remove reference to unused crate::read::columns module
danlarkin Mar 9, 2022
36eb021
rwtfinspect
danlarkin Mar 10, 2022
0741c02
PresenceColumn::view now returns an Option<PresenceColumnView>
danlarkin Mar 15, 2022
7f13a1d
F64 data type
danlarkin Mar 17, 2022
2b20ea9
separate the concept of encoders/decoders from bitstreams
danlarkin Mar 22, 2022
21e0610
better handling of invalid utf8
danlarkin Mar 22, 2022
acec8a5
begin renaming Types Table -> Schema
danlarkin Mar 24, 2022
62062f0
finish moving Types Table -> Schema in read code
danlarkin Mar 24, 2022
4c476d7
finish moving Types Table -> Schema in write code
danlarkin Mar 24, 2022
ed32b8c
add a schema version to the file
danlarkin Mar 24, 2022
9b2ad80
replace SectionType (track/course points) with SectionEncoding
danlarkin Mar 24, 2022
efcb009
make header fields private, provider getters
danlarkin Mar 24, 2022
5a9ba84
crate::read::track
danlarkin Mar 25, 2022
38c357a
roundtrip tests for each column type
danlarkin Mar 25, 2022
9b11755
fix some compiler warnings
danlarkin Mar 25, 2022
ae50bad
predicate pushdown
danlarkin Mar 29, 2022
11f1ef7
rename TrackReader::from_bytes to TrackReader::new
danlarkin Mar 31, 2022
69acea0
start ruby_tracklib2
danlarkin Mar 31, 2022
abd5c17
ruby support for file_version and creator_version
danlarkin Mar 31, 2022
0eb84d5
ruby support for reading data from sections
danlarkin Apr 1, 2022
b3ecc68
Section::reader_for_schema now returns Result<SectionReader>
danlarkin Apr 4, 2022
e6763d0
fix roundtrip tests to use TrackReader::new
danlarkin Apr 4, 2022
e507c2b
ruby support for predicate pushdown
danlarkin Apr 4, 2022
efc5f74
ruby lib: put TrackReader inside the Tracklib module
danlarkin Apr 5, 2022
11fb39c
ruby lib: write metadata
danlarkin Apr 5, 2022
a3dbd5b
ruby lib: write data
danlarkin Apr 6, 2022
d93dbeb
ruby lib: rename crate::track_reader to crate::read
danlarkin Apr 6, 2022
37c66cb
ruby lib: name wrapper structs consistently
danlarkin Apr 6, 2022
25e2aa3
ruby lib: update metadata tests
danlarkin Apr 6, 2022
7c5ca9c
ruby lib: select one column at a time
danlarkin Apr 8, 2022
ba9c936
write_track now takes &[&Section] instead of &[Section]
danlarkin Apr 8, 2022
f45fad1
new data type! Array of bool
danlarkin Apr 13, 2022
5ebc4eb
F64 data type now includes a scale parameter
danlarkin Apr 14, 2022
cd1c2db
StringEncoder now takes &str, not String
danlarkin Apr 14, 2022
3c4ee84
U64 data type
danlarkin Apr 14, 2022
7609cf7
BoolArray roundtrip test
danlarkin Apr 14, 2022
3d1a8af
U64Array data type
danlarkin Apr 14, 2022
7bb8838
rename write/read_bool to write/read_byte
danlarkin Apr 14, 2022
34f4221
renumber data types for (hopefully) more consistency
danlarkin Apr 15, 2022
cac3a77
new data type! ByteArray
danlarkin Apr 15, 2022
b8050ed
ruby lib: update to handle the new data types
danlarkin Apr 18, 2022
ae9fb0b
roundtrip metadata test
danlarkin Apr 19, 2022
e6d847e
write all field types in write_track test
danlarkin Apr 19, 2022
fcd32b2
leb128-encode some parts of metadata
danlarkin Apr 19, 2022
52898e7
ruby lib: update for leb128-encoded parts of metadata
danlarkin Apr 19, 2022
bf368a7
use crate::types::FieldValue in tests instead of a local enum
danlarkin Apr 19, 2022
c4121b4
roundtrip test with more than 8 columns
danlarkin Apr 19, 2022
a9c795b
ruby lib: ruby Schema class
danlarkin Apr 19, 2022
810c260
ruby lib: improve roundtrip test
danlarkin Apr 19, 2022
230d3a2
clippy
danlarkin Apr 19, 2022
04bf5cd
update inspect code
danlarkin Apr 19, 2022
c0a4d52
update dependencies
danlarkin Apr 19, 2022
fc5ec8f
display column sizes in a more useful way inside rwtfinspect
danlarkin Apr 20, 2022
bfa311d
rwtfinspect can now read from .rwtf and .rwtf.gz files
danlarkin Apr 20, 2022
1fbef08
encrypted sections
danlarkin Apr 29, 2022
69ae5a5
ruby lib: support for encrypted sections
danlarkin Apr 29, 2022
f1a8ae9
ruby lib: update rustfmt rules
danlarkin Apr 29, 2022
0e4a2e4
crate::util module with helper crypto functions
danlarkin Apr 29, 2022
0f5272a
update rustfmt rules
danlarkin Apr 29, 2022
c28bddc
rwtfinspect support for encrypted sections
danlarkin Apr 30, 2022
cb20eaf
ruby lib: trim schema to only the fields present
danlarkin May 3, 2022
fa1dc24
store schema in SectionReader and add a getter
danlarkin Jun 8, 2022
1a8fce6
add simple reader benchmark
danlarkin Jun 8, 2022
bbde003
ruby lib: allow gem & crate to be used from another project
danlarkin Jun 8, 2022
621a8c1
Update name to Tracklib2 and build on install
jmoniatte Nov 15, 2022
36fc829
Merge pull request #5 from ridewithgps/tracklib2_pr
danlarkin Nov 15, 2022
8ecec22
Update module name to Tracklib2
jmoniatte Nov 15, 2022
e412e4f
Rename to TracklibNext
jmoniatte Nov 16, 2022
9b933ee
Rename tracklib2 to tracklib
jmoniatte Apr 14, 2023
710c3ab
only update prev and presence column if write succeeds
danlarkin Jul 3, 2023
401d05e
use explicit wrapping math
danlarkin Jul 5, 2023
7dcdb39
bitstream::write_bytes should take &[u8] instead of Option<&[u8]>
danlarkin Jul 6, 2023
485f1a3
bitstream::write_byte should take u8 instead of Option<&u8>
danlarkin Jul 6, 2023
4890624
bitstream::write_i64 should take i64 instead of Option<&i64>
danlarkin Jul 6, 2023
bd47939
F64 Encoder will now error if the value is too large to store
danlarkin Jul 6, 2023
d65e176
ruby_tracklib tests for the new F64 Encoder max size errors
danlarkin Jul 6, 2023
3c48184
ruby_tracklib needs a development_dependency on rake
danlarkin Jul 6, 2023
9087539
update rwtfinspect to depend on the new tracklib path
danlarkin Jul 6, 2023
76168a9
update ruby_tracklib misc
danlarkin Jul 6, 2023
1f66595
add conversion methods to tracklib::types::FieldValue
danlarkin Jul 6, 2023
6052167
Merge pull request #8 from ridewithgps/tracklib2_pr3_api
jmoniatte Jul 12, 2023
7ff4751
fix decryption in rwtfinspect
danlarkin Oct 25, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 10 additions & 6 deletions ruby_tracklib/.gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
mkmf.log
tracklib*.gem
target/
/.bundle/
/.yardoc
/_yardoc/
/coverage/
/doc/
/pkg/
/spec/reports/
/tmp/
.nix-gems/
pkg/
lib/tracklib.so
Gemfile.lock
target/
*.gem
Loading