relaxo 0.4.2 → 0.4.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- ZmJjYzZmZTEwYTAwNzczMjhlNmI5YzdmZWIxNTViOTMwZmZkZmY4Ng==
5
- data.tar.gz: !binary |-
6
- MzA2ZDlmY2U0MzI0NGFkMGExYmRmNjkyY2ZkZjAzMjQzNzliMGJiYQ==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- ODBmMzE1YzAwNjM3MmUzZjJiNDRlZjNkMTM0NjNjZjM1YTYxZjUxMmQwMGY0
10
- Njk2NTllYWZlM2RjZmU0YmU2ZWYxNWNjNGZmNjE0YjU1ZWQwZjM2NWMzMjdl
11
- NDJhZWE5MzVkZmJkMjMxZjI5YzNhYTk3ZjI5YmZlOGNkYzVkMmY=
12
- data.tar.gz: !binary |-
13
- ZDU3MmI3MTc3NTY3Nzk2NmQ4Njk2Y2IyNTBmNWExY2ZjYTljN2U2NGE1NjNm
14
- ZTM2YTI0MWM5N2MwNTFmMTYzYzQ3Y2IyYWYxZTM4YWVhZTA4ZDA5MDFhMzNk
15
- MmNkYzA2Yzk1ZGJlZWRhNTkwY2ZhNWM3ZDI4ZTc2ZDY3ODNiZWU=
2
+ SHA1:
3
+ metadata.gz: a9717e7374491be200281a28c52e54779a227015
4
+ data.tar.gz: b35bd9c406790b3660bb74865d481a5c4eefa42e
5
+ SHA512:
6
+ metadata.gz: 20fd23a6cb298e4fcfe8fff4d85e7fa1723f58c6ccad262086d61b55c574dfa94ae70c989257378a0ec2f7332861e0bc1c7fde56e28265c4a70adb20718f9dd2
7
+ data.tar.gz: cffb68a2e4db2c1b3a7345f2016b9910a2e61264bbd211385af2beeb37f6390c3a68321ee1d7269f62e8926c657b9bbd91ca4402ad9fc09e1d8bb15d2247761a
@@ -42,7 +42,7 @@ module Relaxo
42
42
  class Database
43
43
  def attach(document, name, data, options = {})
44
44
  parameters = {
45
- :rev => document[REV]
45
+ :rev => Parameter::Raw(document[REV])
46
46
  }.merge(options[:parameters] || {})
47
47
 
48
48
  headers = {}
data/lib/relaxo/client.rb CHANGED
@@ -26,6 +26,38 @@ module Relaxo
26
26
  # Typically returned from CouchDB when the request was successful:
27
27
  SUCCESS = {'ok' => true}
28
28
 
29
+ module Parameter
30
+ # Raw string parameter.
31
+ class Raw
32
+ def initialize(value)
33
+ @value = value
34
+ end
35
+
36
+ def to_query_string
37
+ @value
38
+ end
39
+ end
40
+
41
+ def self.Raw(value)
42
+ Raw.new(value)
43
+ end
44
+
45
+ # Force JSON serialisation.
46
+ class JSON
47
+ def initialize(value)
48
+ @value = value
49
+ end
50
+
51
+ def to_query_string
52
+ @value.to_json
53
+ end
54
+ end
55
+
56
+ def self.JSON(value)
57
+ JSON.new(value)
58
+ end
59
+ end
60
+
29
61
  module Client
30
62
  DEFAULT_GET_HEADERS = {:accept => :json}
31
63
  DEFAULT_PUT_HEADERS = {:accept => :json, :content_type => :json}
@@ -109,7 +141,9 @@ module Relaxo
109
141
  parameters.each do |key, value|
110
142
  key_string = key.to_s
111
143
 
112
- if Symbol === value || key_string.end_with?("docid")
144
+ if value.respond_to? :to_query_string
145
+ query << escape(key_string) + '=' + escape(value.to_query_string)
146
+ elsif Symbol === value || key_string.end_with?("docid")
113
147
  query << escape(key_string) + '=' + escape(value.to_s)
114
148
  else
115
149
  query << escape(key_string) + '=' + escape(value.to_json)
@@ -19,5 +19,5 @@
19
19
  # THE SOFTWARE.
20
20
 
21
21
  module Relaxo
