lita 4.6.0 → 4.8.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 411c330d69cc62203d31374e506722511a8582aa
4
- data.tar.gz: 36b57d4429140175ab4baa79a322dc13beac79c0
2
+ SHA256:
3
+ metadata.gz: 055bddddd7e8a6659039339de7eed646d12916e70869ca54be4e5d3547ec39fb
4
+ data.tar.gz: 4765f8c35b5e3f8deec77a3ea6a7a4333e4ce6220adefc713df7d51e966dc175
5
5
  SHA512:
6
- metadata.gz: 287c23415f235842e613290b117557624affe4e1357430e873128066f719d6a7d79fd1847a52a97c30b91d40d8a7a1cf6287c2044a05f619749d023bee55fd78
7
- data.tar.gz: 4a44d63d33e8420f474a48ef63311f4f324f272da4dedf60399e86ee3f69b7a1c9f29d61adb092a18759e1b1341ede9fe31b57026666d1f118668e138fbe3b5e
6
+ metadata.gz: 6ebf1592790f08cebd83768ab4cecb872ca33f200ad0b79d1de7e8e2495d28f5a8757054e3c4b641d199453be3aec8e8414b5e4c216c5c6df1fa9be98ac3d873
7
+ data.tar.gz: a5cee53960718b60109d95480bba07c8950ae42ec386169f87e9cbc18f7e91bfcaa85e1fdf609f76531080d8ef6639050d6d06b611cec3e29c23f49d528797f0
@@ -2,19 +2,18 @@ language: ruby
2
2
  sudo: false
3
3
  cache: bundler
4
4
  rvm:
5
- - 2.0
6
- - 2.1
7
- - 2.2
8
- - jruby-9.0.0.0
9
- - rbx-2
5
+ - 2.5
6
+ - 2.6
7
+ - 2.7
8
+ - jruby
10
9
  matrix:
11
10
  allow_failures:
12
11
  - rvm: jruby-9.0.0.0
13
- - rvm: rbx-2
14
12
  fast_finish: true
15
- script: bundle exec rake
13
+ script: script/ci
16
14
  before_install:
17
15
  - gem update --system
16
+ - gem update bundler
18
17
  services:
19
18
  - redis-server
20
19
  branches:
data/Rakefile CHANGED
@@ -1,8 +1 @@
1
1
  require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
3
- require "rubocop/rake_task"
4
-
5
- RSpec::Core::RakeTask.new
6
- RuboCop::RakeTask.new
7
-
8
- task default: [:spec, :rubocop]
@@ -47,7 +47,7 @@ module Lita
47
47
  # @param hash [Hash] An optional hash of values to be interpolated in the string.
48
48
  # @return [String] The translated string.
49
49
  def translate(key, hash = {})
50
- I18n.translate("lita.adapters.#{namespace}.#{key}", hash)
50
+ I18n.translate("lita.adapters.#{namespace}.#{key}", **hash)
51
51
  end
52
52
 
53
53
  alias_method :t, :translate
@@ -12,7 +12,12 @@ module Lita
12
12
  I18n.reload!
13
13
  end
14
14
 
15
- # Sets I18n.locale, normalizing the provided locale name.
15
+ # Sets +I18n.locale+, normalizing the provided locale name.
16
+ #
17
+ # Note that setting this only affects the current thread. Since handler
18
+ # methods are dispatched in new threads, changing the locale globally will
19
+ # require calling this method at the start of every handler method.
20
+ # Alternatively, use {Lita#default_locale=} which will affect all threads.
16
21
  # @param new_locale [Symbol, String] The code of the locale to use.
17
22
  # @return [void]
18
23
  # @since 3.0.0
@@ -20,6 +25,16 @@ module Lita
20
25
  I18n.locale = new_locale.to_s.tr("_", "-")
21
26
  end
22
27
 
28
+ # Sets +I18n.default_locale+, normalizing the provided locale name.
29
+ #
30
+ # This is preferred over {Lita#locale=} as it affects all threads.
31
+ # @param new_locale [Symbol, String] The code of the locale to use.
32
+ # @return [void]
33
+ # @since 4.8.0
34
+ def default_locale=(new_locale)
35
+ I18n.default_locale = new_locale.to_s.tr("_", "-")
36
+ end
37
+
23
38
  # The absolute path to Lita's templates directory.
