This speeds up the "Processing data..." step by caching the generated Pandas dataframe as a pickle file on disk.
For example, with an 8-core Mac, processing all my 3,699 GPX files takes 34s on first pass and creates a 305 MB cache file on disk (the GPX files are 822 MB). For the second run, it takes less than 2s to load the cache file.
For 580 GPX files from 2023, it takes 4s on first pass to create a 50 MB file.
This speeds up the "Processing data..." step by caching the generated Pandas dataframe as a pickle file on disk.
For example, with an 8-core Mac, processing all my 3,699 GPX files takes 34s on first pass and creates a 305 MB cache file on disk (the GPX files are 822 MB). For the second run, it takes less than 2s to load the cache file.
For 580 GPX files from 2023, it takes 4s on first pass to create a 50 MB file.
Also add some type hints.