Skip to content
Commits on Dec 8, 2013
  1. @cvmat

    Fix the URL for the mailing list.

    cvmat committed
    * doc/web/index.text: Fix the URL for the mailing list.
  2. @cvmat

    Add ChangeLog for the contribution by tomykaira.

    cvmat committed
    Thanks to tomykaira.
    
    * twittering-mode.el: Fix arguments of `twittering-http-post'.
    (twittering-call-api-with-account-in-api1.0): fix arguments of
    `twittering-http-post'.
    (twittering-call-api-with-account-in-api1.1): likewise.
  3. @tomykaira @cvmat
Commits on Jun 16, 2013
  1. @cvmat

    Fix the bug that retrieved tweets may not be rendered.

    cvmat committed
    Thanks to irie who reported the problem.
    
    * twittering-mode.el: Fix the bug that retrieved tweets may not be
    rendered. This bug is caused by the previous commit. Thanks to
    irie who reported the problem.
    (twittering-add-statuses-to-timeline-data): call
    `twittering-render-timeline' correctly.
Commits on Jun 15, 2013
  1. @cvmat

    Fix the bug that a hook may be invoked twice for the same timeline.

    cvmat committed
    * twittering-mode.el: Fix the bug that a hook may be invoked twice
    for the same timeline.
    (twittering-add-statuses-to-timeline-data): do not invoke a hook
    twice for the timeline spec given as `spec'.
Commits on May 6, 2013
  1. @cvmat

    Release the version 3.0.0.

    cvmat committed
    * LAST-VERSION, NEWS, NEWS.ja, VERSION, doc/web/index.text,
    doc/web/ja.po, doc/web/publish.rb, doc/web/screenshot.text:
    release 3.0.0.
Commits on Apr 22, 2013
  1. @cvmat
  2. @tomykaira
Commits on Apr 21, 2013
  1. @cvmat

    Reduce API rate limit information on mode-line.

    cvmat committed
    * twittering-mode.el: Reduce API rate limit information on
    mode-line.
    (twittering-get-ratelimit-indicator-string): reduce timelines
    retrieved by a common API.
  2. @cvmat

    Suppress an error on a sentinel.

    cvmat committed
    * twittering-mode.el: Suppress an error on a sentinel. Previously,
    an error might be raised from a sentinel when a timeline of
    non-existent user was requested. A sentinel for such a request
    tries to remove the timeline spec string corresponding to
    non-existent user from the history. In the process, conversion
    from an invalid timeline spec string had caused an error.
    (twittering-string-to-timeline-spec): add an optional argument
    NOERROR. If NOERROR is non-nil, the function does not raise an
    error even if SPEC-STR is invalid as a timeline spec string.
    (twittering-equal-string-as-timeline): do not raise an error even
    if either SPEC-STR1 or SPEC-STR2 is invalid as a timeline spec
    string.
