pg 1.2.3 → 1.3.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.
Files changed (104) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/.appveyor.yml +36 -0
  4. data/.gems +6 -0
  5. data/.github/workflows/binary-gems.yml +86 -0
  6. data/.github/workflows/source-gem.yml +130 -0
  7. data/.gitignore +13 -0
  8. data/.hgsigs +34 -0
  9. data/.hgtags +41 -0
  10. data/.irbrc +23 -0
  11. data/.pryrc +23 -0
  12. data/.tm_properties +21 -0
  13. data/.travis.yml +49 -0
  14. data/Gemfile +14 -0
  15. data/History.rdoc +110 -7
  16. data/Manifest.txt +0 -1
  17. data/README.rdoc +7 -6
  18. data/Rakefile +27 -138
  19. data/Rakefile.cross +6 -5
  20. data/certs/ged.pem +24 -0
  21. data/certs/larskanis-2022.pem +26 -0
  22. data/ext/errorcodes.def +8 -0
  23. data/ext/errorcodes.txt +3 -1
  24. data/ext/extconf.rb +98 -23
  25. data/ext/gvl_wrappers.c +4 -0
  26. data/ext/gvl_wrappers.h +23 -0
  27. data/ext/pg.c +59 -4
  28. data/ext/pg.h +18 -1
  29. data/ext/pg_coder.c +82 -28
  30. data/ext/pg_connection.c +673 -493
  31. data/ext/pg_copy_coder.c +45 -16
  32. data/ext/pg_record_coder.c +39 -11
  33. data/ext/pg_result.c +61 -31
  34. data/ext/pg_text_decoder.c +1 -1
  35. data/ext/pg_text_encoder.c +6 -6
  36. data/ext/pg_tuple.c +47 -21
  37. data/ext/pg_type_map.c +41 -8
  38. data/ext/pg_type_map_all_strings.c +15 -1
  39. data/ext/pg_type_map_by_class.c +49 -24
  40. data/ext/pg_type_map_by_column.c +66 -28
  41. data/ext/pg_type_map_by_mri_type.c +47 -18
  42. data/ext/pg_type_map_by_oid.c +52 -23
  43. data/ext/pg_type_map_in_ruby.c +50 -19
  44. data/ext/pg_util.c +2 -2
  45. data/lib/pg/basic_type_map_based_on_result.rb +47 -0
  46. data/lib/pg/basic_type_map_for_queries.rb +193 -0
  47. data/lib/pg/basic_type_map_for_results.rb +81 -0
  48. data/lib/pg/basic_type_registry.rb +296 -0
  49. data/lib/pg/coder.rb +1 -1
  50. data/lib/pg/connection.rb +588 -58
  51. data/lib/pg/version.rb +4 -0
  52. data/lib/pg.rb +47 -32
  53. data/misc/openssl-pg-segfault.rb +31 -0
  54. data/misc/postgres/History.txt +9 -0
  55. data/misc/postgres/Manifest.txt +5 -0
  56. data/misc/postgres/README.txt +21 -0
  57. data/misc/postgres/Rakefile +21 -0
  58. data/misc/postgres/lib/postgres.rb +16 -0
  59. data/misc/ruby-pg/History.txt +9 -0
  60. data/misc/ruby-pg/Manifest.txt +5 -0
  61. data/misc/ruby-pg/README.txt +21 -0
  62. data/misc/ruby-pg/Rakefile +21 -0
  63. data/misc/ruby-pg/lib/ruby/pg.rb +16 -0
  64. data/pg.gemspec +32 -0
  65. data/sample/array_insert.rb +20 -0
  66. data/sample/async_api.rb +106 -0
  67. data/sample/async_copyto.rb +39 -0
  68. data/sample/async_mixed.rb +56 -0
  69. data/sample/check_conn.rb +21 -0
  70. data/sample/copydata.rb +71 -0
  71. data/sample/copyfrom.rb +81 -0
  72. data/sample/copyto.rb +19 -0
  73. data/sample/cursor.rb +21 -0
  74. data/sample/disk_usage_report.rb +177 -0
  75. data/sample/issue-119.rb +94 -0
  76. data/sample/losample.rb +69 -0
  77. data/sample/minimal-testcase.rb +17 -0
  78. data/sample/notify_wait.rb +72 -0
  79. data/sample/pg_statistics.rb +285 -0
  80. data/sample/replication_monitor.rb +222 -0
  81. data/sample/test_binary_values.rb +33 -0
  82. data/sample/wal_shipper.rb +434 -0
  83. data/sample/warehouse_partitions.rb +311 -0
  84. data.tar.gz.sig +0 -0
  85. metadata +86 -224
  86. metadata.gz.sig +0 -0
  87. data/ChangeLog +0 -0
  88. data/lib/pg/basic_type_mapping.rb +0 -522
  89. data/spec/data/expected_trace.out +0 -26
  90. data/spec/data/random_binary_data +0 -0
  91. data/spec/helpers.rb +0 -380
  92. data/spec/pg/basic_type_mapping_spec.rb +0 -630
  93. data/spec/pg/connection_spec.rb +0 -1949
  94. data/spec/pg/connection_sync_spec.rb +0 -41
  95. data/spec/pg/result_spec.rb +0 -681
  96. data/spec/pg/tuple_spec.rb +0 -333
  97. data/spec/pg/type_map_by_class_spec.rb +0 -138
  98. data/spec/pg/type_map_by_column_spec.rb +0 -226
  99. data/spec/pg/type_map_by_mri_type_spec.rb +0 -136
  100. data/spec/pg/type_map_by_oid_spec.rb +0 -149
  101. data/spec/pg/type_map_in_ruby_spec.rb +0 -164
  102. data/spec/pg/type_map_spec.rb +0 -22
  103. data/spec/pg/type_spec.rb +0 -1123
  104. data/spec/pg_spec.rb +0 -50
data/spec/pg_spec.rb DELETED
@@ -1,50 +0,0 @@
1
- # -*- rspec -*-
2
- # encoding: utf-8
3
-
4
- require_relative 'helpers'
5
-
6
- require 'pg'
7
-
8
- describe PG do
9
-
10
- it "knows what version of the libpq library is loaded" do
11
- expect( PG.library_version ).to be_an( Integer )
12
- expect( PG.library_version ).to be >= 90100
13
- end
14
-
15
- it "can select which of both security libraries to initialize" do
16
- # This setting does nothing here, because there is already a connection
17
- # to the server, at this point in time.
18
- PG.init_openssl(false, true)
19
- PG.init_openssl(1, 0)
20
- end
21
-
22
- it "can select whether security libraries to initialize" do
23
- # This setting does nothing here, because there is already a connection
24
- # to the server, at this point in time.
25
- PG.init_ssl(false)
26
- PG.init_ssl(1)
27
- end
28
-
29
-
30
- it "knows whether or not the library is threadsafe" do
31
- expect( PG ).to be_threadsafe()
32
- end
33
-
34
- it "does have hierarchical error classes" do
35
- expect( PG::UndefinedTable.ancestors[0,4] ).to eq([
36
- PG::UndefinedTable,
37
- PG::SyntaxErrorOrAccessRuleViolation,
38
- PG::ServerError,
39
- PG::Error
40
- ])
41
-
42
- expect( PG::InvalidSchemaName.ancestors[0,3] ).to eq([
43
- PG::InvalidSchemaName,
44
- PG::ServerError,
45
- PG::Error
46
- ])
47
- end
48
-
49
- end
50
-