rails_sql_prettifier 5.0.0 → 6.0.3

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
2
  SHA256:
3
- metadata.gz: fd1acaf8f6f82312ccb1422330645c2365b3e4f93c9874da2645c62866310836
4
- data.tar.gz: bad3c23c4af4d0d3d3d8200f2ae38309df6cc332e92ab6466713f1956ee91739
3
+ metadata.gz: f1ee709955e95f1203d8f1e64feb5e51309123c92f7eeeee50fa44d9688511c3
4
+ data.tar.gz: b44477d11671c84097e66e2b69393a458f9a57cd2ab0c6aa4507e23105af3f80
5
5
  SHA512:
6
- metadata.gz: 3b16a4ee0ba376dc3f7ae3e3d2eaec46bd08cdda2e525b4a59be827e82ae5c161d90fd236e418bb226a8cca54aaebf6e5e590161fa529f52c25e0f025db27e42
7
- data.tar.gz: ab755ea34ed0bc3c910ee02895a94a35c7a1f4de4d123188f66985a9cd68950f8d708cdc3ba8d5cf7a590403b8e77c4186ebae44ecc31d5e1fcc8cc0dca63836
6
+ metadata.gz: 84862ea11984c33d2c198a6c7a0ec340a4f90d35463abe971280580e1f3f4d97db47486c838c13e854898c8c01c4d511fd2f74f5ab57068667159f2218d1cda8
7
+ data.tar.gz: 9e72db1724def7dc7fec82a5198281badc9b81fba4bcc01f3a51dfae23fd4ef1700f2369db7312fb97497c1c1caa2dbee0cb4b526466feb5a8887802b33f0f8f
data/.gitignore CHANGED
@@ -8,4 +8,5 @@
8
8
  /spec/reports/
9
9
  /tmp/
10
10
  /inspectionProfiles/
11
- .idea
11
+ .idea
12
+ .byebug_history
data/.ruby-gemset CHANGED
@@ -1 +1 @@
1
- rails_sql_prettifier_ar_5
1
+ rails_sql_prettifier_ar_6_0
data/CHANGELOG.md CHANGED
@@ -0,0 +1,9 @@
1
+ # 6.0.3
2
+ * Fixed issue with Niceql.configure not configuring anything + test covered
3
+
4
+ #6.0.2
5
+
6
+ * This a active record prior to 7.0 version and >= 6.1 compatible niceql integration
7
+ ar < 6.0 breaking change:
8
+ * StatementInvalid initialization has a breaking change: starting version 6 it has named param sql: for original query )
9
+
data/Dockerfile ADDED
@@ -0,0 +1,20 @@
1
+ FROM ruby:2.7.5-bullseye
2
+
3
+ WORKDIR /app
4
+ RUN apt-get update && apt-get -y install lsb-release
5
+ #
6
+ RUN wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - && \
7
+ sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' && \
8
+ apt-get update && apt-get -y install postgresql postgresql-client-12
9
+
10
+ RUN sh -c 'echo "local all all trust" > /etc/postgresql/14/main/pg_hba.conf' && \
11
+ service postgresql start && \
12
+ psql -U postgres -c 'CREATE DATABASE "niceql-test"'
13
+
14
+ RUN gem install bundler
15
+
16
+ COPY lib/rails_sql_prettifier/version.rb /app/lib/rails_sql_prettifier/version.rb
17
+ COPY rails_sql_prettifier.gemspec /app/
18
+ COPY Gemfil* /app/
19
+ #
20
+ RUN bundle install
data/README.md CHANGED
@@ -1,7 +1,9 @@
1
1
  # RailsSQLPrettifier
2
2
 
3
- This is an ActiveRecord integration for a niceql gem.
4
- Niceql is a small, nice, simple and zero dependency solution for SQL prettifying for Ruby.
3
+ This is an ActiveRecord integration for a niceql gem ( niceql is a small, nice, simple and zero dependency solution for the SQL prettifying in ruby ).
4
+
5
+ This gem is an extraction from niceql version 0.4.x. Its separated by different ActiveRecord versions, previous it had some version logic branching e.t.c.
6
+ but that is hard to maintain and test, and also breaking the idea of niceql to be dependentless solution, so now niceql is a completely railsfree solution yeay!
5
7
 
6
8
  Any reasonable suggestions are welcome.
7
9
 
@@ -23,6 +25,9 @@ after:
23
25
 
24
26
  ## Installation
25
27
 
28
+ rails_sql_prettifier, has several version compatible with different active_record versions, so pay attention to the right versioning
29
+ if whenever you specify versions manually.
30
+
26
31
  Add this line to your application's Gemfile:
27
32
 