24
39
  # @return [String] The path.
25
40
  # @since 3.0.0
@@ -33,3 +48,4 @@ I18n::Backend::Simple.send(:include, I18n::Backend::Fallbacks)
33
48
  Lita.load_locales(Dir[File.join(Lita.template_root, "locales", "*.yml")])
34
49
  I18n.enforce_available_locales = false
35
50
  Lita.locale = ENV["LANG"] unless ENV["LANG"].nil?
51
+ Lita.default_locale = ENV["LANG"] unless ENV["LANG"].nil?
@@ -43,6 +43,7 @@ module Lita
43
43
  config.robot.name = "Lita"
44
44
  config.robot.adapter = :shell
45
45
  config.robot.locale = I18n.locale
46
+ config.robot.default_locale = I18n.default_locale
46
47
  config.robot.log_level = :info
47
48
  config.robot.admins = nil
48
49
  config.robot.log_formatter = nil
@@ -131,6 +131,7 @@ module Lita
131
131
  config :alias, type: String
132
132
  config :adapter, types: [String, Symbol], default: :shell
133
133
  config :locale, types: [String, Symbol], default: I18n.locale
134
+ config :default_locale, types: [String, Symbol], default: I18n.default_locale
134
135
  config :log_level, types: [String, Symbol], default: :info do
135
136
  validate do |value|
136
137
  unless LOG_LEVELS.include?(value.to_s.downcase.strip)
@@ -33,7 +33,7 @@ module Lita
33
33
  # @return [String] The translated string.
34
34
  # @since 3.0.0
35
35
  def translate(key, hash = {})
36
- I18n.translate("lita.handlers.#{namespace}.#{key}", hash)
36
+ I18n.translate("lita.handlers.#{namespace}.#{key}", **hash)
37
37
  end
38
38
 
39
39
  alias_method :t, :translate
@@ -40,7 +40,11 @@ module Lita
40
40
 
41
41
  # A hash of information about Redis.
42
42
  def redis_info
43
- @redis_info ||= redis.info
43
+ @redis_info ||= begin
44
+ r = redis.redis
45
+ r = r.redis while r.respond_to?(:redis)
46
+ r.info
47
+ end
44
48
  end
45
49
 
46
50
  # The current version of Redis.
@@ -11,6 +11,11 @@ module Lita
11
11
  # @return [Lita::Source] The message source.
12
12
  attr_reader :source
13
13
 
14
+ # A hash of arbitrary data that can be populated by Lita adapters and extensions.
15
+ # @return [Hash] The extension data.
16
+ # @since 4.7.0
17
+ attr_reader :extensions
18
+
14
19
  # @!method user
15
20
  # The user who sent the message.
16
21
  # @return [Lita::User] The user.
@@ -34,6 +39,7 @@ module Lita
34
39
  @robot = robot
35
40
  @body = body
36
41
  @source = source
42
+ @extensions = {}
37
43
 
38
44
  name_pattern = "@?#{Regexp.escape(@robot.mention_name)}[:,]?\\s+"
39
45
  alias_pattern = "#{Regexp.escape(@robot.alias)}\\s*" if @robot.alias
@@ -64,7 +64,6 @@ module Lita
64
64
  let(:robot) { Robot.new(registry) }
65
65
  let(:source) { Source.new(user: user) }
66
66
  let(:user) { User.create("1", name: "Test User") }
67
- let(:replies) { robot.chat_service.sent_messages }
68
67
  end
69
68
  end
70
69
 
@@ -76,6 +75,12 @@ module Lita
76
75
  end
77
76
  end
78
77
 
78
+ # An array of strings that have been sent by the robot during the course of a test.
79
+ # @return [Array<String>] The replies.
80
+ def replies
81
+ robot.chat_service.sent_messages
82
+ end
83
+
79
84
  # Sends a message to the robot.
80
85
  # @param body [String] The message to send.
81
86
  # @param as [Lita::User] The user sending the message.
@@ -23,7 +23,7 @@ module Lita
23
23
 
