marginalia 1.5.0 → 1.6.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b4d1334e6fae088b614c33883053c675e8ce3208
4
- data.tar.gz: ea48070a0ad0b210045ff6cc8eb485d9db115e3a
3
+ metadata.gz: bda214f48d77afb13f9c9182a550272d4e654c4f
4
+ data.tar.gz: 5d199a1edd3a808254824a2bb45e22deca536e22
5
5
  SHA512:
6
- metadata.gz: 06d3dc8986bdfc70351ece60860aa79e4822f83e0cbcc0cb8211c9197dbf4fa8320f1017f15cbfa9aac40c296ae6a37f8054aa566fac832fe2f02d628d65d073
7
- data.tar.gz: fdee2ee3f3e0bec89b52e54c22056811d7bd4e4cd167d6ef38e00446f25c16cc03f3cd730f4e8456a32ba67ff66b39046a2adb289acb0c9d4a8fc149b75957ba
6
+ metadata.gz: 7f7ee0ed6593d2a639c31787a559a86db0367b63ed79dde39966a4264904bbbd77d822e01be212ae40e7a573330281cb75489fc08e577c28e4d059712bcd2a86
7
+ data.tar.gz: 4963089d9d9609fd5dbdae17c36e6ed001cea24b81550febdf0826fc3fe13d574f34c8bb51a1ffc6b270e30ba68dd6c14b3d693cec8fcc6bfa4370d8fdee144a
@@ -1,21 +1,18 @@
1
1
  language: ruby
2
2
 
3
3
  rvm:
4
- - 2.1
5
- - 2.2
6
4
  - 2.3.1
5
+ - 2.4.4
6
+ - 2.5.1
7
7
 
8
8
  sudo: false
9
9
 
10
10
  script: bundle exec rake db:reset test:all
11
11
 
12
12
  env:
13
- - "RAILS_VERSION=3.1.12"
14
- - "RAILS_VERSION=3.2.19"
15
- - "RAILS_VERSION=4.0.8"
16
- - "RAILS_VERSION=4.1.8"
17
13
  - "RAILS_VERSION=4.2.0"
18
- - "RAILS_VERSION=3.2.19 TEST_RAILS_API=true"
19
- - "RAILS_VERSION=4.0.8 TEST_RAILS_API=true"
20
- - "RAILS_VERSION=4.1.8 TEST_RAILS_API=true"
14
+ - "RAILS_VERSION=5.0.6"
15
+ - "RAILS_VERSION=5.1.5"
21
16
  - "RAILS_VERSION=4.2.0 TEST_RAILS_API=true"
17
+ - "RAILS_VERSION=5.0.6 TEST_RAILS_API=true"
18
+ - "RAILS_VERSION=5.1.5 TEST_RAILS_API=true"
data/Gemfile CHANGED
@@ -9,6 +9,8 @@ if "4.2.5" > version
9
9
  else
10
10
  gem 'mysql2', '>= 0.3.13', '< 0.5'
11
11
  end
12
+ gem 'pg', '~> 0.15'
13
+ gem 'sqlite3'
12
14
 
13
15
  rails = case version
14
16
  when "master"
data/Rakefile CHANGED
@@ -5,26 +5,26 @@ task :default => ['test:all']
5
5
 
6
6
  namespace :test do
7
7
  desc "test all drivers"
8
- task :all => [:mysql, :mysql2, :postgresql, :sqlite]
8
+ task :all => [:mysql2, :postgresql, :sqlite]
9
9
 
10
10
  desc "test mysql driver"
11
11
  task :mysql do
12
- sh "DRIVER=mysql ruby -Ilib -Itest test/*_test.rb"
12
+ sh "DRIVER=mysql bundle exec ruby -Ilib -Itest test/*_test.rb"
13
13
  end
14
14
 
15
15
  desc "test mysql2 driver"
16
16
  task :mysql2 do