22
- VERSION = "0.4.2"
22
+ VERSION = "0.4.3"
23
23
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaxo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.2
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Williams
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-04-04 00:00:00.000000000 Z
11
+ date: 2013-08-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -28,14 +28,14 @@ dependencies:
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ! '>='
31
+ - - '>='
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ! '>='
38
+ - - '>='
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
@@ -56,19 +56,19 @@ dependencies:
56
56
  name: rest-client
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ! '>='
59
+ - - '>='
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ! '>='
66
+ - - '>='
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
- description: ! "\t\tRelaxo provides a set of tools and interfaces for interacting
70
- with CouchDB.\n\t\tIt aims to be as simple and efficient as possible while still
71
- improving the\n\t\tusability of various CouchDB features.\n"
69
+ description: "\t\tRelaxo provides a set of tools and interfaces for interacting with
70
+ CouchDB.\n\t\tIt aims to be as simple and efficient as possible while still improving
71
+ the\n\t\tusability of various CouchDB features.\n"
72
72
  email:
73
73
  - samuel.williams@oriontransfer.co.nz
74
74
  executables:
@@ -83,14 +83,6 @@ files:
83
83
  - README.md
84
84
  - bin/relaxo
85
85
  - bin/relaxo-admin
86
- - build/master.rb
87
- - build/rakefile.rb
88
- - build/relaxo-0.1.0.gemspec
89
- - build/relaxo-0.1.1.gemspec
90
- - build/relaxo-0.2.0.gemspec
91
- - build/relaxo-0.3.0.gemspec
92
- - build/relaxo-0.3.1.gemspec
93
- - build/relaxo-0.4.0.gemspec
94
86
  - lib/relaxo.rb
95
87
  - lib/relaxo/attachments.rb
96
88
  - lib/relaxo/base64-1.8.rb
@@ -118,17 +110,17 @@ require_paths:
118
110
  - lib
119
111
  required_ruby_version: !ruby/object:Gem::Requirement
120
112
  requirements:
121
- - - ! '>='
113
+ - - '>='
122
114
  - !ruby/object:Gem::Version
123
115
  version: '0'
124
116
  required_rubygems_version: !ruby/object:Gem::Requirement
125
117
  requirements:
126
- - - ! '>='
118
+ - - '>='
127
119
  - !ruby/object:Gem::Version
128
120
  version: '0'
129
121
  requirements: []
130
122
  rubyforge_project:
131
- rubygems_version: 2.0.2
123
+ rubygems_version: 2.0.6
132
124
  signing_key:
133
125
  specification_version: 4
134
126
  summary: Relaxo is a helper for loading and working with CouchDB.
