Permalink
Commits on Jul 23, 2009
  1. CPAN release 3.04003

    semifor committed Jul 23, 2009
Commits on Jul 21, 2009
Commits on Jul 17, 2009
  1. UTF-8 support for all JSON handlers

    semifor committed Jul 17, 2009
    JSON::XS has utf-8 support by default. So, it seemed to be working, but wasn't
    working, apparently, for users with other backend JSON handlers.  Setting the
    JSON::Any utf8 option *should* resolve the problem.
Commits on Jul 13, 2009
  1. For robustness, conditionally set ( is => bare ).

    semifor committed Jul 13, 2009
    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.
  2. Added a simple load test

    semifor committed Jul 13, 2009
    Not really necessary, here, but I added one to Net::Twitter::Lite to avoid
    UKNOWN status reports from cpantesters. Might as well have a load test, here,
    too.
Commits on Jul 8, 2009
  1. Use Moose::Meta::Class instead of Class::MOP::Class

    semifor committed Jul 8, 2009
    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.
Commits on Jul 7, 2009
  1. CPAN Release 3.04000

    semifor committed Jul 7, 2009
  2. Inflate Twitter HASH returns to objects (role InflateObjects)

    semifor committed Jun 26, 2009
    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.
  3. Removed JSON workaround for booleans

    semifor committed Jul 7, 2009
    JSON::Any 1.21 handles this, now.
  4. Fixed a typo in Makefile.PL: s/require/requires/

    semifor committed Jul 7, 2009
    This resulted in a failure that had cpantesters reporting lots af "unknown"
    results.  It shouldn't cause much of a problem outside of cpantesters since
    the JSON::Any requirment *should* pull in a valid JSON handler.
Commits on Jul 4, 2009
  1. CPAN release 3.03002

    semifor committed Jul 4, 2009
Commits on Jul 3, 2009
  1. Use a better nonce algorithm to avoid duplicates in forked procs

    semifor committed Jul 3, 2009
    Forked processes can end up with the same rand seed.  This technique should
    avoid any possibility of a collision.
  2. Removed documentation for previously deleted method "stringify"

    semifor committed Jul 3, 2009
    "stringify" was removed in 9f3ae4b, but I
    failed to remove the documentation for it.  It became redundante when "error"
    and "stringify" simply did the same thing, so I dropped stringify in favor of
    error.
Commits on Jul 1, 2009
  1. Modified tests so they'll be properly sxip without a recent version o…

    semifor committed Jul 1, 2009
    …f LWP:UA
    
    Pod syntax test was getting skipped because the 'eval "TestUA"' wouldn't run
    with -T.  13_search.t needed lib t/lib.
Commits on Jun 29, 2009
  1. CPAN release

    semifor committed Jun 29, 2009
  2. Proprely subclassed Net-Twitter user classes

    semifor committed Jun 26, 2009
    Subclass Net::Twitter::Core rather than using Net::Twitter->new.  Added tests
    for Net-Twitter user classes: Net::Identica, Net::Twitter::Search, and
    Net::Twitter::OAuth.
    
    Made _create_anon_class a private anonymous sub.  Repos version of Moose 0.85
    throws a warning when accessors have no associated methods.  We'll need the
    "is => 'bare'" option when its released.
Commits on Jun 27, 2009
  1. Require meta-method "authenticate" (simplifies building Net::Twitter:…

    semifor committed Jun 27, 2009
    …:Lite)
    
    Requiring "authenticate" makes building Net::Twitter::Lite easier, and removes
    one logic test in API calls at the expense of storing it for every method.
    <shrug/>
Commits on Jun 26, 2009
  1. Improved subclassing support and added subclass tests

    semifor committed Jun 26, 2009
    Elimianated the need for caching classes in Net::Twitter; let Moose do it.
  2. CPAN release 3.03000

    semifor committed Jun 26, 2009
  3. Twitter API update: new_direct_message prams; new show_friendship method

    semifor committed Jun 26, 2009
    Added screen_name and user_id parameters to new_direct_messages.  Added the
    new show_friendship method with a show_relationship alias.
  4. Make Net::Twitter safe for subclassing

    semifor committed Jun 26, 2009
    Completely reworked construction by copying much of the MooseX::Traits
    internals into lib/Net/Twitter.pm and modifying them.
    
    Calling Net::Twitter's "new" method now results in an anon class created with
    supperclasses set to the subclass (if any) and and Net::Twitter::Core.  Now,
    subclasses that use Net::Twitter's "new" method get included in the
    superclasses so their methods as well as Net::Twitter::Core's can be found.
    
    I also duplicated Moose::Meta::Class' anon class caching technique allowing me
    to check to see if a class is in the cache, first.  If not, I create the anon
    class then make it immutable.  It wasn't possible to make the class immutable
    with MooseX::Traits. (Subclasses aren't made immutable, since they might not
    be Moose classes.)
Commits on Jun 24, 2009
  1. Validate method attribute names passed to constructor

    semifor committed Jun 24, 2009
    This is poor-man's MooseX::StrictConstructor substitute. I need to see if I
    can make MX::SC work, here. (TODO)
  2. Added authenticate option to API calls

    semifor committed Jun 24, 2009
    Allow forcing or suppressing an Authorization header on a per-API call basis.
    APIs are defined with a default "authenticate" value.  Individual method
    definitions can override that value.  And, finally, the value can be
    overridden at runtime by the user.  Authorization headers are only sent if
    the "authenticate" argument to to _authenticated_request is true AND user
    crendetials (username and password for Basic Authentication; access tokens for
    OAuth) are present.
    
    This will finally allow calling rate_limit_status both authenticated (for
    per-user rate_limit_status) and un-authenticated (for IP address
    rate_limit_status).
  3. Improved implementation of token and url accessors

    semifor committed Jun 24, 2009
    I flattened oauth_urls in BUILDAGS so the urls become first class attributes
    instead of members of a HASH ref with custom accessors.
    
    I inflate urls to URI objects on read access.  I intentionally do not coerce
    them to URIs and just provide read access because that would result in subtle
    and perhaps surprising changes.  E.g.,
    
         my $uri = $self->authorization_url;
         $uri->query_form(oauth_token => $self->request_token);
         return $uri;
    
    Would result in a change to $self->authorization_url.  If coerced into URI, I
    would want the reader to return a clone.  This seems easier.
  4. Started a FAQ section in the POD

    semifor committed Jun 22, 2009
Commits on Jun 21, 2009
  1. Full implementation of OAuth 1.0a using Net::OAuth

    semifor committed Jun 21, 2009
    Replaced usage of Net::OAuth::Simple with Net::OAuth directly, preserving the
    calling interface.