gemfury 0.4.12 → 0.4.14

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -26,7 +26,7 @@ any package to any host. It's simple, reliable, and hassle-free.
26
26
  * [Install private RubyGems](http://devcenter.gemfury.com/articles/install-gems.html)
27
27
  * [Install private Python packages](http://devcenter.gemfury.com/articles/pypi-server.html)
28
28
  * [Install private NPM modules](http://devcenter.gemfury.com/articles/npm-registry.html)
29
- * [Private Gems on Heroku](http://devcenter.gemfury.com/articles/private-gems-on-heroku.html)
29
+ * [Private RubyGems on Heroku](http://devcenter.gemfury.com/articles/private-gems-on-heroku.html)
30
30
 
31
31
 
32
32
  ## Contribution and Improvements
data/lib/gemfury.rb CHANGED
@@ -1,4 +1,4 @@
1
- require 'uri'
1
+ require 'cgi'
2
2
  require 'multi_json'
3
3
  require 'faraday_middleware'
4
4
  require 'faraday/request/multipart_with_file'
@@ -40,7 +40,8 @@ module Gemfury
40
40
  # List versions for a gem
41
41
  def versions(name, options = {})
42
42
  ensure_ready!(:authorization)
43
- response = connection.get("gems/#{name}/versions", options)
43
+ url = "gems/#{escape(name)}/versions"
44
+ response = connection.get(url, options)
44
45
  ensure_successful_response!(response)
45
46
  response.body
46
47
  end
@@ -48,7 +49,8 @@ module Gemfury
48
49
  # Delete a gem version
49
50
  def yank_version(name, version, options = {})
50
51
  ensure_ready!(:authorization)
51
- response = connection.delete("gems/#{name}/versions/#{version}", options)
52
+ url = "gems/#{escape(name)}/versions/#{escape(version)}"
53
+ response = connection.delete(url, options)
52
54
  ensure_successful_response!(response)
53
55
  response.body
54
56
  end
@@ -75,20 +77,24 @@ module Gemfury
75
77
  # Add a collaborator to the account
76
78
  def add_collaborator(login, options = {})
77
79
  ensure_ready!(:authorization)
78
- login = URI.escape(login, '@.')
79
- response = connection.put("collaborators/#{login}", options)
80
+ url = "collaborators/#{escape(login)}"
81
+ response = connection.put(url, options)
80
82
  ensure_successful_response!(response)
81
83
  end
82
84
 
83
85
  # Remove a collaborator to the account
84
86
  def remove_collaborator(login, options = {})
85
87
  ensure_ready!(:authorization)
86
- login = URI.escape(login, '@.')
87
- response = connection.delete("collaborators/#{login}", options)
88
+ url = "collaborators/#{escape(login)}"
89
+ response = connection.delete(url, options)
88
90
  ensure_successful_response!(response)
89
91
  end
90
92
 
91
93
  private
94
+ def escape(str)
95
+ CGI.escape(str)
96
+ end
97
+
92
98
  def connection(options = {})
93
99
  options = {
94
100
  :url => self.endpoint,
@@ -1,3 +1,3 @@
1
1
  module Gemfury
2
- VERSION = '0.4.12'
2
+ VERSION = '0.4.14'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gemfury
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.12
4
+ version: 0.4.14
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-15 00:00:00.000000000 Z
12
+ date: 2013-03-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: highline
@@ -59,7 +59,7 @@ dependencies:
59
59
  version: 1.0.2
60
60
  - - <
61
61
  - !ruby/object:Gem::Version
62
- version: '1.4'
62
+ version: '1.7'
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
@@ -70,7 +70,7 @@ dependencies:
70
70
  version: 1.0.2
71
71
  - - <
72
72
  - !ruby/object:Gem::Version
73
- version: '1.4'
73
+ version: '1.7'
74
74
  - !ruby/object:Gem::Dependency
75
75
  name: faraday
76
76
  requirement: !ruby/object:Gem::Requirement
@@ -103,7 +103,7 @@ dependencies:
103
103
  version: '0.7'
104
104
  - - <
105
105
  - !ruby/object:Gem::Version
106
- version: '0.9'
106
+ version: '0.10'
107
107
  type: :runtime
108
108
  prerelease: false
109
109
  version_requirements: !ruby/object:Gem::Requirement
@@ -114,7 +114,7 @@ dependencies:
114
114
  version: '0.7'
115
115
  - - <
116
116
  - !ruby/object:Gem::Version
117
- version: '0.9'
117
+ version: '0.10'
118
118
  description: ! 'Cloud Gem Server for your private RubyGems at http://gemfury.com
119
119
 
120
120
  '