Commits on Mar 24, 2013
  1. @cvmat

    Replace `delete-dups' with `twittering-remove-duplicates'.

    cvmat committed
    * twittering-mode.el: Replace `delete-dups' with
    `twittering-remove-duplicates' for portability.
    (twittering-update-active-buffers): replace `delete-dups' with
    `twittering-remove-duplicates' for portability.
  2. @cvmat

    Display rate-limit information for each API.

    cvmat committed
    * twittering-mode.el: Display rate-limit information for each API.
    (twittering-api-limit-info-alist): new variable for storing
    rate-limit information for each API.
    (twittering-timeline-spec-to-api-table): new variable for storing
    combination of timeline spec and an API for retrieving the
    timeline.
    (twittering-update-api-table): new function for registering a
    timeline spec and an API with the new variable
    `twittering-timeline-spec-to-api-table'.
    (twittering-make-rate-limit-alist): new function.
    (twittering-update-rate-limit-info): new function for updating the
    new variables `twittering-api-limit-info-alist' and
    `twittering-timeline-spec-to-api-table'.
    (twittering-update-server-info): update rate-limit information
    with new function.
    (twittering-get-server-info): removed.
    (twittering-get-ratelimit-alist): new function.
    (twittering-get-ratelimit-remaining): use the new function
    `twittering-get-ratelimit-alist'.
    (twittering-get-ratelimit-limit): likewise.
    (twittering-get-ratelimit-indicator-string): new function for
    making an indicator string of rate-limit information.
    (twittering-mode-line-buffer-identification): make an indicator
    string of rate-limit information by the new function
    `twittering-get-ratelimit-indicator-string'.
  3. @cvmat

    Add `twittering-assoc-string' for portability.

    cvmat committed
    * twittering-mode.el: Add `twittering-assoc-string' for
    portability. In Emacs 21, the function `assoc-string' is not
    defined. In such case, the reimplemented version is
    used. Othewise, `twittering-assoc-string' is an alias of
    `assoc-string'.
    (twittering-assoc-string): new function for portability.
    (twittering-get-server-info): replace `assoc-string' with
    `twittering-assoc-string'.
  4. @cvmat

    Decode surrogate pairs in strings returned by `json-read'.

    cvmat committed
    Thanks to multiSnow who reported the problem.
    
    * twittering-mode.el: Decode surrogate pairs in strings returned
    by `json-read'. A new advice is added for decoding surrogate
    pairs.
    A character not in the Basic Multilingual Plane is
    represented by a surrogate pair in JSON (RFC4627). This is similar
    to CESU-8. But the function `json-read' in `json.el' does not
    correctly decode surrogate pairs. `json-read' returns a string
    including invalid code points from U+D800 to U+DFFF.
    `twittering-json-read' now decodes them by using a new advice.
    Thanks to multiSnow who reported the problem.
    (twittering-surrogate-pair-regexp): new constant that matches a
    surrogate pair in CESU-8.
    (twittering-decode-surrogate-pairs-as-cesu-8): new function that
    decodes surrogate pairs in a given string similarly to CESU-8.
    (json-read-string): new advice for decoding surrogate pairs.
    (twittering-json-read): use the new advice for decoding surrogate
    pairs in strings returned by `json-read'.
Commits on Mar 4, 2013
  1. @cvmat

    Confirm that `json.el' and SSL are available for the new API.

    cvmat committed
    * twittering-mode.el: Confirm that `json.el' and SSL are available
    before calling the Twitter REST API v1.1.
    (twittering-call-api-with-account): confirm that `json.el' and SSL
    are available for the Twitter REST API v1.1.
  2. @cvmat

    Invoke an API with an authentication header correctly.

    cvmat committed
    * twittering-mode.el: Correctly add an authentication header for
    the command `get-service-configuration' with the Twitter REST API
    v1.1.
    (twittering-call-api-with-account-in-api1.1): fix a path for the
    command `get-service-configuration' and add an authentication
    header correctly.
  3. @cvmat

    Fix the function parsing timelines related to direct messages.

    cvmat committed
    * twittering-mode.el: Fix the function parsing timelines related
    to direct messages with the Twitter REST API v1.1.
    (twittering-http-get-default-sentinel): call the function
    `twittering-json-object-to-a-status-on-direct-messages' correctly
    when using the Twitter REST API v1.1.
  4. @cvmat

    Bind a local variable correctly.

    cvmat committed
    * twittering-mode.el: Bind a local variable correctly.
    (twittering-call-api-with-account-in-api1.1): correctly bind the
    variable `spec-string' used.
