Permalink
Commits on Aug 15, 2017
  1. Merge pull request #19 from simbabque/kwalitee

    semifor committed Aug 15, 2017
    add missing prerequisites to cpanfile
Commits on Jul 25, 2017
  1. Merge pull request #18 from genio/build_update

    semifor committed Jul 25, 2017
    Build Update
  2. * Add a .mailmap to help organize the contributors

    genio committed Jul 25, 2017
    * Update the dzil build to use the @Starter module rather than @Basic.
    * Update the cpanfile to reflect all of the prereqs
    ** Add Net::Twitter
    ** Add strict
    ** Add warnings
    ** Add base
    ** Add ExtUtils::MakeMaker
    ** Remove Dist::Zilla::Plugin::VersionFromModule
    * Include several extra tests for POD Syntax, spelling, etc.
    ** Update some spelling errors after including some extra tests.
    ** Make some things render in POD C<> tags so they aren't considered text to spell check
    * Remove the 00-load.t
    * Use xt/author/00-compile.t instead (automated)
    * Use the Git plugins rather than the direct Metadata plugin
Commits on Dec 5, 2016
  1. Fix typo

    semifor committed Dec 5, 2016
Commits on Dec 2, 2016
  1. Fix typo

    semifor committed Dec 2, 2016
Commits on Apr 7, 2015
  1. Reply to original status when replying to retweets

    semifor committed Apr 4, 2015
    * Stash entire statuses, not just their IDs
    * Refactored candidate selection to DRY it up
    * When replying, check for a retweet; if so, reply to the orginial status
    * Wait until we've selected the status to reply to before prefixing the
    screen_name of the source, since it may be a retweet
Commits on Mar 31, 2015
  1. Release 0.20

    semifor committed Mar 31, 2015
  2. Release 0.19

    semifor committed Mar 31, 2015
  3. Prepare release 0.18

    semifor committed Mar 31, 2015
Commits on Mar 26, 2015
  1. Prepare for a trial release

    semifor committed Mar 26, 2015
  2. Deprecate SecondaryAccount

    semifor committed Mar 26, 2015
Commits on Mar 25, 2015
  1. Possible circular ref closed

    semifor committed Mar 25, 2015
    Sometimes see warning from global destruction. May have been here. In any
    case, this seems safer.
  2. Minor change to twitter api wrapper

    semifor committed Mar 25, 2015
    Seemed better to call request directly and avoid 1 extra sub call, since that
    where ->get and ->post go, anyway.
  3. Add json helper methods

    semifor committed Mar 25, 2015
  4. More Demeter fines

    semifor committed Mar 25, 2015
  5. More homage to Demeter

    semifor committed Mar 25, 2015
    Applied native HashRef trait to `followers`.
  6. Fix event name

    semifor committed Mar 25, 2015
    Still needs work, because we get this whether we are source or target,
    and we handle the source case wrong, at the moment.
  7. Fix stash; emptied too soon

    semifor committed Mar 25, 2015
    Oops! Don't clear the stash until after the handler returns.
  8. Replace path args

    semifor committed Mar 25, 2015
    So, AnyEvent::Twitter doesn't do all the little thing Net::Twitter does,
    like replace arguments in the path. Because, yes, Twitter does have some
    endpoints wher the ID (for example) isn't a query arg, it's part of the
    bloody path.
  9. Use POE::Session's callback and events everywhere

    semifor committed Mar 25, 2015
    In some ways, this simplifies the code. I like callback and postback for
    avoiding deeply nested logic. And having everything be dispatchable events
    seems saner. But I don't care for the ugly function argument unpacking. *sigh*
    
    Also did some cleanup. Avoided `my $self = shift` in events, because I'm using
    `$_[SESSION]->callback` everywhere, now, and I don't want to be surprised by a
    change in argument position.
    
    This also eliminated the need for weakening `$self` in a couple places.
    
    Big change. Needs a shakeout.
  10. Use formatted_status_text for entity decoding

    semifor committed Mar 25, 2015
    You know how Twitter likes to be "helpful" and sends you text with encoded
    entities? Well, this isn't a web app! So, let's use formatted_status_text
    where we decode HTML entities and we'll keep our text purdy.
    
    TODO: DRY this up. ETOOMUCHREPEATEDCODE.
  11. Yes, we have UTF-8 in the source...

    semifor committed Mar 25, 2015
    See that ellipsis a few lines below the change. Yep. It was causing some text
    mangling.
Commits on Mar 24, 2015
  1. Use AnyEvent::Twitter for the oauth handshake

    semifor committed Mar 24, 2015
    This was tricky. AnyEvent::HTTP calls cause resource leaks when using
    AnyEvent::Impl::POE. Using POE::Loop::AnyEvent, instead, solved that
    problem.
    
    Figuring out how to use postbacks was a pain. AnyEvent::Twitter chokes
    on them because they're blessed.
Commits on Mar 22, 2015
  1. Events don't required a joined channel

    semifor committed Mar 22, 2015
    Put this back the way it was, because some events, like follows and
    unfollows should be processed, even if the channel hasn't been joined,
    yet.
  2. Use AnyEvent::Twitter

    semifor committed Mar 22, 2015
    No need to write my own non-blocking Twitter REST API client; PUNYTAN
    has done an excellent job: https://metacpan.org/pod/AnyEvent::Twitter
    
    Wrapped it, for now, to preserve the existing call symantics, centralize
    error handling, and transform array args to comma delimited lists. (We
    aren't using multi-part posts in twirc, so no harm in that, here.)
  3. Fix voice

    semifor committed Mar 22, 2015