t 3.1.0 → 4.0.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.
data/lib/t/utils.rb CHANGED
@@ -3,45 +3,45 @@ module T
3
3
  private
4
4
 
5
5
  # https://github.com/rails/rails/blob/bd8a970/actionpack/lib/action_view/helpers/date_helper.rb
6
- def distance_of_time_in_words(from_time, to_time = Time.now) # rubocop:disable CyclomaticComplexity
6
+ def distance_of_time_in_words(from_time, to_time = Time.now) # rubocop:disable Metrics/CyclomaticComplexity
7
7
  seconds = (to_time - from_time).abs
8
8
  minutes = seconds / 60
9
9
  case minutes
10
10
  when 0...1
11
11
  case seconds
12
12
  when 0...1
13
- 'a split second'
13
+ "a split second"
14
14
  when 1...2
15
- 'a second'
15
+ "a second"
16
16
  when 2...60
17
- format('%d seconds', seconds)
17
+ format("%<seconds>d seconds", seconds: seconds)
18
18
  end
19
19
  when 1...2
20
- 'a minute'
20
+ "a minute"
21
21
  when 2...60
22
- format('%d minutes', minutes)
22
+ format("%<minutes>d minutes", minutes: minutes)
23
23
  when 60...120
24
- 'an hour'
24
+ "an hour"
25
25
  # 120 minutes up to 23.5 hours
26
26
  when 120...1410
27
- format('%d hours', (minutes.to_f / 60.0).round)
27
+ format("%<hours>d hours", hours: (minutes.to_f / 60.0).round)
28
28
  # 23.5 hours up to 48 hours
29
29
  when 1410...2880
30
- 'a day'
30
+ "a day"
31
31
  # 48 hours up to 29.5 days
32
32
  when 2880...42_480
33
- format('%d days', (minutes.to_f / 1440.0).round)
33
+ format("%<days>d days", days: (minutes.to_f / 1440.0).round)
34
34
  # 29.5 days up to 60 days
35
35
  when 42_480...86_400
36
- 'a month'
36
+ "a month"
37
37
  # 60 days up to 11.5 months
38
38
  when 86_400...503_700
39
- format('%d months', (minutes.to_f / 43_800.0).round)
39
+ format("%<months>d months", months: (minutes.to_f / 43_800.0).round)
40
40
  # 11.5 months up to 2 years
41
41
  when 503_700...1_051_200
42
- 'a year'
42
+ "a year"
43
43
  else
44
- format('%d years', (minutes.to_f / 525_600.0).round)
44
+ format("%<years>d years", years: (minutes.to_f / 525_600.0).round)
45
45
  end
46
46
  end
47
47
  alias time_ago_in_words distance_of_time_in_words
@@ -49,7 +49,7 @@ module T
49
49
 
50
50
  def fetch_users(users, options)
51
51
  format_users!(users, options)
52
- require 'retryable'
52
+ require "retryable"
53
53
  users = Retryable.retryable(tries: 3, on: Twitter::Error, sleep: 0) do
54
54
  yield users
55
55
  end
@@ -57,29 +57,29 @@ module T
57
57
  end
58
58
 
59
59
  def format_users!(users, options)
60
- require 't/core_ext/string'
61
- options['id'] ? users.collect!(&:to_i) : users.collect!(&:strip_ats)
60
+ require "t/core_ext/string"
61
+ options["id"] ? users.collect!(&:to_i) : users.collect!(&:strip_ats)
62
62
  end
63
63
 
64
64
  def extract_owner(user_list, options)
65
- owner, list_name = user_list.split('/')
65
+ owner, list_name = user_list.split("/")
66
66
  if list_name.nil?
67
67
  list_name = owner
68
68
  owner = @rcfile.active_profile[0]
69
69
  else
70
- require 't/core_ext/string'
71
- owner = options['id'] ? owner.to_i : owner.strip_ats
70
+ require "t/core_ext/string"
71
+ owner = options["id"] ? owner.to_i : owner.strip_ats
72
72
  end