Commits on Mar 3, 2013
  1. @cvmat

    Fix the function of rendering a replied tweet.

    cvmat committed
    * twittering-mode.el: Fix the function of rendering a replied
    tweet.
    (twittering-retrieve-single-tweet-sentinel): fix the condition
    for deciding whether it should re-render a tweet partially or
    not.
  2. @cvmat

    Fix a typo in the function retrieving the retweet_of_me timeline.

    cvmat committed
    * twittering-mode.el: Fix a typo that disables twittering-mode.el
    from retrieving the ":retweets_of_me" timeline.
    (twittering-call-api-with-account-in-api1.1): fix a typo.
  3. @cvmat

    The timeline spec string "@" means the mentions timeline.

    cvmat committed
    * twittering-mode.el: The timeline spec string "@" means the
    mentions timeline instead of the replies timeline.
    (twittering-extract-timeline-spec): interpret the timeline spec
    string "@" as the mentions timeline instead of the replies
    timeline.
  4. @cvmat

    Move the cursor to the tweet that will be retrieved.

    cvmat committed
    * twittering-mode.el: Move the cursor to the tweet that will be
    retrieved.
    (twittering-toggle-or-retrieve-replied-statuses): move the cursor
    to the tweet that will be retrieved.
  5. @cvmat

    Support the Twitter REST API v1.1.

    cvmat committed
    * twittering-mode.el: Support the Twitter REST API v1.1.
    (twittering-service-method): change the default service method.
    (twittering-service-method-table): add entries for the new service
    method `twitter-api-v1.1'.
    (twittering-http-get-default-sentinel): switch parser according to
    the service method and the timeline.
    (twittering-http-get-list-sentinel-base): support a response from
    the Twitter REST API v1.1.
    (twittering-update-server-info): replace a header name for the
    Twitter REST API v1.1 with that for the Twitter REST API
    v1.0. This is an ad-hoc solution. Since each API method is
    separately limited on the Twitter REST API v1.1, the rate limit
    information should be managed for each API method.
    (twittering-call-api-with-account): call a special function
    according to the current `twittering-service-method'.
    (twittering-call-api-with-account-in-api1.0): new function that is
    the same as the previous `twittering-call-api-with-account'.
    (twittering-call-api-with-account-in-api1.1): new function.
    (twittering-update-service-configuration): support the new service
    method `twitter-api-v1.1'.
    (twittering-use-profile-image-api): add a supplementary document.
    (twittering-effective-length): support the new service method
    `twitter-api-v1.1'.
  6. @cvmat

    Separate the current core of `twittering-call-api-with-account'.

    cvmat committed
    * twittering-mode.el: Separate the current core of
    `twittering-call-api-with-account' as a new function
    `twittering-call-api-with-account-in-api1.0'.
    (twittering-call-api-with-account): call a new function
    `twittering-call-api-with-account-in-api1.0' instead of processing
    a command directly.
    (twittering-call-api-with-account-in-api1.0): new function.
  7. @cvmat

    Support the HTTP cookie.

    cvmat committed
    * twittering-mode.el: Support the HTTP cookie.
    (twittering-cookie-alist): new variable to store cookies for each
    account.
    (twittering-add-application-header-to-http-request): add a cookie
    string if necessary.
    (twittering-http-get): invoke `twittering-update-server-info' with
    `connection-info' according to the modification  of the function.
    (twittering-http-post): likewise.
    (twittering-update-server-info): receive an alist CONNECTION-INFO
    as a new argument and update `twittering-cookie-alist'. The new
    argument is required to store cookies for each account.
    (twittering-extract-cookie): new function to extract cookies from
    a HTTP response header as an alist.
    (twittering-make-cookie-string): new function to make a cookie
    string for a HTTP request from the cookie information stored in
    the variable `twittering-cookie-alist'.
  8. @cvmat

    Access an account information indirectly.

    cvmat committed
    * twittering-mode.el: Access an account information indirectly.
    (twittering-register-account-info): new function.
    (twittering-get-username): use `twittering-get-main-account-info'
    instead of using the variable `twittering-username' directly.
    (twittering-get-password): likewise.
    (twittering-verify-credentials): use the functions
    `twittering-get-main-account-info' and
    `twittering-register-account-info' instead of using variables
    directly.
    (twittering-http-get-verify-credentials-sentinel): store or
    discard the validated account information with the new function
    `twittering-register-account-info'.
  9. @cvmat

    Add functions to make an authentication string from an alist.

    cvmat committed
    * twittering-mode.el: Add functions to make an authentication
    string from an account-info alist.
    (twittering-add-application-header-to-http-request): use new
    functions for making an authentication string for a HTTP request.
    (twittering-get-from-account-info): new function.
    (twittering-make-basic-authentication-string): new function.
    (twittering-make-oauth-authentication-string): new function.
    (twittering-verify-credentials): rename `account-info-alist'
    `account-info'.
    (twittering-http-get-verify-credentials-sentinel): extract a
    screen name and a password with the new function
    `twittering-get-from-account-info'.
  10. @cvmat

    Add a new function `twittering-call-api-with-account'.

    cvmat committed
    * twittering-mode.el: Add a new function
    `twittering-call-api-with-account'.
    (twittering-add-application-header-to-http-request): receive an
    alist ACCOUNT-INFO for specifying an account.
    (twittering-http-get): likewise.
    (twittering-http-post): likewise.
    (twittering-call-api): call the new function
    `twittering-call-api-with-account' with the main account.
    (twittering-call-api-with-account): new function. This requires an
    account information alist which it calls an API with.
    (twittering-get-main-account-info): new function.
    (twittering-verify-credentials): use a return value of
    `twittering-get-main-account-info' instead of using variables
    directly.
    (twittering-http-get-verify-credentials-sentinel): extract an
    account information from the `account-info' element in
    `connection-info'.
  11. @cvmat

    Update the server info only when receiving a response from Twitter.

    cvmat committed
    * twittering-mode.el: Update the server information only when
    receiving a response from a Twitter-like service. Other types of
    responses such as image retrieval and URL shortening do not update
    the info.
    (twittering-send-http-request): do not invoke
    `twittering-update-server-info' directly.
    (twittering-http-get): modify the sentinel so that it also invokes
    `twittering-update-server-info'.
    (twittering-http-post): likewise.
    (twittering-update-server-info): receive an alist HEADER-INFO
    instead of a string HEADER-STR.
  12. @cvmat

    Sort newly retrieved tweets before rendering them.

    cvmat committed
    * twittering-mode.el: Sort newly retrieved tweets before rendering
    them.
    (twittering-add-statuses-to-timeline-data): sort added tweets
    before rendering them. This is necessary because
    `twittering-render-timeline' assumes that given tweets are
    ordered.
  13. @cvmat

    Use the JSON format for retrieving server configuration if possible.

    cvmat committed
    * twittering-mode.el: Use the JSON format for retrieving server
    configuration if possible.
    (twittering-call-api): use the JSON format for the command
    `get-service-configuration' if possible.
    (twittering-update-service-configuration-sentinel): support a
    response in the JSON format.
  14. @cvmat

    Use the JSON format for posting a status if possible.

    cvmat committed
    * twittering-mode.el: Use the JSON format for posting a status if
    possible.
    (twittering-http-post-destroy-status-sentinel): support a response
    in the JSON format.
    (twittering-call-api): use the JSON format for the command
    `destroy-status' if possible.
  15. @cvmat

    Use the JSON format for retrieving list information if possible.

    cvmat committed
    * twittering-mode.el: Use the JSON format for retrieving list
    information if possible.
    (twittering-http-get-list-sentinel-base): support a response in
    the JSON format.
    (twittering-call-api): use the JSON format for the commands
    `get-list-index' and `get-list-subscriptions' if possible.
Commits on Feb 10, 2013
  1. @cvmat

    Support different intervals of retrieving timelines.

    cvmat committed
    * twittering-mode.el: Support different intervals of retrieving
    timelines.
    (twittering-relative-retrieval-interval-alist): new variable.
    (twittering-relative-retrieval-count-alist): new variable.
    (twittering-retrieve-timeline): reset the retrieval count.
    (twittering-start): update all active timelines forcibly once.
    (twittering-get-relative-interval): new function.
    (twittering-get-retrieval-count): new function.
    (twittering-set-retrieval-count): new function.
    (twittering-initialize-retrieval-count): new function.
    (twittering-update-active-buffers): reduce retrievals according to
    the variable `twittering-relative-retrieval-interval-alist'.
  2. @cvmat

    Fix a return value of `twittering-render-replied-statuses'.

    cvmat committed
    Thanks to Ikumi Keita who reported the problem.
    
    * twittering-mode.el: Fix a return value of
    `twittering-render-replied-statuses'. The function returns nil
    without regard to whether a tweet is rendered or not. Thanks to
    Ikumi Keita who reported the problem.
    (twittering-render-replied-statuses): fix a return value.
Something went wrong with that request. Please try again.