grape-kaminari 0.1.6 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 4fb24c245069275a376233ac2b1ab9ea14bacf83
4
- data.tar.gz: 1f74c3dd9df09d1bc3f015e23dd2f2289239eed2
2
+ SHA256:
3
+ metadata.gz: d0ae809ad4c135dcf91437d3e66be5aeade55263df274f958da45e3518643121
4
+ data.tar.gz: 6444fd46138c8e330a9c74254f27d0512ea861df07eb90cde07f070a1e43a0e6
5
5
  SHA512:
6
- metadata.gz: 3f2fbb8ce000c0938fe14adc08e7c646bae1be1f2341fba2eff44e21e59133766db1152ceb873ea482d62ea17992a0eb8c7bdd381935b1c952999e778520fb6d
7
- data.tar.gz: 8d87799ba47f32584ed935f7f1f8db84ed71fbb8d4b92c937c8370570ab0aa577309268957eeb23fe3baa9b894211001f2ee74a77b7c8a54c5d9c44b1f133280
6
+ metadata.gz: 5633fb0d0acecfe2aa68eaff97e29aabddd087922b0ab17a439b26a6fd8ac3889f5f3c902dff54b1729bace30fe6c81c2972a1075785653ea0785b5326ad79e0
7
+ data.tar.gz: 25fbc7a3ad61bc457e237da7ccf9dfbced16c76b291cec006ed45ac9504fc9e208d3f5ac2e3f30f9f94396d7b157214f106aeec05bd8d121e1b6ee06e614025a
data/.gitignore CHANGED
@@ -3,7 +3,6 @@
3
3
  .bundle
4
4
  .config
5
5
  .yardoc
6
- Gemfile.lock
7
6
  InstalledFiles
8
7
  _yardoc
9
8
  coverage