17
- sh "DRIVER=mysql2 ruby -Ilib -Itest test/*_test.rb"
17
+ sh "DRIVER=mysql2 bundle exec ruby -Ilib -Itest test/*_test.rb"
18
18
  end
19
-
19
+
20
20
  desc "test PostgreSQL driver"
21
21
  task :postgresql do
22
- sh "DRIVER=postgresql DB_USERNAME=postgres ruby -Ilib -Itest test/*_test.rb"
22
+ sh "DRIVER=postgresql DB_USERNAME=postgres bundle exec ruby -Ilib -Itest test/*_test.rb"
23
23
  end
24
-
24
+
25
25
  desc "test sqlite3 driver"
26
26
  task :sqlite do
27
- sh "DRIVER=sqlite3 ruby -Ilib -Itest test/*_test.rb"
27
+ sh "DRIVER=sqlite3 bundle exec ruby -Ilib -Itest test/*_test.rb"
28
28
  end
29
29
  end
30
30
 
@@ -62,5 +62,4 @@ namespace :db do
62
62
  sh 'psql -d postgres -U postgres -c "DROP DATABASE IF EXISTS marginalia_test"'
63
63
  end
64
64
  end
65
-
66
65
  end
@@ -0,0 +1,21 @@
1
+ require 'rubygems'
2
+ require 'rubygems/command.rb'
3
+ require 'rubygems/dependency_installer.rb'
4
+
5
+ begin
6
+ Gem::Command.build_args = ARGV
7
+ rescue NoMethodError
8
+ end
9
+
10
+ installer = Gem::DependencyInstaller.new
11
+ begin
12
+ if RUBY_VERSION < "2.4"
13
+ installer.install "mysql", ">=0"
14
+ end
15
+ rescue
16
+ exit(1)
17
+ end
18
+
19
+ f = File.open(File.join(File.dirname(__FILE__), "Rakefile"), "w")
20
+ f.write("task :default\n")
21
+ f.close
@@ -26,9 +26,17 @@ module Marginalia
26
26
  end
27
27
  end
28
28
  ret.chop!
29
+ ret = self.escape_sql_comment(ret)
29
30
  ret
30
31
  end
31
32
 
33
+ def self.escape_sql_comment(str)
34
+ while str.include?('/*') || str.include?('*/')
35
+ str = str.gsub('/*', '').gsub('*/', '')
36
+ end
37
+ str
38
+ end
39
+
32
40
  def self.clear!
33
41
  self.marginalia_controller = nil
34
42
  end
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |gem|
2
2
  gem.authors = ["Noah Lorang", "Nick Quaranto", "Taylor Weibley"]
3
- gem.email = ["noah@37signals.com", "github@arthurnn.com"]
3
+ gem.email = ["noah@37signals.com", "arthurnn@github.com"]
4
4
  gem.homepage = "https://github.com/basecamp/marginalia"
5
5
 
6
6
  gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
@@ -8,13 +8,12 @@ Gem::Specification.new do |gem|
8
8
  gem.test_files = `git ls-files -- {test}/*`.split("\n")
9
9
  gem.name = "marginalia"
10
10
  gem.require_paths = ["lib"]
11
- gem.version = "1.5.0"
11
+ gem.version = "1.6.0"
12
12
  gem.license = "MIT"
13
13
 
14
14
  gem.add_runtime_dependency "actionpack", ">= 2.3"
15
15
  gem.add_runtime_dependency "activerecord", ">= 2.3"
16
16
  gem.add_development_dependency "rake"
17
- gem.add_development_dependency "mysql"
18
17
  gem.add_development_dependency "mysql2"
19
18
  gem.add_development_dependency "pg"
20
19
  gem.add_development_dependency "sqlite3"
@@ -22,4 +21,6 @@ Gem::Specification.new do |gem|
22
21
  gem.add_development_dependency "mocha"
23
22
 
24
23
  gem.summary = gem.description = %q{Attach comments to your ActiveRecord queries.}
