packagecloud-ruby 1.0.2 → 1.0.3

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,15 +1,7 @@
1
- ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- M2QwMjQ4NzA3NDdkZTA0OTZlZTFlMmE0OTcwMjExZWU3MzM2YjY2ZA==
5
- data.tar.gz: !binary |-
6
- ZWEyYzg3MzdhMDA0NDQxYzE5MGQyM2ZjMDI3OThjYWMyOTcwNDY0Yg==
7
- SHA512:
8
- metadata.gz: !binary |-
9
- YmU4YWIyYWIxMDVmNjc5MWM2NzFmZTY1NjMxMTAwMjNlYTlmNDAwNTdmYzQ4
10
- ZDc4Y2U4YTVjMTkwM2NmYjg2MTFmZTMxNTdiNTk2YzVjNTIzMjU5MmFkZGVh
11
- YTAxNTdiYjg3ZDEwMDU1N2YwZTM1YzEzYjZiZWYxY2Q3Nzc2MDM=
12
- data.tar.gz: !binary |-
13
- Njk1Yjk5MGEyZWI4YzY1OGNmNWYzNDczZWEyYzBjNGYwYTIwYWQxNTc4MzNi
14
- MzA2NTFhNGQ2NWEwZDJkNjFiZmVjZjE5NzY0YzExYWFmZWEyNzNkYThiMWVj
15
- ODg2NjM5YjUyYTA4MTZjN2NlNGQxNzZkODYwN2I4NmMwMDY0MTk=
1
+ ---
2
+ SHA1:
3
+ data.tar.gz: 99a23e86cf06dfe201a1a7a410dc7f7fb65cefd0
4
+ metadata.gz: e2b8d7358cc52d9e697324e54e88416a3fa387ad
5
+ SHA512:
6
+ data.tar.gz: 3bb10823441626e374cf2d4859880bf49b9708ce7e1df13469f27b311ddfc3fe984a6da98fc2b674f521368e205a3f309c50b8a93da729af2a3052c45f0c2358
7
+ metadata.gz: 38bd5a311eb02b863292b9c2f074d751076a8bcf6ea6d1e5a4c465e87d892c8048aac6ebd1ac4363dd68e5a0d1f03b115a978dcb5c9bdc0d76edd8b8dc322387
@@ -93,6 +93,7 @@ module Packagecloud
93
93
 
94
94
  mixed_msg = MIME::Multipart::FormData.new
95
95
 
96
+ package.file.rewind
96
97
  pkg_data = MIME::Application.new(package.file.read)
97
98
  pkg_data.headers.set('Content-Transfer-Encoding', 'binary')
98
99
  mixed_msg.add(pkg_data, "package[package_file]", package.filename)
@@ -132,11 +133,13 @@ module Packagecloud
132
133
  end
133
134
  end
134
135
 
136
+ package.file.rewind
135
137
  pkg_data = MIME::Application.new(package.file.read)
136
138
  pkg_data.headers.set('Content-Transfer-Encoding', 'binary')
137
139
  mixed_msg.add(pkg_data, "package[package_file]", package.filename)
138
140
 
139
141
  package.source_files.each do |filename, io|
142
+ io.rewind
140
143
  src_pkg_data = MIME::Application.new(io.read)
141
144
  src_pkg_data.headers.set('Content-Transfer-Encoding', 'binary')
142
145
  mixed_msg.add(src_pkg_data, "package[source_files][]", filename)
@@ -1,7 +1,7 @@
1
1
  module Packagecloud
2
2
  MAJOR_VERSION = "1"
3
3
  MINOR_VERSION = "0"
4
- PATCH_VERSION = "2"
4
+ PATCH_VERSION = "3"
5
5
 
6
6
  VERSION = [MAJOR_VERSION, MINOR_VERSION, PATCH_VERSION].join(".")
7
7
  end
@@ -26,6 +26,11 @@ class PackagecloudServer < WEBrick::HTTPServlet::AbstractServlet
26
26
  response.status = 201
27
27
  response['Content-Type'] = "text/plain"
28
28
  response.body = "{}"
29
+ ### Cheap hack to avoid parsing a multipart request here,
30
+ ### instead we just check that the body isn't impossibly small
31
+ if (request.body.size < 1000)
32
+ raise "Request is too small! #{request.body.size}"
33
+ end
29
34
  $request, $response = request, response
30
35
  end
31
36
 
@@ -55,7 +60,7 @@ class PackagecloudServer < WEBrick::HTTPServlet::AbstractServlet
55
60
  if request.request_method == "GET"