28
33
  ```ruby
@@ -0,0 +1,10 @@
1
+ version: "3.7"
2
+
3
+ services:
4
+ test:
5
+ build: .
6
+ image: niceql
7
+ command: service postgresql start && rake test
8
+ volumes:
9
+ - '.:/app'
10
+
@@ -1,3 +1,3 @@
1
1
  module RailsSQLPrettifier
2
- VERSION = '5.0.0'
2
+ VERSION = '6.0.3'
3
3
  end
@@ -2,8 +2,8 @@ require "rails_sql_prettifier/version"
2
2
  require 'active_record'
3
3
  require "niceql"
4
4
 
5
+
5
6
  module RailsSQLPrettifier
6
- include Niceql
7
7
 
8
8
  module ArExtentions
9
9
  def exec_niceql
@@ -44,7 +44,7 @@ module RailsSQLPrettifier
44
44
  end
45
45
  end
46
46
 
47
- module ARNiceQLConfig
47
+ module NiceQLConfigExt
48
48
  extend ActiveSupport::Concern
49
49
 
50
50
  included do
@@ -55,10 +55,7 @@ module RailsSQLPrettifier
55
55
 
56
56
 
57
57
  def ar_using_pg_adapter?
58
- adapter = ActiveRecord::Base.try(:connection_db_config).try(:adapter) ||
59
- ActiveRecord::Base.try(:connection_config)&.with_indifferent_access&.dig(:adapter)
60
-
61
- adapter == 'postgresql'
58
+ ActiveRecord::Base.try(:connection_config)&.with_indifferent_access&.dig(:adapter) == 'postgresql'
62
59
  end
63
60
 
64
61
  def initialize
@@ -67,17 +64,19 @@ module RailsSQLPrettifier
67
64
  self.prettify_active_record_log_output = false
68
65
  self.prettify_pg_errors = ar_using_pg_adapter?
69
66
  end
67
+ end
70
68
 
71
- module ClassMethods
72
- def configure
73
- super
69
+ module NiceqlExt
70
+ def configure
71
+ super
74
72
 
75
- ::ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.include(PostgresAdapterNiceQL) if config.pg_adapter_with_nicesql
73
+ if config.pg_adapter_with_nicesql && defined?( ::ActiveRecord::ConnectionAdapters::PostgreSQLAdapter )
74
+ ::ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.include( PostgresAdapterNiceQL)
75
+ end
76
76
 
77
- ::ActiveRecord::ConnectionAdapters::AbstractAdapter.prepend( AbstractAdapterLogPrettifier ) if config.prettify_active_record_log_output
77
+ ::ActiveRecord::ConnectionAdapters::AbstractAdapter.prepend( AbstractAdapterLogPrettifier ) if config.prettify_active_record_log_output
78
78
 
79
- ::ActiveRecord::StatementInvalid.include( Niceql::ErrorExt ) if config.prettify_pg_errors && config.ar_using_pg_adapter?
80
- end
79
+ ::ActiveRecord::StatementInvalid.include( RailsSQLPrettifier::ErrorExt ) if config.prettify_pg_errors && config.ar_using_pg_adapter?
81
80
  end
82
81
  end
83
82
 
@@ -85,5 +84,8 @@ module RailsSQLPrettifier
85
84
  ::Arel::TreeManager,
86
85
  ::Arel::Nodes::Node].each { |klass| klass.send(:include, ArExtentions) }
87
86
 
88
- NiceQLConfig.include( ARNiceQLConfig )
87
+ Niceql::NiceQLConfig.include( NiceQLConfigExt )
88
+
89
+ # we need to use a prepend otherwise it's not preceding Niceql.configure in a lookup chain
90
+ Niceql.singleton_class.prepend( NiceqlExt )
89
91
  end
@@ -31,16 +31,18 @@ Gem::Specification.new do |spec|
31
31
  spec.require_paths = ["lib"]
32
32
 
33
33
  spec.required_ruby_version = '>= 2.4'
34
- spec.add_dependency "niceql", '>= 0.5.1'
34
+ spec.add_dependency "niceql", '~> 0.5'
35
35
 
36
- spec.add_development_dependency "activerecord", "< 6.0"
36
+ spec.add_development_dependency "activerecord", '>= 6.0', '< 6.1'
37
37
 
38
38
  spec.add_development_dependency "bundler", ">= 1"
39
39
  spec.add_development_dependency "rake", ">= 12.3.3"
40
40
  spec.add_development_dependency "minitest", "~> 5.0"
41
41
 
42
- spec.add_development_dependency "differ"
43
- spec.add_development_dependency "pry-byebug"
44
- spec.add_development_dependency "benchmark-ips"
45
- spec.add_development_dependency 'sqlite3'
42
+ spec.add_development_dependency "differ", '~> 0.1'
43
+ spec.add_development_dependency "pry-byebug", '~> 3.9'
44
+ spec.add_development_dependency 'sqlite3', '~> 1'
45
+ spec.add_development_dependency 'pg', '~> 1'
46
+
47
+ spec.add_development_dependency 'stubberry', '~> 0.1'
46
48
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_sql_prettifier
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.0
4
+ version: 6.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - alekseyl
@@ -14,30 +14,36 @@ dependencies:
14
14
  name: niceql
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.5.1
19
+ version: '0.5'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.5.1
26
+ version: '0.5'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: activerecord
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "<"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '6.0'
34
+ - - "<"
35
+ - !ruby/object:Gem::Version
36
+ version: '6.1'
34
37
  type: :development
35
38
  prerelease: false
36
39
  version_requirements: !ruby/object:Gem::Requirement
37
40
  requirements:
38
- - - "<"
41
+ - - ">="
39
42
  - !ruby/object:Gem::Version
40
43
  version: '6.0'
44
+ - - "<"
45
+ - !ruby/object:Gem::Version
46
+ version: '6.1'
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: bundler
43
49
  requirement: !ruby/object:Gem::Requirement
@@ -84,58 +90,72 @@ dependencies:
84
90
  name: differ
85
91
  requirement: !ruby/object:Gem::Requirement
86
92
  requirements:
87
- - - ">="
93
+ - - "~>"
88
94
  - !ruby/object:Gem::Version
89
- version: '0'
95
+ version: '0.1'
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: '0'
102
+ version: '0.1'
97
103
  - !ruby/object:Gem::Dependency
98
104
  name: pry-byebug
99
105
  requirement: !ruby/object:Gem::Requirement
100
106
  requirements:
101
- - - ">="
107
+ - - "~>"
102
108
  - !ruby/object:Gem::Version
103
- version: '0'
109
+ version: '3.9'
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: '0'
116
+ version: '3.9'
111
117
  - !ruby/object:Gem::Dependency
112
- name: benchmark-ips
118
+ name: sqlite3
113
119
  requirement: !ruby/object:Gem::Requirement
114
120
  requirements:
115
- - - ">="
121
+ - - "~>"
116
122
  - !ruby/object:Gem::Version
117
- version: '0'
123
+ version: '1'
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: '1'
125
131
  - !ruby/object:Gem::Dependency
126
- name: sqlite3
132
+ name: pg
127
133
  requirement: !ruby/object:Gem::Requirement
128
134
  requirements:
129
- - - ">="
135
+ - - "~>"
130
136
  - !ruby/object:Gem::Version
131
- version: '0'
137
+ version: '1'
132
138
  type: :development
133
139
  prerelease: false
134
140
  version_requirements: !ruby/object:Gem::Requirement
135
141
  requirements:
136
- - - ">="
142
+ - - "~>"
143
+ - !ruby/object:Gem::Version
144
+ version: '1'
145
+ - !ruby/object:Gem::Dependency
146
+ name: stubberry
147
+ requirement: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - "~>"
150
+ - !ruby/object:Gem::Version
151
+ version: '0.1'
152
+ type: :development
153
+ prerelease: false
154
+ version_requirements: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - "~>"
137
157
  - !ruby/object:Gem::Version
138
- version: '0'
158
+ version: '0.1'
139
159
  description: 'This is an ActiveRecord integration for the SQL prettifier gem niceql. '
140
160
  email:
141
161
  - leshchuk@gmail.com
@@ -143,18 +163,19 @@ executables: []
143
163
  extensions: []
144
164
  extra_rdoc_files: []
145
165
  files:
146
- - ".byebug_history"
147
166
  - ".gitignore"
148
167
  - ".ruby-gemset"
149
168
  - ".ruby-version"
150
169
  - ".travis.yml"
151
170
  - CHANGELOG.md
171
+ - Dockerfile
152
172
  - Gemfile
153
173
  - LICENSE.txt
154
174
  - README.md
155
175
  - Rakefile
156
176
  - bin/console
157
177
  - bin/setup
178
+ - docker-compose.yml
158
179
  - err_now.png
159
180
  - err_was.png
160
181
  - lib/benchmark/cat.rb
data/.byebug_history DELETED
@@ -1,36 +0,0 @@
1
- c
2
- ActiveRecord.version <= Gem::Version.new(5)
3
- c
4
- ActiveRecord.version
5
- exit
6
- ActiveRecord.version
7
- c
8
- exit
9
- si.sql
10
- si
11
- c
12
- sql_body
13
- n
14
- s
15
- original_sql_query
16
- err
17
- s
18
- up
19
- s
20
- up
21
- s
22
- up
23
- s
24
- super
25
- try(:sql)
26
- Niceql.config.prettify_pg_errors
27
- c
28
- exit
29
- err_template
30
- si.to_s
31
- exit
32
- err_caret_line
33
- err_quote_caret_offset
34
- c
35
- err.lines[1].index( '...' ).to_i
36
- err_caret_line