swiftype 1.2.2 → 1.2.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 +5 -5
- data/README.md +7 -5
- data/lib/swiftype/client.rb +4 -1
- data/lib/swiftype/request.rb +4 -1
- data/lib/swiftype/version.rb +1 -1
- data/spec/spec_helper.rb +2 -1
- data/swiftype.gemspec +1 -1
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: add2978c79c2494fc993252665bc65af92383ad5a00dc8e86eaae70114059aac
|
4
|
+
data.tar.gz: 5b03ebc6b72eca5793c0264c03db5b18150cc6de88daeabebb6d95fbc352c463
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4b5db4bfafb4975ed03ae34ebcdd86ce13aa8e5ccad65260608626dab59e4a61de4a56fda4731472289a758e0cf2d0a286f496ab90baa4a2841a9e1e9b04634f
|
7
|
+
data.tar.gz: b6d111e80d985366e60ed382d37183bd1fa72dd5fed5e8661f04ef4ef6d9f255cc6ebe121f2e1a96c10fa2532e27126effc4f5969579d841f0fe2e90ef507867
|
data/README.md
CHANGED
@@ -1,8 +1,10 @@
|
|
1
|
-
# Swiftype
|
1
|
+
# Ruby Client for Swiftype Site Search API
|
2
2
|
|
3
3
|
[](https://travis-ci.org/swiftype/swiftype-rb)
|
4
4
|
|
5
|
-
This is a simple client for the [Swiftype API](https://swiftype.com/documentation/overview) with no dependencies outside core Ruby (for 1.9 and 2.0; Ruby 1.8 requires the JSON gem).
|
5
|
+
This is a simple client for the [Swiftype Site Search API](https://swiftype.com/documentation/site-search/overview) with no dependencies outside core Ruby (for 1.9 and 2.0; Ruby 1.8 requires the JSON gem).
|
6
|
+
|
7
|
+
> **Note:** This client has been developed for the [Swiftype Site Search](https://www.swiftype.com/site-search) API endpoints only.
|
6
8
|
|
7
9
|
## Getting Started
|
8
10
|
|
@@ -10,7 +12,7 @@ Before beginning with the Swiftype gem, you should be familar with the concepts
|
|
10
12
|
|
11
13
|
An **Engine** is a search engine. It can contain one or more **DocumentTypes** which are collections of **Documents**. A **Document** is a collection of fields that can be queried using the Swiftype API. Documents have a special **external_id** field that ties a Document in Swiftype to a record in your system. The layout of fields of the Documents belonging to a DocumentType is called a **schema**. Fields may be strings, integers, geographic locations, and so forth.
|
12
14
|
|
13
|
-
The Documents in your Engine can be searched two ways: **full-text** (`search`) or **autocomplete** (`suggest`). The difference is that autocomplete queries work on prefixes (for example, "gla" will match "glass"). This is less
|
15
|
+
The Documents in your Engine can be searched two ways: **full-text** (`search`) or **autocomplete** (`suggest`). The difference is that autocomplete queries work on prefixes (for example, "gla" will match "glass"). This is less accurate in general, but is useful for implementing type-ahead search drop downs.
|
14
16
|
|
15
17
|
You can think of an Engine as a database, DocumentTypes as tables, and Documents as rows. Using the API, you can search an engine for all Documents containing a word. You can also search an individual DocumentType, or any subset of DocumentTypes.
|
16
18
|
|
@@ -327,7 +329,7 @@ To get the number of searches per day from an Engine in the last 14 days:
|
|
327
329
|
|
328
330
|
You can also use a specific start and/or end date:
|
329
331
|
|
330
|
-
searches = client.analytics_searches('swiftype-api-example', '2013-01-01', '2013-01-07')
|
332
|
+
searches = client.analytics_searches('swiftype-api-example', {:start_date => '2013-01-01', :end_date => '2013-01-07'})
|
331
333
|
|
332
334
|
To get the number of autoselects in the past 14 days:
|
333
335
|
|
@@ -335,7 +337,7 @@ To get the number of autoselects in the past 14 days:
|
|
335
337
|
|
336
338
|
As with searches you can also limit by start and/or end date:
|
337
339
|
|
338
|
-
autoselects = client.analytics_autoselects('swiftype-api-example', '2013-01-01', '2013-01-07')
|
340
|
+
autoselects = client.analytics_autoselects('swiftype-api-example', {:start_date => '2013-01-01', :end_date => '2013-01-07'})
|
339
341
|
|
340
342
|
If you are interested in the top queries for your Engine you can use:
|
341
343
|
|
data/lib/swiftype/client.rb
CHANGED
@@ -43,6 +43,9 @@ module Swiftype
|
|
43
43
|
(@options[:overall_timeout] || DEFAULT_TIMEOUT).to_f
|
44
44
|
end
|
45
45
|
|
46
|
+
def wrap(element)
|
47
|
+
[element].flatten(1)
|
48
|
+
end
|
46
49
|
|
47
50
|
# Methods wrapping the Swiftype private search and API endpoints. Using these methods, you can perform full-text
|
48
51
|
# and prefix searches over the Documents in your Engine, in a specific DocumentType, or any subset of DocumentTypes.
|
@@ -356,7 +359,7 @@ module Swiftype
|
|
356
359
|
#
|
357
360
|
# @raise [Timeout::Error] when used in :async => false mode and the timeout expires
|
358
361
|
def index_documents(engine_id, document_type_id, documents = [], options = {})
|
359
|
-
documents =
|
362
|
+
documents = wrap(documents)
|
360
363
|
|
361
364
|
res = async_create_or_update_documents(engine_id, document_type_id, documents)
|
362
365
|
|
data/lib/swiftype/request.rb
CHANGED
@@ -63,7 +63,10 @@ module Swiftype
|
|
63
63
|
|
64
64
|
if uri.scheme == 'https'
|
65
65
|
http.use_ssl = true
|
66
|
-
|
66
|
+
# st_ssl_verify_none provides a means to disable SSL verification for debugging purposes. An example
|
67
|
+
# is Charles, which uses a self-signed certificate in order to inspect https traffic. This will
|
68
|
+
# not be part of this client's public API, this is more of a development enablement option
|
69
|
+
http.verify_mode = ENV['st_ssl_verify_none'] == 'true' ? OpenSSL::SSL::VERIFY_NONE : OpenSSL::SSL::VERIFY_PEER
|
67
70
|
http.ca_file = File.join(File.dirname(__FILE__), '..', 'data', 'ca-bundle.crt')
|
68
71
|
http.ssl_timeout = open_timeout
|
69
72
|
end
|
data/lib/swiftype/version.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
@@ -12,12 +12,13 @@ RSpec.configure do |config|
|
|
12
12
|
config.order = "random"
|
13
13
|
|
14
14
|
VCR.configure do |c|
|
15
|
+
c.default_cassette_options = { :record => :once, :match_requests_on => [:host, :path, :method] }
|
15
16
|
c.cassette_library_dir = 'spec/fixtures/vcr'
|
16
17
|
c.hook_into :webmock
|
17
18
|
end
|
18
19
|
|
19
20
|
config.before :each do
|
20
|
-
Swiftype.endpoint = "http://localhost:3000/api/v1/"
|
21
|
+
Swiftype.endpoint = "http://hello:@localhost:3000/api/v1/"
|
21
22
|
end
|
22
23
|
|
23
24
|
config.after :each do
|
data/swiftype.gemspec
CHANGED
@@ -17,7 +17,7 @@ Gem::Specification.new do |s|
|
|
17
17
|
|
18
18
|
s.add_development_dependency 'rspec', '~> 3.0.0'
|
19
19
|
s.add_development_dependency 'awesome_print'
|
20
|
-
s.add_development_dependency 'vcr', '~>
|
20
|
+
s.add_development_dependency 'vcr', '~> 4.0.0'
|
21
21
|
s.add_development_dependency 'webmock'
|
22
22
|
if RUBY_VERSION < '1.9'
|
23
23
|
s.add_runtime_dependency 'json'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: swiftype
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Quin Hoxie
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2018-09-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
@@ -45,14 +45,14 @@ dependencies:
|
|
45
45
|
requirements:
|
46
46
|
- - "~>"
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version:
|
48
|
+
version: 4.0.0
|
49
49
|
type: :development
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
53
|
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version:
|
55
|
+
version: 4.0.0
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
57
|
name: webmock
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
@@ -191,7 +191,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
191
191
|
version: '0'
|
192
192
|
requirements: []
|
193
193
|
rubyforge_project:
|
194
|
-
rubygems_version: 2.
|
194
|
+
rubygems_version: 2.7.6
|
195
195
|
signing_key:
|
196
196
|
specification_version: 4
|
197
197
|
summary: Official gem for accessing the Swiftype Search API
|