vimgolf 0.4.9 → 0.5.0

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,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