data/build/master.rb DELETED
@@ -1,22 +0,0 @@
1
-
2
- Dir.chdir("../") do
3
- require './lib/relaxo/version'
4
-
5
- Gem::Specification.new do |s|
6
- s.name = "relaxo"
7
- s.version = Relaxo::VERSION::STRING
8
- s.author = "Samuel Williams"
9
- s.email = "samuel@oriontransfer.org"
10
- s.homepage = "http://www.codeotaku.com/projects/relaxo"
11
- s.platform = Gem::Platform::RUBY
12
- s.summary = "Relaxo is a helper for loading and working with CouchDB."
13
- s.files = FileList["{bin,lib,test}/**/*"] + ["rakefile.rb", "Gemfile", "README.md"]
14
-
15
- s.executables << 'relaxo'
16
-
17
- s.add_dependency("json", "~> 1.7.3")
18
- s.add_dependency("rest-client", "~> 1.6.7")
19
-
20
- s.has_rdoc = "yard"
21
- end
22
- end
data/build/rakefile.rb DELETED
@@ -1,39 +0,0 @@
1
-
2
- # Automatic Gem Build Script v3.0
3
-
4
- require 'fileutils'
5
- require 'rubygems'
6
-
7
- MasterGemspec = "master.rb"
8
-
9
- GEM = ENV['GEM'] || "gem"
10
-
11
- desc 'Build a gemspec file'
12
- task :build_gemspec do
13
- $spec = Gem::Specification.load(MasterGemspec)
14
-
15
- $versioned_gem = "#{$spec.name}-#{$spec.version}.gem"
16
- $versioned_gemspec = "#{$spec.name}-#{$spec.version}.gemspec"
17
- $base_gemspec = "#{$spec.name}.gemspec"
18
-
19
- puts "Building #{$versioned_gemspec}..."
20
-
21
- File.open($versioned_gemspec, "w") do |f|
22
- f.write($spec.to_ruby)
23
- end
24
-
25
- puts "Copying file to ../#{$base_gemspec}"
26
- FileUtils.cp($versioned_gemspec, "../#{$base_gemspec}")
27
- end
28
-
29
- task :build_gem => [:build_gemspec] do
30
- Dir.chdir("../") do
31
- system("#{GEM} build #{$base_gemspec}")
32
- end
33
- end
34
-
35
- task :install_gem => [:build_gem] do
36
- Dir.chdir("../") do
37
- system("#{GEM} install --local #{$versioned_gem}")
38
- end
39
- end
@@ -1,29 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
-
3
- Gem::Specification.new do |s|
4
- s.name = "relaxo"
5
- s.version = "0.1.0"
6
-
7
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
- s.authors = ["Samuel Williams"]
9
- s.date = "2012-07-09"
10
- s.email = "samuel.williams@oriontransfer.co.nz"
11
- s.executables = ["relaxo"]
12
- s.files = ["bin/relaxo", "lib/relaxo", "lib/relaxo/version.rb", "lib/relaxo.rb", "README.md"]
13
- s.homepage = "http://www.oriontransfer.co.nz/gems/relaxo"
14
- s.require_paths = ["lib"]
15
- s.rubygems_version = "1.8.23"
16
- s.summary = "Relaxo is a helper for loading and working with CouchDB."
17
-
18
- if s.respond_to? :specification_version then
19
- s.specification_version = 3
20
-
21
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
22
- s.add_runtime_dependency(%q<couchrest>, [">= 0"])
23
- else
24
- s.add_dependency(%q<couchrest>, [">= 0"])
25
- end
26
- else
27
- s.add_dependency(%q<couchrest>, [">= 0"])
28
- end
29
- end
@@ -1,32 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
-
3
- Gem::Specification.new do |s|
4
- s.name = "relaxo"
5
- s.version = "0.1.1"
6
-
7
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
- s.authors = ["Samuel Williams"]
9
- s.date = "2012-07-10"
10
- s.email = "samuel.williams@oriontransfer.co.nz"
11
- s.executables = ["relaxo"]
12
- s.files = ["bin/relaxo", "lib/relaxo", "lib/relaxo/client.rb", "lib/relaxo/database.rb", "lib/relaxo/model.rb", "lib/relaxo/properties.rb", "lib/relaxo/recordset.rb", "lib/relaxo/server.rb", "lib/relaxo/version.rb", "lib/relaxo.rb", "README.md"]
13
- s.homepage = "http://www.oriontransfer.co.nz/gems/relaxo"
14
- s.require_paths = ["lib"]
15
- s.rubygems_version = "1.8.23"
16
- s.summary = "Relaxo is a helper for loading and working with CouchDB."
17
-
18
- if s.respond_to? :specification_version then
19
- s.specification_version = 3
20
-
21
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
22
- s.add_runtime_dependency(%q<couchrest>, [">= 0"])
23
- s.add_runtime_dependency(%q<rest-client>, [">= 0"])
24
- else
25
- s.add_dependency(%q<couchrest>, [">= 0"])
26
- s.add_dependency(%q<rest-client>, [">= 0"])
27
- end
28
- else
29
- s.add_dependency(%q<couchrest>, [">= 0"])
30
- s.add_dependency(%q<rest-client>, [">= 0"])
31
- end
32
- end
@@ -1,32 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
-
3
- Gem::Specification.new do |s|
4
- s.name = "relaxo"
5
- s.version = "0.2.0"
6
-
7
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
- s.authors = ["Samuel Williams"]
9
- s.date = "2012-07-11"
10
- s.email = "samuel.williams@oriontransfer.co.nz"
11
- s.executables = ["relaxo"]
12
- s.files = ["bin/relaxo", "lib/relaxo", "lib/relaxo/client.rb", "lib/relaxo/database.rb", "lib/relaxo/model.rb", "lib/relaxo/properties", "lib/relaxo/properties/money.rb", "lib/relaxo/properties.rb", "lib/relaxo/recordset.rb", "lib/relaxo/server.rb", "lib/relaxo/version.rb", "lib/relaxo.rb", "README.md"]
13
- s.homepage = "http://www.oriontransfer.co.nz/gems/relaxo"
14
- s.require_paths = ["lib"]
15
- s.rubygems_version = "1.8.23"
16
- s.summary = "Relaxo is a helper for loading and working with CouchDB."
17
-
18
- if s.respond_to? :specification_version then
19
- s.specification_version = 3
20
-
21
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
22
- s.add_runtime_dependency(%q<couchrest>, [">= 0"])
23
- s.add_runtime_dependency(%q<rest-client>, [">= 0"])
24
- else
25
- s.add_dependency(%q<couchrest>, [">= 0"])
26
- s.add_dependency(%q<rest-client>, [">= 0"])
27
- end
28
- else
29
- s.add_dependency(%q<couchrest>, [">= 0"])
30
- s.add_dependency(%q<rest-client>, [">= 0"])
31
- end
32
- end
@@ -1,32 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
-
3
- Gem::Specification.new do |s|
4
- s.name = "relaxo"
5
- s.version = "0.3.0"
6
-
7
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
- s.authors = ["Samuel Williams"]
9
- s.date = "2012-07-11"
10
- s.email = "samuel.williams@oriontransfer.co.nz"
11
- s.executables = ["relaxo"]
12
- s.files = ["bin/relaxo", "lib/relaxo", "lib/relaxo/client.rb", "lib/relaxo/database.rb", "lib/relaxo/server.rb", "lib/relaxo/session.rb", "lib/relaxo/version.rb", "lib/relaxo.rb", "README.md"]
13
- s.homepage = "http://www.oriontransfer.co.nz/gems/relaxo"
14
- s.require_paths = ["lib"]
15
- s.rubygems_version = "1.8.23"
16
- s.summary = "Relaxo is a helper for loading and working with CouchDB."
17
-
18
- if s.respond_to? :specification_version then
19
- s.specification_version = 3
20
-
21
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
22
- s.add_runtime_dependency(%q<json>, ["~> 1.7.3"])
23
- s.add_runtime_dependency(%q<rest-client>, ["~> 1.6.7"])
24
- else
25
- s.add_dependency(%q<json>, ["~> 1.7.3"])
26
- s.add_dependency(%q<rest-client>, ["~> 1.6.7"])
27
- end
28
- else
29
- s.add_dependency(%q<json>, ["~> 1.7.3"])
30
- s.add_dependency(%q<rest-client>, ["~> 1.6.7"])
31
- end
32
- end
@@ -1,32 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
-
3
- Gem::Specification.new do |s|
4
- s.name = "relaxo"
5
- s.version = "0.3.1"
6
-
7
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
- s.authors = ["Samuel Williams"]
9
- s.date = "2012-07-23"
10
- s.email = "samuel.williams@oriontransfer.co.nz"
11
- s.executables = ["relaxo"]
12
- s.files = ["bin/relaxo", "lib/relaxo", "lib/relaxo/client.rb", "lib/relaxo/connection.rb", "lib/relaxo/database.rb", "lib/relaxo/session.rb", "lib/relaxo/version.rb", "lib/relaxo.rb", "test/database_test.rb", "README.md"]
13
- s.homepage = "http://www.oriontransfer.co.nz/gems/relaxo"
14
- s.require_paths = ["lib"]
15
- s.rubygems_version = "1.8.23"
16
- s.summary = "Relaxo is a helper for loading and working with CouchDB."
17
-
18
- if s.respond_to? :specification_version then
19
- s.specification_version = 3
20
-
21
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
22
- s.add_runtime_dependency(%q<json>, ["~> 1.7.3"])
23
- s.add_runtime_dependency(%q<rest-client>, ["~> 1.6.7"])
24
- else
25
- s.add_dependency(%q<json>, ["~> 1.7.3"])
26
- s.add_dependency(%q<rest-client>, ["~> 1.6.7"])
27
- end
28
- else
29
- s.add_dependency(%q<json>, ["~> 1.7.3"])
30
- s.add_dependency(%q<rest-client>, ["~> 1.6.7"])
31
- end
32
- end
@@ -1,32 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
-
3
- Gem::Specification.new do |s|
4
- s.name = "relaxo"
5
- s.version = "0.4.0"
6
-
7
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
- s.authors = ["Samuel Williams"]
9
- s.date = "2012-10-14"
10
- s.email = "samuel.williams@oriontransfer.co.nz"
11
- s.executables = ["relaxo"]
12
- s.files = ["bin/relaxo", "lib/relaxo", "lib/relaxo/attachments.rb", "lib/relaxo/base64-1.8.rb", "lib/relaxo/client.rb", "lib/relaxo/connection.rb", "lib/relaxo/database.rb", "lib/relaxo/json.rb", "lib/relaxo/transaction.rb", "lib/relaxo/version.rb", "lib/relaxo.rb", "test/README.md", "test/attachments_test.rb", "test/connection_test.rb", "test/database_test.rb", "test/helper.rb", "test/transaction_test.rb", "README.md"]
13
- s.homepage = "http://www.oriontransfer.co.nz/gems/relaxo"
14
- s.require_paths = ["lib"]
15
- s.rubygems_version = "1.8.23"
16
- s.summary = "Relaxo is a helper for loading and working with CouchDB."
17
-
18
- if s.respond_to? :specification_version then
19
- s.specification_version = 3
20
-
21
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
22
- s.add_runtime_dependency(%q<json>, ["~> 1.7.3"])
23
- s.add_runtime_dependency(%q<rest-client>, ["~> 1.6.7"])
24
- else
25
- s.add_dependency(%q<json>, ["~> 1.7.3"])
26
- s.add_dependency(%q<rest-client>, ["~> 1.6.7"])
27
- end
28
- else
29
- s.add_dependency(%q<json>, ["~> 1.7.3"])
30
- s.add_dependency(%q<rest-client>, ["~> 1.6.7"])
31
- end
32
- end