zetabot 2.1.1 → 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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0b53140618ee18e26da975b11636994b8e2e1d1b0a706d2f71bf4a5056d6bbec
4
- data.tar.gz: 72d919a4e0df285f135ebc1aece8077cf8de4e44fb2fe990bbae98decb5ab173
3
+ metadata.gz: e922668c63999db1c4834d62b239d95eeb907edbb21f4dfe5e686588c6c6635b
4
+ data.tar.gz: 259f8d5067dd8a24b38375b3eae57299fe42833b93da18ae78bfba3c90741b38
5
5
  SHA512:
6
- metadata.gz: db34a813f6c4770564e2b68f30be17f677269c9e175952464693e817376e69564bbc1f28880c05ef2cf96e1792d7bcb531cab5f63d605dcec7f377e32a01a116
7
- data.tar.gz: 88078ed8cfa8bb1beae4d5b56bb103ed6aabfbb527c5c80a3d261b64da3a2b3a4040b90b20cbca7e82bb14617eb1ecde3823fa7dbf1b9e691a63e4ed1793cec0
6
+ metadata.gz: 8861773a1c9d31e43d95666e7d3bd4ff0e9de1c53fc67921c741ad84e9065ba3a5832eee1eb471c3568157c8f690c2ba5cd9470b56a4441f146d519f0bce8cdf
7
+ data.tar.gz: ff3d8763d7d52c1ee0cf1b0c5b657fe16f3eae4b0a7e8e7b7d83b69fa56affdc01c862a3386672fb19ed5d42e6913daae5234f3e538516174b1d4afb53b60d7d
data/.mise.toml ADDED
@@ -0,0 +1,2 @@
1
+ [tools]
2
+ ruby = "4.0.9"
data/.projectile ADDED
File without changes
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --require spec_helper
2
+ --format progress
data/Gemfile.lock CHANGED
@@ -1,15 +1,16 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- zetabot (2.1.0)
4
+ zetabot (2.2.0)
5
5
  actionview
6
+ base64
7
+ bigdecimal
8
+ cgi
6
9
  chronic
7
10
  chronic_duration
8
- cinch
9
- cinch-cooldown
10
- cinch-quotes
11
11
  cinch-toolbox
12
12
  crack
13
+ csv
13
14
  daemons
14
15
  destructor
15
16
  discourse_api
@@ -18,17 +19,20 @@ PATH
18
19
  faraday
19
20
  geocoder
20
21
  gist
21
- github_api
22
22
  haml
23
23
  hashie
24
24
  httparty
25
25
  humanize-bytes
26
26
  ipaddress
27
+ ircinch
28
+ logger
27
29
  mechanize
28
30
  mkfifo
29
- nokogiri
31
+ nokogiri (>= 1.13.6)
32
+ ostruct
30
33
  pdf-reader
31
34
  persist
35
+ pstore
32
36
  recursive-open-struct
33
37
  rest-client
34
38
  tag_formatter
@@ -41,286 +45,316 @@ PATH
41
45
  GEM
42
46
  remote: https://rubygems.org/
43
47
  specs:
44
- Ascii85 (1.1.0)
45
- actionview (7.0.3)
46
- activesupport (= 7.0.3)
48
+ Ascii85 (2.0.1)
49
+ actionview (8.1.4)
50
+ activesupport (= 8.1.4)
47
51
  builder (~> 3.1)
48
- erubi (~> 1.4)
49
- rails-dom-testing (~> 2.0)
50
- rails-html-sanitizer (~> 1.1, >= 1.2.0)
51
- activesupport (7.0.3)
52
- concurrent-ruby (~> 1.0, >= 1.0.2)
52
+ erubi (~> 1.11)
53
+ rails-dom-testing (~> 2.2)
54
+ rails-html-sanitizer (~> 1.6)
55
+ activesupport (8.1.4)
56
+ base64
57
+ bigdecimal
58
+ concurrent-ruby (~> 1.0, >= 1.3.1)
59
+ connection_pool (>= 2.2.5)
60
+ drb
53
61
  i18n (>= 1.6, < 2)
62
+ json
63
+ logger (>= 1.4.2)
54
64
  minitest (>= 5.1)
