pg 1.6.0.rc2 → 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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +19 -27
- data/lib/pg/connection.rb +4 -2
- data/lib/pg/version.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +2 -2
- 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: 012dafe387d9f1fe9444dee7674ff5fdfcebce3b8ca61500b0ccbba847e28721
|
4
|
+
data.tar.gz: 2a3d537246a65cb6c86822296d723154abbab3be71ca772cfa71678535eb3369
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9d395a1d05e7bafda559f0a5041579b5d15c7f8b5c50b8ff0e37ae0b577a21e20b0f3471fb874ed23f6101e0fe21591f22efd60c230b59106029d7f1713b3023
|
7
|
+
data.tar.gz: 2456f8130e18b84aebd95aa08254fb79747024ce1e4747237aa36909e3031039fdfede8b315a2ad4b7ab03daf79f067e634336abeb675151e5d9a2950cb7ec13
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/CHANGELOG.md
CHANGED
@@ -1,49 +1,41 @@
|
|
1
|
-
## v1.6.0
|
1
|
+
## v1.6.0 [2025-07-27] Lars Kanis <lars@greiz-reinsdorf.de>
|
2
2
|
|
3
3
|
Added:
|
4
4
|
|
5
5
|
- Add binary gems for Ruby 3.4.
|
6
|
-
- Add fat binary gem for platform `aarch64-mingw-ucrt` aka Windows on ARM [#626](https://github.com/ged/ruby-pg/pull/626), for platform Macos on Intel and ARM [#643](https://github.com/ged/ruby-pg/pull/643)
|
6
|
+
- Add fat binary gem for platform `aarch64-mingw-ucrt` aka Windows on ARM [#626](https://github.com/ged/ruby-pg/pull/626), for platform Macos on Intel and ARM [#643](https://github.com/ged/ruby-pg/pull/643), for platform `aarch64-linux` [#646](https://github.com/ged/ruby-pg/pull/646) and for platform `x86_64-linux` [#551](https://github.com/ged/ruby-pg/pull/551#issuecomment-2504715762).
|
7
7
|
- Update fat binary gem to OpenSSL-3.5.1 and PostgreSQL-17.5.
|
8
8
|
- Add a patch to libpq to avoid starvation on bigger SSL records, which some database engines other than vanilla PostgreSQL use.
|
9
9
|
This patch applies to platform specific binary gems only.
|
10
10
|
[#616](https://github.com/ged/ruby-pg/pull/616)
|
11
|
-
-
|
12
|
-
This
|
13
|
-
|
11
|
+
- Add support for new query cancel functions of PostgreSQL-17.
|
12
|
+
This adds the new class `PG::CancelConnection` which provides the ability to cancel a query per blocking or per non-blocking functions.
|
13
|
+
If the new functions are available they are used and the older are no longer compiled in.
|
14
|
+
This way we can get rid of reading out the internal `PGcancel` struct by `Connection#backend_key`.
|
15
|
+
[#614](https://github.com/ged/ruby-pg/pull/614)
|
16
|
+
- Add PG::BinaryDecoder::Array and PG::BinaryEncoder::Array to parse and encode PostgreSQL arrays in binary format.
|
17
|
+
[#603](https://github.com/ged/ruby-pg/pull/603)
|
14
18
|
- Add possibility to define the number of array dimensions to be encoded.
|
15
19
|
Setting dimensions is especially useful, when a Record shall be encoded into an Array, since the Array encoder can not distinguish if the array shall be encoded as a higher dimension or as a record otherwise.
|
16
20
|
[#622](https://github.com/ged/ruby-pg/pull/622)
|
21
|
+
- Add Connection#set_chunked_rows_mode [#610](https://github.com/ged/ruby-pg/pull/610)
|
22
|
+
- Add PG::Connection#close_prepared, PG::Connection#close_portal, PG::Connection#send_close_prepared and PG::Connection#send_close_portal which are new in PostgreSQL-17.
|
23
|
+
[#611](https://github.com/ged/ruby-pg/pull/611)
|
24
|
+
- Add Connection#send_pipeline_sync, async_pipeline_sync and release GVL at PQ(sendP|P)ipelineSync.
|
25
|
+
[#612](https://github.com/ged/ruby-pg/pull/612)
|
17
26
|
- Add MINGW package dependency which is resolved by RubyInstaller.
|
18
27
|
[#617](https://github.com/ged/ruby-pg/pull/617)
|
19
28
|
- Change `conn.server_version` and `conn.protocol_version` to raise instead of return 0 on error.
|
20
29
|
[#632](https://github.com/ged/ruby-pg/pull/632)
|
30
|
+
- Fix connecting to multiple hosts after `connnect_timeout`.
|
31
|
+
[#637](https://github.com/ged/ruby-pg/pull/637)
|
21
32
|
- Fix making PG::BasicTypeMapForQueries shareable for Ractor in ruby-3.5.
|
22
33
|
[#636](https://github.com/ged/ruby-pg/pull/636)
|
34
|
+
- Fix missing array input verification in PG::TypeMapByColumn.
|
35
|
+
This could cause a segfault.
|
36
|
+
[#620](https://github.com/ged/ruby-pg/pull/620)
|
23
37
|
- Rename `History.md` to `CHANGELOG.md`, which is more common.
|
24
38
|
[#642](https://github.com/ged/ruby-pg/pull/642)
|
25
|
-
- Fix connecting to multiple hosts after `connnect_timeout`.
|
26
|
-
[#637](https://github.com/ged/ruby-pg/pull/637)
|
27
|
-
|
28
|
-
|
29
|
-
## v1.6.0.rc1 [2024-11-28] Lars Kanis <lars@greiz-reinsdorf.de>
|
30
|
-
|
31
|
-
Added:
|
32
|
-
|
33
|
-
- Add fat binary gem for platform `x86_64-linux`.
|
34
|
-
[#551](https://github.com/ged/ruby-pg/pull/551#issuecomment-2504715762)
|
35
|
-
- Add PG::BinaryDecoder::Array and PG::BinaryEncoder::Array to parse and encode PostgreSQL arrays in binary format.
|
36
|
-
[#603](https://github.com/ged/ruby-pg/pull/603)
|
37
|
-
- Add support for new query cancel functions of PostgreSQL-17.
|
38
|
-
This adds the new class `PG::CancelConnection` which provides the ability to cancel a query per blocking or per non-blocking functions.
|
39
|
-
If the new functions are available they are used and the older are no longer compiled in.
|
40
|
-
This way we can get rid of reading out the internal `PGcancel` struct by `Connection#backend_key`.
|
41
|
-
[#614](https://github.com/ged/ruby-pg/pull/614)
|
42
|
-
- Add Connection#set_chunked_rows_mode [#610](https://github.com/ged/ruby-pg/pull/610)
|
43
|
-
- Add PG::Connection#close_prepared, PG::Connection#close_portal, PG::Connection#send_close_prepared and PG::Connection#send_close_portal which are new in PostgreSQL-17.
|
44
|
-
[#611](https://github.com/ged/ruby-pg/pull/611)
|
45
|
-
- Add Connection#send_pipeline_sync, async_pipeline_sync and release GVL at PQ(sendP|P)ipelineSync.
|
46
|
-
[#612](https://github.com/ged/ruby-pg/pull/612)
|
47
39
|
|
48
40
|
Removed:
|
49
41
|
|
data/lib/pg/connection.rb
CHANGED
@@ -763,7 +763,7 @@ class PG::Connection
|
|
763
763
|
ihosts = iopts[:host]&.split(",", -1)
|
764
764
|
ihostaddrs = iopts[:hostaddr]&.split(",", -1)
|
765
765
|
iports = iopts[:port]&.split(",", -1)
|
766
|
-
iports = iports * (ihosts || ihostaddrs).size if iports&.size == 1
|
766
|
+
iports = iports * (ihosts || ihostaddrs || [1]).size if iports&.size == 1
|
767
767
|
|
768
768
|
idx = (ihosts || ihostaddrs || iports).index.with_index do |_, i|
|
769
769
|
(ihosts ? ihosts[i] == host : true) &&
|
@@ -863,7 +863,9 @@ class PG::Connection
|
|
863
863
|
# - All hosts are resolved before the first connection is tried.
|
864
864
|
# This means that when +load_balance_hosts+ is set to +random+, then all resolved addresses are tried randomly in one level.
|
865
865
|
# When a host resolves to more than one address, it is therefore tried more often than a host that has only one address.
|
866
|
-
# - When a timeout occurs due to the value of +connect_timeout+, then the given +host+, +hostaddr+ and +port+ combination is not tried a second time, even if it
|
866
|
+
# - When a timeout occurs due to the value of +connect_timeout+, then the given +host+, +hostaddr+ and +port+ combination is not tried a second time, even if it's specified several times.
|
867
|
+
# It's still possible to do load balancing with +load_balance_hosts+ set to +random+ and to increase the number of connections a node gets, when the hostname is provided multiple times in the host string.
|
868
|
+
# This is because in non-timeout cases the host is tried multiple times.
|
867
869
|
#
|
868
870
|
def new(*args)
|
869
871
|
conn = connect_to_hosts(*args)
|
data/lib/pg/version.rb
CHANGED
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pg
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.6.0
|
4
|
+
version: 1.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Granger
|
@@ -33,7 +33,7 @@ cert_chain:
|
|
33
33
|
DrkJ9tVlPQtJB0LqT0tvBap4upnwT1xYq721b5dwH6AF4Pi6iz/dc5vnq1/MH8bV
|
34
34
|
8VbbBzzeE7MsvgkP3sHlLmY8PtuyViJ8
|
35
35
|
-----END CERTIFICATE-----
|
36
|
-
date: 2025-07-
|
36
|
+
date: 2025-07-27 00:00:00.000000000 Z
|
37
37
|
dependencies: []
|
38
38
|
description: Pg is the Ruby interface to the PostgreSQL RDBMS. It works with PostgreSQL
|
39
39
|
10 and later.
|
metadata.gz.sig
CHANGED
Binary file
|