Refactored to accommodate a per-API timestamp format. This fixes object inflation and synthetic 'since' parameter handling for the Search API.
The warning is overly aggressive. It warns on decoded latin1 with bytes in the 128-255 range. Also, changed the attributition diagnosing the OAuth signature problem. Peter Bray reported it via email; he later requested an attribution changes as Galen Huntington actually did the diagnosing.
Twitter introduced an API change to correct a bug. They were not checking for valid signatures, apparently. POST requests were not generated valid requests. Thanks to Peter Bray for tracking down the exact problem in Net::Twitter::Role::OAuth.
Bumping the Moose dep should have been sufficient. But I got a bug report via IRC. Looks like someone probably force installed Net::Twitter without upgrading Moose as required. This should make Net::Twitter more robust and run even in spite of that.
I thought I was using Class::MOP for a reason, but I added tests and Moose passes, too. So, on perigrins advice ("it'll be more forward compatible"), I'm using Moose.
Added an optional role to inflate Twitter's HASH ref returns to objects. Inflates URLs to URIs, dates to DateTime objects, and add a relative_created_by method whenever the HASH has a created_by element.
Forked processes can end up with the same rand seed. This technique should avoid any possibility of a collision.