vimgolf 0.4.9 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 54dea0f839cd9e4b251b1b3d9f1b8d1be31fb0dc
4
- data.tar.gz: 0e96fa1acc4894b104702e6492748742ea42204c
2
+ SHA256:
3
+ metadata.gz: 0b23232451856233bb686ed2dc5936c491ca41a8c467b4e950f55a2d23f70064
4
+ data.tar.gz: 268b52ce2fd8286b75d1c974659d960178db0bd9a532cb65c541105d38d49328
5
5
  SHA512:
6
- metadata.gz: 2d413648da95e0c81b4f0668841605732e8265d373f56c5a98afd771d304ed547b19d8f2551e4cd007bbed2ab77d0607c2b81eedb90d22735c6159eb74b46e12
7
- data.tar.gz: bf03e208e358a3522d4c0fb6e3fcbb301a44b6202f3f9b9900c1d3a8e78820558ea7783b5ee208d180f5b22c0cfd79a687ed462ff372846158ab87cf84f20714
6
+ metadata.gz: 79484a6f2863cf654efa511bf8fee8dc4e771c445c43007c6bd1a6c80d1fcfedc601d8af59457e2ad0ef6bafbaa59955f168fa78af92da49715b5e67953e6729
7
+ data.tar.gz: 327f122659a3af5ba371a140a55544adef6612862eace4b71bc8da4b392587f4730613b68ac31edeffa0192eaa50d05ce0f7b2aab48a2b72b9d6626b137acca6
@@ -38,12 +38,14 @@ module VimGolf
38
38
  def download
39
39
  @remote = true
40
40
  begin
41
- url = URI.parse("#{GOLFHOST}/challenges/#{@id}.json")
42
- req = Net::HTTP::Get.new(url.path)
43
-
44
- proxy_url, proxy_user, proxy_pass = get_proxy
45
- proxy = Net::HTTP::Proxy(proxy_url.host, proxy_url.port, proxy_user, proxy_pass)
46
- res = proxy.start(url.host, url.port) { |http| http.request(req) }
41
+ url = URI("#{GOLFHOST}/challenges/#{@id}.json")
42
+ res = Net::HTTP.start(
43
+ url.hostname,
44
+ url.port,
45
+ use_ssl: url.scheme == 'https'
46
+ ) do |http|
47
+ http.request_get(url)
48
+ end
47
49
 
48
50
  @data = JSON.parse(res.body)
49
51
 
@@ -84,23 +86,27 @@ module VimGolf
84
86
 
85
87
  def upload
86
88
  begin
87
- url = URI.parse("#{GOLFHOST}/entry.json")
88
-
89
- proxy_url, proxy_user, proxy_pass = get_proxy
90
- proxy = Net::HTTP::Proxy(proxy_url.host, proxy_url.port, proxy_user, proxy_pass)
91
-
92
- proxy.start(url.host, url.port) do |http|
93
- request = Net::HTTP::Post.new(url.request_uri)
94
- request.set_form_data({"challenge_id" => @id, "apikey" => Config.load['key'], "entry" => IO.binread(log_path)})
95
- request["Accept"] = "application/json"
96
-
97
- res = http.request(request)
98
- res = JSON.parse(res.body)
89
+ url = URI("#{GOLFHOST}/entry.json")
90
+ res = Net::HTTP.start(
91
+ url.hostname,
92
+ url.port,
93
+ use_ssl: url.scheme == 'https'
94
+ ) do |http|
95
+ http.request_post(
96
+ url,
97
+ URI.encode_www_form(
98
+ "challenge_id" => @id,
99
+ "apikey" => Config.load['key'],
100
+ "entry" => IO.binread(log_path)
101
+ ),
102
+ "Accept" => "application/json"
103
+ )
104
+ end
99
105
 
100
- raise if !res.is_a? Hash
101
- res['status'].to_sym
106
+ res = JSON.parse(res.body)
102
107
 
103
- end
108
+ raise if !res.is_a? Hash
109
+ res['status'].to_sym
104
110
  rescue Exception => e
105
111
  debug(e)
106
112
  raise "Uh oh, entry upload has failed, please check your key."
@@ -122,20 +128,6 @@ module VimGolf
122
128
  end
123
129
 
124
130
  private
125
- def get_proxy
126
- begin
127
- proxy_url = URI.parse(PROXY)
128
- rescue Exception => e
129
- VimGolf.ui.error "Invalid proxy uri in http_proxy environment variable - will try to run with out proxy"
130
- proxy_url = URI.parse("");
131
- end
132
-
133
- proxy_url.port ||= 80
134
- proxy_user, proxy_pass = proxy_url.userinfo.split(/:/) if proxy_url.userinfo
135
-
136
- return proxy_url, proxy_user, proxy_pass
137
- end
138
-
139
131
  def debug(msg)
140
132
  p [caller.first, msg] if GOLFDEBUG
141
133
  end
data/lib/vimgolf/cli.rb CHANGED
@@ -1,10 +1,9 @@
1
1
  module VimGolf
2
2
 
3
3
  GOLFDEBUG = ENV['GOLFDEBUG'].to_sym rescue false