24
24
  # @param source [String] A string to use as the template's content.
25
25
  def initialize(source)
26
- @erb = ERB.new(source, $SAFE, "<>")
26
+ @erb = ERB.new(source, trim_mode: "<>")
27
27
  self.helpers = Set.new
28
28
  end
29
29
 
@@ -1,4 +1,4 @@
1
1
  module Lita
2
2
  # The current version of Lita.
3
- VERSION = "4.6.0"
3
+ VERSION = "4.8.0"
4
4
  end
@@ -18,23 +18,23 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.required_ruby_version = ">= 2.0.0"
21
+ spec.required_ruby_version = ">= 2.5.0"
22
22
 
23
- spec.add_runtime_dependency "bundler", ">= 1.3"
24
- spec.add_runtime_dependency "faraday", ">= 0.8.7"
25
- spec.add_runtime_dependency "http_router", ">= 0.11.2"
26
- spec.add_runtime_dependency "ice_nine", ">= 0.11.0"
27
- spec.add_runtime_dependency "i18n", ">= 0.6.9"
28
- spec.add_runtime_dependency "multi_json", ">= 1.7.7"
29
- spec.add_runtime_dependency "puma", ">= 2.7.1"
30
- spec.add_runtime_dependency "rack", ">= 1.5.2"
31
- spec.add_runtime_dependency "rb-readline", ">= 0.5.1"
32
- spec.add_runtime_dependency "redis-namespace", ">= 1.3.0"
33
- spec.add_runtime_dependency "thor", ">= 0.18.1"
23
+ spec.add_runtime_dependency "bundler", ">= 2.0"
24
+ spec.add_runtime_dependency "faraday", ">= 1.0"
25
+ spec.add_runtime_dependency "http_router", ">= 0.11"
26
+ spec.add_runtime_dependency "ice_nine", ">= 0.11"
27
+ spec.add_runtime_dependency "i18n", ">= 1.8"
28
+ spec.add_runtime_dependency "multi_json", ">= 1.15"
29
+ spec.add_runtime_dependency "puma", ">= 4.3"
30
+ spec.add_runtime_dependency "rack", ">= 2.2"
31
+ spec.add_runtime_dependency "rb-readline", ">= 0.5"
32
+ spec.add_runtime_dependency "redis-namespace", ">= 1.7"
33
+ spec.add_runtime_dependency "thor", ">= 1.0"
34
34
 
35
35
  spec.add_development_dependency "rake"
36
36
  spec.add_development_dependency "rack-test"
37
- spec.add_development_dependency "rspec", ">= 3.0.0"
37
+ spec.add_development_dependency "rspec"
38
38
  spec.add_development_dependency "simplecov"
39
39
  spec.add_development_dependency "coveralls"
40
40
  spec.add_development_dependency "pry"
@@ -0,0 +1,4 @@
1
+ #!/bin/bash
2
+
3
+ bundle exec rspec
4
+ bundle exec rubocop
@@ -3,6 +3,15 @@ require "spec_helper"
3
3
  describe Lita::ConfigurationBuilder do
4
4
  let(:config) { subject.build }
5
5
 
6
+ # For some reason RSpec is no longer capturing tracebacks to
7
+ # stderr, so we do it manually to avoid cluttering the test output.
8
+ around do |example|
9
+ stderr = $stderr
10
+ $stderr = StringIO.new
11
+ example.run
12
+ $stderr = stderr
13
+ end
14
+
6
15
  describe ".load_user_config" do
7
16
  it "loads and evals lita_config.rb" do
8
17
  allow(File).to receive(:exist?).and_return(true)
@@ -233,6 +233,16 @@ describe Lita::DefaultConfiguration, lita: true do
233
233
  expect(config.robot.locale).to eq(:es)
234
234
  end
235
235
 
236
+ it "has a default default locale" do
237
+ expect(config.robot.default_locale).to eq(I18n.default_locale)
238
+ end
239
+
240
+ it "can set a default locale" do
241
+ config.robot.default_locale = :es
242
+
243
+ expect(config.robot.default_locale).to eq(:es)
244
+ end
245
+
236
246
  it "has a default log level" do