55
- tzinfo (~> 2.0)
56
- addressable (2.8.0)
57
- public_suffix (>= 2.0.2, < 5.0)
58
- afm (0.2.2)
59
- ansi (1.5.0)
60
- ast (2.4.2)
61
- binding.repl (3.0.0)
62
- builder (3.2.4)
63
- cd (1.0.1)
65
+ securerandom (>= 0.3)
66
+ tzinfo (~> 2.0, >= 2.0.5)
67
+ uri (>= 0.13.1)
68
+ addressable (2.9.0)
69
+ public_suffix (>= 2.0.2, < 8.0)
70
+ afm (1.0.1)
71
+ ansi (1.6.0)
72
+ ast (2.4.3)
73
+ base64 (0.3.0)
74
+ bigdecimal (4.1.3)
75
+ builder (3.3.0)
76
+ cd (1.0.2)
77
+ cgi (0.5.2)
64
78
  chronic (0.10.2)
65
79
  chronic_duration (0.10.6)
66
80
  numerizer (~> 0.1.1)
67
- cinch (2.3.4)
68
- cinch-cooldown (1.2.1)
69
- cinch (~> 2)
70
- time-lord (~> 1.0, >= 1.0.1)
71
- cinch-quotes (0.0.4)
72
- cinch (~> 2.0)
73
81
  cinch-toolbox (1.1.7)
74
82
  nokogiri (~> 1.6)
75
- clipboard (1.3.6)
76
- code (0.9.3)
83
+ clipboard (2.0.0)
84
+ code (0.9.5)
77
85
  coderay (~> 1.1)
78
86
  method_source (>= 0.9, < 2.0)
79
87
  coderay (1.1.3)
80
- concurrent-ruby (1.1.10)
81
- connection_pool (2.2.5)
82
- crack (0.4.5)
88
+ concurrent-ruby (1.3.8)
89
+ connection_pool (3.0.2)
90
+ core_docs (0.9.13)
91
+ yard (~> 0.9.11)
92
+ crack (1.0.1)
93
+ bigdecimal
83
94
  rexml
84
- crass (1.0.6)
95
+ crass (1.0.8)
96
+ csv (3.3.6)
85
97
  daemons (1.4.1)
86
- debugging (1.1.2)
87
- binding.repl (~> 3.0)
98
+ debugging (2.1.1)
88
99
  paint (>= 0.9, < 3.0)
89
- descendants_tracker (0.0.4)
90
- thread_safe (~> 0.3, >= 0.3.1)
91
100
  destructor (0.1.0)
92
- diff-lcs (1.5.0)
93
- discourse_api (1.0.0)
94
- faraday (~> 1.0)
95
- faraday_middleware (~> 1.0)
101
+ diff-lcs (1.6.2)
102
+ discourse_api (2.1.0)
103
+ faraday (~> 2.7)
104
+ faraday-follow_redirects
105
+ faraday-multipart
96
106
  rack (>= 1.6)
97
- dnsbl-client (1.0.6)
98
- domain_name (0.5.20190701)
99
- unf (>= 0.0.5, < 1.0.0)
107
+ dnsbl-client (1.1.1)
108
+ domain_name (0.7.20261007)
109
+ drb (2.2.3)
100
110
  dronebl.rb (0.1.0.0)
101
111
  httparty (~> 0.13)
102
112
  nokogiri (~> 1.6)
103
- erubi (1.10.0)
104
- every_day_irb (2.1.1)
113
+ erb (6.0.7)
114
+ erubi (1.13.1)
115
+ every_day_irb (2.3.0)
105
116
  cd (~> 1.0)
106
- fancy_irb (1.4.3)
117
+ irb
118
+ fancy_irb (2.1.3)
119
+ irb (>= 1.7, < 2.0)
107
120
  paint (>= 0.9, < 3.0)
