solrb 0.2.7 → 0.2.8

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: 0b698f0cc5aaf1aca1a12590a060170a79a3b27e4fb127db8cb033a824c9f3cc
4
- data.tar.gz: 79dc166b65a24840210ab63cdbff757a9a0ddeaaa24c431e7a67e80b04e7f528
3
+ metadata.gz: ea33f82de9a9b3bb71a87821df6be65e39e1156704ed713c556752781257012a
4
+ data.tar.gz: 8b06c57da1f0948858a1ea97c8adc9e318e53f5288549eb80236d1e1c6e54a88
5
5
  SHA512:
6
- metadata.gz: fa4c469edc453402ddf80004e3e6f182688331b4d05e8ed126867aa568951ceccd66a3433bebede91f8f52a91f91b78b2fcabb4b0d5699002c384713e34b08c5
7
- data.tar.gz: d46f7dbccc62f80ef3e59e0077fb3f59f35ed55ccc54e8d79e9bd0add7bd3a9fa288095afa5c3d875c5ca251c3c3d3aa2b933a48422d1aefe409f6224fc37d47
6
+ metadata.gz: c7b5cd5683b89b389d9d39a8e026a0483a2f9daa6c435a967bc93723150d8fddfc3f804496fece068fb06d9fd2732892fbe9305ca2b3876180f8d8433f270a36
7
+ data.tar.gz: bf7ca512022d6edbf347c6d0d2697aa90b1d1fc610d6dd8674cc5d78c30ce7e513f463538877857624ae002826e0fa0c3582712c53cd46835c77170a0e960ada
@@ -0,0 +1,20 @@
1
+ ---
2
+ name: reviewdog
3
+ 'on': [push]
4
+ jobs:
5
+ rubocop:
6
+ name: runner / rubocop
7
+ runs-on: ubuntu-latest
8
+ steps:
9
+ - uses: actions/checkout@v1
10
+ - uses: ruby/setup-ruby@v1
11
+ with:
12
+ ruby-version: 2.5.1
13
+ bundler-cache: true
14
+ - uses: reviewdog/action-rubocop@v1
15
+ with:
16
+ github_token: ${{ secrets.GITHUB_TOKEN }}
17
+ rubocop_version: '0.80.1'
18
+ rubocop_extensions: ''
19
+ reporter: github-check
20
+ fail_on_error: true
@@ -0,0 +1,37 @@
1
+ ---
2
+ name: Tests
3
+ 'on': [push]
4
+
5
+ env:
6
+ SOLR_URL: http://localhost:8983/solr/test-core
7
+
8
+ jobs:
9
+ rspec:
10
+ name: Rspec on Ruby ${{ matrix.ruby }}
11
+ runs-on: ubuntu-latest
12
+ strategy:
13
+ matrix:
14
+ ruby: ['2.5', '2.6', '2.7', '3.0']
15
+ services:
16
+ solr:
17
+ image: solr:7.4.0
18
+ ports:
19
+ - 8983:8983
20
+ steps:
21
+ - uses: actions/checkout@v2
22
+
23
+ - uses: ruby/setup-ruby@v1
24
+ with:
25
+ ruby-version: ${{ matrix.ruby }}
26
+ bundler-cache: true
27
+
28
+ - name: Create a test core
29
+ run: |
30
+ curl 'http://localhost:8983/solr/admin/cores?action=CREATE&name=test-core&configSet=_default'
31
+
32
+ - name: Disable field type guessing
33
+ run: |
34
+ curl http://localhost:8983/solr/test-core/config -d '{"set-user-property": {"update.autoCreateFields":"false"}}'
35
+
36
+ - name: Rspec
37
+ run: bundle exec rspec --format progress
data/.rubocop.yml CHANGED
@@ -1,19 +1,20 @@
1
1
  AllCops:
2
2
  Exclude:
3
- - db/schema.rb
4
- - node_modules/**/*
5
3
  - bin/*
4
+ - vendor/**/*
5
+ - pkg/**/*
6
6
  TargetRubyVersion: '2.5'
7
- Metrics/LineLength:
7
+ DisabledByDefault: true
8
+ Layout/LineLength:
8
9
  Max: 120
