mpclarkson / StravaSwift

A Swift wrapper for the Strava API v3
MIT License
102 stars 45 forks source link

Change ID from Int to String to support gear_id #30

Open FleetPhil opened 4 years ago

FleetPhil commented 4 years ago

Currently the ID parameter for Strava objects is a typealias to Int in Router.swift. However ID for Strava Gear (aka Equipment) is a String, so the gear API call does not work. ID is not used in any arithmetic and is simply passed around and interpolated into a string for the Strava API calls so the library operation is not impacted by this change. This change also adds a gear_id (String) attribute to the Activity class which was missing before

This is a breaking change for programs calling the request API function with an embedded route parameter as the id parameter to Router has changed from Int to String. However the fix is a simple interpolation (id: id becomes id: "(id)"

lludo commented 2 years ago

Thanks for doing this, any chance this can be rebased on the main branch?

FleetPhil commented 2 years ago

I don't use this library any more as it looks like the original author is not maintaining it so I've reworked my program to use native URL requests and json decoding. As this is also a breaking change I don't want to make any changes that might impact existing users.