108
- unicode-display_width (>= 1.1)
109
- faraday (1.10.0)
110
- faraday-em_http (~> 1.0)
111
- faraday-em_synchrony (~> 1.0)
112
- faraday-excon (~> 1.1)
113
- faraday-httpclient (~> 1.0)
114
- faraday-multipart (~> 1.0)
115
- faraday-net_http (~> 1.0)
116
- faraday-net_http_persistent (~> 1.0)
117
- faraday-patron (~> 1.0)
118
- faraday-rack (~> 1.0)
119
- faraday-retry (~> 1.0)
120
- ruby2_keywords (>= 0.0.4)
121
- faraday-em_http (1.0.0)
122
- faraday-em_synchrony (1.0.0)
123
- faraday-excon (1.1.0)
124
- faraday-httpclient (1.0.1)
125
- faraday-multipart (1.0.4)
126
- multipart-post (~> 2)
127
- faraday-net_http (1.0.1)
128
- faraday-net_http_persistent (1.2.0)
129
- faraday-patron (1.0.0)
130
- faraday-rack (1.0.0)
131
- faraday-retry (1.0.3)
132
- faraday_middleware (1.2.0)
133
- faraday (~> 1.0)
134
- ffi (1.15.5)
135
- geocoder (1.8.0)
136
- gist (6.0.0)
137
- github_api (0.19.0)
138
- addressable (~> 2.4)
139
- descendants_tracker (~> 0.0.4)
140
- faraday (>= 0.8, < 2)
141
- hashie (~> 3.5, >= 3.5.2)
142
- oauth2 (~> 1.0)
143
- haml (5.2.2)
144
- temple (>= 0.8.0)
121
+ unicode-display_width (>= 2.5)
122
+ faraday (2.15.0)
123
+ faraday-net_http (>= 2.0, < 3.6)
124
+ json
125
+ logger
126
+ faraday-follow_redirects (0.5.0)
127
+ faraday (>= 1, < 3)
128
+ faraday-multipart (1.2.0)
129
+ multipart-post (~> 2.0)
130
+ faraday-net_http (3.5.0)
131
+ net-http (~> 0.5)
132
+ ffi (1.17.4)
133
+ geocoder (1.8.6)
134
+ base64 (>= 0.1.0)
135
+ csv (>= 3.0.0)
136
+ gist (6.1.0)
137
+ haml (7.5.1)
138
+ prism (>= 1.1.0)
139
+ temple (>= 0.8.2)
140
+ thor
145
141
  tilt
142
+ hashdiff (1.2.1)
146
143
  hashery (2.1.2)
147
- hashie (3.6.0)
144
+ hashie (5.2.0)
145
+ logger
148
146
  hirb (0.7.3)
149
147
  http-accept (1.7.0)
150
- http-cookie (1.0.5)
148
+ http-cookie (1.1.6)
151
149
  domain_name (~> 0.5)
152
- httparty (0.20.0)
153
- mime-types (~> 3.0)
150
+ httparty (0.24.3)
151
+ csv
152
+ mini_mime (>= 1.0.0)
154
153
  multi_xml (>= 0.5.2)
155
154
  humanize-bytes (2.2.0)
156
- i18n (1.10.0)
155
+ i18n (1.15.2)
157
156
  concurrent-ruby (~> 1.0)
158
- interactive_editor (0.0.11)
159
- spoon (>= 0.0.1)
160
- io-console (0.5.11)
157
+ interactive_editor (0.0.12)
158
+ spoon (~> 0.0.6)
159
+ io-console (0.9.4)
161
160
  ipaddress (0.8.3)
162
- irb (1.4.1)
163
- reline (>= 0.3.0)
164
- irbtools (3.0.5)
165
- binding.repl (~> 3.0)
166
- clipboard (~> 1.3)
167
- code (>= 0.9.2, < 2.0)
161
+ irb (1.18.0)
162
+ pp (>= 0.6.0)
163
+ prism (>= 1.3.0)
164
+ rdoc (>= 4.0.0)
165
+ reline (>= 0.4.2)
166
+ irbtools (4.2.0)
167
+ clipboard (>= 1.4, < 3.0)
168
+ code (>= 0.9.5, < 2.0)
168
169
  coderay (~> 1.1)
169
- debugging (~> 1.1)
170
- every_day_irb (~> 2.0)
171
- fancy_irb (~> 1.2, >= 1.2.1)
170
+ core_docs (~> 0.9.13)
171
+ debugging (~> 2.1)
172
+ every_day_irb (~> 2.3)
173
+ fancy_irb (~> 2.1, >= 2.1.3)
172
174
  hirb (~> 0.7, >= 0.7.3)
