twitter 5.17.0 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 96813c8d87955909e3fd553015e5d1fa44164e08
4
- data.tar.gz: dd5e3c91a697c46e39067e60adc5cc67ecb8b5f4
3
+ metadata.gz: dbb087a2412cc851f5131e470ae8c1cc78e1700a
4
+ data.tar.gz: e4394c9649f2eca483a9ea15defe046e44961572
5
5
  SHA512:
6
- metadata.gz: fc47aaae84bab581a62f460a9bad40ccf758fcbda1b4f38091b323acb8fdd2aabd9725f96d8c373c2cf33a1204d72851400f1f087abd36f81f7f355848786c65
7
- data.tar.gz: 41fcb0e2aee2ba8db3a379dee590ab99ba62788179908c30062893be05341ffa3cdf418bc3e480d701e49208a35a6d61cd7c2421511f223355847cb2a869cbc2
6
+ metadata.gz: 92fcec79f161d87e03b78c4e090a4abb0ef85a3a3ec570f3374dc5a083c815644d92c9585362cfbe3114d1c32ec1704ec59f2db63b3b2dff0d4bb08fdea7adbd
7
+ data.tar.gz: e9e603a04133351d73e2e53aef78123414990a4439d81cc5ee26534229837f59174ccb8406d68b6bd517981de07a5b247b671020b6436d1450b00a1d6b188672
@@ -1,3 +1,7 @@
1
+ 6.0.0
2
+ -----
3
+ * [Drop support for Ruby 1.8.7 and Ruby 1.9.3](https://github.com/sferik/twitter/commit/27980f45fb357e34b86e46cb9134d86ed29b3ce3)
4
+
1
5
  5.17.0
2
6
  ------
3
7
  * [Add `email` to `Twitter::User`](https://github.com/sferik/twitter/commit/1d3aebcd0186d36c7c657ec913ac73bfa802d6ff)
data/README.md CHANGED
@@ -556,12 +556,11 @@ command:
556
556
  This library aims to support and is [tested against][travis] the following Ruby
557
557
  versions:
558
558
 
559
- * Ruby 1.8.7
560
- * Ruby 1.9.3
561
559
  * Ruby 2.0.0
562
560
  * Ruby 2.1
563
561
  * Ruby 2.2
564
- * JRuby 1.7 (Both 1.9 mode and 1.8 mode)
562
+ * Ruby 2.3
563
+ * JRuby 9.1.6.0
565
564
 
566
565
  If something doesn't work on one of these versions, it's a bug.
567
566
 
@@ -72,7 +72,7 @@ module Twitter
72
72
  # @param key1 [Symbol]
73
73
  # @param key2 [Symbol]
74
74
  def define_uri_method(key1, key2)
75
- define_method(key1) do ||
75
+ define_method(key1) do
76
76
  Addressable::URI.parse(@attrs[key2].chomp('#')) unless @attrs[key2].nil?
77
77
  end
78
78
  memoize(key1)
@@ -84,7 +84,7 @@ module Twitter
84
84
  # @param klass [Symbol]
85
85
  # @param key2 [Symbol]
86
86
  def define_attribute_method(key1, klass = nil, key2 = nil)
87
- define_method(key1) do ||
87
+ define_method(key1) do
88
88
  if attr_falsey_or_empty?(key1)
89
89
  NullObject.new
90
90
  elsif klass.nil?
@@ -99,7 +99,7 @@ module Twitter
99
99
 
100
100
  # @param key [Symbol]
101
101
  def deprecate_attribute_method(key)
102
- define_method(key) do ||
102
+ define_method(key) do
103
103
  warn "#{Kernel.caller.first}: [DEPRECATION] ##{key} is deprecated. Use ##{key}? instead."
104
104
  @attrs[key]
105
105
  end
@@ -111,7 +111,7 @@ module Twitter
111
111
  # @param key1 [Symbol]
112
112
  # @param key2 [Symbol]
113
113
  def define_predicate_method(key1, key2 = key1)
114
- define_method(:"#{key1}?") do ||
114
+ define_method(:"#{key1}?") do
115
115
  !attr_falsey_or_empty?(key2)
116
116
  end
117
117
  memoize(:"#{key1}?")
@@ -37,11 +37,11 @@ module Twitter
37
37
  # @return [Hash]
38
38
  def credentials
39
39
  {
40
- :consumer_key => consumer_key,
41
- :consumer_secret => consumer_secret,
42
- :token => access_token,
43
- :token_secret => access_token_secret,
44
- :ignore_extra_keys => true,
40
+ consumer_key: consumer_key,
41
+ consumer_secret: consumer_secret,
42
+ token: access_token,
43
+ token_secret: access_token_secret,
44
+ ignore_extra_keys: true,
45
45
  }
46
46
  end
47
47
 
@@ -17,9 +17,8 @@ module Twitter
17
17
  #
18
18
  # @return [Array<Twitter::Size>]
19
19
  def photo_sizes
20
- @attrs.fetch(:photo_sizes, []).inject({}) do |object, (key, value)|
20
+ @attrs.fetch(:photo_sizes, []).each_with_object({}) do |(key, value), object|
21
21
  object[key] = Size.new(value)
22
- object
23
22
  end
24
23
  end
25
24
  memoize :photo_sizes
@@ -44,7 +44,7 @@ module Twitter
44
44
 
45
45
  # @return [Hash]
46
46
  def fetch_next_page
47
- response = Twitter::REST::Request.new(@client, @request_method, @path, @options.merge(:cursor => next_cursor)).perform
47
+ response = Twitter::REST::Request.new(@client, @request_method, @path, @options.merge(cursor: next_cursor)).perform
48
48
  self.attrs = response
49
49
  end
50
50
 
@@ -50,13 +50,8 @@ module Twitter
50
50
  #
51
51
  # @return [String]
52
52
  def bearer_token_credentials_auth_header
53
- basic_auth_token = strict_encode64("#{@client.consumer_key}:#{@client.consumer_secret}")
53
+ basic_auth_token = Base64.strict_encode64("#{@client.consumer_key}:#{@client.consumer_secret}")
54
54
  "Basic #{basic_auth_token}"
55
55
  end
56
-
57
- # Base64.strict_encode64 is not available on Ruby 1.8.7
58
- def strict_encode64(str)
59
- Base64.encode64(str).delete("\n")
60
- end
61
56
  end
62
57
  end
@@ -15,9 +15,8 @@ module Twitter
15
15
  #
16
16
  # @return [Array<Twitter::Size>]
17
17
  def sizes
18
- @attrs.fetch(:sizes, []).inject({}) do |object, (key, value)|
18
+ @attrs.fetch(:sizes, []).each_with_object({}) do |(key, value), object|
19
19
  object[key] = Size.new(value)
20
- object
21
20
  end
22
21
  end
23
22
  memoize :sizes
@@ -16,7 +16,7 @@ module Twitter
16
16
  #
17
17
  # @return [Array<Twitter::Size>]
18
18
  def sizes
19
- @attrs.fetch(:sizes, []).inject({}) do |object, (key, value)|
19
+ @attrs.fetch(:sizes, []).each_with_object({}) do |(key, value), object|
20
20
  object[key] = Size.new(value)
21
21
  object
22
22
  end
@@ -9,10 +9,9 @@ module Twitter
9
9
  config.define_implicit_conversions
10
10
  config.predicates_return false
11
11
 
12
- # TODO: Add when support for Ruby 1.8.7 is dropped
13
- # def !
14
- # true
15
- # end
12
+ def !
13
+ true
14
+ end
16
15
 
17
16
  def respond_to?(*)
18
17
  true
@@ -9,9 +9,8 @@ module Twitter
9
9
  #
10
10
  # @return [Array<Twitter::Size>]
11
11
  def sizes
12
- @attrs.fetch(:sizes, []).inject({}) do |object, (key, value)|
12
+ @attrs.fetch(:sizes, []).each_with_object({}) do |(key, value), object|
13
13
  object[key] = Size.new(value)
14
- object
15
14
  end
16
15
  end
17
16
  memoize :sizes
@@ -27,16 +27,16 @@ module Twitter
27
27
  # @return [Hash]
28
28
  def connection_options
29
29
  @connection_options ||= {
30
- :builder => middleware,
31
- :headers => {
32
- :accept => 'application/json',
33
- :user_agent => user_agent,
30
+ builder: middleware,
31
+ headers: {
32
+ accept: 'application/json',
33
+ user_agent: user_agent,
34
34
  },
35
- :request => {
36
- :open_timeout => 10,
37
- :timeout => 30,
35
+ request: {
36
+ open_timeout: 10,
37
+ timeout: 30,
38
38
  },
39
- :proxy => proxy,
39
+ proxy: proxy,
40
40
  }
41
41
  end
42
42
 
@@ -69,7 +69,7 @@ module Twitter
69
69
  arguments = Twitter::Arguments.new(args)
70
70
  pmap(arguments) do |tweet|
71
71
  begin
72
- perform_post_with_object('/1.1/favorites/create.json', arguments.options.merge(:id => extract_id(tweet)), Twitter::Tweet)
72
+ perform_post_with_object('/1.1/favorites/create.json', arguments.options.merge(id: extract_id(tweet)), Twitter::Tweet)
73
73
  rescue Twitter::Error::AlreadyFavorited, Twitter::Error::NotFound
74
74
  next
75
75
  end
@@ -96,7 +96,7 @@ module Twitter
96
96
  def favorite!(*args)
97
97
  arguments = Twitter::Arguments.new(args)
98
98
  pmap(arguments) do |tweet|
99
- perform_post_with_object('/1.1/favorites/create.json', arguments.options.merge(:id => extract_id(tweet)), Twitter::Tweet)
99
+ perform_post_with_object('/1.1/favorites/create.json', arguments.options.merge(id: extract_id(tweet)), Twitter::Tweet)
100
100
  end
101
101
  end
102
102
  alias create_favorite! favorite!
@@ -328,7 +328,7 @@ module Twitter
328
328
  # @option options [String] :mode ('public') Whether your list is public or private. Values can be 'public' or 'private'.
329
329
  # @option options [String] :description The description to give the list.
330
330
  def create_list(name, options = {})
331
- perform_post_with_object('/1.1/lists/create.json', options.merge(:name => name), Twitter::List)
331
+ perform_post_with_object('/1.1/lists/create.json', options.merge(name: name), Twitter::List)
332
332
  end
333
333
  deprecate_alias :list_create, :create_list
334
334
 
@@ -56,7 +56,7 @@ module Twitter
56
56
  conn = connection.dup
57
57
  conn.builder.swap(4, Twitter::REST::Response::ParseErrorJson)
58
58
  response = conn.post('/oauth/request_token?x_auth_mode=reverse_auth') do |request|
59
- request.headers[:authorization] = Twitter::Headers.new(self, :post, 'https://api.twitter.com/oauth/request_token', :x_auth_mode => 'reverse_auth').oauth_auth_header.to_s
59
+ request.headers[:authorization] = Twitter::Headers.new(self, :post, 'https://api.twitter.com/oauth/request_token', x_auth_mode: 'reverse_auth').oauth_auth_header.to_s
60
60
  end
61
61
  response.body
62
62
  end
@@ -44,4 +44,4 @@ module Twitter
44
44
  end
45
45
  end
46
46
 
47
- Faraday::Request.register_middleware :twitter_multipart_with_file => Twitter::REST::Request::MultipartWithFile
47
+ Faraday::Request.register_middleware twitter_multipart_with_file: Twitter::REST::Request::MultipartWithFile
@@ -12,7 +12,7 @@ module Twitter
12
12
  when WHITESPACE_REGEX, nil
13
13
  nil
14
14
  else
15
- JSON.parse(body, :symbolize_names => true)
15
+ JSON.parse(body, symbolize_names: true)
16
16
  end
17
17
  end
18
18
 
@@ -28,4 +28,4 @@ module Twitter
28
28
  end
29
29
  end
30
30
 
31
- Faraday::Response.register_middleware :twitter_parse_json => Twitter::REST::Response::ParseJson
31
+ Faraday::Response.register_middleware twitter_parse_json: Twitter::REST::Response::ParseJson
@@ -29,4 +29,4 @@ module Twitter
29
29
  end
30
30
  end
31
31
 
32
- Faraday::Response.register_middleware :twitter_raise_error => Twitter::REST::Response::RaiseError
32
+ Faraday::Response.register_middleware twitter_raise_error: Twitter::REST::Response::RaiseError
@@ -63,7 +63,7 @@ module Twitter
63
63
  # @param query [String] The query of the search the user would like to save.
64
64
  # @param options [Hash] A customizable set of options.
65
65
  def create_saved_search(query, options = {})
66
- perform_post_with_object('/1.1/saved_searches/create.json', options.merge(:query => query), Twitter::SavedSearch)
66
+ perform_post_with_object('/1.1/saved_searches/create.json', options.merge(query: query), Twitter::SavedSearch)
67
67
  end
68
68
  deprecate_alias :saved_search_create, :create_saved_search
69
69
 
@@ -27,7 +27,7 @@ module Twitter
27
27
  # @return [Twitter::SearchResults] Return tweets that match a specified query with search metadata
28
28
  def search(q, options = {})
29
29
  options[:count] ||= MAX_TWEETS_PER_REQUEST
30
- request = Twitter::REST::Request.new(self, :get, '/1.1/search/tweets.json', options.merge(:q => q))
30
+ request = Twitter::REST::Request.new(self, :get, '/1.1/search/tweets.json', options.merge(q: q))
31
31
  Twitter::SearchResults.new(request)
32
32
  end
33
33
  end
@@ -76,7 +76,7 @@ module Twitter
76
76
  def statuses(*args)
77
77
  arguments = Twitter::Arguments.new(args)
78
78
  flat_pmap(arguments.each_slice(MAX_TWEETS_PER_REQUEST)) do |tweets|
79
- perform_post_with_objects('/1.1/statuses/lookup.json', arguments.options.merge(:id => tweets.collect { |u| extract_id(u) }.join(',')), Twitter::Tweet)
79
+ perform_post_with_objects('/1.1/statuses/lookup.json', arguments.options.merge(id: tweets.collect { |u| extract_id(u) }.join(',')), Twitter::Tweet)
80
80
  end
81
81
  end
82
82
 
@@ -127,7 +127,7 @@ module Twitter
127
127
  def update(status, options = {})
128
128
  update!(status, options)
129
129
  rescue Twitter::Error::DuplicateStatus
130
- user_timeline(:count => 1).first
130
+ user_timeline(count: 1).first
131
131
  end
132
132
 
133
133
  # Updates the authenticating user's status
@@ -155,7 +155,7 @@ module Twitter
155
155
  hash = options.dup
156
156
  hash[:in_reply_to_status_id] = hash.delete(:in_reply_to_status).id unless hash[:in_reply_to_status].nil?
157
157
  hash[:place_id] = hash.delete(:place).woeid unless hash[:place].nil?
158
- perform_post_with_object('/1.1/statuses/update.json', hash.merge(:status => status), Twitter::Tweet)
158
+ perform_post_with_object('/1.1/statuses/update.json', hash.merge(status: status), Twitter::Tweet)
159
159
  end
160
160
 
161
161
  # Retweets the specified Tweets as the authenticating user
@@ -37,7 +37,7 @@ module Twitter
37
37
  # @param options [Hash] A customizable set of options.
38
38
  def tweet_count(uri, options = {})
39
39
  connection = Faraday.new('https://cdn.api.twitter.com', connection_options)
40
- connection.get('/1/urls/count.json', options.merge(:url => uri.to_s)).body[:count]
40
+ connection.get('/1/urls/count.json', options.merge(url: uri.to_s)).body[:count]
41
41
  end
42
42
  end
43
43
  end
@@ -34,7 +34,7 @@ module Twitter
34
34
  request_method = options.size.zero? ? :get : :post
35
35
  response = perform_request(request_method.to_sym, '/1.1/account/settings.json', options)
36
36
  # https://dev.twitter.com/issues/59
37
- response.update(:trend_location => response.fetch(:trend_location, []).first)
37
+ response.update(trend_location: response.fetch(:trend_location, []).first)
38
38
  Twitter::Settings.new(response)
39
39
  end
40
40
 
@@ -62,7 +62,7 @@ module Twitter
62
62
  # @param device [String] Must be one of: 'sms', 'none'.
63
63
  # @param options [Hash] A customizable set of options.
64
64
  def update_delivery_device(device, options = {})
65
- perform_post_with_object('/1.1/account/update_delivery_device.json', options.merge(:device => device), Twitter::User)
65
+ perform_post_with_object('/1.1/account/update_delivery_device.json', options.merge(device: device), Twitter::User)
66
66
  end
67
67
 
68
68
  # Sets values that users are able to set under the "Account" tab of their settings page
@@ -93,7 +93,7 @@ module Twitter
93
93
  # @param options [Hash] A customizable set of options.
94
94
  # @option options [Boolean] :tile Whether or not to tile the background image. If set to true the background image will be displayed tiled. The image will not be tiled otherwise.
95
95
  def update_profile_background_image(image, options = {})
96
- perform_post_with_object('/1.1/account/update_profile_background_image.json', options.merge(:image => image), Twitter::User)
96
+ perform_post_with_object('/1.1/account/update_profile_background_image.json', options.merge(image: image), Twitter::User)
97
97
  end
98
98
 
99
99
  # Sets one or more hex values that control the color scheme of the authenticating user's profile
@@ -125,7 +125,7 @@ module Twitter
125
125
  # @param image [File] The avatar image for the profile, base64-encoded. Must be a valid GIF, JPG, or PNG image of less than 700 kilobytes in size. Images with width larger than 500 pixels will be scaled down. Animated GIFs will be converted to a static GIF of the first frame, removing the animation.
126
126
  # @param options [Hash] A customizable set of options.
127
127
  def update_profile_image(image, options = {})
128
- perform_post_with_object('/1.1/account/update_profile_image.json', options.merge(:image => image), Twitter::User)
128
+ perform_post_with_object('/1.1/account/update_profile_image.json', options.merge(image: image), Twitter::User)
129
129
  end
130
130
 
131
131
  # Returns an array of user objects that the authenticating user is blocking
@@ -286,7 +286,7 @@ module Twitter
286
286
  # @option options [Integer] :count The number of people to retrieve. Maxiumum of 20 allowed per page.
287
287
  # @option options [Integer] :page Specifies the page of results to retrieve.
288
288
  def user_search(query, options = {})
289
- perform_get_with_objects('/1.1/users/search.json', options.merge(:q => query), Twitter::User)
289
+ perform_get_with_objects('/1.1/users/search.json', options.merge(q: query), Twitter::User)
290
290
  end
291
291
 
292
292
  # Returns an array of users that the specified user can contribute to
@@ -357,7 +357,7 @@ module Twitter
357
357
  # @option options [Integer] :offset_left The number of pixels by which to offset the uploaded image from the left. Use with height, width, and offset_top to select the desired region of the image to use.
358
358
  # @option options [Integer] :offset_top The number of pixels by which to offset the uploaded image from the top. Use with height, width, and offset_left to select the desired region of the image to use.
359
359
  def update_profile_banner(banner, options = {})
360
- perform_post('/1.1/account/update_profile_banner.json', options.merge(:banner => banner))
360
+ perform_post('/1.1/account/update_profile_banner.json', options.merge(banner: banner))
361
361
  true
362
362
  end
363
363
 
@@ -147,7 +147,7 @@ module Twitter
147
147
  def parallel_objects_from_response(klass, request_method, path, args)
148
148
  arguments = Twitter::Arguments.new(args)
149
149
  pmap(arguments) do |object|
150
- perform_request_with_object(request_method, path, arguments.options.merge(:id => extract_id(object)), klass)
150
+ perform_request_with_object(request_method, path, arguments.options.merge(id: extract_id(object)), klass)
151
151
  end
152
152
  end
153
153
 
@@ -163,7 +163,7 @@ module Twitter
163
163
  end
164
164
 
165
165
  def user_id
166
- @user_id ||= verify_credentials(:skip_status => true).id
166
+ @user_id ||= verify_credentials(skip_status: true).id
167
167
  end
168
168
 
169
169
  def user_id?
@@ -73,7 +73,7 @@ module Twitter
73
73
  def site(*args, &block)
74
74
  arguments = Arguments.new(args)
75
75
  user_ids = collect_user_ids(arguments)
76
- request(:get, 'https://sitestream.twitter.com:443/1.1/site.json', arguments.options.merge(:follow => user_ids.join(',')), &block)
76
+ request(:get, 'https://sitestream.twitter.com:443/1.1/site.json', arguments.options.merge(follow: user_ids.join(',')), &block)
77
77
  end
78
78
 
79
79
  # Streams messages for a single user
@@ -109,8 +109,8 @@ module Twitter
109
109
  def request(method, uri, params)
110
110
  before_request.call
111
111
  authorization = Twitter::Headers.new(self, method, uri, params).oauth_auth_header.to_s
112
- headers = default_headers.merge(:authorization => authorization)
113
- request = HTTP::Request.new(:verb => method, :uri => uri + '?' + to_url_params(params), :headers => headers)
112
+ headers = default_headers.merge(authorization: authorization)
113
+ request = HTTP::Request.new(verb: method, uri: uri + '?' + to_url_params(params), headers: headers)
114
114
  response = Streaming::Response.new do |data|
115
115
  if item = Streaming::MessageParser.parse(data) # rubocop:disable AssignmentInCondition
116
116
  yield(item)
@@ -127,8 +127,8 @@ module Twitter
127
127
 
128
128
  def default_headers
129
129
  @default_headers ||= {
130
- :accept => '*/*',
131
- :user_agent => user_agent,
130
+ accept: '*/*',
131
+ user_agent: user_agent,
132
132
  }
133
133
  end
134
134
 
@@ -1,4 +1,7 @@
1
1
  require 'buftok'
2
+ require 'http'
3
+ require 'json'
4
+ require 'twitter/error'
2
5
 
3
6
  module Twitter
4
7
  module Streaming
@@ -24,7 +27,7 @@ module Twitter
24
27
  def on_body(data)
25
28
  @tokenizer.extract(data).each do |line|
26
29
  next if line.empty?
27
- @block.call(JSON.parse(line, :symbolize_names => true))
30
+ @block.call(JSON.parse(line, symbolize_names: true))
28
31
  end
29
32
  end
30
33
  end
@@ -54,7 +54,7 @@ module Twitter
54
54
  end
55
55
 
56
56
  def define_entity_uris_method(key1, key2)
57
- define_method(key1) do ||
57
+ define_method(key1) do
58
58
  @attrs.fetch(:entities, {}).fetch(key2, {}).fetch(:urls, []).collect do |url|
59
59
  Entity::URI.new(url)
60
60
  end
@@ -63,7 +63,7 @@ module Twitter
63
63
  end
64
64
 
65
65
  def define_entity_uris_predicate_method(key1)
66
- define_method(:"#{key1}?") do ||
66
+ define_method(:"#{key1}?") do
67
67
  send(:"#{key1}").any?
68
68
  end
69
69
  memoize(:"#{key1}?")
@@ -4,12 +4,12 @@ module Twitter
4
4
 
5
5
  # @return [Integer]
6
6
  def major
7
- 5
7
+ 6
8
8
  end
9
9
 
10
10
  # @return [Integer]
11
11
  def minor
12
- 17
12
+ 0
13
13
  end
14
14
 
15
15
  # @return [Integer]
@@ -25,10 +25,10 @@ module Twitter
25
25
  # @return [Hash]
26
26
  def to_h
27
27
  {
28
- :major => major,
29
- :minor => minor,
30
- :patch => patch,
31
- :pre => pre,
28
+ major: major,
29
+ minor: minor,
30
+ patch: patch,
31
+ pre: pre,
32
32
  }
33
33
  end
34
34
 
@@ -3,16 +3,15 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
3
  require 'twitter/version'
4
4
 
5
5
  Gem::Specification.new do |spec|
6
- spec.add_dependency 'addressable', '~> 2.3'
6
+ spec.add_dependency 'addressable', '~> 2.5'
7
7
  spec.add_dependency 'buftok', '~> 0.2.0'
8
- spec.add_dependency 'equalizer', '0.0.10'
9
- spec.add_dependency 'faraday', '~> 0.9.0'
10
- spec.add_dependency 'http', '~> 1.0'
8
+ spec.add_dependency 'equalizer', '0.0.11'
9
+ spec.add_dependency 'faraday', '~> 0.10.0'
10
+ spec.add_dependency 'http', '~> 2.1'
11
11
  spec.add_dependency 'http_parser.rb', '~> 0.6.0'
12
- spec.add_dependency 'json', '~> 1.8'
13
- spec.add_dependency 'memoizable', '~> 0.4.0'
14
- spec.add_dependency 'naught', '~> 1.0'
15
- spec.add_dependency 'simple_oauth', '~> 0.3.0'
12
+ spec.add_dependency 'memoizable', '~> 0.4.2'
13
+ spec.add_dependency 'naught', '~> 1.1'
14
+ spec.add_dependency 'simple_oauth', '~> 0.3.1'
16
15
  spec.add_development_dependency 'bundler', '~> 1.0'
17
16
  spec.authors = ['Erik Michaels-Ober', 'John Nunemaker', 'Wynn Netherland', 'Steve Richert', 'Steve Agalloco']
18
17
  spec.description = 'A Ruby interface to the Twitter API.'
@@ -22,6 +21,7 @@ Gem::Specification.new do |spec|
22
21
  spec.licenses = %w(MIT)
23
22
  spec.name = 'twitter'
24
23
  spec.require_paths = %w(lib)
24
+ spec.required_ruby_version = '>= 2'
25
25
  spec.required_rubygems_version = '>= 1.3.5'
26
26
  spec.summary = spec.description
27
27
  spec.version = Twitter::Version
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: 5.17.0
4
+ version: 6.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erik Michaels-Ober
@@ -20,14 +20,14 @@ dependencies:
20
20
  requirements:
21
21
  - - "~>"
22
22
  - !ruby/object:Gem::Version
23
- version: '2.3'
23
+ version: '2.5'
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
27
27
  requirements:
28
28
  - - "~>"
29
29
  - !ruby/object:Gem::Version
30
- version: '2.3'
30
+ version: '2.5'
31
31
  - !ruby/object:Gem::Dependency
32
32
  name: buftok
33
33
  requirement: !ruby/object:Gem::Requirement
@@ -48,42 +48,42 @@ dependencies:
48
48
  requirements:
49
49
  - - '='
50
50
  - !ruby/object:Gem::Version
51
- version: 0.0.10
51
+ version: 0.0.11
52
52
  type: :runtime
53
53
  prerelease: false
54
54
  version_requirements: !ruby/object:Gem::Requirement
55
55
  requirements:
56
56
  - - '='
57
57
  - !ruby/object:Gem::Version
58
- version: 0.0.10
58
+ version: 0.0.11
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: faraday
61
61
  requirement: !ruby/object:Gem::Requirement
62
62
  requirements:
63
63
  - - "~>"
64
64
  - !ruby/object:Gem::Version
65
- version: 0.9.0
65
+ version: 0.10.0
66
66
  type: :runtime
67
67
  prerelease: false
68
68
  version_requirements: !ruby/object:Gem::Requirement
69
69
  requirements:
70
70
  - - "~>"
71
71
  - !ruby/object:Gem::Version
72
- version: 0.9.0
72
+ version: 0.10.0
73
73
  - !ruby/object:Gem::Dependency
74
74
  name: http
75
75
  requirement: !ruby/object:Gem::Requirement
76
76
  requirements:
77
77
  - - "~>"
78
78
  - !ruby/object:Gem::Version
79
- version: '1.0'
79
+ version: '2.1'
80
80
  type: :runtime
81
81
  prerelease: false
82
82
  version_requirements: !ruby/object:Gem::Requirement
83
83
  requirements:
84
84
  - - "~>"
85
85
  - !ruby/object:Gem::Version
86
- version: '1.0'
86
+ version: '2.1'
87
87
  - !ruby/object:Gem::Dependency
88
88
  name: http_parser.rb
89
89
  requirement: !ruby/object:Gem::Requirement
@@ -98,62 +98,48 @@ dependencies:
98
98
  - - "~>"
99
99
  - !ruby/object:Gem::Version
100
100
  version: 0.6.0
101
- - !ruby/object:Gem::Dependency
102
- name: json
103
- requirement: !ruby/object:Gem::Requirement
104
- requirements:
105
- - - "~>"
106
- - !ruby/object:Gem::Version
107
- version: '1.8'
108
- type: :runtime
109
- prerelease: false
110
- version_requirements: !ruby/object:Gem::Requirement
111
- requirements:
112
- - - "~>"
113
- - !ruby/object:Gem::Version
114
- version: '1.8'
115
101
  - !ruby/object:Gem::Dependency
116
102
  name: memoizable
117
103
  requirement: !ruby/object:Gem::Requirement
118
104
  requirements:
119
105
  - - "~>"
120
106
  - !ruby/object:Gem::Version
121
- version: 0.4.0
107
+ version: 0.4.2
122
108
  type: :runtime
123
109
  prerelease: false
124
110
  version_requirements: !ruby/object:Gem::Requirement
125
111
  requirements:
126
112
  - - "~>"
127
113
  - !ruby/object:Gem::Version
128
- version: 0.4.0
114
+ version: 0.4.2
129
115
  - !ruby/object:Gem::Dependency
130
116
  name: naught
131
117
  requirement: !ruby/object:Gem::Requirement
132
118
  requirements:
133
119
  - - "~>"
134
120
  - !ruby/object:Gem::Version
135
- version: '1.0'
121
+ version: '1.1'
136
122
  type: :runtime
137
123
  prerelease: false
138
124
  version_requirements: !ruby/object:Gem::Requirement
139
125
  requirements:
140
126
  - - "~>"
141
127
  - !ruby/object:Gem::Version
142
- version: '1.0'
128
+ version: '1.1'
143
129
  - !ruby/object:Gem::Dependency
144
130
  name: simple_oauth
145
131
  requirement: !ruby/object:Gem::Requirement
146
132
  requirements:
147
133
  - - "~>"
148
134
  - !ruby/object:Gem::Version
149
- version: 0.3.0
135
+ version: 0.3.1
150
136
  type: :runtime
151
137
  prerelease: false
152
138
  version_requirements: !ruby/object:Gem::Requirement
153
139
  requirements:
154
140
  - - "~>"
155
141
  - !ruby/object:Gem::Version
156
- version: 0.3.0
142
+ version: 0.3.1
157
143
  - !ruby/object:Gem::Dependency
158
144
  name: bundler
159
145
  requirement: !ruby/object:Gem::Requirement
@@ -281,7 +267,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
281
267
  requirements:
282
268
  - - ">="
283
269
  - !ruby/object:Gem::Version
284
- version: '0'
270
+ version: '2'
285
271
  required_rubygems_version: !ruby/object:Gem::Requirement
286
272
  requirements:
287
273
  - - ">="