UrlCategorise 0.1.1 → 0.1.3
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/.claude/settings.local.json +5 -1
- data/.github/workflows/ci.yml +2 -2
- data/CLAUDE.md +12 -2
- data/Gemfile +2 -2
- data/Gemfile.lock +8 -9
- data/README.md +189 -1
- data/Rakefile +8 -8
- data/bin/check_lists +12 -13
- data/bin/console +3 -3
- data/lib/url_categorise/active_record_client.rb +97 -20
- data/lib/url_categorise/client.rb +220 -111
- data/lib/url_categorise/constants.rb +86 -71
- data/lib/url_categorise/dataset_processor.rb +471 -0
- data/lib/url_categorise/models.rb +53 -14
- data/lib/url_categorise/version.rb +1 -1
- data/lib/url_categorise.rb +1 -0
- data/url_categorise.gemspec +34 -32
- metadata +90 -49
data/url_categorise.gemspec
CHANGED
@@ -1,49 +1,51 @@
|
|
1
|
-
lib = File.expand_path(
|
1
|
+
lib = File.expand_path('lib', __dir__)
|
2
2
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
3
|
-
require
|
3
|
+
require 'url_categorise/version'
|
4
4
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
|
-
spec.name =
|
6
|
+
spec.name = 'UrlCategorise'
|
7
7
|
spec.version = UrlCategorise::VERSION
|
8
|
-
spec.authors = [
|
9
|
-
spec.email = [
|
8
|
+
spec.authors = ['trex22']
|
9
|
+
spec.email = ['contact@jasonchalom.com']
|
10
10
|
|
11
|
-
spec.summary =
|
12
|
-
spec.description =
|
13
|
-
spec.homepage =
|
14
|
-
spec.license =
|
11
|
+
spec.summary = 'A client for using the UrlCategorise API in Ruby.'
|
12
|
+
spec.description = 'A client for using the UrlCategorise API in Ruby. Built from their api documentation. This is an unofficial project.'
|
13
|
+
spec.homepage = 'https://github.com/TRex22/UrlCategorise'
|
14
|
+
spec.license = 'MIT'
|
15
15
|
|
16
16
|
# Specify which files should be added to the gem when it is released.
|
17
17
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
18
|
-
spec.files = Dir.chdir(File.expand_path(
|
18
|
+
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
19
19
|
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
20
20
|
end
|
21
|
-
spec.bindir =
|
21
|
+
spec.bindir = 'exe'
|
22
22
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
23
|
-
spec.require_paths = [
|
24
|
-
spec.required_ruby_version =
|
23
|
+
spec.require_paths = ['lib']
|
24
|
+
spec.required_ruby_version = '>= 3.0.0'
|
25
25
|
|
26
|
-
spec.add_dependency
|
27
|
-
spec.add_dependency
|
28
|
-
spec.add_dependency
|
29
|
-
spec.add_dependency
|
30
|
-
spec.add_dependency
|
31
|
-
spec.add_dependency
|
32
|
-
spec.add_dependency
|
26
|
+
spec.add_dependency 'api_pattern', '>= 0.0.6', '< 1.0'
|
27
|
+
spec.add_dependency 'csv', '>= 3.3.0', '< 4.0'
|
28
|
+
spec.add_dependency 'digest', '>= 3.1.0', '< 4.0'
|
29
|
+
spec.add_dependency 'fileutils', '>= 1.7.0', '< 2.0'
|
30
|
+
spec.add_dependency 'httparty', '>= 0.22.0', '< 1.0'
|
31
|
+
spec.add_dependency 'json', '>= 2.7.0', '< 3.0'
|
32
|
+
spec.add_dependency 'nokogiri', '>= 1.18.9', '< 2.0'
|
33
|
+
spec.add_dependency 'resolv', '>= 0.4.0', '< 1.0'
|
34
|
+
spec.add_dependency 'rubyzip', '>= 2.3.0', '< 3.0'
|
33
35
|
|
34
36
|
# Development dependancies
|
35
|
-
spec.add_development_dependency
|
36
|
-
spec.add_development_dependency
|
37
|
-
spec.add_development_dependency
|
38
|
-
spec.add_development_dependency
|
39
|
-
spec.add_development_dependency
|
40
|
-
spec.add_development_dependency
|
41
|
-
spec.add_development_dependency
|
42
|
-
spec.add_development_dependency
|
43
|
-
spec.add_development_dependency
|
37
|
+
spec.add_development_dependency 'minitest', '~> 5.25.5'
|
38
|
+
spec.add_development_dependency 'minitest-focus', '~> 1.4.0'
|
39
|
+
spec.add_development_dependency 'minitest-reporters', '~> 1.7.1'
|
40
|
+
spec.add_development_dependency 'mocha', '~> 2.4.5'
|
41
|
+
spec.add_development_dependency 'pry', '~> 0.15.2'
|
42
|
+
spec.add_development_dependency 'rake', '~> 13.3.0'
|
43
|
+
spec.add_development_dependency 'simplecov', '~> 0.22.0'
|
44
|
+
spec.add_development_dependency 'timecop', '~> 0.9.10'
|
45
|
+
spec.add_development_dependency 'webmock', '~> 3.24.0'
|
44
46
|
|
45
47
|
# Test dependancies
|
46
|
-
spec.add_development_dependency
|
47
|
-
spec.add_development_dependency
|
48
|
-
spec.add_development_dependency
|
48
|
+
spec.add_development_dependency 'activerecord', '>= 8.0'
|
49
|
+
spec.add_development_dependency 'logger'
|
50
|
+
spec.add_development_dependency 'sqlite3', '>= 2.7'
|
49
51
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: UrlCategorise
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- trex22
|
@@ -30,32 +30,52 @@ dependencies:
|
|
30
30
|
- !ruby/object:Gem::Version
|
31
31
|
version: '1.0'
|
32
32
|
- !ruby/object:Gem::Dependency
|
33
|
-
name:
|
33
|
+
name: csv
|
34
34
|
requirement: !ruby/object:Gem::Requirement
|
35
35
|
requirements:
|
36
36
|
- - ">="
|
37
37
|
- !ruby/object:Gem::Version
|
38
|
-
version:
|
38
|
+
version: 3.3.0
|
39
39
|
- - "<"
|
40
40
|
- !ruby/object:Gem::Version
|
41
|
-
version: '
|
41
|
+
version: '4.0'
|
42
42
|
type: :runtime
|
43
43
|
prerelease: false
|
44
44
|
version_requirements: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
46
|
- - ">="
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version:
|
48
|
+
version: 3.3.0
|
49
49
|
- - "<"
|
50
50
|
- !ruby/object:Gem::Version
|
51
|
-
version: '
|
51
|
+
version: '4.0'
|
52
52
|
- !ruby/object:Gem::Dependency
|
53
|
-
name:
|
53
|
+
name: digest
|
54
54
|
requirement: !ruby/object:Gem::Requirement
|
55
55
|
requirements:
|
56
56
|
- - ">="
|
57
57
|
- !ruby/object:Gem::Version
|
58
|
-
version: 1.
|
58
|
+
version: 3.1.0
|
59
|
+
- - "<"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '4.0'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 3.1.0
|
69
|
+
- - "<"
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: '4.0'
|
72
|
+
- !ruby/object:Gem::Dependency
|
73
|
+
name: fileutils
|
74
|
+
requirement: !ruby/object:Gem::Requirement
|
75
|
+
requirements:
|
76
|
+
- - ">="
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
version: 1.7.0
|
59
79
|
- - "<"
|
60
80
|
- !ruby/object:Gem::Version
|
61
81
|
version: '2.0'
|
@@ -65,57 +85,57 @@ dependencies:
|
|
65
85
|
requirements:
|
66
86
|
- - ">="
|
67
87
|
- !ruby/object:Gem::Version
|
68
|
-
version: 1.
|
88
|
+
version: 1.7.0
|
69
89
|
- - "<"
|
70
90
|
- !ruby/object:Gem::Version
|
71
91
|
version: '2.0'
|
72
92
|
- !ruby/object:Gem::Dependency
|
73
|
-
name:
|
93
|
+
name: httparty
|
74
94
|
requirement: !ruby/object:Gem::Requirement
|
75
95
|
requirements:
|
76
96
|
- - ">="
|
77
97
|
- !ruby/object:Gem::Version
|
78
|
-
version:
|
98
|
+
version: 0.22.0
|
79
99
|
- - "<"
|
80
100
|
- !ruby/object:Gem::Version
|
81
|
-
version: '
|
101
|
+
version: '1.0'
|
82
102
|
type: :runtime
|
83
103
|
prerelease: false
|
84
104
|
version_requirements: !ruby/object:Gem::Requirement
|
85
105
|
requirements:
|
86
106
|
- - ">="
|
87
107
|
- !ruby/object:Gem::Version
|
88
|
-
version:
|
108
|
+
version: 0.22.0
|
89
109
|
- - "<"
|
90
110
|
- !ruby/object:Gem::Version
|
91
|
-
version: '
|
111
|
+
version: '1.0'
|
92
112
|
- !ruby/object:Gem::Dependency
|
93
|
-
name:
|
113
|
+
name: json
|
94
114
|
requirement: !ruby/object:Gem::Requirement
|
95
115
|
requirements:
|
96
116
|
- - ">="
|
97
117
|
- !ruby/object:Gem::Version
|
98
|
-
version:
|
118
|
+
version: 2.7.0
|
99
119
|
- - "<"
|
100
120
|
- !ruby/object:Gem::Version
|
101
|
-
version: '
|
121
|
+
version: '3.0'
|
102
122
|
type: :runtime
|
103
123
|
prerelease: false
|
104
124
|
version_requirements: !ruby/object:Gem::Requirement
|
105
125
|
requirements:
|
106
126
|
- - ">="
|
107
127
|
- !ruby/object:Gem::Version
|
108
|
-
version:
|
128
|
+
version: 2.7.0
|
109
129
|
- - "<"
|
110
130
|
- !ruby/object:Gem::Version
|
111
|
-
version: '
|
131
|
+
version: '3.0'
|
112
132
|
- !ruby/object:Gem::Dependency
|
113
|
-
name:
|
133
|
+
name: nokogiri
|
114
134
|
requirement: !ruby/object:Gem::Requirement
|
115
135
|
requirements:
|
116
136
|
- - ">="
|
117
137
|
- !ruby/object:Gem::Version
|
118
|
-
version: 1.
|
138
|
+
version: 1.18.9
|
119
139
|
- - "<"
|
120
140
|
- !ruby/object:Gem::Version
|
121
141
|
version: '2.0'
|
@@ -125,7 +145,7 @@ dependencies:
|
|
125
145
|
requirements:
|
126
146
|
- - ">="
|
127
147
|
- !ruby/object:Gem::Version
|
128
|
-
version: 1.
|
148
|
+
version: 1.18.9
|
129
149
|
- - "<"
|
130
150
|
- !ruby/object:Gem::Version
|
131
151
|
version: '2.0'
|
@@ -150,19 +170,25 @@ dependencies:
|
|
150
170
|
- !ruby/object:Gem::Version
|
151
171
|
version: '1.0'
|
152
172
|
- !ruby/object:Gem::Dependency
|
153
|
-
name:
|
173
|
+
name: rubyzip
|
154
174
|
requirement: !ruby/object:Gem::Requirement
|
155
175
|
requirements:
|
156
|
-
- - "
|
176
|
+
- - ">="
|
157
177
|
- !ruby/object:Gem::Version
|
158
|
-
version:
|
159
|
-
|
178
|
+
version: 2.3.0
|
179
|
+
- - "<"
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
version: '3.0'
|
182
|
+
type: :runtime
|
160
183
|
prerelease: false
|
161
184
|
version_requirements: !ruby/object:Gem::Requirement
|
162
185
|
requirements:
|
163
|
-
- - "
|
186
|
+
- - ">="
|
164
187
|
- !ruby/object:Gem::Version
|
165
|
-
version:
|
188
|
+
version: 2.3.0
|
189
|
+
- - "<"
|
190
|
+
- !ruby/object:Gem::Version
|
191
|
+
version: '3.0'
|
166
192
|
- !ruby/object:Gem::Dependency
|
167
193
|
name: minitest
|
168
194
|
requirement: !ruby/object:Gem::Requirement
|
@@ -206,75 +232,89 @@ dependencies:
|
|
206
232
|
- !ruby/object:Gem::Version
|
207
233
|
version: 1.7.1
|
208
234
|
- !ruby/object:Gem::Dependency
|
209
|
-
name:
|
235
|
+
name: mocha
|
210
236
|
requirement: !ruby/object:Gem::Requirement
|
211
237
|
requirements:
|
212
238
|
- - "~>"
|
213
239
|
- !ruby/object:Gem::Version
|
214
|
-
version:
|
240
|
+
version: 2.4.5
|
215
241
|
type: :development
|
216
242
|
prerelease: false
|
217
243
|
version_requirements: !ruby/object:Gem::Requirement
|
218
244
|
requirements:
|
219
245
|
- - "~>"
|
220
246
|
- !ruby/object:Gem::Version
|
221
|
-
version:
|
247
|
+
version: 2.4.5
|
222
248
|
- !ruby/object:Gem::Dependency
|
223
|
-
name:
|
249
|
+
name: pry
|
224
250
|
requirement: !ruby/object:Gem::Requirement
|
225
251
|
requirements:
|
226
252
|
- - "~>"
|
227
253
|
- !ruby/object:Gem::Version
|
228
|
-
version:
|
254
|
+
version: 0.15.2
|
229
255
|
type: :development
|
230
256
|
prerelease: false
|
231
257
|
version_requirements: !ruby/object:Gem::Requirement
|
232
258
|
requirements:
|
233
259
|
- - "~>"
|
234
260
|
- !ruby/object:Gem::Version
|
235
|
-
version:
|
261
|
+
version: 0.15.2
|
236
262
|
- !ruby/object:Gem::Dependency
|
237
|
-
name:
|
263
|
+
name: rake
|
238
264
|
requirement: !ruby/object:Gem::Requirement
|
239
265
|
requirements:
|
240
266
|
- - "~>"
|
241
267
|
- !ruby/object:Gem::Version
|
242
|
-
version:
|
268
|
+
version: 13.3.0
|
243
269
|
type: :development
|
244
270
|
prerelease: false
|
245
271
|
version_requirements: !ruby/object:Gem::Requirement
|
246
272
|
requirements:
|
247
273
|
- - "~>"
|
248
274
|
- !ruby/object:Gem::Version
|
249
|
-
version:
|
275
|
+
version: 13.3.0
|
250
276
|
- !ruby/object:Gem::Dependency
|
251
|
-
name:
|
277
|
+
name: simplecov
|
252
278
|
requirement: !ruby/object:Gem::Requirement
|
253
279
|
requirements:
|
254
280
|
- - "~>"
|
255
281
|
- !ruby/object:Gem::Version
|
256
|
-
version:
|
282
|
+
version: 0.22.0
|
257
283
|
type: :development
|
258
284
|
prerelease: false
|
259
285
|
version_requirements: !ruby/object:Gem::Requirement
|
260
286
|
requirements:
|
261
287
|
- - "~>"
|
262
288
|
- !ruby/object:Gem::Version
|
263
|
-
version:
|
289
|
+
version: 0.22.0
|
264
290
|
- !ruby/object:Gem::Dependency
|
265
|
-
name:
|
291
|
+
name: timecop
|
266
292
|
requirement: !ruby/object:Gem::Requirement
|
267
293
|
requirements:
|
268
294
|
- - "~>"
|
269
295
|
- !ruby/object:Gem::Version
|
270
|
-
version: 0.
|
296
|
+
version: 0.9.10
|
271
297
|
type: :development
|
272
298
|
prerelease: false
|
273
299
|
version_requirements: !ruby/object:Gem::Requirement
|
274
300
|
requirements:
|
275
301
|
- - "~>"
|
276
302
|
- !ruby/object:Gem::Version
|
277
|
-
version: 0.
|
303
|
+
version: 0.9.10
|
304
|
+
- !ruby/object:Gem::Dependency
|
305
|
+
name: webmock
|
306
|
+
requirement: !ruby/object:Gem::Requirement
|
307
|
+
requirements:
|
308
|
+
- - "~>"
|
309
|
+
- !ruby/object:Gem::Version
|
310
|
+
version: 3.24.0
|
311
|
+
type: :development
|
312
|
+
prerelease: false
|
313
|
+
version_requirements: !ruby/object:Gem::Requirement
|
314
|
+
requirements:
|
315
|
+
- - "~>"
|
316
|
+
- !ruby/object:Gem::Version
|
317
|
+
version: 3.24.0
|
278
318
|
- !ruby/object:Gem::Dependency
|
279
319
|
name: activerecord
|
280
320
|
requirement: !ruby/object:Gem::Requirement
|
@@ -290,33 +330,33 @@ dependencies:
|
|
290
330
|
- !ruby/object:Gem::Version
|
291
331
|
version: '8.0'
|
292
332
|
- !ruby/object:Gem::Dependency
|
293
|
-
name:
|
333
|
+
name: logger
|
294
334
|
requirement: !ruby/object:Gem::Requirement
|
295
335
|
requirements:
|
296
336
|
- - ">="
|
297
337
|
- !ruby/object:Gem::Version
|
298
|
-
version: '
|
338
|
+
version: '0'
|
299
339
|
type: :development
|
300
340
|
prerelease: false
|
301
341
|
version_requirements: !ruby/object:Gem::Requirement
|
302
342
|
requirements:
|
303
343
|
- - ">="
|
304
344
|
- !ruby/object:Gem::Version
|
305
|
-
version: '
|
345
|
+
version: '0'
|
306
346
|
- !ruby/object:Gem::Dependency
|
307
|
-
name:
|
347
|
+
name: sqlite3
|
308
348
|
requirement: !ruby/object:Gem::Requirement
|
309
349
|
requirements:
|
310
350
|
- - ">="
|
311
351
|
- !ruby/object:Gem::Version
|
312
|
-
version: '
|
352
|
+
version: '2.7'
|
313
353
|
type: :development
|
314
354
|
prerelease: false
|
315
355
|
version_requirements: !ruby/object:Gem::Requirement
|
316
356
|
requirements:
|
317
357
|
- - ">="
|
318
358
|
- !ruby/object:Gem::Version
|
319
|
-
version: '
|
359
|
+
version: '2.7'
|
320
360
|
description: A client for using the UrlCategorise API in Ruby. Built from their api
|
321
361
|
documentation. This is an unofficial project.
|
322
362
|
email:
|
@@ -345,6 +385,7 @@ files:
|
|
345
385
|
- lib/url_categorise/active_record_client.rb
|
346
386
|
- lib/url_categorise/client.rb
|
347
387
|
- lib/url_categorise/constants.rb
|
388
|
+
- lib/url_categorise/dataset_processor.rb
|
348
389
|
- lib/url_categorise/models.rb
|
349
390
|
- lib/url_categorise/version.rb
|
350
391
|
- url_categorise.gemspec
|