@@ -0,0 +1,26 @@
1
+ AllCops:
2
+ TargetRubyVersion: "2.5"
3
+ NewCops: enable
4
+
5
+ Metrics/AbcSize:
6
+ Enabled: false
7
+ Metrics/BlockLength:
8
+ Exclude:
9
+ - spec/**/*_spec.rb
10
+ Metrics/MethodLength:
11
+ Max: 20
12
+
13
+ Naming/FileName:
14
+ Exclude:
15
+ - lib/grape-kaminari.rb
16
+
17
+ Style/Documentation:
18
+ Enabled: false
19
+ Style/FrozenStringLiteralComment:
20
+ Enabled: false
21
+ Style/TrailingCommaInArguments:
22
+ EnforcedStyleForMultiline: consistent_comma
23
+ Style/TrailingCommaInArrayLiteral:
24
+ EnforcedStyleForMultiline: consistent_comma
25
+ Style/TrailingCommaInHashLiteral:
26
+ EnforcedStyleForMultiline: consistent_comma
@@ -0,0 +1,6 @@
1
+ language: ruby
2
+ cache: bundler
3
+ rvm:
4
+ - 2.7
5
+ - 2.6
6
+ - 2.5
@@ -0,0 +1,117 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ grape-kaminari (0.2.1)
5
+ grape (>= 1.0)
6
+ kaminari-grape
7
+
8
+ GEM
9
+ remote: https://rubygems.org/
10
+ specs:
11
+ activesupport (6.0.3.2)
12
+ concurrent-ruby (~> 1.0, >= 1.0.2)
13
+ i18n (>= 0.7, < 2)
14
+ minitest (~> 5.1)
15
+ tzinfo (~> 1.1)
16
+ zeitwerk (~> 2.2, >= 2.2.2)
17
+ ast (2.4.1)
18
+ builder (3.2.4)
19
+ concurrent-ruby (1.1.6)
20
+ diff-lcs (1.3)
21
+ dry-configurable (0.11.5)
22
+ concurrent-ruby (~> 1.0)
23
+ dry-core (~> 0.4, >= 0.4.7)
24
+ dry-equalizer (~> 0.2)
25
+ dry-container (0.7.2)
26
+ concurrent-ruby (~> 1.0)
27
+ dry-configurable (~> 0.1, >= 0.1.3)
28
+ dry-core (0.4.9)
29
+ concurrent-ruby (~> 1.0)
30
+ dry-equalizer (0.3.0)
31
+ dry-inflector (0.2.0)
32
+ dry-logic (1.0.6)
33
+ concurrent-ruby (~> 1.0)
34
+ dry-core (~> 0.2)
35
+ dry-equalizer (~> 0.2)
36
+ dry-types (1.4.0)
37
+ concurrent-ruby (~> 1.0)
38
+ dry-container (~> 0.3)
39
+ dry-core (~> 0.4, >= 0.4.4)
40
+ dry-equalizer (~> 0.3)
41
+ dry-inflector (~> 0.1, >= 0.1.2)
42
+ dry-logic (~> 1.0, >= 1.0.2)
43
+ grape (1.3.3)
44
+ activesupport
45
+ builder
46
+ dry-types (>= 1.1)
47
+ mustermann-grape (~> 1.0.0)
48
+ rack (>= 1.3.0)
49
+ rack-accept
50
+ i18n (1.8.3)
51
+ concurrent-ruby (~> 1.0)
52
+ kaminari-core (1.2.1)
53
+ kaminari-grape (1.0.1)
54
+ grape
55
+ kaminari-core (~> 1.0)
56
+ minitest (5.14.1)
57
+ mustermann (1.1.1)
58
+ ruby2_keywords (~> 0.0.1)
59
+ mustermann-grape (1.0.1)
60
+ mustermann (>= 1.0.0)
61
+ parallel (1.19.2)
62
+ parser (2.7.1.3)
63
+ ast (~> 2.4.0)
64
+ rack (2.2.3)
65
+ rack-accept (0.4.5)
66
+ rack (>= 0.4)
67
+ rack-test (1.1.0)
68
+ rack (>= 1.0, < 3)
69
+ rainbow (3.0.0)
70
+ rake (13.0.1)
71
+ regexp_parser (1.7.1)
72
+ rexml (3.2.4)
73
+ rspec (3.9.0)
74
+ rspec-core (~> 3.9.0)
75
+ rspec-expectations (~> 3.9.0)
76
+ rspec-mocks (~> 3.9.0)
77
+ rspec-core (3.9.2)
78
+ rspec-support (~> 3.9.3)
79
+ rspec-expectations (3.9.2)
80
+ diff-lcs (>= 1.2.0, < 2.0)
81
+ rspec-support (~> 3.9.0)
82
+ rspec-mocks (3.9.1)
83
+ diff-lcs (>= 1.2.0, < 2.0)
84
+ rspec-support (~> 3.9.0)
85
+ rspec-support (3.9.3)
86
+ rubocop (0.85.1)
87
+ parallel (~> 1.10)
88
+ parser (>= 2.7.0.1)
89
+ rainbow (>= 2.2.2, < 4.0)
90
+ regexp_parser (>= 1.7)
91
+ rexml
92
+ rubocop-ast (>= 0.0.3)
93
+ ruby-progressbar (~> 1.7)
94
+ unicode-display_width (>= 1.4.0, < 2.0)
95
+ rubocop-ast (0.0.3)
96
+ parser (>= 2.7.0.1)
97
+ ruby-progressbar (1.10.1)
98
+ ruby2_keywords (0.0.2)
99
+ thread_safe (0.3.6)
100
+ tzinfo (1.2.7)
101
+ thread_safe (~> 0.1)
102
+ unicode-display_width (1.7.0)
103
+ zeitwerk (2.3.0)
104
+
105
+ PLATFORMS
106
+ ruby
107
+
108
+ DEPENDENCIES
109
+ bundler
110
+ grape-kaminari!
111
+ rack-test
112
+ rake
113
+ rspec
114
+ rubocop
115
+
116
+ BUNDLED WITH
117
+ 2.1.4
@@ -1,6 +1,7 @@
1
1
  The MIT License (MIT)
