Unreleased
https://github.com/yhara/simple_twitter/compare/v2.3.0...main
v2.3.0 (2026-04-01)
https://github.com/yhara/simple_twitter/compare/v2.2.3...v2.3.0
- Support http gem v6
v2.2.3 (2025-11-30)
https://github.com/yhara/simple_twitter/compare/v2.2.2...v2.2.3
- ci: Release gem from GitHub Actions
v2.2.2 (2023-09-11)
https://github.com/yhara/simple_twitter/compare/v2.2.1...v2.2.2
- [docs] Tweak yard doc
- Embed filename and line number of the method generated by eval into backtrace
- Tweak gem description
v2.2.1 (2023-07-25)
https://github.com/yhara/simple_twitter/compare/v2.2.0...v2.2.1
- Fix rbs for Nillable args
v2.2.0 (2023-07-24)
https://github.com/yhara/simple_twitter/compare/v2.1.0...v2.2.0
v2.1.0 (2023-07-22)
https://github.com/yhara/simple_twitter/compare/v2.0.0...v2.1.0
- Support media uploading
- Add User-Agent
v2.0.0 (2023-07-17)
https://github.com/yhara/simple_twitter/compare/v1.0.0...v2.0.0
:bomb: [BREAKING CHANGE] positional args to keywords args
Since v2.0, the positional arguments of the following methods are now keyword arguments.
| v1.0 | v2.0+ |
|---|---|
SimpleTwitter::Client#get(url, params = {}) |
SimpleTwitter::Client#get(url, params: {}, json: {}) |
SimpleTwitter::Client#get_raw(url, params = {}) |
SimpleTwitter::Client#get_raw(url, params: {}, json: {}) |
SimpleTwitter::Client#post(url, params = {}) |
SimpleTwitter::Client#post(url, params: {}, json: {}) |
SimpleTwitter::Client#post_raw(url, params = {}) |
SimpleTwitter::Client#post_raw(url, params: {}, json: {}) |
SimpleTwitter::Client#put(url, params = {}) |
SimpleTwitter::Client#put(url, params: {}, json: {}) |
SimpleTwitter::Client#put_raw(url, params = {}) |
SimpleTwitter::Client#put_raw(url, params: {}, json: {}) |
SimpleTwitter::Client#delete(url, params = {}) |
SimpleTwitter::Client#delete(url, params: {}, json: {}) |
SimpleTwitter::Client#delete_raw(url, params = {}) |
SimpleTwitter::Client#delete_raw(url, params: {}, json: {}) |
Please modify as follows when you upgrade from v1.0 :pray:
Before (v1.0)
client.get("https://api.twitter.com/2/tweets", ids: "1302127884039909376,1369885448319889409")
After (v2.0+)
client.get("https://api.twitter.com/2/tweets", params: { ids: "1302127884039909376,1369885448319889409" })
If only 1 argument was used (e.g. client.get("https://api.twitter.com/2/users/me")), no modification is required.
See more.
:bomb: [BREAKING CHANGE] raise Error when Twitter API returned error
Until v1.0, even if the Twitter API returns an error, Ruby does not throw an error, so it is considered a normal exit.
This is confusing, so when the API returns an error, Ruby also raises an error.
Before (v1.0)
client = SimpleTwitter::Client.new(bearer_token: "dummy")
client.get("https://api.twitter.com/2/users/me")
#=>
{:title=>"Unsupported Authentication",
:detail=>
"Authenticating with OAuth 2.0 Application-Only is forbidden for this endpoint. Supported authentication types are [OAuth 1.0a User Context, OAuth 2.0 User Context].",
:type=>"https://api.twitter.com/2/problems/unsupported-authentication",
:status=>403}
After (v2.0+)
client = SimpleTwitter::Client.new(bearer_token: "dummy")
client.get("https://api.twitter.com/2/users/me")
/path/to/simple_twitter/lib/simple_twitter.rb:96:in `parse_response': Unsupported Authentication (status 403) (SimpleTwitter::ClientError)
from (eval):6:in `get'
from (irb):2:in `<main>'
from ./bin/console:15:in `<main>'
Detailed error details can be obtained as follows
begin
client = SimpleTwitter::Client.new(bearer_token: "invalid_bearer_token")
client.get("https://api.twitter.com/2/users/me")
rescue SimpleTwitter::Error => error
error.raw_response.class
#=> HTTP::Response
error.raw_response.code
#=> 403
error.body[:title]
# => "Unsupported Authentication"
end
See more.
Features
- Enabled rubygems_mfa_required
- Add changelog_uri to gemspec
- Write YARD comment and publish to Pages
- Add documentation_uri to gemspec metadata
Others
- Add @sue445 as an author
- Add tests and CI
- Tweak doc
v1.0.0 (2021-03-28)
- initial release