rails-footnotes 3.7.4 → 3.7.5.rc1

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.
@@ -2,7 +2,7 @@ module Footnotes
2
2
  module Notes
3
3
  class CookiesNote < AbstractNote
4
4
  def initialize(controller)
5
- @cookies = (controller.__send__(:cookies) || {}).dup.symbolize_keys
5
+ @cookies = controller.__send__(:cookies)
6
6
  end
7
7
 
8
8
  def title
@@ -1,12 +1,12 @@
1
1
  module Footnotes
2
2
  module Notes
3
3
  class QueriesNote < AbstractNote
4
- cattr_accessor :alert_db_time, :alert_sql_number, :orm, :instance_writter => false
5
-
4
+ cattr_accessor :alert_db_time, :alert_sql_number, :orm, :ignored_regexps, :instance_writter => false
6
5
  @@alert_db_time = 16.0
7
6
  @@alert_sql_number = 8
8
7
  @@query_subscriber = nil
9
8
  @@orm = [:active_record, :data_mapper]
9
+ @@ignored_regexps = [%r{(pg_table|pg_attribute|show\stables)}i]
10
10
 
11
11
  def self.start!(controller)
12
12
  self.query_subscriber.reset!
@@ -88,13 +88,12 @@ module Footnotes
88
88
  end
89
89
 
90
90
  def type
91
- return @type if @type
92
- @type = self.query.match(/^(select|insert|update|delete|alter)\b/i) || 'Unknown'
91
+ @type ||= self.query.match(/^(\s*)(select|insert|update|delete|alter)\b/im) || 'Unknown'
93
92
  end
94
93
  end
95
94
 
96
95
  class QuerySubscriber < ActiveSupport::LogSubscriber
97
- attr_accessor :events
96
+ attr_accessor :events, :ignore_regexps
98
97
 
99
98
  def initialize(orm)
100
99
  @events = []
@@ -106,7 +105,9 @@ module Footnotes
106
105
  end
107
106
 
108
107
  def sql(event)
109
- @events << QuerySubscriberNotifactionEvent.new(event.dup, caller)
108
+ unless QueriesNote.ignored_regexps.any? {|rex| event.payload[:sql] =~ rex }
109
+ @events << QuerySubscriberNotifactionEvent.new(event.dup, caller)
110
+ end
110
111
  end
111
112
  end
112
113
  end
@@ -1,3 +1,3 @@
1
1
  module Footnotes
2
- VERSION = "3.7.4"
2
+ VERSION = "3.7.5.rc1"
3
3
  end
@@ -0,0 +1,24 @@
1
+ require "spec_helper"
2
+ require 'action_controller'
3
+ require "rails-footnotes/notes/assigns_note"
4
+
5
+ class FootnotesController < ActionController::Base
6
+ end
7
+
8
+ describe Footnotes::Notes::AssignsNote do
9
+ let(:note) do
10
+ @controller = FootnotesController.new
11
+ Footnotes::Notes::AssignsNote.new(@controller)
12
+ end
13
+ subject {note}
14
+
15
+ before(:each) {Footnotes::Notes::AssignsNote.ignored_assigns = []}
16
+ it {should be_valid}
17
+ its(:title) {should eql 'Assigns (3)'}
18
+ specify {note.send(:assigns).should eql [:@action_has_layout, :@view_context_class, :@_status] }
19
+
20
+ describe "Ignored Assigns" do
21
+ before(:each) {Footnotes::Notes::AssignsNote.ignored_assigns = [:@_status]}
22
+ it {note.send(:assigns).should_not include :@_status}
23
+ end
24
+ end
metadata CHANGED
@@ -1,71 +1,69 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: rails-footnotes
3
- version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 3.7.4
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.7.5.rc1
5
+ prerelease: 6
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Keenan Brock
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
-
13
- date: 2011-05-26 00:00:00 Z
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
12
+ date: 2011-07-17 00:00:00.000000000 +03:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
16
  name: rails
17
- prerelease: false
18
- requirement: &id001 !ruby/object:Gem::Requirement
17
+ requirement: &2153796000 !ruby/object:Gem::Requirement
19
18
  none: false
20
- requirements:
21
- - - ">="
22
- - !ruby/object:Gem::Version
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
23
22
  version: 3.0.0
24
23
  type: :runtime
25
- version_requirements: *id001
26
- - !ruby/object:Gem::Dependency
27
- name: rails
28
24
  prerelease: false