2
2
 
3
3
  Copyright (c) 2013-2014 Monterail.com LLC
4
+ Copyright (c) 2020 Black Square Media Ltd
4
5
 
5
6
  Permission is hereby granted, free of charge, to any person obtaining a copy of
6
7
  this software and associated documentation files (the "Software"), to deal in
data/README.md CHANGED
@@ -1,6 +1,9 @@
1
- # Grape::Kaminari [![Gem Version](https://badge.fury.io/rb/grape-kaminari.png)](http://badge.fury.io/rb/grape-kaminari) [![Circle CI](https://circleci.com/gh/monterail/grape-kaminari.png?style=shield)](https://circleci.com/gh/monterail/grape-kaminari)
1
+ # Grape::Kaminari
2
2
 
3
- [kaminari](https://github.com/amatsuda/kaminari) paginator integration for [grape](https://github.com/intridea/grape) API framework.
3
+ [![Build Status](https://travis-ci.org/bsm/grape-kaminari.png?branch=master)](https://travis-ci.org/bsm/grape-kaminari)
4
+ [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
5
+
6
+ [kaminari](https://github.com/kaminari/kaminari) paginator integration for [grape](https://github.com/intridea/grape) API framework.
4
7
 
5
8
  ## Installation
6
9
 
@@ -87,8 +90,4 @@ X-Offset: 10
87
90
 
88
91
  ## Contributing
89
92
 
90
- 1. Fork it
91
- 2. Create your feature branch (`git checkout -b my-new-feature`)
92
- 3. Commit your changes (`git commit -am 'Add some feature'`)
93
- 4. Push to the branch (`git push origin my-new-feature`)
94
- 5. Create new Pull Request
93
+ Bug reports and pull requests are welcome on GitHub at https://github.com/bsm/grape-kaminari.
data/Rakefile CHANGED
@@ -1,5 +1,8 @@
1
- require "bundler/gem_tasks"
2
-
3
- task default: :spec
1
+ require 'bundler/gem_tasks'
2
+ require 'rubocop/rake_task'
4
3
  require 'rspec/core/rake_task'
4
+
5
+ RuboCop::RakeTask.new
5
6
  RSpec::Core::RakeTask.new
7
+
8
+ task default: %i[rubocop spec]
@@ -1,28 +1,28 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
1
+ lib = File.expand_path('lib', __dir__)
3
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
3
  require 'grape/kaminari/version'
5
4
 
6
5
  Gem::Specification.new do |spec|
7
- spec.name = "grape-kaminari"
6
+ spec.name = 'grape-kaminari'
8
7
  spec.version = Grape::Kaminari::VERSION
9
- spec.authors = ["Tymon Tobolski"]
10
- spec.email = ["tymon.tobolski@monterail.com"]
11
- spec.description = %q{kaminari paginator integration for grape API framework}
12
- spec.summary = %q{kaminari integration for grape}
13
- spec.homepage = ""
14
- spec.license = "MIT"
8
+ spec.authors = ['Tymon Tobolski', 'Black Square Media']
9
+ spec.email = ['info@blacksquaremedia.com']
10
+ spec.description = 'kaminari paginator integration for grape API framework'
11
+ spec.summary = 'kaminari integration for grape'
12
+ spec.homepage = ''
13
+ spec.license = 'MIT'
15
14
 
16
- spec.files = `git ls-files`.split($/)
17
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
- spec.require_paths = ["lib"]
15
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.start_with?('spec/') }
16
+ spec.test_files = `git ls-files -z -- spec/*`.split("\x0")
17
+ spec.require_paths = ['lib']
18
+ spec.required_ruby_version = '>= 2.5'
20
19
 
20
+ spec.add_runtime_dependency 'grape', '>= 1.0'
21
+ spec.add_runtime_dependency 'kaminari-grape'
21
22
 
22
- spec.add_runtime_dependency "grape"
23
- spec.add_runtime_dependency "kaminari"
24
-
25
- spec.add_development_dependency "bundler", "~> 1.3"
26
- spec.add_development_dependency "rake"
27
- spec.add_development_dependency 'rspec', '~> 2.9'
23
+ spec.add_development_dependency 'bundler'
24
+ spec.add_development_dependency 'rack-test'
25
+ spec.add_development_dependency 'rake'
26
+ spec.add_development_dependency 'rspec'
27
+ spec.add_development_dependency 'rubocop'
28
28
  end
@@ -1 +1 @@
1
- require "grape/kaminari"
1
+ require 'grape/kaminari'
@@ -1,44 +1,51 @@
1
- require "grape/kaminari/version"
2
- require "grape/kaminari/max_value_validator"
3
- require "kaminari/grape"
1
+ require 'grape'
2
+ require 'grape/kaminari/version'
3
+ require 'grape/kaminari/max_value_validator'
4
+ require 'kaminari/grape'
4
5
 
5
6
  module Grape
6
7
  module Kaminari
7
- def self.included(base)
8
- base.class_eval do
9
- helpers do
10
- def paginate(collection)
11
- collection.page(params[:page]).per(params[:per_page]).padding(params[:offset]).tap do |data|
12
- header "X-Total", data.total_count.to_s
13
- header "X-Total-Pages", data.num_pages.to_s
14
- header "X-Per-Page", params[:per_page].to_s
15
- header "X-Page", data.current_page.to_s
16
- header "X-Next-Page", data.next_page.to_s
17
- header "X-Prev-Page", data.prev_page.to_s
18
- header "X-Offset", params[:offset].to_s
19
- end
20
- end
8
+ module HelperMethods # :nodoc:
9
+ def paginate(collection)
10
+ collection.page(params[:page].to_i)
11
+ .per(params[:per_page].to_i)
12
+ .padding(params[:offset].to_i)
13
+ .tap do |data|
14
+ header 'X-Total', data.total_count.to_s
15
+ header 'X-Total-Pages', data.total_pages.to_s
16
+ header 'X-Per-Page', data.limit_value.to_s
17
+ header 'X-Page', data.current_page.to_s
18
+ header 'X-Next-Page', data.next_page.to_s
19
+ header 'X-Prev-Page', data.prev_page.to_s
20
+ header 'X-Offset', params[:offset].to_s
21
21
  end
22
+ end
23
+ end
22
24
 
23
- def self.paginate(options = {})
24
- options.reverse_merge!(
25
- per_page: ::Kaminari.config.default_per_page || 10,
26
- max_per_page: ::Kaminari.config.max_per_page,
27
- offset: 0
28
- )
29
- params do
30
- optional :page, type: Integer, default: 1,
31
- desc: 'Page offset to fetch.'
32
- optional :per_page, type: Integer, default: options[:per_page],
33
- desc: 'Number of results to return per page.',
34
- max_value: options[:max_per_page]
35
- if options[:offset].is_a? Numeric
36
- optional :offset, type: Integer, default: options[:offset],
37
- desc: 'Pad a number of results.'
38
- end
25
+ module ClassMethods # :nodoc:
26
+ def paginate(**options)
27
+ options.reverse_merge!(
28
+ per_page: ::Kaminari.config.default_per_page || 10,
29
+ max_per_page: ::Kaminari.config.max_per_page,
30
+ offset: 0,
31
+ )
32
+ params do
33
+ optional :page, type: Integer, default: 1,
34
+ desc: 'Page offset to fetch.'
35
+ optional :per_page, type: Integer, default: options[:per_page],
36
+ desc: 'Number of results to return per page.',
37
+ max_value: options[:max_per_page]
38
+ if options[:offset].is_a? Numeric
39
+ optional :offset, type: Integer, default: options[:offset],
40
+ desc: 'Pad a number of results.'
39
41
  end
40
42
  end
41
43
  end
42
44
  end
45
+
46
+ def self.included(base)
47
+ base.helpers HelperMethods
48
+ base.extend ClassMethods
49
+ end
43
50
  end
44
51
  end
@@ -1,17 +1,14 @@
1
1
  module Grape
2
2
  module Kaminari
3
- class MaxValueValidator < Grape::Validations::SingleOptionValidator
3
+ class MaxValueValidator < Grape::Validations::Base
4
4
  def validate_param!(attr_name, params)
5
- return unless params[attr_name]
6
-
7
5
  attr = params[attr_name]
8
- if attr && @option && attr > @option
9
- if Gem::Version.new(Grape::VERSION) >= Gem::Version.new('0.9.0')
10
- raise Grape::Exceptions::Validation, params: [@scope.full_name(attr_name)], message: "must be less than #{@option}"
11
- else
12
- raise Grape::Exceptions::Validation, param: @scope.full_name(attr_name), message: "must be less than #{@option}"
13
- end
14
- end
6
+ return unless attr.is_a?(Integer) && @option && attr > @option
7
+
8
+ raise Grape::Exceptions::Validation.new(
9
+ params: [@scope.full_name(attr_name)],
10
+ message: "must be less than or equal #{@option}",
11
+ )
15
12
  end
16
13
  end
17
14
  end
@@ -1,5 +1,5 @@
1
1
  module Grape
2
2
  module Kaminari
3
- VERSION = "0.1.6"
3
+ VERSION = '0.2.1'.freeze
4
4
  end
5
5
  end
@@ -9,7 +9,6 @@ class PaginatedAPI < Grape::API
9
9
  end
10
10
 
11
11
  describe Grape::Kaminari do
12
-
13
12
  describe 'unpaginated api' do
14
13
  subject { Class.new(UnPaginatedAPI) }
15
14
 
@@ -23,15 +22,16 @@ describe Grape::Kaminari do
23
22
 
24
23
  it 'adds to declared parameters' do
25
24
  subject.paginate
26
- expect(subject.settings[:declared_params]).to eq([:page, :per_page, :offset])
25
+ expect(subject.inheritable_setting.route[:declared_params]).to eq(%i[page per_page offset])
27
26
  end
28
27
 
29
28
  describe 'descriptions, validation, and defaults' do
29
+ let(:params) { subject.routes.first.params }
30
+
30
31
  before do
31
32
  subject.paginate
32
- subject.get '/' do; end
33
+ subject.get('/') {}
33
34
  end
34
- let(:params) {subject.routes.first.route_params}
35
35
 
36
36
  it 'does not require :page' do
37
37
  expect(params['page'][:required]).to eq(false)
@@ -80,21 +80,18 @@ describe Grape::Kaminari do
80
80
  it 'defaults :offset to 0' do
81
81
  expect(params['offset'][:default]).to eq(0)
82
82
  end
83
-
84
-
85
83
  end
86
-
87
84
  end
88
85
 
89
86
  describe 'custom paginated api' do
90
87
  subject { Class.new(PaginatedAPI) }
91
- def app; subject; end
88
+ let(:app) { subject }
89
+ let(:params) { subject.routes.first.params }
92
90
 
93
91
  before do
94
- subject.paginate per_page:99, max_per_page: 999, offset: 9
95
- subject.get '/' do; end
92
+ subject.paginate per_page: 99, max_per_page: 999, offset: 9
93
+ subject.get('/') {}
96
94
  end
97
- let(:params) {subject.routes.first.route_params}
98
95
 
99
96
  it 'defaults :per_page to customized value' do
100
97
  expect(params['per_page'][:default]).to eq(99)
@@ -102,19 +99,24 @@ describe Grape::Kaminari do
102
99
 
103
100
  it 'succeeds when :per_page is within :max_value' do
104
101
  get('/', page: 1, per_page: 999)
105
- expect(last_response.status).to eq 200
102
+ expect(last_response.status).to eq(200)
106
103
  end
107
104
 
108
105
  it 'ensures :per_page is within :max_value' do
109
106
  get('/', page: 1, per_page: 1_000)
110
- expect(last_response.status).to eq 400
111
- expect(last_response.body).to match /per_page must be less than 999/
107
+ expect(last_response.status).to eq(400)
108
+ expect(last_response.body).to match(/per_page must be less than or equal 999/)
109
+ end
110
+
111
+ it 'ensures :per_page is numeric' do
112
+ get('/', page: 1, per_page: 'foo')
113
+ expect(last_response.status).to eq(400)
114
+ expect(last_response.body).to match(/per_page is invalid/)
112
115
  end
113
116
 
114
117
  it 'defaults :offset to customized value' do
115
118
  expect(params['offset'][:default]).to eq(9)
116
119
  end
117
-
118
120
  end
119
121
 
120
122
  describe 'paginated api without :offset' do
@@ -122,9 +124,7 @@ describe Grape::Kaminari do
122
124
 
123
125
  it 'excludes :offset from declared params' do
124
126
  subject.paginate offset: false
125
- expect(subject.settings[:declared_params]).not_to include(:offset)
127
+ expect(subject.inheritable_setting.route[:declared_params]).not_to include(:offset)
126
128
  end
127
-
128
129
  end
129
-
130
130
  end
@@ -1,4 +1,5 @@
1
1
  require 'spec_helper'
2
+ require 'json'
2
3
 
3
4
  class PaginatedAPI < Grape::API
4
5
  include Grape::Kaminari
@@ -16,12 +17,13 @@ end
16
17
 
17
18
  describe Grape::Kaminari do
18
19
  subject { PaginatedAPI.new }
19
- def app; subject; end
20
+ def app
21
+ subject
22
+ end
20
23
  let(:json) { JSON.parse(last_response.body) }
21
24
  let(:header) { last_response.header }
22
25
 
23
26
  describe 'paginated helper' do
24
-
25
27
  it 'returns the first page' do
26
28
  get '/', page: 1, per_page: 3
27
29
  expect(json).to eq [1, 2, 3]
@@ -49,8 +51,5 @@ describe Grape::Kaminari do
49
51
  expect(header['X-Prev-Page']).to eq '2'
50
52
  expect(header['X-Offset']).to eq '1'
51
53
  end
52
-
53
54
  end
54
-
55
-
56
55
  end
@@ -1,19 +1,15 @@
1
- $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
2
- $LOAD_PATH.unshift(File.dirname(__FILE__))
3
1
  require 'rspec'
4
- require 'kaminari'
5
- require 'grape'
6
2
  require 'grape-kaminari'
7
3
  require 'rack/test'
8
4
 
9
5
  # Requires supporting files with custom matchers and macros, etc,
10
6
  # in ./support/ and its subdirectories.
11
- Dir['#{File.dirname(__FILE__)}/support/**/*.rb'].each {|f| require f}
7
+ Dir[File.expand_path('./support/**/*.rb', __dir__)].sort.each { |f| require f }
12
8
 
13
9
  I18n.enforce_available_locales = false
14
10
 
15
11
  RSpec.configure do |config|
16
12
  config.include Rack::Test::Methods
17
- config.treat_symbols_as_metadata_keys_with_true_values = true
13
+ config.raise_errors_for_deprecations!
18
14
  config.order = 'random'
19
15
  end
metadata CHANGED
@@ -1,94 +1,126 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grape-kaminari
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tymon Tobolski
8
+ - Black Square Media
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2014-09-29 00:00:00.000000000 Z
12
+ date: 2020-06-18 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: grape
15
16
  requirement: !ruby/object:Gem::Requirement
16
17
  requirements:
17
- - - '>='
18
+ - - ">="
18
19
  - !ruby/object:Gem::Version
19
- version: '0'
20
+ version: '1.0'
20
21
  type: :runtime
21
22
  prerelease: false
22
23
  version_requirements: !ruby/object:Gem::Requirement
23
24
  requirements:
24
- - - '>='
25
+ - - ">="
25
26
  - !ruby/object:Gem::Version
26
- version: '0'
27
+ version: '1.0'
27
28
  - !ruby/object:Gem::Dependency
28
- name: kaminari
29
+ name: kaminari-grape
29
30
  requirement: !ruby/object:Gem::Requirement
30
31
  requirements:
31
- - - '>='
32
+ - - ">="
32
33
  - !ruby/object:Gem::Version
33
34
  version: '0'
34
35
  type: :runtime
35
36
  prerelease: false
36
37
  version_requirements: !ruby/object:Gem::Requirement
37
38
  requirements:
38
- - - '>='
39
+ - - ">="
39
40
  - !ruby/object:Gem::Version
40
41
  version: '0'
41
42
  - !ruby/object:Gem::Dependency
42
43
  name: bundler
43
44
  requirement: !ruby/object:Gem::Requirement
44
45
  requirements:
45
- - - ~>
46
+ - - ">="
46
47
  - !ruby/object:Gem::Version
47
- version: '1.3'
48
+ version: '0'
48
49
  type: :development
49
50
  prerelease: false
50
51
  version_requirements: !ruby/object:Gem::Requirement
51
52
  requirements:
52
- - - ~>
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: rack-test
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ">="
53
61
  - !ruby/object:Gem::Version
54
- version: '1.3'
62
+ version: '0'
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
55
70
  - !ruby/object:Gem::Dependency
56
71
  name: rake
57
72
  requirement: !ruby/object:Gem::Requirement
58
73
  requirements:
59
- - - '>='
74
+ - - ">="
60
75
  - !ruby/object:Gem::Version
61
76
  version: '0'
62
77
  type: :development
63
78
  prerelease: false
64
79
  version_requirements: !ruby/object:Gem::Requirement
65
80
  requirements:
66
- - - '>='
81
+ - - ">="
67
82
  - !ruby/object:Gem::Version
68
83
  version: '0'
69
84
  - !ruby/object:Gem::Dependency
70
85
  name: rspec
71
86
  requirement: !ruby/object:Gem::Requirement
72
87
  requirements:
73
- - - ~>
88
+ - - ">="
74
89
  - !ruby/object:Gem::Version
75
- version: '2.9'
90
+ version: '0'
91
+ type: :development
92
+ prerelease: false
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
98
+ - !ruby/object:Gem::Dependency
99
+ name: rubocop
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: '0'
76
105
  type: :development
77
106
  prerelease: false
78
107
  version_requirements: !ruby/object:Gem::Requirement
79
108
  requirements:
80
- - - ~>
109
+ - - ">="
81
110
  - !ruby/object:Gem::Version
82
- version: '2.9'
111
+ version: '0'
83
112
  description: kaminari paginator integration for grape API framework
84
113
  email:
85
- - tymon.tobolski@monterail.com
114
+ - info@blacksquaremedia.com
86
115
  executables: []
87
116
  extensions: []
88
117
  extra_rdoc_files: []
89
118
  files:
90
- - .gitignore
119
+ - ".gitignore"
120
+ - ".rubocop.yml"
121
+ - ".travis.yml"
91
122
  - Gemfile
123
+ - Gemfile.lock
92
124
  - LICENSE.txt
93
125
  - README.md
94
126
  - Rakefile
@@ -110,17 +142,16 @@ require_paths:
110
142
  - lib
111
143
  required_ruby_version: !ruby/object:Gem::Requirement
112
144
  requirements:
113
- - - '>='
145
+ - - ">="
114
146
  - !ruby/object:Gem::Version
115
- version: '0'
147
+ version: '2.5'
116
148
  required_rubygems_version: !ruby/object:Gem::Requirement
117
149
  requirements:
118
- - - '>='
150
+ - - ">="
119
151
  - !ruby/object:Gem::Version
120
152
  version: '0'
121
153
  requirements: []
122
- rubyforge_project:
123
- rubygems_version: 2.1.11
154
+ rubygems_version: 3.1.4
124
155
  signing_key:
125
156
  specification_version: 4
126
157
  summary: kaminari integration for grape