sql_query 0.6.0 → 0.7.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/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/.travis.yml +9 -4
- data/Appraisals +12 -10
- data/CHANGELOG.md +6 -1
- data/Gemfile +2 -0
- data/README.md +8 -1
- data/Rakefile +4 -2
- data/gemfiles/3.2.gemfile +5 -3
- data/gemfiles/4.0.gemfile +5 -3
- data/gemfiles/4.1.gemfile +5 -3
- data/gemfiles/4.2.gemfile +5 -3
- data/gemfiles/5.0.gemfile +5 -3
- data/lib/sql_query.rb +21 -11
- data/spec/config_spec.rb +2 -0
- data/spec/spec_helper.rb +9 -12
- data/spec/sql_query_spec.rb +51 -12
- data/sql_query.gemspec +23 -22
- metadata +44 -36
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5f152c55f4f62dabfbd3e85d01341cdb6191f6c7
|
|
4
|
+
data.tar.gz: 5dfa356ad15704877a746d26943580c04abd92c6
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 4fac1c583e039c30dc2c2b7a72fdd5014dc4744185cbbc73bb8868d368b2c09606a7c6913db392799c65a435566c10c94f137b2b38e4a8f83caedc56a94a7601
|
|
7
|
+
data.tar.gz: 2d8488e10a49b8ee0b71325d6dea182e31eca25b058e26916cd53a6bc868f122e9e874a3510c2cc6cbe5fd854960e220ba23a27da82fe34406e5c40b66757772
|
data/.ruby-gemset
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
sql_query
|
data/.ruby-version
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
2.3.3
|
data/.travis.yml
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
language: ruby
|
|
2
2
|
cache: bundler
|
|
3
|
-
before_install:
|
|
3
|
+
before_install:
|
|
4
|
+
- gem uninstall -v '>= 2' -i $(rvm gemdir)@global -ax bundler || true
|
|
5
|
+
- gem install bundler -v '< 2'
|
|
6
|
+
- curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
|
|
7
|
+
- chmod +x ./cc-test-reporter
|
|
4
8
|
|
|
5
9
|
gemfile:
|
|
6
10
|
- gemfiles/3.2.gemfile
|
|
@@ -10,14 +14,15 @@ gemfile:
|
|
|
10
14
|
- gemfiles/5.0.gemfile
|
|
11
15
|
|
|
12
16
|
rvm:
|
|
13
|
-
- '2.3.
|
|
17
|
+
- '2.3.3'
|
|
14
18
|
|
|
15
19
|
addons:
|
|
16
20
|
postgresql: '9.4'
|
|
17
|
-
code_climate:
|
|
18
|
-
repo_token: 743bf63d7a422064551b35931628682c6cad81a30743edee7ff9ea8af061397d
|
|
19
21
|
|
|
20
22
|
env:
|
|
21
23
|
- BUILDER=travis
|
|
22
24
|
before_script:
|
|
23
25
|
- psql -c 'create database travis_ci_test;' -U postgres
|
|
26
|
+
- ./cc-test-reporter before-build
|
|
27
|
+
after_script:
|
|
28
|
+
- ./cc-test-reporter after-build --exit-code $TRAVIS_TEST_RESULT -r 743bf63d7a422064551b35931628682c6cad81a30743edee7ff9ea8af061397d
|
data/Appraisals
CHANGED
|
@@ -1,19 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
appraise '3.2' do
|
|
4
|
+
gem 'activerecord', '~> 3.2.21'
|
|
3
5
|
end
|
|
4
6
|
|
|
5
|
-
appraise
|
|
6
|
-
gem
|
|
7
|
+
appraise '4.0' do
|
|
8
|
+
gem 'activerecord', '~> 4.0.0'
|
|
7
9
|
end
|
|
8
10
|
|
|
9
|
-
appraise
|
|
10
|
-
gem
|
|
11
|
+
appraise '4.1' do
|
|
12
|
+
gem 'activerecord', '~> 4.1.0'
|
|
11
13
|
end
|
|
12
14
|
|
|
13
|
-
appraise
|
|
14
|
-
gem
|
|
15
|
+
appraise '4.2' do
|
|
16
|
+
gem 'activerecord', '~> 4.2.0'
|
|
15
17
|
end
|
|
16
18
|
|
|
17
|
-
appraise
|
|
18
|
-
|
|
19
|
+
appraise '5.0' do
|
|
20
|
+
gem 'activerecord', '~> 5.0.0'
|
|
19
21
|
end
|
data/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# SqlQuery change log
|
|
2
2
|
|
|
3
|
-
## 0.
|
|
3
|
+
## 0.7.1 / Unreleased
|
|
4
4
|
|
|
5
5
|
* [Added]
|
|
6
6
|
|
|
@@ -10,6 +10,11 @@
|
|
|
10
10
|
|
|
11
11
|
* [Fixed]
|
|
12
12
|
|
|
13
|
+
## 0.7.0 / 2020-08-04
|
|
14
|
+
|
|
15
|
+
* [Added] support for exec_query from ActiveRecord https://github.com/sufleR/sql_query/pull/7
|
|
16
|
+
|
|
17
|
+
|
|
13
18
|
## 0.6.0 / 2017-03-30
|
|
14
19
|
|
|
15
20
|
* [Added] possibility to override path where gem will look for sql file.
|
data/Gemfile
CHANGED
data/README.md
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
[](http://badge.fury.io/rb/sql_query)
|
|
2
|
-
[](https://gemnasium.com/sufleR/sql_query)
|
|
3
2
|
[](https://codeclimate.com/github/sufleR/sql_query)
|
|
4
3
|
[](https://codeclimate.com/github/sufleR/sql_query)
|
|
5
4
|
[](https://travis-ci.org/sufleR/sql_query)
|
|
@@ -87,6 +86,7 @@ SqlQuery.new('player/get_by_email', email: 'e@mail.dev')
|
|
|
87
86
|
### Methods
|
|
88
87
|
|
|
89
88
|
- **execute** - executes query and returns result data. It accepts boolean argument. When argument is false it will run raw sql query instead of prepared_for_logs.
|
|
89
|
+
- **exec_query** - similar to `#execute` but with data returned via `ActiveRecord::Result`.
|
|
90
90
|
- **explain** - runs explain for SQL from template
|
|
91
91
|
- **sql** - returns SQL string
|
|
92
92
|
- **pretty_sql** - returns SQL string prettier to read in console
|
|
@@ -141,3 +141,10 @@ If you have some examples to share please make pull request.
|
|
|
141
141
|
3. Commit your changes (`git commit -am 'Add some feature'`)
|
|
142
142
|
4. Push to the branch (`git push origin my-new-feature`)
|
|
143
143
|
5. Create a new Pull Request
|
|
144
|
+
|
|
145
|
+
To run specs, setup Postgres with the following:
|
|
146
|
+
|
|
147
|
+
```sql
|
|
148
|
+
CREATE DATABASE sqlquery;
|
|
149
|
+
CREATE ROLE sqlquery WITH LOGIN;
|
|
150
|
+
```
|
data/Rakefile
CHANGED
data/gemfiles/3.2.gemfile
CHANGED
data/gemfiles/4.0.gemfile
CHANGED
data/gemfiles/4.1.gemfile
CHANGED
data/gemfiles/4.2.gemfile
CHANGED
data/gemfiles/5.0.gemfile
CHANGED
data/lib/sql_query.rb
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
require 'erb'
|
|
2
4
|
|
|
3
5
|
class SqlQuery
|
|
@@ -5,16 +7,18 @@ class SqlQuery
|
|
|
5
7
|
|
|
6
8
|
def initialize(file_name, options = {})
|
|
7
9
|
unless file_name.is_a?(String) || file_name.is_a?(Symbol)
|
|
8
|
-
|
|
10
|
+
raise ArgumentError, 'SQL file name should be String or Symbol'
|
|
9
11
|
end
|
|
12
|
+
|
|
10
13
|
@sql_filename = file_name
|
|
11
14
|
@options = options
|
|
12
|
-
@connection =
|
|
15
|
+
@connection = options.try(:delete, :db_connection) ||
|
|
16
|
+
self.class.config.adapter.connection
|
|
13
17
|
prepare_variables
|
|
14
18
|
end
|
|
15
19
|
|
|
16
20
|
def explain
|
|
17
|
-
msg = "EXPLAIN for: \n#{
|
|
21
|
+
msg = "EXPLAIN for: \n#{sql}\n"
|
|
18
22
|
msg += connection.explain(sql)
|
|
19
23
|
pretty(msg)
|
|
20
24
|
end
|
|
@@ -24,6 +28,11 @@ class SqlQuery
|
|
|
24
28
|
connection.execute(to_execute).entries
|
|
25
29
|
end
|
|
26
30
|
|
|
31
|
+
def exec_query(prepare = true)
|
|
32
|
+
to_execute = prepare ? prepared_for_logs : sql
|
|
33
|
+
connection.exec_query(to_execute).to_a
|
|
34
|
+
end
|
|
35
|
+
|
|
27
36
|
def sql
|
|
28
37
|
@sql ||= ERB.new(File.read(file_path)).result(binding)
|
|
29
38
|
end
|
|
@@ -37,17 +46,15 @@ class SqlQuery
|
|
|
37
46
|
end
|
|
38
47
|
|
|
39
48
|
def prepared_for_logs
|
|
40
|
-
sql.gsub(/(\n|\s)+/,' ')
|
|
49
|
+
sql.gsub(/(\n|\s)+/, ' ')
|
|
41
50
|
end
|
|
42
51
|
|
|
43
52
|
def partial(partial_name, partial_options = {})
|
|
44
53
|
path, file_name = split_to_path_and_name(partial_name)
|
|
45
54
|
self.class.new("#{path}/_#{file_name}",
|
|
46
|
-
@options.merge(partial_options)
|
|
47
|
-
).sql
|
|
55
|
+
@options.merge(partial_options)).sql
|
|
48
56
|
end
|
|
49
57
|
|
|
50
|
-
|
|
51
58
|
attr_writer :config
|
|
52
59
|
def self.config
|
|
53
60
|
@config ||= Config.new
|
|
@@ -81,12 +88,15 @@ class SqlQuery
|
|
|
81
88
|
# override inspect to be more human readable from console
|
|
82
89
|
# code copy from ActiveRecord
|
|
83
90
|
# https://github.com/rails/rails/blob/master/activerecord/lib/active_record/explain.rb#L30
|
|
84
|
-
def value.inspect
|
|
91
|
+
def value.inspect
|
|
92
|
+
self
|
|
93
|
+
end
|
|
85
94
|
value
|
|
86
95
|
end
|
|
87
96
|
|
|
88
97
|
def prepare_variables
|
|
89
|
-
return
|
|
98
|
+
return if @options.blank?
|
|
99
|
+
|
|
90
100
|
@options.each do |k, v|
|
|
91
101
|
instance_variable_set("@#{k}", v)
|
|
92
102
|
end
|
|
@@ -94,10 +104,10 @@ class SqlQuery
|
|
|
94
104
|
|
|
95
105
|
def file_path
|
|
96
106
|
files = Dir.glob(path)
|
|
97
|
-
if files.
|
|
107
|
+
if files.empty?
|
|
98
108
|
raise "File not found: #{@sql_filename}"
|
|
99
109
|
elsif files.size > 1
|
|
100
|
-
raise "More than one file found: #{
|
|
110
|
+
raise "More than one file found: #{files.join(', ')}"
|
|
101
111
|
else
|
|
102
112
|
files.first
|
|
103
113
|
end
|
data/spec/config_spec.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
SimpleCov.start do
|
|
7
|
-
add_filter '/spec/'
|
|
8
|
-
end
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'simplecov'
|
|
4
|
+
SimpleCov.start do
|
|
5
|
+
add_filter '/spec/'
|
|
9
6
|
end
|
|
10
7
|
|
|
11
8
|
require 'active_record'
|
|
12
9
|
require 'sql_query'
|
|
13
|
-
require 'pry'
|
|
10
|
+
#require 'pry'
|
|
14
11
|
|
|
15
12
|
SqlQuery.configure do |config|
|
|
16
13
|
config.path = '/spec/sql_queries'
|
|
@@ -26,15 +23,15 @@ RSpec.configure do |config|
|
|
|
26
23
|
end
|
|
27
24
|
|
|
28
25
|
connection = if ENV['BUILDER'] == 'travis'
|
|
29
|
-
|
|
26
|
+
'postgres://postgres@localhost/travis_ci_test'
|
|
30
27
|
else
|
|
31
|
-
|
|
28
|
+
'postgres://sqlquery:sqlquery@localhost/sqlquery'
|
|
32
29
|
end
|
|
33
30
|
|
|
34
31
|
ActiveRecord::Base.establish_connection(connection)
|
|
35
32
|
|
|
36
33
|
ActiveRecord::Base.connection.execute(
|
|
37
|
-
|
|
34
|
+
'CREATE TABLE IF NOT EXISTS players (email text);'
|
|
38
35
|
)
|
|
39
36
|
|
|
40
37
|
config.order = :random
|
data/spec/sql_query_spec.rb
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
require 'spec_helper'
|
|
2
4
|
|
|
3
5
|
describe SqlQuery do
|
|
4
|
-
|
|
5
6
|
let(:options) { { email: 'e@mail.dev' } }
|
|
6
7
|
let(:file_name) { :get_player_by_email }
|
|
7
8
|
let(:query) { described_class.new(file_name, options) }
|
|
@@ -11,7 +12,6 @@ describe SqlQuery do
|
|
|
11
12
|
end
|
|
12
13
|
|
|
13
14
|
describe '#initialize' do
|
|
14
|
-
|
|
15
15
|
it 'sets instance variables for all options' do
|
|
16
16
|
expect(query.instance_variable_get(:@email)).to eq 'e@mail.dev'
|
|
17
17
|
end
|
|
@@ -28,7 +28,9 @@ describe SqlQuery do
|
|
|
28
28
|
let(:file_name) { { do: 'something' } }
|
|
29
29
|
|
|
30
30
|
it 'raises ArgumentError' do
|
|
31
|
-
expect{ query }
|
|
31
|
+
expect { query }
|
|
32
|
+
.to raise_error(ArgumentError,
|
|
33
|
+
'SQL file name should be String or Symbol')
|
|
32
34
|
end
|
|
33
35
|
end
|
|
34
36
|
|
|
@@ -51,7 +53,8 @@ describe SqlQuery do
|
|
|
51
53
|
let(:file_name) { :not_exists }
|
|
52
54
|
|
|
53
55
|
it 'raises error' do
|
|
54
|
-
expect { query.send(:file_path) }
|
|
56
|
+
expect { query.send(:file_path) }
|
|
57
|
+
.to raise_error('File not found: not_exists')
|
|
55
58
|
end
|
|
56
59
|
end
|
|
57
60
|
|
|
@@ -59,7 +62,8 @@ describe SqlQuery do
|
|
|
59
62
|
let(:file_name) { :duplicated }
|
|
60
63
|
|
|
61
64
|
it 'raises error' do
|
|
62
|
-
expect{ query.send(:file_path) }
|
|
65
|
+
expect { query.send(:file_path) }
|
|
66
|
+
.to raise_error.with_message(/More than one file found:/)
|
|
63
67
|
end
|
|
64
68
|
end
|
|
65
69
|
end
|
|
@@ -70,14 +74,15 @@ describe SqlQuery do
|
|
|
70
74
|
let(:file_name) { 'fname' }
|
|
71
75
|
|
|
72
76
|
it 'sets it as dir for file' do
|
|
73
|
-
expect(query.send(:path)).to eq(
|
|
77
|
+
expect(query.send(:path)).to eq('/path_to_file/fname.{sql.erb,erb.sql}')
|
|
74
78
|
end
|
|
75
79
|
end
|
|
76
80
|
end
|
|
77
81
|
|
|
78
82
|
describe '#sql' do
|
|
79
83
|
it 'returns query string' do
|
|
80
|
-
expect(query.sql)
|
|
84
|
+
expect(query.sql)
|
|
85
|
+
.to eq("SELECT *\nFROM players\nWHERE email = 'e@mail.dev'\n")
|
|
81
86
|
end
|
|
82
87
|
|
|
83
88
|
context 'when file is .erb.sql' do
|
|
@@ -92,7 +97,8 @@ describe SqlQuery do
|
|
|
92
97
|
|
|
93
98
|
describe '#pretty_sql' do
|
|
94
99
|
it 'returns query string' do
|
|
95
|
-
expect(query.pretty_sql)
|
|
100
|
+
expect(query.pretty_sql)
|
|
101
|
+
.to eq("SELECT *\nFROM players\nWHERE email = 'e@mail.dev'\n")
|
|
96
102
|
end
|
|
97
103
|
end
|
|
98
104
|
|
|
@@ -100,7 +106,7 @@ describe SqlQuery do
|
|
|
100
106
|
let(:explain) { query.explain }
|
|
101
107
|
it 'returns explain string' do
|
|
102
108
|
expect(explain).to include 'EXPLAIN for:'
|
|
103
|
-
expect(explain).to include
|
|
109
|
+
expect(explain).to include 'FROM players'
|
|
104
110
|
expect(explain).to include "WHERE email = 'e@mail.dev'"
|
|
105
111
|
expect(explain).to include 'QUERY PLAN'
|
|
106
112
|
expect(explain).to include 'Seq Scan on players'
|
|
@@ -116,12 +122,12 @@ describe SqlQuery do
|
|
|
116
122
|
|
|
117
123
|
after do
|
|
118
124
|
ActiveRecord::Base.connection.execute(
|
|
119
|
-
|
|
125
|
+
'DELETE FROM players'
|
|
120
126
|
)
|
|
121
127
|
end
|
|
122
128
|
|
|
123
129
|
it 'returns data from database' do
|
|
124
|
-
expect(query.execute).to eq [{ 'email' => 'e@mail.dev'}]
|
|
130
|
+
expect(query.execute).to eq [{ 'email' => 'e@mail.dev' }]
|
|
125
131
|
end
|
|
126
132
|
|
|
127
133
|
context 'when prepare argument is true' do
|
|
@@ -139,10 +145,43 @@ describe SqlQuery do
|
|
|
139
145
|
end
|
|
140
146
|
end
|
|
141
147
|
|
|
148
|
+
describe '#exec_query' do
|
|
149
|
+
before do
|
|
150
|
+
ActiveRecord::Base.connection.execute(
|
|
151
|
+
"INSERT INTO players (email) VALUES ('e@mail.dev')"
|
|
152
|
+
)
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
after do
|
|
156
|
+
ActiveRecord::Base.connection.execute(
|
|
157
|
+
'DELETE FROM players'
|
|
158
|
+
)
|
|
159
|
+
end
|
|
160
|
+
|
|
161
|
+
it 'returns data from database' do
|
|
162
|
+
expect(query.exec_query).to eq [{ 'email' => 'e@mail.dev' }]
|
|
163
|
+
end
|
|
164
|
+
|
|
165
|
+
context 'when prepare argument is true' do
|
|
166
|
+
it 'executes prepared query for logs' do
|
|
167
|
+
expect(query).to receive(:prepared_for_logs) { '' }
|
|
168
|
+
query.exec_query
|
|
169
|
+
end
|
|
170
|
+
end
|
|
171
|
+
|
|
172
|
+
context 'when prepare argument is false' do
|
|
173
|
+
it 'executes unchanged sql query' do
|
|
174
|
+
expect(query).not_to receive(:prepared_for_logs)
|
|
175
|
+
query.exec_query(false)
|
|
176
|
+
end
|
|
177
|
+
end
|
|
178
|
+
end
|
|
179
|
+
|
|
142
180
|
describe '#partial' do
|
|
143
181
|
let(:file_name) { :get_player_by_email_with_template }
|
|
144
182
|
it 'resolves partials as parts of sql queries' do
|
|
145
|
-
expect(query.sql)
|
|
183
|
+
expect(query.sql)
|
|
184
|
+
.to eq("SELECT *\nFROM players\nWHERE players.email = 'e@mail.dev'\n\n")
|
|
146
185
|
end
|
|
147
186
|
|
|
148
187
|
context 'when partial name is string with file path' do
|
data/sql_query.gemspec
CHANGED
|
@@ -1,34 +1,35 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
lib = File.expand_path('lib', __dir__)
|
|
3
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
5
|
|
|
5
6
|
Gem::Specification.new do |spec|
|
|
6
|
-
spec.name =
|
|
7
|
-
spec.version =
|
|
8
|
-
spec.authors = [
|
|
9
|
-
spec.email = [
|
|
10
|
-
spec.summary =
|
|
11
|
-
spec.description =
|
|
7
|
+
spec.name = 'sql_query'
|
|
8
|
+
spec.version = '0.7.0'
|
|
9
|
+
spec.authors = ['sufleR']
|
|
10
|
+
spec.email = ['szymon.fracczak@gmail.com']
|
|
11
|
+
spec.summary = 'Ruby gem to load and execute SQL queries from `.sql.erb` templates'
|
|
12
|
+
spec.description = "
|
|
12
13
|
It makes working with pure SQL easier with syntax highlighting.
|
|
13
14
|
Let's you clean your Ruby code from SQL strings.
|
|
14
|
-
|
|
15
|
-
spec.homepage =
|
|
16
|
-
spec.license =
|
|
15
|
+
"
|
|
16
|
+
spec.homepage = 'https://github.com/sufleR/sql_query'
|
|
17
|
+
spec.license = 'MIT'
|
|
17
18
|
|
|
18
19
|
spec.files = `git ls-files -z`.split("\x0")
|
|
19
20
|
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
20
21
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
21
|
-
spec.require_paths = [
|
|
22
|
+
spec.require_paths = ['lib']
|
|
22
23
|
|
|
23
|
-
spec.required_ruby_version =
|
|
24
|
+
spec.required_ruby_version = '>= 1.9.3'
|
|
24
25
|
|
|
25
|
-
spec.add_dependency
|
|
26
|
-
spec.add_development_dependency
|
|
27
|
-
spec.add_development_dependency
|
|
28
|
-
spec.add_development_dependency
|
|
29
|
-
spec.add_development_dependency
|
|
30
|
-
spec.add_development_dependency
|
|
31
|
-
spec.add_development_dependency
|
|
32
|
-
spec.add_development_dependency
|
|
33
|
-
spec.add_development_dependency
|
|
26
|
+
spec.add_dependency 'activerecord', '>= 3.2', '< 6.0'
|
|
27
|
+
spec.add_development_dependency 'appraisal'
|
|
28
|
+
spec.add_development_dependency 'bundler'
|
|
29
|
+
spec.add_development_dependency 'pg', '~> 0.18'
|
|
30
|
+
spec.add_development_dependency 'rake', '~> 13.0'
|
|
31
|
+
spec.add_development_dependency 'rspec', '~> 3.4'
|
|
32
|
+
spec.add_development_dependency 'rubocop', '<= 0.81'
|
|
33
|
+
spec.add_development_dependency 'simplecov'
|
|
34
|
+
spec.add_development_dependency 'with_model', '~> 1.2'
|
|
34
35
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: sql_query
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.7.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- sufleR
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2020-08-04 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activerecord
|
|
@@ -17,6 +17,9 @@ dependencies:
|
|
|
17
17
|
- - ">="
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
19
|
version: '3.2'
|
|
20
|
+
- - "<"
|
|
21
|
+
- !ruby/object:Gem::Version
|
|
22
|
+
version: '6.0'
|
|
20
23
|
type: :runtime
|
|
21
24
|
prerelease: false
|
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -24,118 +27,121 @@ dependencies:
|
|
|
24
27
|
- - ">="
|
|
25
28
|
- !ruby/object:Gem::Version
|
|
26
29
|
version: '3.2'
|
|
30
|
+
- - "<"
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: '6.0'
|
|
27
33
|
- !ruby/object:Gem::Dependency
|
|
28
|
-
name:
|
|
34
|
+
name: appraisal
|
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|
|
30
36
|
requirements:
|
|
31
|
-
- - "
|
|
37
|
+
- - ">="
|
|
32
38
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '
|
|
39
|
+
version: '0'
|
|
34
40
|
type: :development
|
|
35
41
|
prerelease: false
|
|
36
42
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
43
|
requirements:
|
|
38
|
-
- - "
|
|
44
|
+
- - ">="
|
|
39
45
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: '
|
|
46
|
+
version: '0'
|
|
41
47
|
- !ruby/object:Gem::Dependency
|
|
42
|
-
name:
|
|
48
|
+
name: bundler
|
|
43
49
|
requirement: !ruby/object:Gem::Requirement
|
|
44
50
|
requirements:
|
|
45
|
-
- - "
|
|
51
|
+
- - ">="
|
|
46
52
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '
|
|
53
|
+
version: '0'
|
|
48
54
|
type: :development
|
|
49
55
|
prerelease: false
|
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
57
|
requirements:
|
|
52
|
-
- - "
|
|
58
|
+
- - ">="
|
|
53
59
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '
|
|
60
|
+
version: '0'
|
|
55
61
|
- !ruby/object:Gem::Dependency
|
|
56
|
-
name:
|
|
62
|
+
name: pg
|
|
57
63
|
requirement: !ruby/object:Gem::Requirement
|
|
58
64
|
requirements:
|
|
59
65
|
- - "~>"
|
|
60
66
|
- !ruby/object:Gem::Version
|
|
61
|
-
version: '
|
|
67
|
+
version: '0.18'
|
|
62
68
|
type: :development
|
|
63
69
|
prerelease: false
|
|
64
70
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
71
|
requirements:
|
|
66
72
|
- - "~>"
|
|
67
73
|
- !ruby/object:Gem::Version
|
|
68
|
-
version: '
|
|
74
|
+
version: '0.18'
|
|
69
75
|
- !ruby/object:Gem::Dependency
|
|
70
|
-
name:
|
|
76
|
+
name: rake
|
|
71
77
|
requirement: !ruby/object:Gem::Requirement
|
|
72
78
|
requirements:
|
|
73
79
|
- - "~>"
|
|
74
80
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: '0
|
|
81
|
+
version: '13.0'
|
|
76
82
|
type: :development
|
|
77
83
|
prerelease: false
|
|
78
84
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
85
|
requirements:
|
|
80
86
|
- - "~>"
|
|
81
87
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: '0
|
|
88
|
+
version: '13.0'
|
|
83
89
|
- !ruby/object:Gem::Dependency
|
|
84
|
-
name:
|
|
90
|
+
name: rspec
|
|
85
91
|
requirement: !ruby/object:Gem::Requirement
|
|
86
92
|
requirements:
|
|
87
93
|
- - "~>"
|
|
88
94
|
- !ruby/object:Gem::Version
|
|
89
|
-
version: '
|
|
95
|
+
version: '3.4'
|
|
90
96
|
type: :development
|
|
91
97
|
prerelease: false
|
|
92
98
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
99
|
requirements:
|
|
94
100
|
- - "~>"
|
|
95
101
|
- !ruby/object:Gem::Version
|
|
96
|
-
version: '
|
|
102
|
+
version: '3.4'
|
|
97
103
|
- !ruby/object:Gem::Dependency
|
|
98
|
-
name:
|
|
104
|
+
name: rubocop
|
|
99
105
|
requirement: !ruby/object:Gem::Requirement
|
|
100
106
|
requirements:
|
|
101
|
-
- - "
|
|
107
|
+
- - "<="
|
|
102
108
|
- !ruby/object:Gem::Version
|
|
103
|
-
version: '
|
|
109
|
+
version: '0.81'
|
|
104
110
|
type: :development
|
|
105
111
|
prerelease: false
|
|
106
112
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
113
|
requirements:
|
|
108
|
-
- - "
|
|
114
|
+
- - "<="
|
|
109
115
|
- !ruby/object:Gem::Version
|
|
110
|
-
version: '
|
|
116
|
+
version: '0.81'
|
|
111
117
|
- !ruby/object:Gem::Dependency
|
|
112
|
-
name:
|
|
118
|
+
name: simplecov
|
|
113
119
|
requirement: !ruby/object:Gem::Requirement
|
|
114
120
|
requirements:
|
|
115
|
-
- - "
|
|
121
|
+
- - ">="
|
|
116
122
|
- !ruby/object:Gem::Version
|
|
117
|
-
version: '0
|
|
123
|
+
version: '0'
|
|
118
124
|
type: :development
|
|
119
125
|
prerelease: false
|
|
120
126
|
version_requirements: !ruby/object:Gem::Requirement
|
|
121
127
|
requirements:
|
|
122
|
-
- - "
|
|
128
|
+
- - ">="
|
|
123
129
|
- !ruby/object:Gem::Version
|
|
124
|
-
version: '0
|
|
130
|
+
version: '0'
|
|
125
131
|
- !ruby/object:Gem::Dependency
|
|
126
|
-
name:
|
|
132
|
+
name: with_model
|
|
127
133
|
requirement: !ruby/object:Gem::Requirement
|
|
128
134
|
requirements:
|
|
129
|
-
- - "
|
|
135
|
+
- - "~>"
|
|
130
136
|
- !ruby/object:Gem::Version
|
|
131
|
-
version: '
|
|
137
|
+
version: '1.2'
|
|
132
138
|
type: :development
|
|
133
139
|
prerelease: false
|
|
134
140
|
version_requirements: !ruby/object:Gem::Requirement
|
|
135
141
|
requirements:
|
|
136
|
-
- - "
|
|
142
|
+
- - "~>"
|
|
137
143
|
- !ruby/object:Gem::Version
|
|
138
|
-
version: '
|
|
144
|
+
version: '1.2'
|
|
139
145
|
description: "\n It makes working with pure SQL easier with syntax highlighting.\n
|
|
140
146
|
\ Let's you clean your Ruby code from SQL strings.\n "
|
|
141
147
|
email:
|
|
@@ -145,6 +151,8 @@ extensions: []
|
|
|
145
151
|
extra_rdoc_files: []
|
|
146
152
|
files:
|
|
147
153
|
- ".gitignore"
|
|
154
|
+
- ".ruby-gemset"
|
|
155
|
+
- ".ruby-version"
|
|
148
156
|
- ".travis.yml"
|
|
149
157
|
- Appraisals
|
|
150
158
|
- CHANGELOG.md
|