173
- interactive_editor (~> 0.0, >= 0.0.10)
174
- irb (>= 0.9.6)
175
- methodfinder (~> 2.2, >= 2.2.2)
176
- object_shadow (~> 1.1)
177
- ori (~> 0.1.0)
178
- os
175
+ interactive_editor (~> 0.0, >= 0.0.12)
176
+ irb (~> 1.16)
177
+ looksee (>= 5.0, < 7.0)
178
+ methodfinder (~> 2.2, >= 2.2.5)
179
+ object_shadow (~> 1.1, >= 1.1.2)
180
+ os (~> 1.1, >= 1.1.4)
179
181
  paint (>= 0.9, < 3.0)
180
- ruby_engine (~> 1.0)
181
- ruby_info (~> 1.0)
182
+ ruby_engine (~> 2.0)
182
183
  ruby_version (~> 1.0)
183
- wirb (~> 2.0, >= 2.2.1)
184
- iso8601 (0.9.1)
185
- jwt (2.4.1)
184
+ wirb (~> 3.0)
185
+ ircinch (2.4.5)
186
+ ostruct
187
+ iso8601 (0.13.0)
188
+ json (3.1.0)
186
189
  liner (0.2.4)
187
- loofah (2.18.0)
190
+ logger (1.7.0)
191
+ loofah (2.25.2)
188
192
  crass (~> 1.0.2)
189
- nokogiri (>= 1.5.9)
190
- mechanize (2.8.5)
193
+ nokogiri (>= 1.12.0)
194
+ looksee (5.1.0)
195
+ mechanize (2.14.1)
191
196
  addressable (~> 2.8)
197
+ base64
192
198
  domain_name (~> 0.5, >= 0.5.20190701)
193
199
  http-cookie (~> 1.0, >= 1.0.3)
194
- mime-types (~> 3.0)
200
+ mime-types (~> 3.3)
195
201
  net-http-digest_auth (~> 1.4, >= 1.4.1)
196
202
  net-http-persistent (>= 2.5.2, < 5.0.dev)
203
+ nkf
197
204
  nokogiri (~> 1.11, >= 1.11.2)
198
205
  rubyntlm (~> 0.6, >= 0.6.3)
199
206
  webrick (~> 1.7)
200
207
  webrobots (~> 0.1.2)
201
- memoizable (0.4.2)
202
- thread_safe (~> 0.3, >= 0.3.1)
203
- method_source (1.0.0)
204
- methodfinder (2.2.4)
205
- mime-types (3.4.1)
206
- mime-types-data (~> 3.2015)
207
- mime-types-data (3.2022.0105)
208
- minitest (5.15.0)
208
+ memoizable (0.5.1)
209
+ method_source (1.1.0)
210
+ methodfinder (2.3.1)
211
+ mime-types (3.7.0)
212
+ logger
213
+ mime-types-data (~> 3.2025, >= 3.2025.0507)
214
+ mime-types-data (3.2026.1020)
215
+ mini_mime (1.1.5)
216
+ mini_portile2 (2.8.9)
217
+ minitest (6.0.6)
218
+ drb (~> 2.0)
219
+ prism (~> 1.5)
209
220
  mkfifo (0.1.1)
210
- multi_json (1.15.0)
211
- multi_xml (0.6.0)
212
- multipart-post (2.2.3)
221
+ multi_xml (0.9.1)
222
+ bigdecimal (>= 3.1, < 5)
223
+ multipart-post (2.4.1)
224
+ net-http (0.10.0)
225
+ net-protocol (>= 0.3.0)
226
+ uri (>= 0.11.1)
213
227
  net-http-digest_auth (1.4.1)
214
- net-http-persistent (4.0.1)
215
- connection_pool (~> 2.2)
216
- net_http_timeout_errors (0.3.5)
228
+ net-http-persistent (4.0.8)
229
+ connection_pool (>= 2.2.4, < 4)
230
+ net-protocol (0.4.0)
231
+ timeout
232
+ net_http_timeout_errors (1.0.0)
217
233
  netrc (0.11.0)