4
- GOLFHOST = ENV['GOLFHOST'] || "http://www.vimgolf.com"
4
+ GOLFHOST = ENV['GOLFHOST'] || "https://www.vimgolf.com"
5
5
  GOLFSHOWDIFF = ENV['GOLFSHOWDIFF'] || 'vim -d -n'
6
6
  GOLFVIM = ENV['GOLFVIM'] || 'vim'
7
- PROXY = ENV['http_proxy'] || ''
8
7
 
9
8
  class Error
10
9
  end
@@ -26,9 +25,22 @@ module VimGolf
26
25
  class CLI < Thor
27
26
  include Thor::Actions
28
27
 
29
- def self.start(*)
28
+ def self.initialize_ui
29
+ return if @ui_initialized
30
30
  Thor::Base.shell = VimGolf::CLI::UI
31
31
  VimGolf.ui = VimGolf::CLI::UI.new
32
+ @ui_initialized = true
33
+ end
34
+
35
+ def self.reset_ui
36
+ return unless @ui_initialized
37
+ Thor::Base.shell = Thor::Shell::Color
38
+ VimGolf.ui = nil
39
+ @ui_initialized = false
40
+ end
41
+
42
+ def self.start(*)
43
+ initialize_ui
32
44
  super
33
45
  end
34
46
 
@@ -1,3 +1,3 @@
1
1
  module Vimgolf
2
- VERSION = "0.4.9"
2
+ VERSION = "0.5.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vimgolf
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.9
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ilya Grigorik
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-03-22 00:00:00.000000000 Z
11
+ date: 2021-05-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -74,22 +74,22 @@ dependencies:
74
74
  name: rspec
75
75
  requirement: !ruby/object:Gem::Requirement
76
76
  requirements:
77
- - - "~>"
78
- - !ruby/object:Gem::Version
79
- version: '3.7'
80
77
  - - ">="
81
78
  - !ruby/object:Gem::Version
82
79
  version: 3.7.0
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '3.7'
83
83
  type: :development
84
84
  prerelease: false
85
85
  version_requirements: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '3.7'
90
87
  - - ">="
91
88
  - !ruby/object:Gem::Version
92
89
  version: 3.7.0
90
+ - - "~>"
91
+ - !ruby/object:Gem::Version
92
+ version: '3.7'
93
93
  - !ruby/object:Gem::Dependency
94
94
  name: rake
95
95
  requirement: !ruby/object:Gem::Requirement
@@ -110,6 +110,48 @@ dependencies:
110
110
  - - ">="
111
111
  - !ruby/object:Gem::Version
112
112
  version: 12.3.1
113
+ - !ruby/object:Gem::Dependency
114
+ name: climate_control
115
+ requirement: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - "~>"
118
+ - !ruby/object:Gem::Version
119
+ version: '0.2'
120
+ type: :development
121
+ prerelease: false
122
+ version_requirements: !ruby/object:Gem::Requirement
123
+ requirements:
124
+ - - "~>"
125
+ - !ruby/object:Gem::Version
126
+ version: '0.2'
127
+ - !ruby/object:Gem::Dependency
128
+ name: rexml
129
+ requirement: !ruby/object:Gem::Requirement
130
+ requirements:
131
+ - - "~>"
132
+ - !ruby/object:Gem::Version
133
+ version: 3.1.9
134
+ type: :development
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ requirements:
138
+ - - "~>"
139
+ - !ruby/object:Gem::Version
140
+ version: 3.1.9
141
+ - !ruby/object:Gem::Dependency
142
+ name: webmock
143
+ requirement: !ruby/object:Gem::Requirement
144
+ requirements:
145
+ - - "~>"
146
+ - !ruby/object:Gem::Version
147
+ version: '3.13'
148
+ type: :development
149
+ prerelease: false
150
+ version_requirements: !ruby/object:Gem::Requirement
151
+ requirements:
152
+ - - "~>"
153
+ - !ruby/object:Gem::Version
154
+ version: '3.13'
113
155
  description: Real Vim ninjas count every keystroke - do you? Pick a challenge on vimgolf.com,
114
156
  fire up Vim, and show us what you got.
115
157
  email:
@@ -136,7 +178,7 @@ metadata: {}
136
178
  post_install_message: |2
137
179
 
138
180
  ------------------------------------------------------------------------------
139
- Thank you for installing vimgolf-0.4.9.
181
+ Thank you for installing vimgolf-0.5.0.
140
182
 
141
183
  0.1.3: custom vimgolf .vimrc file to help level the playing field
142
184
  0.2.0: proxy support, custom diffs + proper vimscript parser/scoring
@@ -154,15 +196,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
154
196
  requirements:
155
197
  - - ">="
156
198
  - !ruby/object:Gem::Version
157
- version: '0'
199
+ version: '2.0'
158
200
  required_rubygems_version: !ruby/object:Gem::Requirement
159
201
  requirements:
160
202
  - - ">="
161
203
  - !ruby/object:Gem::Version
162
204
  version: '0'
163
205
  requirements: []
164
- rubyforge_project: vimgolf
165
- rubygems_version: 2.6.11
206
+ rubygems_version: 3.0.3.1
166
207
  signing_key:
167
208
  specification_version: 4
168
209
  summary: CLI client for vimgolf.com