29
- requirement: &id002 !ruby/object:Gem::Requirement
25
+ version_requirements: *2153796000
26
+ - !ruby/object:Gem::Dependency
27
+ name: rails
28
+ requirement: &2153795500 !ruby/object:Gem::Requirement
30
29
  none: false
31
- requirements:
32
- - - ">="
33
- - !ruby/object:Gem::Version
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
34
33
  version: 3.0.0
35
34
  type: :development
36
- version_requirements: *id002
37
- - !ruby/object:Gem::Dependency
38
- name: rspec
39
35
  prerelease: false
40
- requirement: &id003 !ruby/object:Gem::Requirement
36
+ version_requirements: *2153795500
37
+ - !ruby/object:Gem::Dependency
38
+ name: rspec
39
+ requirement: &2153795120 !ruby/object:Gem::Requirement
41
40
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- version: "0"
41
+ requirements:
42
+ - - ! '>='
43
+ - !ruby/object:Gem::Version
44
+ version: '0'
46
45
  type: :development
47
- version_requirements: *id003
48
- - !ruby/object:Gem::Dependency
49
- name: watchr
50
46
  prerelease: false
51
- requirement: &id004 !ruby/object:Gem::Requirement
47
+ version_requirements: *2153795120
48
+ - !ruby/object:Gem::Dependency
49
+ name: watchr
50
+ requirement: &2153794660 !ruby/object:Gem::Requirement
52
51
  none: false
53
- requirements:
54
- - - ">="
55
- - !ruby/object:Gem::Version
56
- version: "0"
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
57
56
  type: :development
58
- version_requirements: *id004
59
- description: Every Rails page has footnotes that gives information about your application and links back to your editor.
60
- email:
57
+ prerelease: false
58
+ version_requirements: *2153794660
59
+ description: Every Rails page has footnotes that gives information about your application
60
+ and links back to your editor.
61
+ email:
61
62
  - keenan@thebrocks.net
62
63
  executables: []
63
-
64
64
  extensions: []
65
-
66
65
  extra_rdoc_files: []
67
-
68
- files:
66
+ files:
69
67
  - .gitignore
70
68
  - .rspec.example
71
69
  - .watchr.example
@@ -101,40 +99,41 @@ files:
101
99
  - rails-footnotes.gemspec
102
100
  - spec/abstract_note_spec.rb
103
101
  - spec/footnotes_spec.rb
102
+ - spec/notes/assigns_note_spec.rb
104
103
  - spec/notes/javascripts_note_spec.rb
105
104
  - spec/notes/partials_notes_spec.rb
106
105
  - spec/notes/stylesheets_note_spec.rb
107
106
  - spec/spec_helper.rb
107
+ has_rdoc: true
108
108
  homepage: http://github.com/josevalim/rails-footnotes
109
109
  licenses: []
110
-
111
110
  post_install_message:
112
111
  rdoc_options: []
113
-
114
- require_paths:
112
+ require_paths:
115
113
  - lib
116
- required_ruby_version: !ruby/object:Gem::Requirement
114
+ required_ruby_version: !ruby/object:Gem::Requirement
117
115
  none: false
118
- requirements:
119
- - - ">="
120
- - !ruby/object:Gem::Version
121
- version: "0"
122
- required_rubygems_version: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - ! '>='
118
+ - !ruby/object:Gem::Version
119
+ version: '0'
120
+ required_rubygems_version: !ruby/object:Gem::Requirement
123
121
  none: false
124
- requirements:
125
- - - ">="
126
- - !ruby/object:Gem::Version
127
- version: "0"
122
+ requirements:
123
+ - - ! '>'
124
+ - !ruby/object:Gem::Version
125
+ version: 1.3.1
128
126
  requirements: []
129
-
130
127
  rubyforge_project: rails-footnotes
131
- rubygems_version: 1.7.2
128
+ rubygems_version: 1.6.2
132
129
  signing_key:
133
130
  specification_version: 3
134
- summary: Every Rails page has footnotes that gives information about your application and links back to your editor.
135
- test_files:
131
+ summary: Every Rails page has footnotes that gives information about your application
132
+ and links back to your editor.
133
+ test_files:
136
134
  - spec/abstract_note_spec.rb
137
135
  - spec/footnotes_spec.rb
136
+ - spec/notes/assigns_note_spec.rb
138
137
  - spec/notes/javascripts_note_spec.rb
139
138
  - spec/notes/partials_notes_spec.rb
140
139
  - spec/notes/stylesheets_note_spec.rb