56
61
  json_response(request, response, REPOS)
57
62
  else
58
- created_response(request, response)
63
+ plain_response(request, response, "{}")
59
64
  end
60
65
  when "/api/v1/repos/joedamato/test_repo.json"
61
66
  json_response(request, response, REPO)
@@ -57,6 +57,17 @@ describe Packagecloud do
57
57
  expect($request.content_length > size).to be_truthy
58
58
  end
59
59
 
60
+ it "POST debian package /api/v1/repos/joedamato/test_repo/packages.json twice" do
61
+ path = "spec/fixtures/libampsharp2.0-cil_2.0.4-1_all.deb"
62
+
63
+ package = Package.new(:file => path)
64
+
65
+ @client.put_package("test_repo", package, 22)
66
+ result = @client.put_package("test_repo", package, 21)
67
+ expect(result.succeeded).to be_truthy
68
+ end
69
+
70
+
60
71
  it "POST gem package /api/v1/repos/joedamato/test_repo/packages.json" do
61
72
  path = "spec/fixtures/chewbacca-1.0.0.gem"
62
73
  size = File.size(path)
metadata CHANGED
@@ -1,161 +1,123 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: packagecloud-ruby
3
- version: !ruby/object:Gem::Version
4
- version: 1.0.2
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.3
5
5
  platform: ruby
6
- authors:
6
+ authors:
7
7
  - Joe Damato
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-14 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: excon
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
11
+
12
+ date: 2016-03-22 00:00:00 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ prerelease: false
16
+ version_requirements: &id001 !ruby/object:Gem::Requirement
17
+ requirements:
17
18
  - - ~>
18
- - !ruby/object:Gem::Version
19
- version: '0.40'
19
+ - !ruby/object:Gem::Version
20
+ version: "0.40"
21
+ requirement: *id001
22
+ name: excon
20
23
  type: :runtime
24
+ - !ruby/object:Gem::Dependency
21
25
  prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
26
+ version_requirements: &id002 !ruby/object:Gem::Requirement
27
+ requirements:
24
28
  - - ~>
25
- - !ruby/object:Gem::Version
26
- version: '0.40'
27
- - !ruby/object:Gem::Dependency
29
+ - &id005 !ruby/object:Gem::Version
30
+ version: "1.0"
31
+ requirement: *id002
28
32
  name: multi_json
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ~>
32
- - !ruby/object:Gem::Version
33
- version: '1.0'
34
33
  type: :runtime
34
+ - !ruby/object:Gem::Dependency
35
35
  prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
36
+ version_requirements: &id003 !ruby/object:Gem::Requirement
37
+ requirements:
38
38
  - - ~>
39
- - !ruby/object:Gem::Version
40
- version: '1.0'
41
- - !ruby/object:Gem::Dependency
39
+ - !ruby/object:Gem::Version
40
+ version: "1"
41
+ requirement: *id003
42
42
  name: json_pure
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ~>
46
- - !ruby/object:Gem::Version
47
- version: '1'
48
43
  type: :runtime
44
+ - !ruby/object:Gem::Dependency
49
45
  prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
46
+ version_requirements: &id004 !ruby/object:Gem::Requirement
47
+ requirements:
52
48
  - - ~>
53
- - !ruby/object:Gem::Version
54
- version: '1'
55
- - !ruby/object:Gem::Dependency
49
+ - !ruby/object:Gem::Version
50
+ version: "0.4"
51
+ requirement: *id004
56
52
  name: mime
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ~>
60
- - !ruby/object:Gem::Version
61
- version: '0.4'
62
53
  type: :runtime
54
+ - !ruby/object:Gem::Dependency
63
55
  prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
56
+ version_requirements: &id006 !ruby/object:Gem::Requirement
57
+ requirements:
66
58
  - - ~>
67
- - !ruby/object:Gem::Version
68
- version: '0.4'
69
- - !ruby/object:Gem::Dependency
59
+ - *id005
60
+ requirement: *id006
70
61
  name: bundler
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ~>
74
- - !ruby/object:Gem::Version
75
- version: '1.0'
76
62
  type: :development
63
+ - !ruby/object:Gem::Dependency
77
64
  prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
65
+ version_requirements: &id007 !ruby/object:Gem::Requirement
66
+ requirements:
80
67
  - - ~>
81
- - !ruby/object:Gem::Version
82
- version: '1.0'
83
- - !ruby/object:Gem::Dependency
68
+ - &id011 !ruby/object:Gem::Version
69
+ version: "0.8"
70
+ requirement: *id007
84
71
  name: rake
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ~>
88
- - !ruby/object:Gem::Version
89
- version: '0.8'
90
72
  type: :development
