sequel_pg 1.5.0 → 1.5.1

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG CHANGED
@@ -1,3 +1,7 @@
1
+ === 1.5.1 (2012-08-02)
2
+
3
+ * Sprinkle some RB_GC_GUARD to work around segfaults in the PostgreSQL array parser (jeremyevans)
4
+
1
5
  === 1.5.0 (2012-07-02)
2
6
 
3
7
  * Add C-based PostgreSQL array parser, for major speedup in parsing arrays (Dan McClain, jeremyevans)
data/README.rdoc CHANGED
@@ -149,16 +149,11 @@ sequel_pg has been tested on the following:
149
149
 
150
150
  * gcc (3.3.5, 4.2.1, 4.4.3)
151
151
 
152
- === Ruby Versions
152
+ === Supported Ruby Versions
153
153
 
154
- * jruby cext branch (compiles but untested and unusable, as pg itself
155
- doesn't compile yet)
156
- * rbx head
157
- * ruby 1.8.6
158
154
  * ruby 1.8.7
159
- * ruby 1.9.1
160
155
  * ruby 1.9.2
161
- * ruby head
156
+ * ruby 1.9.3
162
157
 
163
158
  If your platform, compiler version, or ruby version is not listed
164
159
  above, please test and send me a report including:
@@ -133,6 +133,7 @@ static VALUE read_array(int *index, char *c_pg_array_string, int array_string_le
133
133
  int escapeNext = 0;
134
134
 
135
135
  VALUE array = rb_ary_new();
136
+ RB_GC_GUARD(array);
136
137
 
137
138
  /* Special case the empty array, so it doesn't need to be handled manually inside
138
139
  * the loop. */
@@ -156,7 +157,9 @@ static VALUE read_array(int *index, char *c_pg_array_string, int array_string_le
156
157
  }
157
158
  else if (RTEST(converter))
158
159
  {
159
- rb_ary_push(array, rb_funcall(converter, spg_id_call, 1, rb_str_new(word, word_index)));
160
+ VALUE rword = rb_str_new(word, word_index);
161
+ RB_GC_GUARD(rword);
162
+ rb_ary_push(array, rb_funcall(converter, spg_id_call, 1, rword));
160
163
  }
161
164
  else
162
165
  {
@@ -217,6 +220,7 @@ static VALUE parse_pg_array(VALUE self, VALUE pg_array_string, VALUE converter)
217
220
  char *c_pg_array_string = StringValueCStr(pg_array_string);
218
221
  int array_string_length = RSTRING_LEN(pg_array_string);
219
222
  VALUE buf = rb_str_buf_new(array_string_length);
223
+ RB_GC_GUARD(buf);
220
224
  char *word = RSTRING_PTR(buf);
221
225
  int index = 1;
222
226
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequel_pg
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0
4
+ version: 1.5.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-07-02 00:00:00.000000000 Z
12
+ date: 2012-08-02 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: pg
16
- requirement: &4423931800 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: 0.8.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *4423931800
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 0.8.0
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: sequel
27
- requirement: &4423930780 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ! '>='
@@ -32,7 +37,12 @@ dependencies:
32
37
  version: 3.36.0
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *4423930780
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: 3.36.0
36
46
  description: ! 'sequel_pg overwrites the inner loop of the Sequel postgres
37
47
 
38
48
  adapter row fetching code with a C version. The C version
@@ -86,7 +96,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
86
96
  version: '0'
87
97
  requirements: []
88
98
  rubyforge_project:
89
- rubygems_version: 1.8.11
99
+ rubygems_version: 1.8.23
90
100
  signing_key:
91
101
  specification_version: 3
92
102
  summary: Faster SELECTs when using Sequel with pg