237
247
  expect(config.robot.log_level).to eq(:info)
238
248
  end
@@ -92,7 +92,7 @@ describe handler, lita_handler: true do
92
92
  it "calls the error handler with the exception as argument" do
93
93
  expect(registry.config.robot.error_handler).to receive(:call).with(instance_of(TypeError))
94
94
 
95
- expect { http.get("/boom") }.to raise_error(TypeError, "String can't be coerced into Fixnum")
95
+ expect { http.get("/boom") }.to raise_error(TypeError, "String can't be coerced into Integer")
96
96
  end
97
97
  end
98
98
  end
@@ -21,6 +21,14 @@ describe Lita::Message do
21
21
  expect(subject.source).to eq(source)
22
22
  end
23
23
 
24
+ describe "#extensions" do
25
+ it "can be populated with arbitrary data" do
26
+ subject.extensions[:foo] = :bar
27
+
28
+ expect(subject.extensions[:foo]).to eq(:bar)
29
+ end
30
+ end
31
+
24
32
  describe "#args" do
25
33
  it "returns an array of the 2nd through nth word in the message" do
26
34
  subject = described_class.new(robot, "args foo bar", source)
@@ -77,6 +77,15 @@ describe Lita::Robot, lita: true do
77
77
  describe "#run" do
78
78
  let(:thread) { instance_double("Thread", :abort_on_exception= => true, join: nil) }
79
79
 
80
+ # For some reason RSpec is no longer capturing tracebacks to
81
+ # stderr, so we do it manually to avoid cluttering the test output.
82
+ around do |example|
83
+ stderr = $stderr
84
+ $stderr = StringIO.new
85
+ example.run
86
+ $stderr = stderr
87
+ end
88
+
80
89
  before do
81
90
  allow_any_instance_of(Lita::Adapters::Shell).to receive(:run)
82
91
  allow_any_instance_of(Puma::Server).to receive(:run)
@@ -117,6 +117,12 @@ describe handler_class, lita_handler: true do
117
117
  send_message("message")
118
118
  expect(replies).to eq(["Test User"])
119
119
  end
120
+
121
+ it "does not memoize #replies on first access" do
122
+ replies
123
+ send_message("message")
124
+ expect(replies).to eq(["Test User"])
125
+ end
120
126
  end
121
127
 
122
128
  describe "#channel" do
@@ -58,6 +58,13 @@ describe Lita do
58
58
  end
59
59
  end
60
60
 
61
+ describe ".default_locale=" do
62
+ it "sets I18n.default_locale to the normalized locale" do
63
+ expect(I18n).to receive(:default_locale=).with("zh-TW")
64
+ described_class.default_locale = "zh_TW"
65
+ end
66
+ end
67
+
61
68
  describe ".redis" do
62
69
  let(:redis_namespace) { instance_double("Redis") }
63
70
 
@@ -84,8 +91,15 @@ describe Lita do
84
91
  around do |example|
85
92
  test_mode = Lita.test_mode?
86
93
  Lita.test_mode = false
94
+
95
+ stderr = $stderr
96
+ $stderr = StringIO.new
97
+
87
98
  example.run
99
+
88
100
  Lita.test_mode = test_mode
101
+
102
+ $stderr = stderr
89
103
  end
90
104
 
91
105
  it "logs a fatal warning and raises an exception if it can't connect to Redis" do
@@ -1,9 +1,4 @@
1
1
  require "simplecov"
2
- require "coveralls"
3
- SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
4
- SimpleCov::Formatter::HTMLFormatter,
5
- Coveralls::SimpleCov::Formatter
6
- ]
7
2
  SimpleCov.start { add_filter "/spec/" }
8
3
 
9
4
  require "pry"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lita
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.6.0
4
+ version: 4.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jimmy Cuadra
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-08-29 00:00:00.000000000 Z
11
+ date: 2020-09-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,154 +16,154 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.3'
19
+ version: '2.0'
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: '1.3'
26
+ version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: faraday
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 0.8.7
33
+ version: '1.0'
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: 0.8.7
40
+ version: '1.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: http_router
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 0.11.2
47
+ version: '0.11'
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: 0.11.2
54
+ version: '0.11'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: ice_nine
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: 0.11.0
61
+ version: '0.11'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: 0.11.0
68
+ version: '0.11'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: i18n
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - ">="
74
74
  - !ruby/object:Gem::Version