218
- nokogiri (1.13.6-x86_64-darwin)
234
+ nkf (0.3.0)
235
+ nokogiri (1.19.4)
236
+ mini_portile2 (~> 2.8.2)
219
237
  racc (~> 1.4)
220
238
  numerizer (0.1.1)
221
- oauth2 (1.4.9)
222
- faraday (>= 0.17.3, < 3.0)
223
- jwt (>= 1.0, < 3.0)
224
- multi_json (~> 1.3)
225
- multi_xml (~> 0.5)
226
- rack (>= 1.2, < 3)
227
- object_shadow (1.1.1)
228
- oga (3.3)
239
+ object_shadow (1.1.2)
240
+ oga (3.5)
229
241
  ast
230
- ruby-ll (~> 2.1)
231
- ori (0.1.0)
242
+ ruby-ll (~> 2.2)
232
243
  os (1.1.4)
233
- paint (2.2.1)
234
- parslet (1.8.2)
235
- pdf-reader (2.10.0)
236
- Ascii85 (~> 1.0)
237
- afm (~> 0.2.1)
244
+ ostruct (0.6.3)
245
+ paint (2.3.0)
246
+ parslet (2.0.0)
247
+ pdf-reader (2.16.0)
248
+ Ascii85 (>= 1.0, < 3.0, != 2.0.0)
249
+ afm (>= 0.2.1, < 2)
238
250
  hashery (~> 2.0)
239
- ruby-rc4
240
251
  ttfunk
241
252
  persist (1.0.0)
242
- public_suffix (4.0.7)
243
- racc (1.6.0)
244
- rack (2.2.3.1)
245
- rails-dom-testing (2.0.3)
246
- activesupport (>= 4.2.0)
253
+ pp (0.6.4)
254
+ prettyprint
255
+ prettyprint (0.2.1)
256
+ prism (1.9.0)
257
+ pstore (0.2.1)
258
+ public_suffix (7.0.5)
259
+ racc (1.8.1)
260
+ rack (3.2.7)
261
+ rails-dom-testing (2.3.0)
262
+ activesupport (>= 5.0.0)
263
+ minitest
247
264
  nokogiri (>= 1.6)
248
- rails-html-sanitizer (1.4.3)
249
- loofah (~> 2.3)
250
- rake (10.5.0)
251
- recursive-open-struct (1.1.3)
252
- reline (0.3.1)
265
+ rails-html-sanitizer (1.7.1)
266
+ loofah (~> 2.25, >= 2.25.2)
267
+ nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
268
+ rake (13.4.2)
269
+ rbs (4.2.0)
270
+ logger
271
+ prism (>= 1.6.0)
272
+ tsort
273
+ rdoc (8.1.0)
274
+ erb
275
+ prism (>= 1.6.0)
276
+ rbs (>= 4.0.0)
277
+ tsort
278
+ recursive-open-struct (2.1.1)
279
+ ostruct
280
+ reline (0.7.0)
253
281
  io-console (~> 0.5)
254
282
  rest-client (2.1.0)
255
283
  http-accept (>= 1.7.0, < 2.0)
256
284
  http-cookie (>= 1.0.2, < 2.0)
257
285
  mime-types (>= 1.16, < 4.0)
258
286
  netrc (~> 0.8)
259
- rexml (3.2.5)
260
- rspec (3.11.0)
261
- rspec-core (~> 3.11.0)
262
- rspec-expectations (~> 3.11.0)
263
- rspec-mocks (~> 3.11.0)
264
- rspec-core (3.11.0)
265
- rspec-support (~> 3.11.0)
266
- rspec-expectations (3.11.0)
287
+ rexml (3.4.4)
288
+ rspec (3.13.2)
289
+ rspec-core (~> 3.13.0)
290
+ rspec-expectations (~> 3.13.0)
291
+ rspec-mocks (~> 3.13.0)
292
+ rspec-core (3.13.6)
293
+ rspec-support (~> 3.13.0)
294
+ rspec-expectations (3.13.5)
267
295
  diff-lcs (>= 1.2.0, < 2.0)
268
- rspec-support (~> 3.11.0)
269
- rspec-mocks (3.11.1)
296
+ rspec-support (~> 3.13.0)
297
+ rspec-mocks (3.13.8)
270
298
  diff-lcs (>= 1.2.0, < 2.0)
