hairtrigger 0.2.1 → 0.2.2
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.
- data/README.rdoc +1 -0
- data/lib/hair_trigger/adapter.rb +1 -1
- data/lib/hair_trigger/builder.rb +3 -3
- data/lib/hair_trigger/version.rb +1 -1
- metadata +134 -149
data/README.rdoc
CHANGED
@@ -263,6 +263,7 @@ you want to support.
|
|
263
263
|
|
264
264
|
== Version History
|
265
265
|
|
266
|
+
* 0.2.2 PostGIS support
|
266
267
|
* 0.2.1 Bugfix for adapter-specific warnings, loosen parser dependencies
|
267
268
|
* 0.2.0 Rails 3.1+ support, easier installation, ruby 1.9 fix, travis-ci
|
268
269
|
* 0.1.14 sqlite + ruby1.9 bugfix
|
data/lib/hair_trigger/adapter.rb
CHANGED
@@ -30,7 +30,7 @@ FOR EACH ROW
|
|
30
30
|
#{actions}
|
31
31
|
SQL
|
32
32
|
end
|
33
|
-
when :postgresql
|
33
|
+
when :postgresql, :postgis
|
34
34
|
function_conditions = "(SELECT typname FROM pg_type WHERE oid = prorettype) = 'trigger'"
|
35
35
|
function_conditions << <<-SQL unless options[:simple_check]
|
36
36
|
AND oid IN (
|
data/lib/hair_trigger/builder.rb
CHANGED
@@ -186,7 +186,7 @@ module HairTrigger
|
|
186
186
|
generate_trigger_sqlite
|
187
187
|
when :mysql
|
188
188
|
generate_trigger_mysql
|
189
|
-
when :postgresql
|
189
|
+
when :postgresql, :postgis
|
190
190
|
generate_trigger_postgresql
|
191
191
|
else
|
192
192
|
raise GenerationError, "don't know how to build #{adapter_name} triggers yet"
|
@@ -314,7 +314,7 @@ module HairTrigger
|
|
314
314
|
case adapter_name
|
315
315
|
when :sqlite, :mysql
|
316
316
|
"DROP TRIGGER IF EXISTS #{prepared_name};\n"
|
317
|
-
when :postgresql
|
317
|
+
when :postgresql, :postgis
|
318
318
|
"DROP TRIGGER IF EXISTS #{prepared_name} ON #{options[:table]};\nDROP FUNCTION IF EXISTS #{prepared_name}();\n"
|
319
319
|
else
|
320
320
|
raise GenerationError, "don't know how to drop #{adapter_name} triggers yet"
|
@@ -388,7 +388,7 @@ BEGIN
|
|
388
388
|
|
389
389
|
def db_version
|
390
390
|
@db_version ||= case adapter_name
|
391
|
-
when :postgresql
|
391
|
+
when :postgresql, :postgis
|
392
392
|
adapter.send(:postgresql_version)
|
393
393
|
end
|
394
394
|
end
|
data/lib/hair_trigger/version.rb
CHANGED
metadata
CHANGED
@@ -1,170 +1,168 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: hairtrigger
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.2.2
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 2
|
9
|
-
- 1
|
10
|
-
version: 0.2.1
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Jon Jensen
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2013-03-08 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
21
15
|
name: activerecord
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
hash: 5
|
29
|
-
segments:
|
30
|
-
- 2
|
31
|
-
- 3
|
32
|
-
version: "2.3"
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '2.3'
|
33
22
|
type: :runtime
|
34
|
-
version_requirements: *id001
|
35
|
-
- !ruby/object:Gem::Dependency
|
36
|
-
name: ruby_parser
|
37
23
|
prerelease: false
|
38
|
-
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
25
|
none: false
|
40
|
-
requirements:
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '2.3'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: ruby_parser
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
41
35
|
- - ~>
|
42
|
-
- !ruby/object:Gem::Version
|
43
|
-
|
44
|
-
segments:
|
45
|
-
- 2
|
46
|
-
- 0
|
47
|
-
version: "2.0"
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '2.0'
|
48
38
|
type: :runtime
|
49
|
-
version_requirements: *id002
|
50
|
-
- !ruby/object:Gem::Dependency
|
51
|
-
name: ruby2ruby
|
52
39
|
prerelease: false
|
53
|
-
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
54
41
|
none: false
|
55
|
-
requirements:
|
42
|
+
requirements:
|
56
43
|
- - ~>
|
57
|
-
- !ruby/object:Gem::Version
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '2.0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: ruby2ruby
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ~>
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '1.2'
|
63
54
|
type: :runtime
|
64
|
-
version_requirements: *id003
|
65
|
-
- !ruby/object:Gem::Dependency
|
66
|
-
name: rake
|
67
55
|
prerelease: false
|
68
|
-
|
69
|
-
none: false
|
70
|
-
requirements:
|
71
|
-
- -
|
72
|
-
- !ruby/object:Gem::Version
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '1.2'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: rake
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
77
70
|
type: :development
|
78
|
-
version_requirements: *id004
|
79
|
-
- !ruby/object:Gem::Dependency
|
80
|
-
name: rspec
|
81
71
|
prerelease: false
|
82
|
-
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: rspec
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
83
81
|
none: false
|
84
|
-
requirements:
|
82
|
+
requirements:
|
85
83
|
- - ~>
|
86
|
-
- !ruby/object:Gem::Version
|
87
|
-
hash: 63
|
88
|
-
segments:
|
89
|
-
- 2
|
90
|
-
- 12
|
91
|
-
- 0
|
84
|
+
- !ruby/object:Gem::Version
|
92
85
|
version: 2.12.0
|
93
86
|
type: :development
|
94
|
-
version_requirements: *id005
|
95
|
-
- !ruby/object:Gem::Dependency
|
96
|
-
name: mysql
|
97
87
|
prerelease: false
|
98
|
-
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
99
89
|
none: false
|
100
|
-
requirements:
|
90
|
+
requirements:
|
101
91
|
- - ~>
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: 2.12.0
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: mysql
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - ~>
|
100
|
+
- !ruby/object:Gem::Version
|
108
101
|
version: 2.8.1
|
109
102
|
type: :development
|
110
|
-
version_requirements: *id006
|
111
|
-
- !ruby/object:Gem::Dependency
|
112
|
-
name: mysql2
|
113
103
|
prerelease: false
|
114
|
-
|
115
|
-
none: false
|
116
|
-
requirements:
|
117
|
-
- -
|
118
|
-
- !ruby/object:Gem::Version
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ~>
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: 2.8.1
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
name: mysql2
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
114
|
+
requirements:
|
115
|
+
- - ! '>='
|
116
|
+
- !ruby/object:Gem::Version
|
124
117
|
version: 0.2.7
|
125
118
|
type: :development
|
126
|
-
version_requirements: *id007
|
127
|
-
- !ruby/object:Gem::Dependency
|
128
|
-
name: pg
|
129
119
|
prerelease: false
|
130
|
-
|
131
|
-
none: false
|
132
|
-
requirements:
|
133
|
-
- -
|
134
|
-
- !ruby/object:Gem::Version
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ! '>='
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: 0.2.7
|
126
|
+
- !ruby/object:Gem::Dependency
|
127
|
+
name: pg
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
130
|
+
requirements:
|
131
|
+
- - ! '>='
|
132
|
+
- !ruby/object:Gem::Version
|
140
133
|
version: 0.10.1
|
141
134
|
type: :development
|
142
|
-
version_requirements: *id008
|
143
|
-
- !ruby/object:Gem::Dependency
|
144
|
-
name: sqlite3
|
145
135
|
prerelease: false
|
146
|
-
|
147
|
-
none: false
|
148
|
-
requirements:
|
149
|
-
- -
|
150
|
-
- !ruby/object:Gem::Version
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - ! '>='
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: 0.10.1
|
142
|
+
- !ruby/object:Gem::Dependency
|
143
|
+
name: sqlite3
|
144
|
+
requirement: !ruby/object:Gem::Requirement
|
145
|
+
none: false
|
146
|
+
requirements:
|
147
|
+
- - ! '>='
|
148
|
+
- !ruby/object:Gem::Version
|
156
149
|
version: 1.3.6
|
157
150
|
type: :development
|
158
|
-
|
159
|
-
|
151
|
+
prerelease: false
|
152
|
+
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
154
|
+
requirements:
|
155
|
+
- - ! '>='
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: 1.3.6
|
158
|
+
description: allows you to declare database triggers in ruby in your models, and then
|
159
|
+
generate appropriate migrations as they change
|
160
160
|
email: jenseng@gmail.com
|
161
161
|
executables: []
|
162
|
-
|
163
162
|
extensions: []
|
164
|
-
|
165
|
-
extra_rdoc_files:
|
163
|
+
extra_rdoc_files:
|
166
164
|
- README.rdoc
|
167
|
-
files:
|
165
|
+
files:
|
168
166
|
- LICENSE.txt
|
169
167
|
- Rakefile
|
170
168
|
- README.rdoc
|
@@ -190,42 +188,29 @@ files:
|
|
190
188
|
- spec/models/user.rb
|
191
189
|
- spec/schema_dumper_spec.rb
|
192
190
|
homepage: http://github.com/jenseng/hair_trigger
|
193
|
-
licenses:
|
191
|
+
licenses:
|
194
192
|
- MIT
|
195
193
|
post_install_message:
|
196
194
|
rdoc_options: []
|
197
|
-
|
198
|
-
require_paths:
|
195
|
+
require_paths:
|
199
196
|
- lib
|
200
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
197
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
201
198
|
none: false
|
202
|
-
requirements:
|
203
|
-
- -
|
204
|
-
- !ruby/object:Gem::Version
|
205
|
-
hash: 57
|
206
|
-
segments:
|
207
|
-
- 1
|
208
|
-
- 8
|
209
|
-
- 7
|
199
|
+
requirements:
|
200
|
+
- - ! '>='
|
201
|
+
- !ruby/object:Gem::Version
|
210
202
|
version: 1.8.7
|
211
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
203
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
212
204
|
none: false
|
213
|
-
requirements:
|
214
|
-
- -
|
215
|
-
- !ruby/object:Gem::Version
|
216
|
-
hash: 17
|
217
|
-
segments:
|
218
|
-
- 1
|
219
|
-
- 3
|
220
|
-
- 5
|
205
|
+
requirements:
|
206
|
+
- - ! '>='
|
207
|
+
- !ruby/object:Gem::Version
|
221
208
|
version: 1.3.5
|
222
209
|
requirements: []
|
223
|
-
|
224
210
|
rubyforge_project:
|
225
|
-
rubygems_version: 1.8.
|
211
|
+
rubygems_version: 1.8.25
|
226
212
|
signing_key:
|
227
213
|
specification_version: 3
|
228
214
|
summary: easy database triggers for active record
|
229
215
|
test_files: []
|
230
|
-
|
231
216
|
has_rdoc:
|