rembo10/headphones — Issue #466: Version-specific User Agent (MusicBrainz)
Author: ianmcorvidae
Created: 2012-01-31 08:21:38+00:00
State: open

Ideally, it would be nice if some sort of headphones version was in the User Agent string delivered to MusicBrainz; this makes it possible to, perhaps, less aggressively throttle future versions of headphones that aren't as hard on the MB API. Currently it looks like, due to this being a very early release, version.py only has "master" as a version, so this may be pre-emptive, but I thought it might be useful to file this earlier rather than later so it's on the development radar.

As http://wiki.musicbrainz.org/XML_Web_Service/Rate_Limiting mentions, the recommended User Agent follows the template: `Application/version ( contact-url )`

Perhaps something like: `Headphones/{most recent official release number}-{git branch or SHA1, if applicable} ( https://github.com/rembo10/headphones )`

(e.g. `Headphones/0.0.1-master ( https://github.com/rembo10/headphones )` )

Then, when MB-relevant changes (or other changes, of course!) are introduced/finalized, an official version number can be incremented somehow so that a prefix on the User-Agent (say, `Headphones/0.0.1`, ignoring the rest of the UA) can be throttled or unthrottled appropriately.