Maptool::Fit reads Garmin's binary FIT format directly rather than adding a gem — the one Ruby option depends on activesupport, unmaintained since 2022, for a single-purpose binary parser. Only "record" messages are read (position + altitude; everything else is skipped by byte length, never interpreted); field numbers and scale/offset are Garmin's own (fit-python-sdk's profile.py), and the framing plus all extracted values were checked byte-for-byte against 5 real device files from python-fitparse's test suite before this shipped. A .zip upload (Garmin's bulk/FIT export format) is expanded into its .gpx/.fit entries via rubyzip — that one's an actual dependency, since ZIP's own format isn't the kind of narrow, single-purpose parsing FIT above is.
13 lines
218 B
Ruby
13 lines
218 B
Ruby
source "https://rubygems.org"
|
|
|
|
gem "sinatra", "~> 4.2"
|
|
gem "sinatra-contrib", "~> 4.2"
|
|
gem "puma", "~> 8.0"
|
|
gem "rexml", "~> 3.4"
|
|
gem "oauth2", "~> 2.0"
|
|
gem "rubyzip", "~> 2.4"
|
|
|
|
group :development do
|
|
gem "rerun"
|
|
end
|