packagecloud-ruby 1.0.2 → 1.0.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
- ---
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