73
73
  [owner, list_name]
74
74
  end
75
75
 
76
76
  def strip_tags(html)
77
- html.gsub(/<.+?>/, '')
77
+ html.gsub(/<.+?>/, "")
78
78
  end
79
79
 
80
- def number_with_delimiter(number, delimiter = ',')
81
- digits = number.to_s.split(//)
82
- groups = digits.reverse.each_slice(3).collect { |g| g.join('') }
80
+ def number_with_delimiter(number, delimiter = ",")
81
+ digits = number.to_s.chars
82
+ groups = digits.reverse.each_slice(3).collect(&:join)
83
83
  groups.join(delimiter).reverse
84
84
  end
85
85
 
@@ -88,7 +88,7 @@ module T
88
88
  end
89
89
 
90
90
  def decode_full_text(message, decode_full_uris = false)
91
- require 'htmlentities'
91
+ require "htmlentities"
92
92
  text = HTMLEntities.new.decode(message.full_text)
93
93
  text = decode_uris(text, message.uris) if decode_full_uris
94
94
  text
data/lib/t/version.rb CHANGED
@@ -1,14 +1,14 @@
1
1
  module T
2
2
  class Version
3
- MAJOR = 3
4
- MINOR = 1
3
+ MAJOR = 4
4
+ MINOR = 0
5
5
  PATCH = 0
6
6
  PRE = nil
7
7
 
8
8
  class << self
9
9
  # @return [String]
10
10
  def to_s
11
- [MAJOR, MINOR, PATCH, PRE].compact.join('.')
11
+ [MAJOR, MINOR, PATCH, PRE].compact.join(".")
12
12
  end
13
13
  end
14
14
  end
data/lib/t.rb CHANGED
@@ -1,5 +1,5 @@
1
- require 't/cli'
2
- require 'time'
1
+ require "t/cli"
2
+ require "time"
3
3
 
4
4
  module T
5
5
  class << self
data/t.gemspec CHANGED
@@ -1,27 +1,28 @@
1
1
  # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
2
+
3
+ lib = File.expand_path("lib", __dir__)
3
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 't/version'
5
+ require "t/version"
5
6
 
6
7
  Gem::Specification.new do |spec|
7
- spec.add_dependency 'launchy', '~> 2.4'
8
- spec.add_dependency 'geokit', '~> 1.9'
9
- spec.add_dependency 'htmlentities', '~> 4.3'
10
- spec.add_dependency 'oauth', '~> 0.5.1'
11
- spec.add_dependency 'retryable', '~> 2.0'
12
- spec.add_dependency 'thor', ['>= 0.19.1', '< 2']
13
- spec.add_dependency 'twitter', '~> 6.0'
14
- spec.add_development_dependency 'bundler', '~> 1.0'
15
- spec.author = 'Erik Michaels-Ober'
16
- spec.description = 'A command-line power tool for Twitter.'
17
- spec.email = 'sferik@gmail.com'
18
- spec.executables = Dir['bin/*'].map { |f| File.basename(f) }
19
- spec.files = %w(CONTRIBUTING.md LICENSE.md README.md t.gemspec) + Dir['bin/*'] + Dir['lib/**/*.rb']
20
- spec.homepage = 'http://sferik.github.com/t/'
21
- spec.licenses = %w(MIT)
22
- spec.name = 't'
23
- spec.require_paths = %w(lib)
24
- spec.required_ruby_version = '>= 2'
25
- spec.summary = 'CLI for Twitter'
8
+ spec.add_dependency "geokit", "~> 1.9"
9
+ spec.add_dependency "htmlentities", "~> 4.3"
10
+ spec.add_dependency "launchy", "~> 2.4"
11
+ spec.add_dependency "oauth", "~> 0.5.1"
12
+ spec.add_dependency "retryable", "~> 3.0"
13
+ spec.add_dependency "thor", [">= 0.19.1", "< 2"]
14
+ spec.add_dependency "twitter", "~> 8.0"
15
+ spec.author = "Erik Berlin"
16
+ spec.description = "A command-line power tool for Twitter."
17
+ spec.email = "sferik@gmail.com"
18
+ spec.executables = Dir["bin/*"].map { |f| File.basename(f) }
19
+ spec.files = %w[CONTRIBUTING.md LICENSE.md README.md t.gemspec] + Dir["bin/*"] + Dir["lib/**/*.rb"]
20
+ spec.homepage = "http://sferik.github.com/t/"
21
+ spec.licenses = %w[MIT]
22
+ spec.metadata["rubygems_mfa_required"] = "true"
23
+ spec.name = "t"
24
+ spec.require_paths = %w[lib]
25
+ spec.required_ruby_version = ">= 3.0"
26
+ spec.summary = "CLI for Twitter"
26
27
  spec.version = T::Version
27
28
  end
metadata CHANGED
@@ -1,57 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: t
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.0
4
+ version: 4.0.0
5
5
  platform: ruby
6
6
  authors:
7
- - Erik Michaels-Ober
8
- autorequire:
7
+ - Erik Berlin
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-12-24 00:00:00.000000000 Z
11
+ date: 2023-04-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: launchy
14
+ name: geokit
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.4'
19
+ version: '1.9'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '2.4'
26
+ version: '1.9'
27
27
  - !ruby/object:Gem::Dependency
28
- name: geokit
28
+ name: htmlentities
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.9'
33
+ version: '4.3'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.9'
40
+ version: '4.3'
41
41
  - !ruby/object:Gem::Dependency
42
- name: htmlentities
42
+ name: launchy
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '4.3'
47
+ version: '2.4'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '4.3'
54
+ version: '2.4'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: oauth
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -72,14 +72,14 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '2.0'
75
+ version: '3.0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '2.0'
82
+ version: '3.0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: thor
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -106,28 +106,14 @@ dependencies:
106
106
  requirements:
107
107
  - - "~>"
108
108
  - !ruby/object:Gem::Version
109
- version: '6.0'
109
+ version: '8.0'
110
110
  type: :runtime
111
111
  prerelease: false
112
112
  version_requirements: !ruby/object:Gem::Requirement
113
113
  requirements:
114
114
  - - "~>"
115
115
  - !ruby/object:Gem::Version
116
- version: '6.0'
117
- - !ruby/object:Gem::Dependency
118
- name: bundler
119
- requirement: !ruby/object:Gem::Requirement
120
- requirements:
121
- - - "~>"
122
- - !ruby/object:Gem::Version
123
- version: '1.0'
124
- type: :development
125
- prerelease: false
126
- version_requirements: !ruby/object:Gem::Requirement
127
- requirements:
128
- - - "~>"
129
- - !ruby/object:Gem::Version
130
- version: '1.0'
116
+ version: '8.0'
131
117
  description: A command-line power tool for Twitter.
132
118
  email: sferik@gmail.com
133
119
  executables:
@@ -160,8 +146,9 @@ files:
160
146
  homepage: http://sferik.github.com/t/
161
147
  licenses:
162
148
  - MIT
163
- metadata: {}
164
- post_install_message:
149
+ metadata:
150
+ rubygems_mfa_required: 'true'
151
+ post_install_message:
165
152
  rdoc_options: []
166
153
  require_paths:
167
154
  - lib
@@ -169,16 +156,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
169
156
  requirements:
170
157
  - - ">="
171
158
  - !ruby/object:Gem::Version
172
- version: '2'
159
+ version: '3.0'
173
160
  required_rubygems_version: !ruby/object:Gem::Requirement
174
161
  requirements:
175
162
  - - ">="
176
163
  - !ruby/object:Gem::Version
177
164
  version: '0'
178
165
  requirements: []
179
- rubyforge_project:
180
- rubygems_version: 2.5.2
181
- signing_key:
166
+ rubygems_version: 3.4.12
167
+ signing_key:
182
168
  specification_version: 4
183
169
  summary: CLI for Twitter
184
170
  test_files: []