jeremyevans-postgres-pr 0.6.7 → 0.6.8

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 38bfb795e9675aebda17231820f02f1b578d2827bc0ebe35e9df082d0c5d80ab
4
- data.tar.gz: 5dd8129a92c3b7149c2ba902bd55751f8115961f9899e33ad56fc5aa57cf6376
3
+ metadata.gz: e89ed8c39cf13736bfcdeaae252cc6ad3487bac0493ffb8d874346d16bc34980
4
+ data.tar.gz: d1d176aee597030bdf5c75c728b11afd443c1a88f91316820646099547549aed
5
5
  SHA512:
6
- metadata.gz: 1eb144a11dfab4ccee3b72369b89e94cad3c291abd47f73c7a9373d391c7588cd14d705c199a689780577f22a553bf5b7982f32b35338e9e63ce10e38a4cba00
7
- data.tar.gz: d19a812984b4a917fecee8c4efa7a4d6e421d483ed0b136c8a8f4f99156f5eaa01ab40e3de367f2318d4b99cdde7199ffbe48eda818cb887015f217f358da4d2
6
+ metadata.gz: 0eadccd63ee985186ae92055d8cff6cc0f977d43ea4135dde647d47f68b24841dec8adfdba73e8eef265efe0cff0414c038079e696002bbc7cb214db3e5f38bb
7
+ data.tar.gz: 397812627a82de80f6c97ef5211ecaca2ca7c2693377b15bd64e3e7165cfed05ed05e8ae5a54cebc160608428216a55c9cd84de9a24c28dea46cef22479f91ac
@@ -491,12 +491,13 @@ class StartupMessage < Message
491
491
  fields :proto_version, :params
492
492
 
493
493
  def dump
494
- sz = @params.inject(4 + 4) {|sum, kv| sum + kv[0].size + 1 + kv[1].size + 1} + 1
494
+ params = @params.reject{|k,v| v.nil?}
495
+ sz = params.inject(4 + 4) {|sum, kv| sum + kv[0].size + 1 + kv[1].size + 1} + 1
495
496
 
496
497
  buffer = Buffer.of_size(sz)
497
498
  buffer.write_int32_network(sz)
498
499
  buffer.write_int32_network(@proto_version)
499
- @params.each_pair {|key, value|
500
+ params.each_pair {|key, value|
500
501
  buffer.write_cstring(key)
501
502
  buffer.write_cstring(value)
502
503
  }
@@ -1,3 +1,3 @@
1
1
  module PostgresPR
2
- Version = "0.6.7"
2
+ Version = "0.6.8"
3
3
  end
metadata CHANGED
@@ -1,14 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jeremyevans-postgres-pr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.7
4
+ version: 0.6.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Evans
8
+ - Michael Neumann
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2018-07-09 00:00:00.000000000 Z
12
+ date: 2018-08-01 00:00:00.000000000 Z
12
13
  dependencies: []
13
14
  description:
14
15
  email: code@jeremyevans.net
@@ -16,10 +17,6 @@ executables: []
16
17
  extensions: []
17
18
  extra_rdoc_files: []
18
19
  files:
19
- - examples/client.rb
20
- - examples/og/test.rb
21
- - examples/server.rb
22
- - examples/test_connection.rb
23
20
  - lib/binary_reader.rb
24
21
  - lib/binary_writer.rb
25
22
  - lib/buffer.rb
@@ -35,7 +32,8 @@ files:
35
32
  - lib/postgres.rb
36
33
  - test/TC_message.rb
37
34
  homepage: https://github.com/jeremyevans/postgres-pr
38
- licenses: []
35
+ licenses:
36
+ - Ruby
39
37
  metadata: {}
40
38
  post_install_message:
41
39
  rdoc_options: []
@@ -1,34 +0,0 @@
1
- $LOAD_PATH.unshift "../lib"
2
- require 'postgres-pr/message'
3
- require 'socket'
4
- include PostgresPR
5
-
6
- s = UNIXSocket.new(ARGV.shift || "/tmp/.s.PGSQL.5432")
7
-
8
- msg = StartupMessage.new(196608, "user" => "mneumann", "database" => "mneumann")
9
- s << msg.dump
10
-
11
- Thread.start(s) { |s|
12
- sleep 2
13
- s << Query.new("drop table test").dump
14
- s << Query.new("create table test (i int, v varchar(100))").dump
15
- s << Parse.new("insert into test (i, v) values ($1, $2)", "blah").dump
16
- s << Query.new("EXECUTE blah(1, 'hallo')").dump
17
-
18
- while not (line = gets.chomp).empty?
19
- s << Query.new(line).dump
20
- end
21
- exit
22
- }
23
-
24
- loop do
25
- msg = Message.read(s)
26
- p msg
27
-
28
- case msg
29
- when AuthentificationOk
30
- p "OK"
31
- when ErrorResponse
32
- p "FAILED"
33
- end
34
- end
@@ -1,50 +0,0 @@
1
- $LOAD_PATH.unshift '../../lib'
2
- require 'rubygems'
3
- require 'og'
4
- require 'glue/logger'
5
-
6
- $DBG = true
7
-
8
- class User
9
- end
10
-
11
- class Comment
12
- prop_accessor :body, String
13
- belongs_to :user, User
14
- end
15
-
16
- class User
17
- prop_accessor :name, String
18
- has_many :comments, Comment
19
- end
20
-
21
- if __FILE__ == $0
22
- config = {
23
- :address => "localhost",
24
- :database => "mneumann",
25
- :backend => "psql",
26
- :user => "mneumann",
27
- :password => "",
28
- :connection_count => 1
29
- }
30
- $log = Logger.new(STDERR)
31
- $og = Og::Database.new(config)
32
-
33
- $og.get_connection
34
-
35
- u1 = User.new
36
- u1.name = "Michael Neumann"
37
- u1.save!
38
-
39
- u2 = User.new
40
- u2.name = "John User"
41
- u2.save!
42
-
43
- c1 = Comment.new
44
- c1.body = "og test"
45
- c1.user = u1
46
- c1.save!
47
-
48
- p User.all
49
- p Comment.all
50
- end
@@ -1,12 +0,0 @@
1
- $LOAD_PATH.unshift "../lib"
2
- require 'postgres-pr/message'
3
- require 'socket'
4
- include PostgresPR
5
-
6
- s = UNIXServer.open(ARGV.shift || raise).accept
7
- startup = true
8
- loop do
9
- msg = Message.read(s, startup)
10
- p msg
11
- startup = false
12
- end
@@ -1,18 +0,0 @@
1
- $LOAD_PATH.unshift '../lib'
2
- require 'postgres-pr/connection'
3
-
4
- conn = PostgresPR::Connection.new('mneumann', 'mneumann', nil, 'unix:/var/run/postgresql/.s.PGSQL.5432')
5
- p conn.query("DROP TABLE test") rescue nil
6
- p conn.query("CREATE TABLE test (a VARCHAR(100))")
7
- p conn.query("INSERT INTO test VALUES ('hallo')")
8
- p conn.query("INSERT INTO test VALUES ('leute')")
9
- conn.query("COMMIT")
10
-
11
- conn.query("BEGIN")
12
- 10000.times do |i|
13
- p i
14
- conn.query("INSERT INTO test VALUES ('#{i}')")
15
- end
16
- conn.query("COMMIT")
17
-
18
- p conn.query("SELECT * FROM test")