twitter 8.0.0 β 8.0.1
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/CHANGELOG.md +4 -0
- data/LICENSE.md +1 -1
- data/README.md +22 -245
- data/lib/twitter/enumerable.rb +1 -1
- data/lib/twitter/rest/upload_utils.rb +7 -3
- data/lib/twitter/streaming/client.rb +3 -3
- data/lib/twitter/utils.rb +2 -2
- data/lib/twitter/version.rb +1 -1
- data/twitter.gemspec +29 -0
- metadata +21 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 11e677ef797cfd3ab6475560db947569fd11c3b081e2c0b922b74430a2f788e5
|
4
|
+
data.tar.gz: 65f083e2f1c64ddcc4366a7ff8d948d26c7cb20fdff0e29113d26ffa35aa50d2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5196906962cd60016ecac0ef288c486709ac931ce7220958ce164a99d99c6916b4d18cc5481e57d863208a21d776e1f77188ea9aec763c5a20a6892650ceda11
|
7
|
+
data.tar.gz: bfcc66dbf3956ad6dde755b41ccf7c3ac1c5cedce125ba932e865f9677204ce4b7c07705b9afacf8b0d75775641c71a17afa51aa76fbd82d20ec1d8088192948
|
data/CHANGELOG.md
CHANGED
data/LICENSE.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
Copyright (c) 2006-
|
1
|
+
Copyright (c) 2006-2023 Erik Berlin, John Nunemaker, Wynn Netherland, Steve Richert, Steve Agalloco
|
2
2
|
|
3
3
|
Permission is hereby granted, free of charge, to any person obtaining
|
4
4
|
a copy of this software and associated documentation files (the
|
data/README.md
CHANGED
@@ -1,36 +1,35 @@
|
|
1
1
|
# The Twitter Ruby Gem
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
[][maintainability]
|
6
|
-
[][inchpages]
|
3
|
+
## π£ This gem is no longer maintained
|
4
|
+
The Twitter Ruby Gem is no longer maintained and will not support Twitter API v2.
|
7
5
|
|
8
|
-
|
9
|
-
[
|
10
|
-
|
11
|
-
|
6
|
+
## π Hereβs the good news
|
7
|
+
We recommend switching to the [X gem][x], which supports both v1.1 and v2 to make
|
8
|
+
the transition easier. Itβs a robust, modern libary that is designed to ensure
|
9
|
+
youβll be able to easily integrate any new changes Twitter/X may roll out.
|
12
10
|
|
13
|
-
|
11
|
+
[x]: https://sferik.github.io/x-ruby/
|
14
12
|
|
15
|
-
##
|
16
|
-
|
13
|
+
## π Sponsoring
|
14
|
+
The [X gem][x] is free to use, but with new API pricing tiers, it actually costs
|
15
|
+
money to develop and maintain. By contributing to the project, you help us:
|
17
16
|
|
18
|
-
|
19
|
-
|
20
|
-
|
17
|
+
1. π Maintain the library: Keeping it up-to-date and secure.
|
18
|
+
2. π Add new features: Enhancements that make your life easier.
|
19
|
+
3. π¬ Provide support: Faster responses to issues and feature requests.
|
21
20
|
|
22
|
-
|
23
|
-
|
21
|
+
βοΈ Bonus: Sponsors will get priority support and influence over the project
|
22
|
+
roadmap. We will also list your name or your companyβs logo on our GitHub page.
|
24
23
|
|
25
|
-
|
26
|
-
|
24
|
+
Building and maintaining an open-source project like this takes a considerable
|
25
|
+
amount of time and effort. Your sponsorship can help sustain this project. Even
|
26
|
+
a small monthly donation makes a huge difference!
|
27
27
|
|
28
|
-
|
28
|
+
Thanks for considering sponsorship. Together we can make the X gem even better!
|
29
29
|
|
30
|
-
|
31
|
-
[https://github.com/sferik/twitter/tree/master/examples][examples]
|
30
|
+
#### π€ [Sponsor today!][sponsor]
|
32
31
|
|
33
|
-
[
|
32
|
+
[sponsor]: https://github.com/sponsors/sferik
|
34
33
|
|
35
34
|
## Announcements
|
36
35
|
You should [follow @gem][follow] on Twitter for announcements and updates about
|
@@ -38,230 +37,8 @@ this library.
|
|
38
37
|
|
39
38
|
[follow]: https://twitter.com/gem
|
40
39
|
|
41
|
-
## Mailing List
|
42
|
-
Please direct questions about this library to the [mailing list].
|
43
|
-
|
44
|
-
[mailing list]: https://groups.google.com/group/twitter-ruby-gem
|
45
|
-
|
46
|
-
## Apps Wiki
|
47
|
-
Does your project or organization use this gem? Add it to the [apps
|
48
|
-
wiki][apps]!
|
49
|
-
|
50
|
-
[apps]: https://github.com/sferik/twitter/wiki/apps
|
51
|
-
|
52
|
-
## Configuration
|
53
|
-
Twitter API v1.1 requires you to authenticate via OAuth, so you'll need to
|
54
|
-
[register your application with Twitter][register]. Once you've registered an
|
55
|
-
application, make sure to set the correct access level, otherwise you may see
|
56
|
-
the error:
|
57
|
-
|
58
|
-
[register]: https://apps.twitter.com/
|
59
|
-
|
60
|
-
Read-only application cannot POST
|
61
|
-
|
62
|
-
Your new application will be assigned a consumer key/secret pair and you will
|
63
|
-
be assigned an OAuth access token/secret pair for that application. You'll need
|
64
|
-
to configure these values before you make a request or else you'll get the
|
65
|
-
error:
|
66
|
-
|
67
|
-
Bad Authentication data
|
68
|
-
|
69
|
-
You can pass configuration options as a block to `Twitter::REST::Client.new`.
|
70
|
-
|
71
|
-
```ruby
|
72
|
-
client = Twitter::REST::Client.new do |config|
|
73
|
-
config.consumer_key = "YOUR_CONSUMER_KEY"
|
74
|
-
config.consumer_secret = "YOUR_CONSUMER_SECRET"
|
75
|
-
config.access_token = "YOUR_ACCESS_TOKEN"
|
76
|
-
config.access_token_secret = "YOUR_ACCESS_SECRET"
|
77
|
-
end
|
78
|
-
```
|
79
|
-
|
80
|
-
## Usage Examples
|
81
|
-
After configuring a `client`, you can do the following things.
|
82
|
-
|
83
|
-
**Tweet (as the authenticated user)**
|
84
|
-
|
85
|
-
```ruby
|
86
|
-
client.update("I'm tweeting with @gem!")
|
87
|
-
```
|
88
|
-
**Follow a user (by screen name or user ID)**
|
89
|
-
|
90
|
-
```ruby
|
91
|
-
client.follow("gem")
|
92
|
-
client.follow(213747670)
|
93
|
-
```
|
94
|
-
**Fetch a user (by screen name or user ID)**
|
95
|
-
|
96
|
-
```ruby
|
97
|
-
client.user("gem")
|
98
|
-
client.user(213747670)
|
99
|
-
```
|
100
|
-
**Fetch a cursored list of followers with profile details (by screen name or user ID, or by implicit authenticated user)**
|
101
|
-
|
102
|
-
```ruby
|
103
|
-
client.followers("gem")
|
104
|
-
client.followers(213747670)
|
105
|
-
client.followers
|
106
|
-
```
|
107
|
-
**Fetch a cursored list of friends with profile details (by screen name or user ID, or by implicit authenticated user)**
|
108
|
-
|
109
|
-
```ruby
|
110
|
-
client.friends("gem")
|
111
|
-
client.friends(213747670)
|
112
|
-
client.friends
|
113
|
-
```
|
114
|
-
|
115
|
-
**Fetch the timeline of Tweets by a user**
|
116
|
-
|
117
|
-
```ruby
|
118
|
-
client.user_timeline("gem")
|
119
|
-
client.user_timeline(213747670)
|
120
|
-
```
|
121
|
-
**Fetch the timeline of Tweets from the authenticated user's home page**
|
122
|
-
|
123
|
-
```ruby
|
124
|
-
client.home_timeline
|
125
|
-
```
|
126
|
-
**Fetch the timeline of Tweets mentioning the authenticated user**
|
127
|
-
|
128
|
-
```ruby
|
129
|
-
client.mentions_timeline
|
130
|
-
```
|
131
|
-
**Fetch a particular Tweet by ID**
|
132
|
-
|
133
|
-
```ruby
|
134
|
-
client.status(27558893223)
|
135
|
-
```
|
136
|
-
**Collect the three most recent marriage proposals to @justinbieber**
|
137
|
-
|
138
|
-
```ruby
|
139
|
-
client.search("to:justinbieber marry me", result_type: "recent").take(3).collect do |tweet|
|
140
|
-
"#{tweet.user.screen_name}: #{tweet.text}"
|
141
|
-
end
|
142
|
-
```
|
143
|
-
**Find a Japanese-language Tweet tagged #ruby (excluding retweets)**
|
144
|
-
|
145
|
-
```ruby
|
146
|
-
client.search("#ruby -rt", lang: "ja").first.text
|
147
|
-
```
|
148
|
-
For more usage examples, please see the full [documentation][].
|
149
|
-
|
150
|
-
## Streaming
|
151
|
-
Site Streams are restricted to whitelisted accounts. To apply for access,
|
152
|
-
[follow the steps in the Site Streams documentation][site-streams]. [User
|
153
|
-
Streams][user-streams] do not require prior approval.
|
154
|
-
|
155
|
-
[site-streams]: https://dev.twitter.com/streaming/sitestreams#applyingforaccess
|
156
|
-
[user-streams]: https://dev.twitter.com/streaming/userstreams
|
157
|
-
|
158
|
-
**Configuration works just like `Twitter::REST::Client`**
|
159
|
-
|
160
|
-
```ruby
|
161
|
-
client = Twitter::Streaming::Client.new do |config|
|
162
|
-
config.consumer_key = "YOUR_CONSUMER_KEY"
|
163
|
-
config.consumer_secret = "YOUR_CONSUMER_SECRET"
|
164
|
-
config.access_token = "YOUR_ACCESS_TOKEN"
|
165
|
-
config.access_token_secret = "YOUR_ACCESS_SECRET"
|
166
|
-
end
|
167
|
-
```
|
168
|
-
|
169
|
-
**Stream a random sample of all tweets**
|
170
|
-
|
171
|
-
```ruby
|
172
|
-
client.sample do |object|
|
173
|
-
puts object.text if object.is_a?(Twitter::Tweet)
|
174
|
-
end
|
175
|
-
```
|
176
|
-
|
177
|
-
**Stream mentions of coffee or tea**
|
178
|
-
|
179
|
-
```ruby
|
180
|
-
topics = ["coffee", "tea"]
|
181
|
-
client.filter(track: topics.join(",")) do |object|
|
182
|
-
puts object.text if object.is_a?(Twitter::Tweet)
|
183
|
-
end
|
184
|
-
```
|
185
|
-
|
186
|
-
**Stream tweets, events, and direct messages for the authenticated user**
|
187
|
-
|
188
|
-
```ruby
|
189
|
-
client.user do |object|
|
190
|
-
case object
|
191
|
-
when Twitter::Tweet
|
192
|
-
puts "It's a tweet!"
|
193
|
-
when Twitter::DirectMessage
|
194
|
-
puts "It's a direct message!"
|
195
|
-
when Twitter::Streaming::StallWarning
|
196
|
-
warn "Falling behind!"
|
197
|
-
end
|
198
|
-
end
|
199
|
-
```
|
200
|
-
|
201
|
-
An `object` may be one of the following:
|
202
|
-
* `Twitter::Tweet`
|
203
|
-
* `Twitter::DirectMessage`
|
204
|
-
* `Twitter::Streaming::DeletedTweet`
|
205
|
-
* `Twitter::Streaming::Event`
|
206
|
-
* `Twitter::Streaming::FriendList`
|
207
|
-
* `Twitter::Streaming::StallWarning`
|
208
|
-
|
209
|
-
## Ads
|
210
|
-
|
211
|
-
We recommend using the [Twitter Ads SDK for Ruby][ads] to interact with the Twitter Ads API.
|
212
|
-
|
213
|
-
[ads]: http://twitterdev.github.io/twitter-ruby-ads-sdk/
|
214
|
-
|
215
|
-
## Object Graph
|
216
|
-
![Entity-relationship diagram][erd]
|
217
|
-
|
218
|
-
[erd]: https://cdn.rawgit.com/sferik/twitter/master/etc/erd.svg "Entity-relationship diagram"
|
219
|
-
|
220
|
-
This entity-relationship diagram is generated programatically. If you add or
|
221
|
-
remove any Twitter objects, please regenerate the ERD with the following
|
222
|
-
command:
|
223
|
-
|
224
|
-
bundle exec rake erd
|
225
|
-
|
226
|
-
## Supported Ruby Versions
|
227
|
-
This library aims to support and is [tested against][travis] the following Ruby
|
228
|
-
versions:
|
229
|
-
|
230
|
-
* Ruby 2.7
|
231
|
-
* Ruby 3.0
|
232
|
-
* Ruby 3.1
|
233
|
-
* Ruby 3.2
|
234
|
-
|
235
|
-
If something doesn't work on one of these versions, it's a bug.
|
236
|
-
|
237
|
-
This library may inadvertently work (or seem to work) on other Ruby versions,
|
238
|
-
however support will only be provided for the versions listed above.
|
239
|
-
|
240
|
-
If you would like this library to support another Ruby version or
|
241
|
-
implementation, you may volunteer to be a maintainer. Being a maintainer
|
242
|
-
entails making sure all tests run and pass on that implementation. When
|
243
|
-
something breaks on your implementation, you will be responsible for providing
|
244
|
-
patches in a timely fashion. If critical issues for a particular implementation
|
245
|
-
exist at the time of a major release, support for that Ruby version may be
|
246
|
-
dropped.
|
247
|
-
|
248
|
-
## Versioning
|
249
|
-
This library aims to adhere to [Semantic Versioning 2.0.0][semver]. Violations
|
250
|
-
of this scheme should be reported as bugs. Specifically, if a minor or patch
|
251
|
-
version is released that breaks backward compatibility, that version should be
|
252
|
-
immediately yanked and/or a new version should be immediately released that
|
253
|
-
restores compatibility. Breaking changes to the public API will only be
|
254
|
-
introduced with new major versions. As a result of this policy, you can (and
|
255
|
-
should) specify a dependency on this gem using the [Pessimistic Version
|
256
|
-
Constraint][pvc] with two digits of precision. For example:
|
257
|
-
|
258
|
-
spec.add_dependency 'twitter', '~> 6.0'
|
259
|
-
|
260
|
-
[semver]: http://semver.org/
|
261
|
-
[pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
|
262
|
-
|
263
40
|
## Copyright
|
264
|
-
Copyright (c) 2006-
|
41
|
+
Copyright (c) 2006-2023 Erik Berlin, John Nunemaker, Wynn Netherland, Steve Richert, Steve Agalloco.
|
265
42
|
See [LICENSE][] for details.
|
266
43
|
|
267
44
|
[license]: LICENSE.md
|
data/lib/twitter/enumerable.rb
CHANGED
@@ -10,8 +10,10 @@ module Twitter
|
|
10
10
|
#
|
11
11
|
# @see https://developer.twitter.com/en/docs/media/upload-media/uploading-media/media-best-practices
|
12
12
|
def upload(media, media_category_prefix: "tweet")
|
13
|
-
|
14
|
-
return chunk_upload(media, "
|
13
|
+
ext = File.extname(media)
|
14
|
+
return chunk_upload(media, "video/mp4", "#{media_category_prefix}_video") if ext == ".mp4"
|
15
|
+
return chunk_upload(media, "video/quicktime", "#{media_category_prefix}_video") if ext == ".mov"
|
16
|
+
return chunk_upload(media, "image/gif", "#{media_category_prefix}_gif") if ext == ".gif" && File.size(media) > 5_000_000
|
15
17
|
|
16
18
|
Twitter::REST::Request.new(self, :multipart_post, "https://upload.twitter.com/1.1/media/upload.json", key: :media, file: media).perform
|
17
19
|
end
|
@@ -54,8 +56,10 @@ module Twitter
|
|
54
56
|
def finalize_media(media_id)
|
55
57
|
response = Twitter::REST::Request.new(self, :post, "https://upload.twitter.com/1.1/media/upload.json",
|
56
58
|
command: "FINALIZE", media_id: media_id).perform
|
59
|
+
failed_or_succeeded = %w[failed succeeded]
|
60
|
+
|
57
61
|
loop do
|
58
|
-
return response if !response[:processing_info] ||
|
62
|
+
return response if !response[:processing_info] || failed_or_succeeded.include?(response[:processing_info][:state])
|
59
63
|
|
60
64
|
sleep(response[:processing_info][:check_after_secs])
|
61
65
|
response = Twitter::REST::Request.new(self, :get, "https://upload.twitter.com/1.1/media/upload.json",
|
@@ -95,7 +95,7 @@ module Twitter
|
|
95
95
|
|
96
96
|
# Set a Proc to be run when connection established.
|
97
97
|
def before_request(&block)
|
98
|
-
if
|
98
|
+
if block
|
99
99
|
@before_request = block
|
100
100
|
self
|
101
101
|
elsif instance_variable_defined?(:@before_request)
|
@@ -135,12 +135,12 @@ module Twitter
|
|
135
135
|
# @param users [Array]
|
136
136
|
# @return [Array<Integer>]
|
137
137
|
def collect_user_ids(users)
|
138
|
-
users.
|
138
|
+
users.filter_map do |user|
|
139
139
|
case user
|
140
140
|
when Integer then user
|
141
141
|
when Twitter::User then user.id
|
142
142
|
end
|
143
|
-
end
|
143
|
+
end
|
144
144
|
end
|
145
145
|
end
|
146
146
|
end
|
data/lib/twitter/utils.rb
CHANGED
@@ -8,7 +8,7 @@ module Twitter
|
|
8
8
|
# @param enumerable [Enumerable]
|
9
9
|
# @return [Array, Enumerator]
|
10
10
|
def flat_pmap(enumerable, &block)
|
11
|
-
return to_enum(:flat_pmap, enumerable) unless
|
11
|
+
return to_enum(:flat_pmap, enumerable) unless block
|
12
12
|
|
13
13
|
pmap(enumerable, &block).flatten(1)
|
14
14
|
end
|
@@ -19,7 +19,7 @@ module Twitter
|
|
19
19
|
# @param enumerable [Enumerable]
|
20
20
|
# @return [Array, Enumerator]
|
21
21
|
def pmap(enumerable, &block)
|
22
|
-
return to_enum(:pmap, enumerable) unless
|
22
|
+
return to_enum(:pmap, enumerable) unless block
|
23
23
|
|
24
24
|
if enumerable.count == 1
|
25
25
|
enumerable.collect(&block)
|
data/lib/twitter/version.rb
CHANGED
data/twitter.gemspec
CHANGED
@@ -21,6 +21,35 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.licenses = %w[MIT]
|
22
22
|
spec.metadata["rubygems_mfa_required"] = "true"
|
23
23
|
spec.name = "twitter"
|
24
|
+
spec.post_install_message = %q{π£ Attention Twitter Ruby Gem User!
|
25
|
+
If you're seeing this message, that means you're using the old Twitter Ruby gem
|
26
|
+
which is no longer maintained and will not support Twitter API v2.
|
27
|
+
|
28
|
+
π Here's the good news:
|
29
|
+
We recommend switching to the X gem, which supports both v1.1 and v2 to make
|
30
|
+
the transition easier. It's a robust, modern libary that is designed to ensure
|
31
|
+
you'll be able to easily integrate any new changes Twitter/X may roll out.
|
32
|
+
|
33
|
+
π For more details, visit: https://sferik.github.io/x-ruby/
|
34
|
+
|
35
|
+
π€ Why consider sponsoring?
|
36
|
+
The X gem is free to use, but with new API pricing tiers, it actually costs
|
37
|
+
money to develop and maintain. By contributing to the project, you help us:
|
38
|
+
|
39
|
+
1. π Maintain the library: Keeping it up-to-date and secure.
|
40
|
+
2. π Add new features: Enhancements that make your life easier.
|
41
|
+
3. π¬ Provide support: Faster responses to issues and feature requests.
|
42
|
+
βοΈ Bonus: Sponsors will get priority support and influence over the project
|
43
|
+
roadmap. We will also list your name or your company's logo on our GitHub page.
|
44
|
+
|
45
|
+
π To sponsor, visit: https://github.com/sponsors/sferik
|
46
|
+
|
47
|
+
Building and maintaining an open-source project like this takes a considerable
|
48
|
+
amount of time and effort. Your sponsorship can help sustain this project. Even
|
49
|
+
a small monthly donation makes a huge difference!
|
50
|
+
|
51
|
+
π Thanks for considering sponsorship. Together we can make the X gem even better!
|
52
|
+
}
|
24
53
|
spec.require_paths = %w[lib]
|
25
54
|
spec.required_ruby_version = ">= 3.0"
|
26
55
|
spec.summary = spec.description
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: twitter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 8.0.
|
4
|
+
version: 8.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Erik Berlin
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date: 2023-
|
15
|
+
date: 2023-09-20 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: addressable
|
@@ -264,7 +264,24 @@ licenses:
|
|
264
264
|
- MIT
|
265
265
|
metadata:
|
266
266
|
rubygems_mfa_required: 'true'
|
267
|
-
post_install_message:
|
267
|
+
post_install_message: "\U0001F4E3 Attention Twitter Ruby Gem User!\nIf you're seeing
|
268
|
+
this message, that means you're using the old Twitter Ruby gem\nwhich is no longer
|
269
|
+
maintained and will not support Twitter API v2.\n\n\U0001F389 Here's the good news:\nWe
|
270
|
+
recommend switching to the X gem, which supports both v1.1 and v2 to make\nthe transition
|
271
|
+
easier. It's a robust, modern libary that is designed to ensure\nyou'll be able
|
272
|
+
to easily integrate any new changes Twitter/X may roll out.\n\n\U0001F517 For more
|
273
|
+
details, visit: https://sferik.github.io/x-ruby/\n\n\U0001F914 Why consider sponsoring?\nThe
|
274
|
+
X gem is free to use, but with new API pricing tiers, it actually costs\nmoney to
|
275
|
+
develop and maintain. By contributing to the project, you help us:\n\n1. \U0001F6E0
|
276
|
+
\ Maintain the library: Keeping it up-to-date and secure.\n2. \U0001F308 Add new
|
277
|
+
features: Enhancements that make your life easier.\n3. \U0001F4AC Provide support:
|
278
|
+
Faster responses to issues and feature requests.\nβοΈ Bonus: Sponsors will get priority
|
279
|
+
support and influence over the project\nroadmap. We will also list your name or
|
280
|
+
your company's logo on our GitHub page.\n\n\U0001F517 To sponsor, visit: https://github.com/sponsors/sferik\n\nBuilding
|
281
|
+
and maintaining an open-source project like this takes a considerable\namount of
|
282
|
+
time and effort. Your sponsorship can help sustain this project. Even\na small monthly
|
283
|
+
donation makes a huge difference!\n\n\U0001F496 Thanks for considering sponsorship.
|
284
|
+
Together we can make the X gem even better!\n"
|
268
285
|
rdoc_options: []
|
269
286
|
require_paths:
|
270
287
|
- lib
|
@@ -279,7 +296,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
279
296
|
- !ruby/object:Gem::Version
|
280
297
|
version: '0'
|
281
298
|
requirements: []
|
282
|
-
rubygems_version: 3.4.
|
299
|
+
rubygems_version: 3.4.19
|
283
300
|
signing_key:
|
284
301
|
specification_version: 4
|
285
302
|
summary: A Ruby interface to the Twitter API.
|