271
- rspec-support (~> 3.11.0)
272
- rspec-support (3.11.0)
273
- ruby-ll (2.1.2)
299
+ rspec-support (~> 3.13.0)
300
+ rspec-support (3.13.7)
301
+ ruby-ll (2.2.0)
274
302
  ansi
275
303
  ast
276
- ruby-rc4 (0.1.5)
277
- ruby2_keywords (0.0.5)
278
- ruby_engine (1.0.1)
279
- ruby_info (1.0.1)
280
- ruby_version (1.0.2)
281
- rubyntlm (0.6.3)
304
+ ruby_engine (2.0.3)
305
+ ruby_version (1.0.3)
306
+ rubyntlm (0.6.8)
307
+ base64
308
+ securerandom (0.4.1)
282
309
  signed_multiset (0.2.1)
283
310
  spoon (0.0.6)
284
311
  ffi
285
312
  tag_formatter (0.0.3)
286
- temple (0.8.2)
287
- thread_safe (0.3.6)
288
- tilt (2.0.10)
289
- time-lord (1.0.1)
313
+ temple (0.10.7)
314
+ thor (1.5.0)
315
+ tilt (2.9.0)
316
+ timeout (0.6.1)
317
+ tsort (0.2.0)
290
318
  ttfunk (1.7.0)
291
- tzinfo (2.0.4)
319
+ tzinfo (2.0.6)
292
320
  concurrent-ruby (~> 1.0)
293
- unf (0.1.4)
294
- unf_ext
295
- unf_ext (0.0.8.2)
296
- unicode-display_width (2.1.0)
297
- unitwise (2.2.0)
321
+ unicode-display_width (3.3.0)
322
+ unicode-emoji (~> 4.3)
323
+ unicode-emoji (4.3.0)
324
+ unitwise (2.3.0)
298
325
  liner (~> 0.2)
299
326
  memoizable (~> 0.4)
300
- parslet (~> 1.5)
327
+ parslet (~> 2.0)
301
328
  signed_multiset (~> 0.2)
302
- video_info (3.0.2)
303
- iso8601 (~> 0.9.1)
304
- net_http_timeout_errors (~> 0.3.0)
305
- oga (~> 3.0)
306
- webrick (1.7.0)
329
+ uri (1.1.2)
330
+ video_info (4.2.0)
331
+ iso8601 (~> 0.13.0)
332
+ net_http_timeout_errors (~> 1.0.0)
333
+ oga (~> 3.4)
334
+ webmock (3.34.0)
335
+ addressable (>= 2.8.0)
336
+ crack (>= 0.3.2)
337
+ hashdiff (>= 0.4.0, < 2.0.0)
338
+ webrick (1.9.2)
307
339
  webrobots (0.1.2)
308
- wirb (2.2.2)
309
- paint (>= 0.9, < 3.0)
310
- wolfram (0.2.1)
311
- nokogiri (>= 1.4.3)
340
+ wirb (3.0.0)
341
+ paint (>= 0.9, < 4.0)
342
+ wolfram (0.3.0)
343
+ nokogiri (~> 1, >= 1.4.3)
312
344
  wolfram-alpha (0.3.1)
313
345
  nokogiri
346
+ yard (0.9.45)
314
347
 
315
348
  PLATFORMS
316
349
  ruby
317
350
 
318
351
  DEPENDENCIES
319
- bundler (~> 2.3)
352
+ bundler (>= 2.4)
320
353
  irbtools
321
- rake (~> 10.0)
354
+ rake (~> 13.0)
322
355
  rspec (~> 3.0)
356
+ webmock (~> 3.0)
323
357
  zetabot!
324
358
 
325
359
  BUNDLED WITH
326
- 2.3.15
360
+ 4.0.23
data/README.md CHANGED
@@ -3,7 +3,7 @@ Cinch IRC bot written with plenty of help. I will not claim any of the plugins
3
3
  And will try to get the correct credits in source
4
4
 
5
5
  # Installation
6
- Zeta requires ruby >= 2.7.6 and rubygems. Installation beyond that is simple
6
+ Zeta requires ruby >= 3.2 (tested on 4.0) and rubygems. Installation beyond that is simple
7
7
 
