simple_twitter 2.0.0 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.env.example +5 -0
- data/.github/workflows/test.yml +21 -0
- data/.gitignore +2 -0
- data/CHANGELOG.md +15 -1
- data/README.md +43 -0
- data/Steepfile +30 -0
- data/bin/console +9 -0
- data/lib/simple_twitter/client.rb +41 -18
- data/lib/simple_twitter/version.rb +1 -1
- data/lib/simple_twitter.rb +2 -0
- data/rbs_collection.lock.yaml +26 -0
- data/rbs_collection.yaml +30 -0
- data/sig/simple_twitter/client.rbs +28 -0
- data/sig/simple_twitter/client_error.rbs +7 -0
- data/sig/simple_twitter/error.rbs +10 -0
- data/sig/simple_twitter/server_error.rbs +7 -0
- data/sig/simple_twitter/version.rbs +6 -0
- data/sig/simple_twitter.rbs +5 -0
- data/simple_twitter.gemspec +2 -0
- metadata +40 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 671c43acc2022139dba5f4f69a76f518fdd46561c7081211a324e3ba1e2d75d5
|
4
|
+
data.tar.gz: 3f6b0607f128651fbfda09b6911d83a01f9f8bc03c04f714fcc7f67c65ad5c55
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '029f55ae678e76b578b4fd350694439a253b4f3b9165a6926e709df1b5ac6d1b8bc908a299ab4e0bfb01a1c88a0ad2035c5a5259827323104c73d3816ea1a30e'
|
7
|
+
data.tar.gz: 2dcb7f62d814e81967ec466a2d746ed89a27c1191a416ceec7de0ffe1f0a4c33f664a0f2337250a76c83cc1cbd5a0371871b0e417f3a00f966ae95d6bcaecddd
|
data/.env.example
ADDED
data/.github/workflows/test.yml
CHANGED
@@ -46,3 +46,24 @@ jobs:
|
|
46
46
|
|
47
47
|
- run: bundle exec rspec
|
48
48
|
- run: bundle exec yard --fail-on-warning
|
49
|
+
|
50
|
+
rbs:
|
51
|
+
runs-on: ubuntu-latest
|
52
|
+
|
53
|
+
steps:
|
54
|
+
- uses: actions/checkout@v3
|
55
|
+
|
56
|
+
- uses: ruby/setup-ruby@v1
|
57
|
+
with:
|
58
|
+
ruby-version: ruby
|
59
|
+
bundler-cache: true
|
60
|
+
|
61
|
+
- name: bundle update
|
62
|
+
run: |
|
63
|
+
set -xe
|
64
|
+
bundle config path vendor/bundle
|
65
|
+
bundle update --jobs $(nproc) --retry 3
|
66
|
+
|
67
|
+
- run: bundle exec rbs collection install
|
68
|
+
- run: bundle exec rbs validate --silent
|
69
|
+
- run: bundle exec steep check
|
data/.gitignore
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,19 @@
|
|
1
1
|
## Unreleased
|
2
|
-
https://github.com/yhara/simple_twitter/compare/v2.
|
2
|
+
https://github.com/yhara/simple_twitter/compare/v2.2.0...main
|
3
|
+
|
4
|
+
## v2.2.0 (2023-07-24)
|
5
|
+
https://github.com/yhara/simple_twitter/compare/v2.1.0...v2.2.0
|
6
|
+
|
7
|
+
* Add rbs
|
8
|
+
* https://github.com/yhara/simple_twitter/pull/21
|
9
|
+
|
10
|
+
## v2.1.0 (2023-07-22)
|
11
|
+
https://github.com/yhara/simple_twitter/compare/v2.0.0...v2.1.0
|
12
|
+
|
13
|
+
* Support media uploading
|
14
|
+
* https://github.com/yhara/simple_twitter/pull/26
|
15
|
+
* Add User-Agent
|
16
|
+
* https://github.com/yhara/simple_twitter/pull/27
|
3
17
|
|
4
18
|
## v2.0.0 (2023-07-17)
|
5
19
|
https://github.com/yhara/simple_twitter/compare/v1.0.0...v2.0.0
|
data/README.md
CHANGED
@@ -77,6 +77,49 @@ client = SimpleTwitter::Client.new(bearer_token: ENV["ACCESS_TOKEN"])
|
|
77
77
|
client.post("https://api.twitter.com/2/tweets", json: { text: "Hello twitter!" })
|
78
78
|
```
|
79
79
|
|
80
|
+
### Upload media
|
81
|
+
If you want to tweet with an image, you need to do the following steps
|
82
|
+
|
83
|
+
1. Upload image as media
|
84
|
+
* c.f. https://developer.twitter.com/en/docs/twitter-api/v1/media/upload-media/api-reference/post-media-upload
|
85
|
+
2. Tweet with media
|
86
|
+
* c.f. https://developer.twitter.com/en/docs/twitter-api/tweets/manage-tweets/api-reference/post-tweets
|
87
|
+
|
88
|
+
e.g.
|
89
|
+
|
90
|
+
```ruby
|
91
|
+
config = (load from yaml or something)
|
92
|
+
client = SimpleTwitter::Client.new(
|
93
|
+
api_key: config[:api_key],
|
94
|
+
api_secret_key: config[:api_secret_key],
|
95
|
+
access_token: config[:access_token],
|
96
|
+
access_token_secret: config[:access_token_secret],
|
97
|
+
)
|
98
|
+
|
99
|
+
# Upload image as media
|
100
|
+
media = client.post(
|
101
|
+
"https://upload.twitter.com/1.1/media/upload.json",
|
102
|
+
form: {
|
103
|
+
media: HTTP::FormData::File.new("/path/to/image.png")
|
104
|
+
}
|
105
|
+
)
|
106
|
+
# =>
|
107
|
+
# {:media_id=>12345678901234567890,
|
108
|
+
# :media_id_string=>"12345678901234567890",
|
109
|
+
# :size=>60628,
|
110
|
+
# :expires_after_secs=>86400,
|
111
|
+
# :image=>{:image_type=>"image/png", :w=>400, :h=>400}}
|
112
|
+
|
113
|
+
# Tweet with media
|
114
|
+
client.post(
|
115
|
+
"https://api.twitter.com/2/tweets",
|
116
|
+
json: {
|
117
|
+
text: "Test tweet with image",
|
118
|
+
media: { media_ids: [media[:media_id_string]] },
|
119
|
+
}
|
120
|
+
)
|
121
|
+
```
|
122
|
+
|
80
123
|
### Advanced
|
81
124
|
|
82
125
|
If you want the raw json string or use streaming API, use `get_raw`, `post_raw`, etc. which returns `HTTP::Response` of the [http gem](https://github.com/httprb/http).
|
data/Steepfile
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
# D = Steep::Diagnostic
|
2
|
+
|
3
|
+
target :lib do
|
4
|
+
signature "sig"
|
5
|
+
|
6
|
+
check "lib" # Directory name
|
7
|
+
# check "Gemfile" # File name
|
8
|
+
# check "app/models/**/*.rb" # Glob
|
9
|
+
# ignore "lib/templates/*.rb"
|
10
|
+
|
11
|
+
# library "pathname" # Standard libraries
|
12
|
+
# library "strong_json" # Gems
|
13
|
+
library "json"
|
14
|
+
|
15
|
+
# configure_code_diagnostics(D::Ruby.default) # `default` diagnostics setting (applies by default)
|
16
|
+
# configure_code_diagnostics(D::Ruby.strict) # `strict` diagnostics setting
|
17
|
+
# configure_code_diagnostics(D::Ruby.lenient) # `lenient` diagnostics setting
|
18
|
+
# configure_code_diagnostics(D::Ruby.silent) # `silent` diagnostics setting
|
19
|
+
# configure_code_diagnostics do |hash| # You can setup everything yourself
|
20
|
+
# hash[D::Ruby::NoMethod] = :information
|
21
|
+
# end
|
22
|
+
end
|
23
|
+
|
24
|
+
# target :test do
|
25
|
+
# signature "sig", "sig-private"
|
26
|
+
#
|
27
|
+
# check "test"
|
28
|
+
#
|
29
|
+
# # library "pathname" # Standard libraries
|
30
|
+
# end
|
data/bin/console
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
|
4
4
|
require "bundler/setup"
|
5
5
|
require "simple_twitter"
|
6
|
+
require "dotenv/load"
|
6
7
|
|
7
8
|
# You can add fixtures and/or initialization code here to make experimenting
|
8
9
|
# with your gem easier. You can also use a different console, if you like.
|
@@ -11,5 +12,13 @@ require "simple_twitter"
|
|
11
12
|
# require "pry"
|
12
13
|
# Pry.start
|
13
14
|
|
15
|
+
@client = SimpleTwitter::Client.new(
|
16
|
+
bearer_token: ENV["TWITTER_OAUTH2_BEARER_TOKEN"],
|
17
|
+
api_key: ENV["TWITTER_OAUTH1_API_KEY"],
|
18
|
+
api_secret_key: ENV["TWITTER_OAUTH1_API_SECRET_KEY"],
|
19
|
+
access_token: ENV["TWITTER_OAUTH1_ACCESS_TOKEN"],
|
20
|
+
access_token_secret: ENV["TWITTER_OAUTH1_ACCESS_TOKEN_SECRET"],
|
21
|
+
)
|
22
|
+
|
14
23
|
require "irb"
|
15
24
|
IRB.start(__FILE__)
|
@@ -1,11 +1,11 @@
|
|
1
1
|
module SimpleTwitter
|
2
2
|
# Twitter API Client
|
3
3
|
class Client
|
4
|
-
# @param bearer_token [String] This requires for
|
5
|
-
# @param api_key [String] This requires for
|
6
|
-
# @param api_secret_key [String] This requires for
|
7
|
-
# @param access_token [String] This requires for
|
8
|
-
# @param access_token_secret [String] This requires for
|
4
|
+
# @param bearer_token [String] This requires for OAuth 2
|
5
|
+
# @param api_key [String] This requires for OAuth 1.0a
|
6
|
+
# @param api_secret_key [String] This requires for OAuth 1.0a
|
7
|
+
# @param access_token [String] This requires for OAuth 1.0a
|
8
|
+
# @param access_token_secret [String] This requires for OAuth 1.0a
|
9
9
|
def initialize(bearer_token: nil,
|
10
10
|
api_key: nil,
|
11
11
|
api_secret_key: nil,
|
@@ -23,80 +23,87 @@ module SimpleTwitter
|
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
26
|
-
# @!method get(url, params: {}, json: {})
|
26
|
+
# @!method get(url, params: {}, json: {}, form: {})
|
27
27
|
# Call Twitter API with GET method
|
28
28
|
# @param url [String]
|
29
29
|
# @param params [Hash] Send this arg as a query string. (e.g. `?name1=value1&name2=value2`)
|
30
30
|
# @param json [Hash] Send this arg as JSON request body with `Content-Type: application/json` header
|
31
|
+
# @param form [Hash] Send this arg as form-data request body with `Content-Type: multipart/form-data` header
|
31
32
|
# @return [Hash] parsed json data
|
32
33
|
# @raise [SimpleTwitter::ClientError] Twitter API returned 4xx error
|
33
34
|
# @raise [SimpleTwitter::ServerError] Twitter API returned 5xx error
|
34
35
|
|
35
|
-
# @!method get_raw(url, params: {}, json: {})
|
36
|
+
# @!method get_raw(url, params: {}, json: {}, form: {})
|
36
37
|
# Call Twitter API with GET method
|
37
38
|
# @param url [String]
|
38
39
|
# @param params [Hash] Send this arg as a query string. (e.g. `?name1=value1&name2=value2`)
|
39
40
|
# @param json [Hash] Send this arg as JSON request body with `Content-Type: application/json` header
|
41
|
+
# @param form [Hash] Send this arg as form-data request body with `Content-Type: multipart/form-data` header
|
40
42
|
# @return [HTTP::Response]
|
41
43
|
|
42
|
-
# @!method post(url, params: {}, json: {})
|
44
|
+
# @!method post(url, params: {}, json: {}, form: {})
|
43
45
|
# Call Twitter API with POST method
|
44
46
|
# @param url [String]
|
45
47
|
# @param params [Hash] Send this arg as a query string. (e.g. `?name1=value1&name2=value2`)
|
46
48
|
# @param json [Hash] Send this arg as JSON request body with `Content-Type: application/json` header
|
49
|
+
# @param form [Hash] Send this arg as form-data request body with `Content-Type: multipart/form-data` header
|
47
50
|
# @return [Hash] parsed json data
|
48
51
|
# @raise [SimpleTwitter::ClientError] Twitter API returned 4xx error
|
49
52
|
# @raise [SimpleTwitter::ServerError] Twitter API returned 5xx error
|
50
53
|
|
51
|
-
# @!method post_raw(url, params: {}, json: {})
|
54
|
+
# @!method post_raw(url, params: {}, json: {}, form: {})
|
52
55
|
# Call Twitter API with POST method
|
53
56
|
# @param url [String]
|
54
57
|
# @param params [Hash] Send this arg as a query string. (e.g. `?name1=value1&name2=value2`)
|
55
58
|
# @param json [Hash] Send this arg as JSON request body with `Content-Type: application/json` header
|
59
|
+
# @param form [Hash] Send this arg as form-data request body with `Content-Type: multipart/form-data` header
|
56
60
|
# @return [HTTP::Response]
|
57
61
|
|
58
|
-
# @!method put(url, params: {}, json: {})
|
62
|
+
# @!method put(url, params: {}, json: {}, form: {})
|
59
63
|
# Call Twitter API with PUT method
|
60
64
|
# @param url [String]
|
61
65
|
# @param params [Hash] Send this arg as a query string. (e.g. `?name1=value1&name2=value2`)
|
62
66
|
# @param json [Hash] Send this arg as JSON request body with `Content-Type: application/json` header
|
67
|
+
# @param form [Hash] Send this arg as form-data request body with `Content-Type: multipart/form-data` header
|
63
68
|
# @return [Hash] parsed json data
|
64
69
|
# @raise [SimpleTwitter::ClientError] Twitter API returned 4xx error
|
65
70
|
# @raise [SimpleTwitter::ServerError] Twitter API returned 5xx error
|
66
71
|
|
67
|
-
# @!method put_raw(url, params: {}, json: {})
|
72
|
+
# @!method put_raw(url, params: {}, json: {}, form: {})
|
68
73
|
# Call Twitter API with PUT method
|
69
74
|
# @param url [String]
|
70
75
|
# @param params [Hash] Send this arg as a query string. (e.g. `?name1=value1&name2=value2`)
|
71
76
|
# @param json [Hash] Send this arg as JSON request body with `Content-Type: application/json` header
|
77
|
+
# @param form [Hash] Send this arg as form-data request body with `Content-Type: multipart/form-data` header
|
72
78
|
# @return [HTTP::Response]
|
73
79
|
|
74
|
-
# @!method delete(url, params: {}, json: {})
|
80
|
+
# @!method delete(url, params: {}, json: {}, form: {})
|
75
81
|
# Call Twitter API with DELETE method
|
76
82
|
# @param url [String]
|
77
83
|
# @param params [Hash] Send this arg as a query string. (e.g. `?name1=value1&name2=value2`)
|
78
84
|
# @param json [Hash] Send this arg as JSON request body with `Content-Type: application/json` header
|
85
|
+
# @param form [Hash] Send this arg as form-data request body with `Content-Type: multipart/form-data` header
|
79
86
|
# @return [Hash] parsed json data
|
80
87
|
# @raise [SimpleTwitter::ClientError] Twitter API returned 4xx error
|
81
88
|
# @raise [SimpleTwitter::ServerError] Twitter API returned 5xx error
|
82
89
|
|
83
|
-
# @!method delete_raw(url, params: {}, json: {})
|
90
|
+
# @!method delete_raw(url, params: {}, json: {}, form: {})
|
84
91
|
# Call Twitter API with DELETE method
|
85
92
|
# @param url [String]
|
86
93
|
# @param params [Hash] Send this arg as a query string. (e.g. `?name1=value1&name2=value2`)
|
87
94
|
# @param json [Hash] Send this arg as JSON request body with `Content-Type: application/json` header
|
95
|
+
# @param form [Hash] Send this arg as form-data request body with `Content-Type: multipart/form-data` header
|
88
96
|
# @return [HTTP::Response]
|
89
97
|
|
90
98
|
%i[get post put delete].each do |m|
|
91
99
|
class_eval <<~EOD
|
92
|
-
def #{m}(url, params: {}, json: {})
|
93
|
-
res = #{m}_raw(url, params: params, json: json)
|
100
|
+
def #{m}(url, params: {}, json: {}, form: {})
|
101
|
+
res = #{m}_raw(url, params: params, json: json, form: form)
|
94
102
|
parse_response(res)
|
95
103
|
end
|
96
104
|
|
97
|
-
def #{m}_raw(url, params: {}, json: {})
|
98
|
-
args =
|
99
|
-
args[:json] = json unless json.empty?
|
105
|
+
def #{m}_raw(url, params: {}, json: {}, form: {})
|
106
|
+
args = create_http_args(params: params, json: json, form: form)
|
100
107
|
http(:#{m}, url, params).#{m}(url, args)
|
101
108
|
end
|
102
109
|
EOD
|
@@ -104,6 +111,22 @@ module SimpleTwitter
|
|
104
111
|
|
105
112
|
private
|
106
113
|
|
114
|
+
# @param params [Hash] Send this arg as a query string. (e.g. `?name1=value1&name2=value2`)
|
115
|
+
# @param json [Hash] Send this arg as JSON request body with `Content-Type: application/json` header
|
116
|
+
# @param form [Hash] Send this arg as form-data request body with `Content-Type: multipart/form-data` header
|
117
|
+
# @return [Hash<Symbol, Object>]
|
118
|
+
def create_http_args(params:, json:, form:)
|
119
|
+
args = {
|
120
|
+
params: params,
|
121
|
+
headers: {
|
122
|
+
"User-Agent" => "simple_twitter v#{SimpleTwitter::VERSION} (https://github.com/yhara/simple_twitter)",
|
123
|
+
},
|
124
|
+
}
|
125
|
+
args[:json] = json unless json.empty?
|
126
|
+
args[:form] = form unless form.empty?
|
127
|
+
args
|
128
|
+
end
|
129
|
+
|
107
130
|
# @param method [Symbol]
|
108
131
|
# @param url [String]
|
109
132
|
# @param params [Hash<Symbol, String>]
|
data/lib/simple_twitter.rb
CHANGED
@@ -0,0 +1,26 @@
|
|
1
|
+
---
|
2
|
+
sources:
|
3
|
+
- type: git
|
4
|
+
name: ruby/gem_rbs_collection
|
5
|
+
revision: aeede7258d020bfd509541e0c8075ce833292409
|
6
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
7
|
+
repo_dir: gems
|
8
|
+
path: ".gem_rbs_collection"
|
9
|
+
gems:
|
10
|
+
- name: http
|
11
|
+
version: '5.1'
|
12
|
+
source:
|
13
|
+
type: git
|
14
|
+
name: ruby/gem_rbs_collection
|
15
|
+
revision: aeede7258d020bfd509541e0c8075ce833292409
|
16
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
17
|
+
repo_dir: gems
|
18
|
+
- name: simple_oauth
|
19
|
+
version: '0.3'
|
20
|
+
source:
|
21
|
+
type: git
|
22
|
+
name: ruby/gem_rbs_collection
|
23
|
+
revision: aeede7258d020bfd509541e0c8075ce833292409
|
24
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
25
|
+
repo_dir: gems
|
26
|
+
gemfile_lock_path: Gemfile.lock
|
data/rbs_collection.yaml
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
# Download sources
|
2
|
+
sources:
|
3
|
+
- type: git
|
4
|
+
name: ruby/gem_rbs_collection
|
5
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
6
|
+
revision: main
|
7
|
+
repo_dir: gems
|
8
|
+
|
9
|
+
# You can specify local directories as sources also.
|
10
|
+
# - type: local
|
11
|
+
# path: path/to/your/local/repository
|
12
|
+
|
13
|
+
# A directory to install the downloaded RBSs
|
14
|
+
path: .gem_rbs_collection
|
15
|
+
|
16
|
+
gems:
|
17
|
+
# Skip loading rbs gem's RBS.
|
18
|
+
# It's unnecessary if you don't use rbs as a library.
|
19
|
+
- name: rbs
|
20
|
+
ignore: true
|
21
|
+
|
22
|
+
- name: simple_twitter
|
23
|
+
ignore: true
|
24
|
+
- name: steep
|
25
|
+
ignore: true
|
26
|
+
- name: yard
|
27
|
+
ignore: true
|
28
|
+
|
29
|
+
- name: http
|
30
|
+
- name: simple_oauth
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# TypeProf 0.21.3
|
2
|
+
|
3
|
+
# Classes
|
4
|
+
module SimpleTwitter
|
5
|
+
class Client
|
6
|
+
@bearer_token: string
|
7
|
+
@oauth_params: {consumer_key: string, consumer_secret: string, token: string, token_secret: string}
|
8
|
+
|
9
|
+
def initialize: (?bearer_token: string, ?api_key: string, ?api_secret_key: string, ?access_token: string, ?access_token_secret: string) -> void
|
10
|
+
|
11
|
+
def get: (String url, params: Hash[Symbol, untyped], json: Hash[Symbol, untyped]) -> Hash[Symbol, untyped]
|
12
|
+
def post: (String url, params: Hash[Symbol, untyped], json: Hash[Symbol, untyped]) -> Hash[Symbol, untyped]
|
13
|
+
def put: (String url, params: Hash[Symbol, untyped], json: Hash[Symbol, untyped]) -> Hash[Symbol, untyped]
|
14
|
+
def delete: (String url, params: Hash[Symbol, untyped], json: Hash[Symbol, untyped]) -> Hash[Symbol, untyped]
|
15
|
+
|
16
|
+
def get_raw: (String url, params: Hash[Symbol, untyped], json: Hash[Symbol, untyped]) -> HTTP::Response
|
17
|
+
def post_raw: (String url, params: Hash[Symbol, untyped], json: Hash[Symbol, untyped]) -> HTTP::Response
|
18
|
+
def put_raw: (String url, params: Hash[Symbol, untyped], json: Hash[Symbol, untyped]) -> HTTP::Response
|
19
|
+
def delete_raw: (String url, params: Hash[Symbol, untyped], json: Hash[Symbol, untyped]) -> HTTP::Response
|
20
|
+
|
21
|
+
private
|
22
|
+
|
23
|
+
def create_http_args: (params: Hash[Symbol, untyped], json: Hash[Symbol, untyped], form: Hash[Symbol, untyped]) -> Hash[Symbol, untyped]
|
24
|
+
def http: (Symbol method, String url, Hash[Symbol, String] params) -> HTTP::Client
|
25
|
+
def auth_header: (Symbol method, String url, Hash[Symbol, String] params) -> String
|
26
|
+
def parse_response: (HTTP::Response res) -> Hash[Symbol, untyped]
|
27
|
+
end
|
28
|
+
end
|
data/simple_twitter.gemspec
CHANGED
@@ -30,8 +30,10 @@ Gem::Specification.new do |spec|
|
|
30
30
|
spec.add_dependency "http", ">= 4"
|
31
31
|
spec.add_dependency "simple_oauth", ">= 0.3.1"
|
32
32
|
|
33
|
+
spec.add_development_dependency "dotenv"
|
33
34
|
spec.add_development_dependency "rspec"
|
34
35
|
spec.add_development_dependency "rspec-its"
|
36
|
+
spec.add_development_dependency "steep"
|
35
37
|
spec.add_development_dependency "webmock"
|
36
38
|
spec.add_development_dependency "yard"
|
37
39
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simple_twitter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Yutaka HARA
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2023-07-
|
12
|
+
date: 2023-07-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: http
|
@@ -39,6 +39,20 @@ dependencies:
|
|
39
39
|
- - ">="
|
40
40
|
- !ruby/object:Gem::Version
|
41
41
|
version: 0.3.1
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: dotenv
|
44
|
+
requirement: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - ">="
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: '0'
|
49
|
+
type: :development
|
50
|
+
prerelease: false
|
51
|
+
version_requirements: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - ">="
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: '0'
|
42
56
|
- !ruby/object:Gem::Dependency
|
43
57
|
name: rspec
|
44
58
|
requirement: !ruby/object:Gem::Requirement
|
@@ -67,6 +81,20 @@ dependencies:
|
|
67
81
|
- - ">="
|
68
82
|
- !ruby/object:Gem::Version
|
69
83
|
version: '0'
|
84
|
+
- !ruby/object:Gem::Dependency
|
85
|
+
name: steep
|
86
|
+
requirement: !ruby/object:Gem::Requirement
|
87
|
+
requirements:
|
88
|
+
- - ">="
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: '0'
|
91
|
+
type: :development
|
92
|
+
prerelease: false
|
93
|
+
version_requirements: !ruby/object:Gem::Requirement
|
94
|
+
requirements:
|
95
|
+
- - ">="
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
version: '0'
|
70
98
|
- !ruby/object:Gem::Dependency
|
71
99
|
name: webmock
|
72
100
|
requirement: !ruby/object:Gem::Requirement
|
@@ -103,6 +131,7 @@ executables: []
|
|
103
131
|
extensions: []
|
104
132
|
extra_rdoc_files: []
|
105
133
|
files:
|
134
|
+
- ".env.example"
|
106
135
|
- ".github/dependabot.yml"
|
107
136
|
- ".github/workflows/pages.yml"
|
108
137
|
- ".github/workflows/test.yml"
|
@@ -114,6 +143,7 @@ files:
|
|
114
143
|
- LICENSE.txt
|
115
144
|
- README.md
|
116
145
|
- Rakefile
|
146
|
+
- Steepfile
|
117
147
|
- bin/console
|
118
148
|
- bin/setup
|
119
149
|
- lib/simple_twitter.rb
|
@@ -122,6 +152,14 @@ files:
|
|
122
152
|
- lib/simple_twitter/error.rb
|
123
153
|
- lib/simple_twitter/server_error.rb
|
124
154
|
- lib/simple_twitter/version.rb
|
155
|
+
- rbs_collection.lock.yaml
|
156
|
+
- rbs_collection.yaml
|
157
|
+
- sig/simple_twitter.rbs
|
158
|
+
- sig/simple_twitter/client.rbs
|
159
|
+
- sig/simple_twitter/client_error.rbs
|
160
|
+
- sig/simple_twitter/error.rbs
|
161
|
+
- sig/simple_twitter/server_error.rbs
|
162
|
+
- sig/simple_twitter/version.rbs
|
125
163
|
- simple_twitter.gemspec
|
126
164
|
homepage: https://github.com/yhara/simple_twitter
|
127
165
|
licenses:
|