24
+
25
+ gem.extensions = ["ext/mkrf_conf.rb"]
25
26
  end
@@ -18,7 +18,7 @@ def adapter_pool_available?
18
18
  end
19
19
 
20
20
  require "minitest/autorun"
21
- require 'mocha/test_unit'
21
+ require "mocha/minitest"
22
22
  require 'logger'
23
23
  require 'pp'
24
24
  require 'active_record'
@@ -64,7 +64,11 @@ end
64
64
  class PostsController < ActionController::Base
65
65
  def driver_only
66
66
  ActiveRecord::Base.connection.execute "select id from posts"
67
- render :nothing => true
67
+ if Gem::Version.new(Rails::VERSION::STRING) >= Gem::Version.new('5')
68
+ render body: nil
69
+ else
70
+ render nothing: true
71
+ end
68
72
  end
69
73
  end
70
74
 
@@ -101,7 +105,6 @@ end
101
105
 
102
106
  Marginalia::Railtie.insert
103
107
 
104
-
105
108
  class MarginaliaTest < MiniTest::Test
106
109
  def setup
107
110
  @queries = []
@@ -272,6 +275,15 @@ class MarginaliaTest < MiniTest::Test
272
275
  end
273
276
  end
274
277
 
278
+ def test_good_comment
279
+ assert_equal Marginalia::Comment.escape_sql_comment('app:foo'), 'app:foo'
280
+ end
281
+
282
+ def test_bad_comments
283
+ assert_equal Marginalia::Comment.escape_sql_comment('*/; DROP TABLE USERS;/*'), '; DROP TABLE USERS;'
284
+ assert_equal Marginalia::Comment.escape_sql_comment('**//; DROP TABLE USERS;/*'), '; DROP TABLE USERS;'
285
+ end
286
+
275
287
  def teardown
276
288
  Marginalia.application_name = nil
277
289
  Marginalia::Comment.lines_to_ignore = nil
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: marginalia
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Noah Lorang
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2017-09-19 00:00:00.000000000 Z
13
+ date: 2018-09-24 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: actionpack
@@ -54,20 +54,6 @@ dependencies:
54
54
  - - ">="
55
55
  - !ruby/object:Gem::Version
56
56
  version: '0'
57
- - !ruby/object:Gem::Dependency
58
- name: mysql
59
- requirement: !ruby/object:Gem::Requirement
60
- requirements:
61
- - - ">="
62
- - !ruby/object:Gem::Version
63
- version: '0'
64
- type: :development
65
- prerelease: false
66
- version_requirements: !ruby/object:Gem::Requirement
67
- requirements:
68
- - - ">="
69
- - !ruby/object:Gem::Version
70
- version: '0'
71
57
  - !ruby/object:Gem::Dependency
72
58
  name: mysql2
73
59
  requirement: !ruby/object:Gem::Requirement
@@ -141,9 +127,10 @@ dependencies:
141
127
  description: Attach comments to your ActiveRecord queries.
142
128
  email:
143
129
  - noah@37signals.com
144
- - github@arthurnn.com
130
+ - arthurnn@github.com
145
131
  executables: []
146
- extensions: []
132
+ extensions:
133
+ - ext/mkrf_conf.rb
147
134
  extra_rdoc_files: []
148
135
  files:
149
136
  - ".gitignore"
@@ -153,6 +140,7 @@ files:
153
140
  - LICENSE
154
141
  - README.md
155
142
  - Rakefile
143
+ - ext/mkrf_conf.rb
156
144
  - init.rb
157
145
  - lib/marginalia.rb
158
146
  - lib/marginalia/comment.rb
@@ -179,7 +167,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
179
167
  version: '0'
180
168
  requirements: []
181
169
  rubyforge_project:
182
- rubygems_version: 2.6.11
170
+ rubygems_version: 2.4.5.1
183
171
  signing_key:
184
172
  specification_version: 4
185
173
  summary: Attach comments to your ActiveRecord queries.