75
- version: 0.6.9
75
+ version: '1.8'
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: 0.6.9
82
+ version: '1.8'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: multi_json
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - ">="
88
88
  - !ruby/object:Gem::Version
89
- version: 1.7.7
89
+ version: '1.15'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
- version: 1.7.7
96
+ version: '1.15'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: puma
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - ">="
102
102
  - !ruby/object:Gem::Version
103
- version: 2.7.1
103
+ version: '4.3'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - ">="
109
109
  - !ruby/object:Gem::Version
110
- version: 2.7.1
110
+ version: '4.3'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rack
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - ">="
116
116
  - !ruby/object:Gem::Version
117
- version: 1.5.2
117
+ version: '2.2'
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - ">="
123
123
  - !ruby/object:Gem::Version
124
- version: 1.5.2
124
+ version: '2.2'
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: rb-readline
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - ">="
130
130
  - !ruby/object:Gem::Version
131
- version: 0.5.1
131
+ version: '0.5'
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - ">="
137
137
  - !ruby/object:Gem::Version
138
- version: 0.5.1
138
+ version: '0.5'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: redis-namespace
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - ">="
144
144
  - !ruby/object:Gem::Version
145
- version: 1.3.0
145
+ version: '1.7'
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - ">="
151
151
  - !ruby/object:Gem::Version
152
- version: 1.3.0
152
+ version: '1.7'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: thor
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - ">="
158
158
  - !ruby/object:Gem::Version
159
- version: 0.18.1
159
+ version: '1.0'
160
160
  type: :runtime
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - ">="
165
165
  - !ruby/object:Gem::Version
166
- version: 0.18.1
166
+ version: '1.0'
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: rake
169
169
  requirement: !ruby/object:Gem::Requirement
@@ -198,14 +198,14 @@ dependencies:
198
198
  requirements:
199
199
  - - ">="
200
200
  - !ruby/object:Gem::Version
201
- version: 3.0.0
201
+ version: '0'
202
202
  type: :development
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
205
205
  requirements:
206
206
  - - ">="
207
207
  - !ruby/object:Gem::Version
208
- version: 3.0.0
208
+ version: '0'
209
209
  - !ruby/object:Gem::Dependency
210
210
  name: simplecov
211
211
  requirement: !ruby/object:Gem::Requirement
@@ -332,6 +332,7 @@ files:
332
332
  - lib/lita/util.rb
333
333
  - lib/lita/version.rb
334
334
  - lita.gemspec
335
+ - script/ci
335
336
  - spec/lita/adapter_spec.rb
336
337
  - spec/lita/adapters/shell_spec.rb
337
338
  - spec/lita/authorization_spec.rb
@@ -390,7 +391,7 @@ homepage: https://github.com/jimmycuadra/lita
390
391
  licenses:
391
392
  - MIT
392
393
  metadata: {}
393
- post_install_message:
394
+ post_install_message:
394
395
  rdoc_options: []
395
396
  require_paths:
396
397
  - lib
@@ -398,16 +399,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
398
399
  requirements:
399
400
  - - ">="
400
401
  - !ruby/object:Gem::Version
401
- version: 2.0.0
402
+ version: 2.5.0
402
403
  required_rubygems_version: !ruby/object:Gem::Requirement
403
404
  requirements:
404
405
  - - ">="
405
406
  - !ruby/object:Gem::Version
406
407
  version: '0'
407
408
  requirements: []
408
- rubyforge_project:
409
- rubygems_version: 2.4.5.1
410
- signing_key:
409
+ rubygems_version: 3.1.4
410
+ signing_key:
411
411
  specification_version: 4
412
412
  summary: ChatOps framework for Ruby. Lita is a robot companion for your chat room.
413
413
  test_files:
@@ -450,4 +450,3 @@ test_files:
450
450
  - spec/templates/basic.irc.erb
451
451
  - spec/templates/helpers.erb
452
452
  - spec/templates/interpolated.erb
453
- has_rdoc: