pg 1.3.5 → 1.4.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +3 -4
- data/History.rdoc +46 -0
- data/Rakefile.cross +2 -2
- data/ext/extconf.rb +0 -31
- data/ext/pg.c +0 -24
- data/ext/pg_connection.c +206 -177
- data/ext/pg_result.c +2 -2
- data/lib/pg/connection.rb +185 -118
- data/lib/pg/exceptions.rb +7 -1
- data/lib/pg/version.rb +1 -1
- data/lib/pg.rb +4 -4
- data.tar.gz.sig +0 -0
- metadata +3 -3
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4978742f10cf7b28bae9bb25698563f13a116bbf2aebd503063dd28f2b3e128b
|
4
|
+
data.tar.gz: '076801209c5d5e3f49e7bebe46a2bf86c806d8150313a0248649942b81b932bc'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c9e28051c8929433b47b41aaf1fbabf2b708f28044307b66d133da0f6fc2192582a7dda52e4b23ffc9cf2d22bec0a5c7456265331ba1a885828eac99496e0d6d
|
7
|
+
data.tar.gz: e5a99bb04b80c6dc2628c72f79b6ce07aa1f15b10dc53ab71f1a5d667bf349171e31611c6217075f3475d611e905db4103f3f5553f2b9bf9a576d857b346f1f2
|
checksums.yaml.gz.sig
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
|
2
|
-
�
|
3
|
-
|
4
|
-
~$�|��ذyB�R�vfj�=d+�j6m��&�B1��:���2<�+���!��� ��+��Q���\��d�e'/�JR��r�vF�
|
1
|
+
?�� hSẃ�5r��'p�*�\V�����c�4^��f�<����u��S��b��*\�Ԟ�$l��sC��l$ĬD9�.M듹����*�d���Mf��D� �������k��p=�FM�
|
2
|
+
�����曏A�U^Л�9'��N�@}x�Jv
|
3
|
+
=2C�W7�sG�@���4�X�{��BQ��6-��b�-Q�V� y�P�������k�[�<!���'�͢�6e;b��6�R�G�y+�\�}����x�>_�_��>�J ��z�僕�[ц]��R���fW&Z%s���#��%:@�X'�!k��[$�z.�,8��FB50U y���w�+T-)ۑ�곛q*%�q0AS�{�\p���b*�
|
data/History.rdoc
CHANGED
@@ -1,3 +1,49 @@
|
|
1
|
+
== v1.4.3 [2022-08-09] Lars Kanis <lars@greiz-reinsdorf.de>
|
2
|
+
|
3
|
+
- Avoid memory bloat possible in put_copy_data in pg-1.4.0 to 1.4.2. #473
|
4
|
+
- Use Encoding::BINARY for JOHAB, removing some useless code. #472
|
5
|
+
|
6
|
+
|
7
|
+
== v1.4.2 [2022-07-27] Lars Kanis <lars@greiz-reinsdorf.de>
|
8
|
+
|
9
|
+
Bugfixes:
|
10
|
+
|
11
|
+
- Properly handle empty host parameter when connecting. #471
|
12
|
+
- Update Windows fat binary gem to OpenSSL-1.1.1q.
|
13
|
+
|
14
|
+
|
15
|
+
== v1.4.1 [2022-06-24] Lars Kanis <lars@greiz-reinsdorf.de>
|
16
|
+
|
17
|
+
Bugfixes:
|
18
|
+
|
19
|
+
- Fix another ruby-2.7 keyword warning. #465
|
20
|
+
- Allow PG::Error to be created without arguments. #466
|
21
|
+
|
22
|
+
|
23
|
+
== v1.4.0 [2022-06-20] Lars Kanis <lars@greiz-reinsdorf.de>
|
24
|
+
|
25
|
+
Added:
|
26
|
+
|
27
|
+
- Add PG::Connection#hostaddr, present since PostgreSQL-12. #453
|
28
|
+
- Add PG::Connection.conninfo_parse to wrap PQconninfoParse. #453
|
29
|
+
|
30
|
+
Bugfixes:
|
31
|
+
|
32
|
+
- Try IPv6 and IPv4 addresses, if DNS resolves to both. #452
|
33
|
+
- Re-add block-call semantics to PG::Connection.new accidently removed in pg-1.3.0. #454
|
34
|
+
- Handle client error after all data consumed in #copy_data for output. #455
|
35
|
+
- Avoid spurious keyword argument warning on Ruby 2.7. #456
|
36
|
+
- Change connection setup to respect connect_timeout parameter. #459
|
37
|
+
- Fix indefinite hang in case of connection error on Windows #458
|
38
|
+
- Set connection attribute of PG::Error in various places where it was missing. #461
|
39
|
+
- Fix transaction leak on early break/return. #463
|
40
|
+
- Update Windows fat binary gem to OpenSSL-1.1.1o and PostgreSQL-14.4.
|
41
|
+
|
42
|
+
Enhancements:
|
43
|
+
|
44
|
+
- Don't flush at each put_copy_data call, but flush at get_result. #462
|
45
|
+
|
46
|
+
|
1
47
|
== v1.3.5 [2022-03-31] Lars Kanis <lars@greiz-reinsdorf.de>
|
2
48
|
|
3
49
|
Bugfixes:
|
data/Rakefile.cross
CHANGED
@@ -31,8 +31,8 @@ class CrossLibrary < OpenStruct
|
|
31
31
|
self.host_platform = toolchain
|
32
32
|
|
33
33
|
# Cross-compilation constants
|
34
|
-
self.openssl_version = ENV['OPENSSL_VERSION'] || '1.1.
|
35
|
-
self.postgresql_version = ENV['POSTGRESQL_VERSION'] || '14.
|
34
|
+
self.openssl_version = ENV['OPENSSL_VERSION'] || '1.1.1q'
|
35
|
+
self.postgresql_version = ENV['POSTGRESQL_VERSION'] || '14.4'
|
36
36
|
|
37
37
|
# Check if symlinks work in the current working directory.
|
38
38
|
# This fails, if rake-compiler-dock is running on a Windows box.
|
data/ext/extconf.rb
CHANGED
@@ -1,5 +1,3 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
|
3
1
|
require 'pp'
|
4
2
|
require 'mkmf'
|
5
3
|
|
@@ -169,32 +167,3 @@ end
|
|
169
167
|
create_header()
|
170
168
|
create_makefile( "pg_ext" )
|
171
169
|
|
172
|
-
|
173
|
-
def message!(important_message)
|
174
|
-
message important_message
|
175
|
-
if !$stdout.tty? && File.chardev?('/dev/tty')
|
176
|
-
File.open('/dev/tty', 'w') do |tty|
|
177
|
-
tty.print important_message
|
178
|
-
end
|
179
|
-
end
|
180
|
-
rescue
|
181
|
-
end
|
182
|
-
|
183
|
-
if "2022-04-01" == Time.now.strftime("%Y-%m-%d")
|
184
|
-
message! <<-EOM
|
185
|
-
===================================================================
|
186
|
-
HEADS UP! Prepare for pg-1.4.2022 ! 🎉🎉🎉
|
187
|
-
|
188
|
-
Now that psycopg3 has most of the features of ruby-pg, we plan to
|
189
|
-
switch to using it as our foundation for the next pg release.
|
190
|
-
It will run through pycall and requires a working python setup.
|
191
|
-
This will minimize our development and maintenance efforts, since
|
192
|
-
it allows us to use one and the same code base for both programming
|
193
|
-
languages - ruby and python. 👏😃
|
194
|
-
|
195
|
-
And we follow the recent merge of the Django and Rails teams! ❤️
|
196
|
-
|
197
|
-
Stay up-to-date at https://github.com/ged/ruby-pg/issues/449
|
198
|
-
===================================================================
|
199
|
-
EOM
|
200
|
-
end
|
data/ext/pg.c
CHANGED
@@ -127,26 +127,6 @@ const char * const (pg_enc_pg2ruby_mapping[][2]) = {
|
|
127
127
|
static struct st_table *enc_pg2ruby;
|
128
128
|
|
129
129
|
|
130
|
-
/*
|
131
|
-
* Look up the JOHAB encoding, creating it as a dummy encoding if it's not
|
132
|
-
* already defined.
|
133
|
-
*/
|
134
|
-
static rb_encoding *
|
135
|
-
pg_find_or_create_johab(void)
|
136
|
-
{
|
137
|
-
static const char * const aliases[] = { "JOHAB", "Windows-1361", "CP1361" };
|
138
|
-
int enc_index;
|
139
|
-
size_t i;
|
140
|
-
|
141
|
-
for (i = 0; i < sizeof(aliases)/sizeof(aliases[0]); ++i) {
|
142
|
-
enc_index = rb_enc_find_index(aliases[i]);
|
143
|
-
if (enc_index > 0) return rb_enc_from_index(enc_index);
|
144
|
-
}
|
145
|
-
|
146
|
-
enc_index = rb_define_dummy_encoding(aliases[0]);
|
147
|
-
return rb_enc_from_index(enc_index);
|
148
|
-
}
|
149
|
-
|
150
130
|
/*
|
151
131
|
* Return the given PostgreSQL encoding ID as an rb_encoding.
|
152
132
|
*
|
@@ -187,10 +167,6 @@ pg_get_pg_encname_as_rb_encoding( const char *pg_encname )
|
|
187
167
|
return rb_enc_find( pg_enc_pg2ruby_mapping[i][1] );
|
188
168
|
}
|
189
169
|
|
190
|
-
/* JOHAB isn't a builtin encoding, so make up a dummy encoding if it's seen */
|
191
|
-
if ( strncmp(pg_encname, "JOHAB", 5) == 0 )
|
192
|
-
return pg_find_or_create_johab();
|
193
|
-
|
194
170
|
/* Fallthrough to ASCII-8BIT */
|
195
171
|
return rb_ascii8bit_encoding();
|
196
172
|
}
|