monkeylearn 3.1.0 → 3.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 +4 -4
- data/README.md +5 -3
- data/lib/monkeylearn/classifiers.rb +10 -1
- data/lib/monkeylearn/extractors.rb +10 -1
- data/lib/monkeylearn/param_validation.rb +37 -0
- data/monkeylearn.gemspec +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 50b2d5b17e20cfa4c508355318a6cf08dcf2f3e0
|
4
|
+
data.tar.gz: 310360fa275dea689d86a46b8ddb1f88f4fdc9dc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4dc4c7abf0d7d07315af6586d963f65c551f2c26eb9c6e101c4dfad2f5bd004517cee94fc5761ef014f3eaa6a7ce766b6f14d26e23e778230cff561d4ce4b2fe
|
7
|
+
data.tar.gz: 6783eb1b622f2b4ad8e4f32b767519e7443d6bc69d19701a8bb045438193c700a96fe377ddb93e95c6df5441b84958fbbf989d9d60ca56b35a271854ad732f37
|
data/README.md
CHANGED
@@ -353,7 +353,7 @@ Monkeylearn.classifiers.delete('[MODEL_ID]')
|
|
353
353
|
|
354
354
|
|
355
355
|
```ruby
|
356
|
-
Monkeylearn.classifiers.list(page: 1, per_page: 20)
|
356
|
+
Monkeylearn.classifiers.list(page: 1, per_page: 20, order_by: '-created')
|
357
357
|
```
|
358
358
|
|
359
359
|
Optional parameters:
|
@@ -362,11 +362,12 @@ Optional parameters:
|
|
362
362
|
|--------------------|-------------------|-------------------|-------------|
|
363
363
|
|*page* |`Integer` | `1` | Specifies which page to get.|
|
364
364
|
|*per_page* |`Integer` | `20` | Specifies how many items per page will be returned. |
|
365
|
+
|*order_by* |`String or Array` |`'-created'` | Specifies the ordering criteria. It must be a `String` with a valid field name, if you want inverse/descending order of the field prepend a `-` (dash) character. If you want to specify more than one field send an array of such `Strings`. Some valid examples: `is_public`, `'-name'` or `['-is_public', 'name']`. |
|
365
366
|
|
366
367
|
Example:
|
367
368
|
|
368
369
|
```ruby
|
369
|
-
response = Monkeylearn.classifiers.list(page: 1, per_page: 5)
|
370
|
+
response = Monkeylearn.classifiers.list(page: 1, per_page: 5, order_by: '-name')
|
370
371
|
```
|
371
372
|
|
372
373
|
<br>
|
@@ -626,9 +627,10 @@ Parameters:
|
|
626
627
|
|--------------------|-------------------|-------------------|-------------|
|
627
628
|
|*page* |`Integer` | `1` | Specifies which page to get.|
|
628
629
|
|*per_page* |`Integer` | `20` | Specifies how many items per page will be returned. |
|
630
|
+
|*order_by* |`String or Array` |`'-created'` | Specifies the ordering criteria. It must be a `String` with a valid field name, if you want inverse/descending order of the field prepend a `-` (dash) character. If you want to specify more than one field send an array of such `Strings`. Some valid examples: `is_public`, `'-name'` or `['-is_public', 'name']`. |
|
629
631
|
|
630
632
|
Example:
|
631
633
|
|
632
634
|
```ruby
|
633
|
-
response = Monkeylearn.extractors.list(page: 1)
|
635
|
+
response = Monkeylearn.extractors.list(page: 1, order_by: '-name')
|
634
636
|
```
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'monkeylearn/requests'
|
2
|
+
require 'monkeylearn/param_validation'
|
2
3
|
|
3
4
|
module Monkeylearn
|
4
5
|
class << self
|
@@ -54,7 +55,15 @@ module Monkeylearn
|
|
54
55
|
end
|
55
56
|
|
56
57
|
def list(options = {})
|
57
|
-
|
58
|
+
if options.key?(:order_by)
|
59
|
+
options[:order_by] = validate_order_by_param(options[:order_by])
|
60
|
+
end
|
61
|
+
query_params = {
|
62
|
+
page: options[:page],
|
63
|
+
per_page: options[:per_page],
|
64
|
+
order_by: options[:order_by]
|
65
|
+
}.delete_if { |k,v| v.nil? }
|
66
|
+
request(:get, build_endpoint, nil, query_params)
|
58
67
|
end
|
59
68
|
|
60
69
|
def create(name, options = {})
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'monkeylearn/requests'
|
2
|
+
require 'monkeylearn/param_validation'
|
2
3
|
|
3
4
|
module Monkeylearn
|
4
5
|
class << self
|
@@ -50,7 +51,15 @@ module Monkeylearn
|
|
50
51
|
end
|
51
52
|
|
52
53
|
def list(options = {})
|
53
|
-
|
54
|
+
if options.key?(:order_by)
|
55
|
+
options[:order_by] = validate_order_by_param(options[:order_by])
|
56
|
+
end
|
57
|
+
query_params = {
|
58
|
+
page: options[:page],
|
59
|
+
per_page: options[:per_page],
|
60
|
+
order_by: options[:order_by]
|
61
|
+
}.delete_if { |k,v| v.nil? }
|
62
|
+
request(:get, build_endpoint, nil, query_params)
|
54
63
|
end
|
55
64
|
|
56
65
|
def detail(module_id)
|
@@ -0,0 +1,37 @@
|
|
1
|
+
def validate_order_by_param(order_by_param)
|
2
|
+
def validate_order_by_param_field(field_string)
|
3
|
+
if field_string .include? ','
|
4
|
+
raise MonkeylearnError, "Invalid ',' (comma) character found in 'order_by' fieldname '#{field_string}', try sending a list of strings if you need to specify multiple fields"
|
5
|
+
elsif field_string !~ /^-?[a-z_]+$/
|
6
|
+
raise MonkeylearnError, "Invalid characters found in 'order_by fieldname '#{field_string}'"
|
7
|
+
end
|
8
|
+
field_string
|
9
|
+
end
|
10
|
+
|
11
|
+
order_by = []
|
12
|
+
if order_by_param.is_a? String
|
13
|
+
order_by.push(validate_order_by_param_field(order_by_param))
|
14
|
+
elsif order_by_param.respond_to? 'each'
|
15
|
+
if order_by_param.length < 1
|
16
|
+
raise MonkeylearnError, "'order_by' parameter must be a non empty list of strings, an empty list was found"
|
17
|
+
end
|
18
|
+
seen_fields = {}
|
19
|
+
order_by_param.each do |order_by_field|
|
20
|
+
field_name = order_by_field
|
21
|
+
if field_name[0] == '-'
|
22
|
+
field_name = field_name[1..-1]
|
23
|
+
end
|
24
|
+
if seen_fields.key? field_name
|
25
|
+
raise MonkeylearnError, "'order_by' parameter must be a list unique field names, duplicated fields where found: '#{field_name}'."
|
26
|
+
end
|
27
|
+
seen_fields[field_name] = true
|
28
|
+
|
29
|
+
order_by.push(validate_order_by_param_field(order_by_field))
|
30
|
+
end
|
31
|
+
order_by
|
32
|
+
else
|
33
|
+
raise MonkeylearnError, "'order_by' param must be a string or a list of strings"
|
34
|
+
end
|
35
|
+
|
36
|
+
return order_by.join(',')
|
37
|
+
end
|
data/monkeylearn.gemspec
CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
|
|
10
10
|
spec.email = ['hello@monkeylearn.com']
|
11
11
|
spec.homepage = 'https://github.com/monkeylearn/monkeylearn-ruby'
|
12
12
|
|
13
|
-
spec.version = '3.
|
13
|
+
spec.version = '3.2.0'
|
14
14
|
|
15
15
|
spec.add_dependency 'faraday', '>= 0.9.2', '<= 0.15.0'
|
16
16
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: monkeylearn
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Monkeylearn
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-07-
|
11
|
+
date: 2018-07-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -44,6 +44,7 @@ files:
|
|
44
44
|
- lib/monkeylearn/defaults.rb
|
45
45
|
- lib/monkeylearn/exceptions.rb
|
46
46
|
- lib/monkeylearn/extractors.rb
|
47
|
+
- lib/monkeylearn/param_validation.rb
|
47
48
|
- lib/monkeylearn/requests.rb
|
48
49
|
- lib/monkeylearn/response.rb
|
49
50
|
- monkeylearn.gemspec
|