JSON::Any and the problems of metapackage dependency
March 29, 2011 11 Comments
Edit: Have a look at the comments to this post.
Recently, I released WWW::Mixpanel, which requires JSON encoding and decoding. Without significant thought, I decided to change my usage of JSON to JSON::Any, figuring that little bit of flexibility may be useful to someone.
Unfortunately, I found out the hard way that JSON::Any and dependencies don’t play nice. Looking at the JSON::Any metafile I saw that it doesn’t require any of it’s possible implementations to install before it installs properly. This means that on a number of test systems which didn’t have any JSON package installed, my dependency on JSON::Any meant there still wasn’t a JSON package available. I’ve been spoiled a bit by the great metapackage handling of debian.
Chatting in#distzilla, the feedback seemed to be that JSON::Any wasn’t useful anymore, and that there wasn’t really competition for JSON packages.
It was an easy decision for me to switch WWW::Mixpanel v0.02 to depend on JSON (and not JSON::Any), but it made me realize that I’ve got a bit of work to do looking into metapackages in perl (if such a thing is being supported), and also reminded me how great cpantesters is.