73
+ - !ruby/object:Gem::Dependency
91
74
  prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
75
+ version_requirements: &id008 !ruby/object:Gem::Requirement
76
+ requirements:
94
77
  - - ~>
95
- - !ruby/object:Gem::Version
96
- version: '0.8'
97
- - !ruby/object:Gem::Dependency
78
+ - !ruby/object:Gem::Version
79
+ version: "2.4"
80
+ requirement: *id008
98
81
  name: rspec
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ~>
102
- - !ruby/object:Gem::Version
103
- version: '2.4'
104
82
  type: :development
83
+ - !ruby/object:Gem::Dependency
105
84
  prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
85
+ version_requirements: &id009 !ruby/object:Gem::Requirement
86
+ requirements:
108
87
  - - ~>
109
- - !ruby/object:Gem::Version
110
- version: '2.4'
111
- - !ruby/object:Gem::Dependency
88
+ - !ruby/object:Gem::Version
89
+ version: "0.9"
90
+ requirement: *id009
112
91
  name: simplecov
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ~>
116
- - !ruby/object:Gem::Version
117
- version: '0.9'
118
92
  type: :development
93
+ - !ruby/object:Gem::Dependency
119
94
  prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
95
+ version_requirements: &id010 !ruby/object:Gem::Requirement
96
+ requirements:
122
97
  - - ~>
123
- - !ruby/object:Gem::Version
124
- version: '0.9'
125
- - !ruby/object:Gem::Dependency
98
+ - !ruby/object:Gem::Version
99
+ version: "0.2"
100
+ requirement: *id010
126
101
  name: rubygems-tasks
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - ~>
130
- - !ruby/object:Gem::Version
131
- version: '0.2'
132
102
  type: :development
103
+ - !ruby/object:Gem::Dependency
133
104
  prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
105
+ version_requirements: &id012 !ruby/object:Gem::Requirement
106
+ requirements:
136
107
  - - ~>
137
- - !ruby/object:Gem::Version
138
- version: '0.2'
139
- - !ruby/object:Gem::Dependency
108
+ - *id011
109
+ requirement: *id012
140
110
  name: yard
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - ~>
144
- - !ruby/object:Gem::Version
145
- version: '0.8'
146
111
  type: :development
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - ~>
151
- - !ruby/object:Gem::Version
152
- version: '0.8'
153
112
  description: library for interacting with packagecloud.io
154
113
  email: joe@packagecloud.io
155
114
  executables: []
115
+
156
116
  extensions: []
117
+
157
118
  extra_rdoc_files: []
158
- files:
119
+
120
+ files:
159
121
  - .document
160
122
  - .gitignore
161
123
  - .rspec
@@ -184,30 +146,32 @@ files:
184
146
  - spec/packagecloud_spec.rb
185
147
  - spec/spec_helper.rb
186
148
  homepage: https://rubygems.org/gems/packagecloud-ruby
187
- licenses:
149
+ licenses:
188
150
  - APL 2.0
189
151
  metadata: {}
152
+
190
153
  post_install_message:
191
154
  rdoc_options: []
192
- require_paths:
155
+
156
+ require_paths:
193
157
  - lib
194
- required_ruby_version: !ruby/object:Gem::Requirement
195
- requirements:
196
- - - ! '>='
197
- - !ruby/object:Gem::Version
198
- version: '0'
199
- required_rubygems_version: !ruby/object:Gem::Requirement
200
- requirements:
201
- - - ! '>='
202
- - !ruby/object:Gem::Version
203
- version: '0'
158
+ required_ruby_version: !ruby/object:Gem::Requirement
159
+ requirements:
160
+ - &id013
161
+ - ">="
162
+ - !ruby/object:Gem::Version
163
+ version: "0"
164
+ required_rubygems_version: !ruby/object:Gem::Requirement
165
+ requirements:
166
+ - *id013
204
167
  requirements: []
168
+
205
169
  rubyforge_project:
206
170
  rubygems_version: 2.4.8
207
171
  signing_key:
208
172
  specification_version: 4
209
173
  summary: library for interacting with packagecloud.io
210
- test_files:
174
+ test_files:
211
175
  - spec/fixtures/chewbacca-1.0.0.gem
212
176
  - spec/fixtures/distros.json
213
177
  - spec/fixtures/libampsharp2.0-cil_2.0.4-1_all.deb