9
- Documentation:
10
+ Style/Documentation:
10
11
  Enabled: false
11
- FrozenStringLiteralComment:
12
+ Style/FrozenStringLiteralComment:
12
13
  Enabled: false
13
14
  Metrics/MethodLength:
14
15
  Max: 20
15
16
  Metrics/AbcSize:
16
- Max: 20
17
+ Enabled: false
17
18
  # Removing Blocks Cop for RSpec
18
19
  Style/BlockDelimiters:
19
20
  Exclude:
@@ -28,3 +29,6 @@ Metrics/BlockLength:
28
29
  - '**/*.rake'
29
30
  - 'spec/**/*'
30
31
  - 'config/environments/**/*'
32
+ Layout/SpaceInsideHashLiteralBraces:
33
+ Exclude:
34
+ - 'spec/**/*'
@@ -18,7 +18,8 @@ module Solr
18
18
  end
19
19
 
20
20
  def build_zookeeper_connection
21
- Solr::Cloud::ZookeeperConnection.new(zookeeper_url: zookeeper_url.is_a?(Array) ? zookeeper_url.join(',') : zookeeper_url,
21
+ zookeeper_url = zookeeper_url.is_a?(Array) ? zookeeper_url.join(',') : zookeeper_url
22
+ Solr::Cloud::ZookeeperConnection.new(zookeeper_url: zookeeper_url,
22
23
  zookeeper_auth_user: zookeeper_auth_user,
23
24
  zookeeper_auth_password: zookeeper_auth_password)
24
25
  end
@@ -11,7 +11,8 @@ module Solr
11
11
  class Configuration
12
12
  extend Forwardable
13
13
 
14
- delegate [:zookeeper_url, :zookeeper_url=, :zookeeper_auth_user=, :zookeeper_auth_password=] => :@cloud_configuration
14
+ delegate [:zookeeper_url, :zookeeper_url=, :zookeeper_auth_user=,
15
+ :zookeeper_auth_password=] => :@cloud_configuration
15
16
  delegate [:master_url, :master_url=, :slave_url, :slave_url=, :disable_read_from_master,
16
17
  :disable_read_from_master=, :nodes_gray_list, :nodes_gray_list=] => :@master_slave_configuration
17
18
 
@@ -3,9 +3,11 @@ module Solr
3
3
  class Connection
4
4
  INSTRUMENT_KEY = 'request.solrb'.freeze
5
5
 
6
- def initialize(url, faraday_options: Solr.configuration.faraday_options, faraday_configuration: Solr.configuration.faraday_configuration)
6
+ def initialize(url, faraday_options: Solr.configuration.faraday_options,
7
+ faraday_configuration: Solr.configuration.faraday_configuration)
7
8
  # Allow mock the connection for testing
8
- @raw_connection = Solr.configuration.test_connection || build_faraday_connection(url, faraday_options, faraday_configuration)
9
+ @raw_connection = Solr.configuration.test_connection
10
+ @raw_connection ||= build_faraday_connection(url, faraday_options, faraday_configuration)
9
11
  freeze
10
12
  end
11
13
 
@@ -8,7 +8,7 @@ module Solr
8
8
  attr_reader :query, :rows, :start, :runner_options
9
9
 
10
10
  def self.call(opts)
11
- new(opts).call
11
+ new(**opts).call
12
12
  end
13
13
 
14
14
  def initialize(query:, rows:, start:, runner_options: {})
@@ -8,7 +8,7 @@ module Solr
8
8
  attr_reader :query, :start, :rows
9
9
 
10
10
  def self.call(opts)
11
- new(opts).call
11
+ new(**opts).call
12
12
  end
13
13
 
14
14
  def initialize(query:, start:, rows:)
@@ -16,7 +16,7 @@ module Solr
16
16
  attr_reader :request, :response_parser, :node_selection_strategy
17
17
 
18
18
  def self.call(opts)
19
- new(opts).call
19
+ new(**opts).call
20
20
  end
21
21
 
22
22
  def initialize(request:,
@@ -39,7 +39,7 @@ module Solr
39
39
  solr_response = Solr::Response::Parser.call(raw_response)
40
40
  raise Solr::Errors::SolrQueryError, solr_response.error_message unless solr_response.ok?
41
41
  return solr_response
42
- rescue Faraday::ConnectionFailed, Faraday::TimeoutError, Errno::EADDRNOTAVAIL => e
42
+ rescue Faraday::ConnectionFailed, Faraday::TimeoutError, Errno::EADDRNOTAVAIL, Timeout::Error => e
43
43
  if Solr.master_slave_enabled?
44
44
  Solr.configuration.nodes_gray_list.add(node_url)
45
45
  end
data/lib/solr/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Solr
2
- VERSION = '0.2.7'.freeze
2
+ VERSION = '0.2.8'.freeze
3
3
  end
data/solrb.gemspec CHANGED
@@ -24,12 +24,11 @@ Gem::Specification.new do |spec|
24
24
  spec.add_runtime_dependency 'addressable'
25
25
  spec.add_runtime_dependency 'faraday'
26
26
 
27
- spec.add_development_dependency 'bundler', '~> 1.16'
27
+ spec.add_development_dependency 'bundler'
28
28
  spec.add_development_dependency 'pry'
29
29
  spec.add_development_dependency 'pry-byebug'
30
30
  spec.add_development_dependency 'rake', '~> 10.0'
31
31
  spec.add_development_dependency 'rspec', '~> 3.0'
32
- spec.add_development_dependency 'rspec_junit_formatter'
33
- spec.add_development_dependency 'rubocop'
32
+ spec.add_development_dependency 'rubocop', '~> 0.80.1'
34
33
  spec.add_development_dependency 'simplecov'
35
34
  end
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solrb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.7
4
+ version: 0.2.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adriano Luz
8
8
  - Valentin Vasilyev
9
9
  - Vladislav Syabruk
10
- autorequire:
10
+ autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2020-02-17 00:00:00.000000000 Z
13
+ date: 2021-05-28 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: addressable
@@ -44,16 +44,16 @@ dependencies:
44
44
  name: bundler
45
45
  requirement: !ruby/object:Gem::Requirement
46
46
  requirements:
47
- - - "~>"
47
+ - - ">="
48
48
  - !ruby/object:Gem::Version
49
- version: '1.16'
49
+ version: '0'
50
50
  type: :development
51
51
  prerelease: false
52
52
  version_requirements: !ruby/object:Gem::Requirement
53
53
  requirements:
54
- - - "~>"
54
+ - - ">="
55
55
  - !ruby/object:Gem::Version
56
- version: '1.16'
56
+ version: '0'
57
57
  - !ruby/object:Gem::Dependency
58
58
  name: pry
59
59
  requirement: !ruby/object:Gem::Requirement
@@ -110,34 +110,20 @@ dependencies:
110
110
  - - "~>"
111
111
  - !ruby/object:Gem::Version
112
112
  version: '3.0'
113
- - !ruby/object:Gem::Dependency
114
- name: rspec_junit_formatter
115
- requirement: !ruby/object:Gem::Requirement
116
- requirements:
117
- - - ">="
118
- - !ruby/object:Gem::Version
119
- version: '0'
120
- type: :development
121
- prerelease: false
122
- version_requirements: !ruby/object:Gem::Requirement
123
- requirements:
124
- - - ">="
125
- - !ruby/object:Gem::Version
126
- version: '0'
127
113
  - !ruby/object:Gem::Dependency
128
114
  name: rubocop
129
115
  requirement: !ruby/object:Gem::Requirement
130
116
  requirements:
131
- - - ">="
117
+ - - "~>"
132
118
  - !ruby/object:Gem::Version
133
- version: '0'
119
+ version: 0.80.1
134
120
  type: :development
135
121
  prerelease: false
136
122
  version_requirements: !ruby/object:Gem::Requirement
137
123
  requirements:
138
- - - ">="
124
+ - - "~>"
139
125
  - !ruby/object:Gem::Version
140
- version: '0'
126
+ version: 0.80.1
141
127
  - !ruby/object:Gem::Dependency
142
128
  name: simplecov
143
129
  requirement: !ruby/object:Gem::Requirement
@@ -152,7 +138,7 @@ dependencies:
152
138
  - - ">="
153
139
  - !ruby/object:Gem::Version
154
140
  version: '0'
155
- description:
141
+ description:
156
142
  email:
157
143
  - adriano.luz@machinio.com
158
144
  - valentin@machinio.com
@@ -161,8 +147,8 @@ executables: []
161
147
  extensions: []
162
148
  extra_rdoc_files: []
163
149
  files:
164
- - ".circleci/config.yml"
165
- - ".circleci/run-with-local-config.sh"
150
+ - ".github/workflows/reviewdog.yml"
151
+ - ".github/workflows/tests.yaml"
166
152
  - ".gitignore"
167
153
  - ".rspec"
168
154
  - ".rubocop.yml"
@@ -264,7 +250,7 @@ homepage: https://github.com/machinio/solrb
264
250
  licenses:
265
251
  - MIT
266
252
  metadata: {}
267
- post_install_message:
253
+ post_install_message:
268
254
  rdoc_options: []
269
255
  require_paths:
270
256
  - lib
@@ -279,9 +265,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
279
265
  - !ruby/object:Gem::Version
280
266
  version: '0'
281
267
  requirements: []
282
- rubyforge_project:
283
- rubygems_version: 2.7.6
284
- signing_key:
268
+ rubygems_version: 3.0.3
269
+ signing_key:
285
270
  specification_version: 4
286
271
  summary: Solr Ruby client with a nice object-oriented API
287
272
  test_files: []
data/.circleci/config.yml DELETED
@@ -1,69 +0,0 @@
1
- # Ruby CircleCI 2.0 configuration file
2
- #
3
- # Check https://circleci.com/docs/2.0/language-ruby/ for more details
4
- #
5
- version: 2
6
- jobs:
7
- build:
8
- docker:
9
- # primary image where all specs are run
10
- - image: circleci/ruby:2.5.1-node-browsers
11
- environment:
12
- SOLR_URL: http://localhost:8983/solr/test-core
13
- # service images that primary image will use
14
- - image: solr:7.4.0
15
-
16
- working_directory: ~/repo
17
-
18
- steps:
19
- - checkout
20
-
21
- # Download and cache dependencies
22
- - restore_cache:
23
- keys:
24
- - v1-dependencies-{{ checksum "Gemfile.lock" }}
25
- # fallback to using the latest cache if no exact match is found
26
- - v1-dependencies-
27
-
28
- - run:
29
- name: install dependencies
30
- command: |
31
- bundle install --jobs=4 --retry=3 --path vendor/bundle
32
-
33
- - save_cache:
34
- paths:
35
- - ./vendor/bundle
36
- key: v1-dependencies-{{ checksum "Gemfile.lock" }}
37
-
38
- - run:
39
- name: Wait for Solr
40
- command: dockerize -wait tcp://localhost:8983 -timeout 1m
41
-
42
- - run:
43
- name: Create a test core
44
- command: curl 'http://localhost:8983/solr/admin/cores?action=CREATE&name=test-core&configSet=_default'
45
-
46
- - run:
47
- name: Disable field type guessing
48
- command: |
49
- curl http://localhost:8983/solr/test-core/config -d '{"set-user-property": {"update.autoCreateFields":"false"}}'
50
-
51
-
52
- - run:
53
- name: run tests
54
- command: |
55
- mkdir /tmp/test-results
56
- TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | circleci tests split --split-by=timings)"
57
-
58
- bundle exec rspec --format progress \
59
- --format RspecJunitFormatter \
60
- --out /tmp/test-results/rspec.xml \
61
- --format progress \
62
- $TEST_FILES
63
-
64
- # collect reports
65
- - store_test_results:
66
- path: /tmp/test-results
67
- - store_artifacts:
68
- path: /tmp/test-results
69
- destination: test-results
@@ -1,7 +0,0 @@
1
- #!/usr/bin/env bash
2
- curl --user ${CIRCLE_TOKEN}: \
3
- --request POST \
4
- --form revision=67d7c5937163 \
5
- --form config=@config.yml \
6
- --form notify=false \
7
- https://circleci.com/api/v1.1/project/github/machinio/solrb/tree/master