8
8
  _Steps_
9
9
  * gem install zetabot
@@ -15,7 +15,7 @@ _Docker_
15
15
  Zeta will need its config file mounted in the `.zeta/config.rb` image for her to function.
16
16
 
17
17
  ```dockerfile
18
- FROM docker.io/ruby:2.7.6
18
+ FROM docker.io/ruby:4.0
19
19
  RUN useradd zeta -m
20
20
  USER zeta
21
21
  WORKDIR /home/zeta/
@@ -28,6 +28,17 @@ CMD [ "zetabot"]
28
28
  _Plugins_
29
29
  All plugins are automatically loaded that are in the plugins directory
30
30
 
31
+ _Development_
32
+
33
+ ```sh
34
+ bundle install
35
+ bundle exec rake # runs the rspec suite
36
+ ```
37
+
38
+ The specs boot the real bot against a temporary `$HOME` (see `spec/fixtures/config.rb`)
39
+ and feed raw IRC lines through Cinch, recording what the bot sends. No network access is
40
+ needed; HTTP APIs are stubbed with WebMock. Known bugs are kept as `pending` examples.
41
+
31
42
  ## Commands
32
43
  roles: owner,admin,operator,halfop,voice,nobody
33
44
  prefix: ?
data/Zeta.gemspec CHANGED
@@ -26,24 +26,33 @@ Gem::Specification.new do |spec|
26
26
 
27
27
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
28
28
  spec.require_paths = ["lib"]
29
+ spec.required_ruby_version = ">= 3.2"
29
30
 
30
- spec.add_development_dependency "bundler", "~> 2.3"
31
- spec.add_development_dependency "rake", "~> 10.0"
31
+ spec.add_development_dependency "bundler", ">= 2.4"
32
+ spec.add_development_dependency "rake", "~> 13.0"
32
33
  spec.add_development_dependency "rspec", "~> 3.0"
34
+ spec.add_development_dependency "webmock", "~> 3.0"
33
35
  spec.add_development_dependency "irbtools"
34
36
 
37
+ # Former default gems that are bundled/removed in Ruby 3.4+ / 4.0
38
+ spec.add_dependency 'logger'
39
+ spec.add_dependency 'ostruct'
40
+ spec.add_dependency 'base64'
41
+ spec.add_dependency 'bigdecimal'
42
+ spec.add_dependency 'csv'
43
+ spec.add_dependency 'pstore'
44
+ spec.add_dependency 'cgi'
45
+
35
46
  spec.add_dependency 'daemons'
36
47
  spec.add_dependency 'destructor'
37
48
  spec.add_dependency 'tzinfo'
38
49
  spec.add_dependency 'unitwise'
39
50
 
40
- spec.add_dependency 'cinch'
41
- spec.add_dependency 'cinch-cooldown'
51
+ spec.add_dependency 'ircinch' # maintained, drop-in fork of the archived cinch gem
42
52
  spec.add_dependency 'cinch-toolbox'
43
- spec.add_dependency 'cinch-quotes'
44
53
 
45
54
  spec.add_dependency 'mkfifo'
46
- spec.add_dependency 'nokogiri'
55
+ spec.add_dependency 'nokogiri', ">= 1.13.6"
47
56
  spec.add_dependency 'dronebl.rb'
48
57
  spec.add_dependency 'dnsbl-client'
49
58
 
@@ -69,7 +78,6 @@ Gem::Specification.new do |spec|
69
78
  # API
70
79
  spec.add_dependency 'wolfram'
71
80
  spec.add_dependency 'wolfram-alpha'
72
- spec.add_dependency 'github_api'
73
81
  spec.add_dependency 'gist'
74
82
  spec.add_dependency 'discourse_api'
75
83
  spec.add_dependency 'video_info'
data/lib/Zeta/access.rb CHANGED
@@ -64,7 +64,7 @@ module Cinch
64
64
  when :a, :admin # Admin
65
65
  return true if channel.admins.include? user
66
66
  false
67
- when :o, :op # Op
67
+ when :o, :op, :operator # Op
68
68
  return true if channel.ops.include? user
69
69
  false
70
70
  when :h, :halfop # Half-Op