How do you use API versioning?
How do you use API versioning?
- Subject: How do you use API versioning?
- From: Darrin Cardani <email@hidden>
- Date: Thu, 05 Apr 2012 09:26:31 -0700
FxPlug Developers,
We were discussing the FxPlug API internally, and we were thinking about the current system we use for vending API objects to plug-ins. We'd like to get some insight into how you're using this mechanism so that we can think about ways to improve it in the future.
When you see an API that has multiple versions, what do you do with it? For example, the FxParameter*APIs and the FxOnScreenControlAPIs have multiple versions. When you're writing a plug-in, do you:
1) Always use the latest version
This usually requires the latest (major) release of a host, so may cut out customers using older hosts.
2) Always use the version supported by a particular version of a particular host
This requires a particular (major) release of a host, but it could be the previous version, or 2 versions ago, depending on what you choose.
3) Always use the earliest version unless you need functionality from a later version
This would allow most of your plug-ins to run on most older hosts, but might restrict single plug-ins to newer hosts
4) Use the newest version, but fall back to other functionality if running in a host that doesn't support it.
This would allow your plug-in to run on older and newer hosts, but would require you to do a lot more work on the older hosts, after which, it seems pointless to bother with the support for newer hosts since you've already handled it.
5) Some combination of the above
6) Something else?
We'd like to improve this mechanism, but without more information about what developers are currently doing and what they want to do, we're mostly speculating. So please reply to this message either on or off list and let us know your thoughts.
Darrin
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Pro-apps-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden