devcenter 1.1.8 → 1.2.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: b49c7d8543d4720ee03c91ffb5bacc074c70fb79
4
- data.tar.gz: c82bf5c23cc542bea176e8f8ca3940c0ad43ceed
2
+ SHA256:
3
+ metadata.gz: 7a6a2e1b6bd8e979e6ce1106773f16a40a23221f9214ba9b3594a3cbf6d1a514
4
+ data.tar.gz: bcc5f9fab7d7cf2f965f764f1c3b92c1bfb36efa662cb5bf4b5c2dca1b092a69
5
5
  SHA512:
6
- metadata.gz: e272d1a767aa07bc0dfb89b118a092228ba4fd8149215da96fa488ceeb5ec068077af7cc3f2866296661244f75f7d742d214d762482fbeeab6b0f2954e0eccc6
7
- data.tar.gz: c85c6ce78c18d89c2b526aed52f509bdac3fd514cde92b2a7ae50285e5545207b91357f58f016aadd0184e5da02d73cffbab38d589b31e65c7258d888845ffb3
6
+ metadata.gz: 688237e4aeeca4f10f5fc0010af7afb84860a2a64053072c16b868eb7587121cd58b9883c6c04616f01541c3416e0a0dcfc4066ec2c26c983fdf04c84378d9dc
7
+ data.tar.gz: 46573fcc5c761c4fc54e02f1f437bef83a2ac73f9c6aa5c4c6ba51c0e41fcc85a64eda294621683c17df5b49452721e0b2a26ac65d4491d879f4447670712d7f
data/CODEOWNERS ADDED
@@ -0,0 +1,2 @@
1
+ # Comment line immediately above ownership line is reserved for related gus information. Please be careful while editing.
2
+ #ECCN:Open Source
data/devcenter.gemspec CHANGED
@@ -1,33 +1,34 @@
1
- # encoding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
1
+ lib = File.expand_path('lib', __dir__)
3
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
3
  require 'devcenter/version'
5
4
 
6
5
  Gem::Specification.new do |gem|
7
- gem.name = "devcenter"
6
+ gem.name = 'devcenter'
8
7
  gem.version = Devcenter::VERSION
9
- gem.authors = ["Raul Murciano", "Clint Shryock"]
10
- gem.email = ["raul@heroku.com"]
11
- gem.description = %q{CLI to interact with Heroku's Dev Center}
12
- gem.summary = %q{CLI to interact with Heroku's Dev Center}
13
- gem.homepage = "https://devcenter.heroku.com"
8
+ gem.authors = ['Heroku']
9
+ gem.email = ['heroku-front-end@salesforce.com']
10
+ gem.description = %q(CLI to interact with Heroku's Dev Center)
11
+ gem.summary = %q(CLI to interact with Heroku's Dev Center)
12
+ gem.homepage = 'https://devcenter.heroku.com'
14
13
 
15
14
  gem.files = `git ls-files`.split($/)
16
- gem.executables = %w{ devcenter }
15
+ gem.executables = %w[devcenter]
17
16
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
- gem.require_paths = %w{ lib }
19
- gem.add_runtime_dependency('listen', '~> 1.3')
20
- gem.add_runtime_dependency('commander', '~> 4.1')
21
- gem.add_runtime_dependency('json', '~>1.8', '>= 1.8.2')
22
- gem.add_runtime_dependency('excon', '~>0.45')
23
- gem.add_runtime_dependency('launchy', '~>2.1')
24
- gem.add_runtime_dependency('coderay', '~>1.0')
25
- gem.add_runtime_dependency('thin', '~>1.5')
26
- gem.add_runtime_dependency('rack', '~>1.4')
27
- gem.add_runtime_dependency('rack-protection', '~>1.3')
28
- gem.add_runtime_dependency('sinatra', '~>1.3')
29
- gem.add_runtime_dependency('tilt', '~>1.3')
30
- gem.add_runtime_dependency('rack-highlighter', '~>0.2')
31
- gem.add_runtime_dependency('devcenter-parser', '~>2.0')
32
- gem.add_runtime_dependency('netrc', '~>0.10', '>= 0.10.2')
17
+ gem.require_paths = %w[lib]
18
+
19
+ gem.required_ruby_version = '>= 3.0.0'
20
+
21
+ gem.add_runtime_dependency('coderay', '~> 1.1.3')
22
+ gem.add_runtime_dependency('commander', '~> 4.6')
23
+ gem.add_runtime_dependency('devcenter-parser', '~> 2.3')
24
+ gem.add_runtime_dependency('excon', '~> 0.100.0')
25
+ gem.add_runtime_dependency('json', '~> 2.3.1')
26
+ gem.add_runtime_dependency('launchy', '~> 2.4.3')
27
+ gem.add_runtime_dependency('listen', '~> 3.4.1')
28
+ gem.add_runtime_dependency('netrc', '~> 0.11.0')
29
+ gem.add_runtime_dependency('rack', '~> 2.2.8')
30
+ gem.add_runtime_dependency('rack-protection', '~> 2.2.4')
31
+ gem.add_runtime_dependency('sinatra', '~> 2.2.4')
32
+ gem.add_runtime_dependency('thin', '~> 1.8.2')
33
+ gem.add_runtime_dependency('tilt', '~> 2.0.11')
33
34
  end
@@ -37,10 +37,9 @@ module Devcenter::Commands
37
37
 
38
38
  def article_not_found!(slug)
39
39
  message = ["No #{slug} article found."]
40
- response = Devcenter::Client.get(:path => search_api_path, :query => { :q => slug, :source => 'devcenter-cli' })
41
- suggestions = response.body['devcenter']
42
- suggestions.select!{ |s| article_url?(s['full_url']) }
43
- suggestions.each{ |s| s['slug'] = slug_from_article_url(s['full_url']) }
40
+ response = Devcenter::Client.get(path: search_api_path, query: { query: slug })
41
+ suggestions = response.body['results']
42
+ suggestions.select! { |result| article_url?(result['full_url']) }
44
43
  unless suggestions.empty?
45
44
  message << "Perhaps you meant one of these:"
46
45
  longest = suggestions.map {|suggestion| suggestion['slug'].size }.max
@@ -16,10 +16,10 @@ module Devcenter::Commands
16
16
 
17
17
  def run
18
18
  response = Devcenter::Client.get(path: article_api_path(@slug))
19
- article_received = response.ok? && response.body['article'] && response.body['article']['id']
19
+ article_received = response.ok? && response.body['slug'] == @slug
20
20
  article_not_found!(@slug) unless article_received
21
21
 
22
- article = response.body['article']
22
+ article = response.body
23
23
  metadata = {'title' => article['title'], 'id' => article['id']}
24
24
  file_path = md_file_path(@slug)
25
25
 
@@ -19,7 +19,7 @@ module Devcenter::Helpers
19
19
  end
20
20
 
21
21
  def search_api_path
22
- "/articles.json"
22
+ "/api/v1/search.json"
23
23
  end
24
24
 
25
25
  def validate_article_path(id)
@@ -32,8 +32,7 @@ module Devcenter::Helpers
32
32
 
33
33
  def article_url?(url)
34
34
  escaped_base_url = devcenter_base_url.gsub('/','\\/')
35
- url.match(/\A#{escaped_base_url}\/articles\/.+/)
36
- true
35
+ url.match?(/\A#{escaped_base_url}\/articles\/.+/)
37
36
  end
38
37
 
39
38
  def slug_from_article_url(url)
@@ -1,14 +1,18 @@
1
+ require_relative 'web_app'
2
+
1
3
  module Devcenter::Previewer
2
4
 
3
5
  class FileListener
4
6
  require 'listen'
5
7
 
6
- def initialize(file_path, callback)
8
+ def initialize(file_path)
7
9
  dir = File.dirname(file_path)
8
10
  basename = File.basename(file_path)
9
- @listener = Listen.to(dir)
10
- @listener.filter(%r{#{basename}})
11
- @listener.change(&callback)
11
+ @listener = Listen.to(dir) do |modified, added, removed|
12
+ modified.each{ |f| Devcenter::Logger.log "File modified: #{f}" }
13
+ WebApp.send_server_event
14
+ end
15
+ @listener.only(%r{#{basename}})
12
16
  end
13
17
 
14
18
  def start
@@ -1,12 +1,9 @@
1
1
  require 'sinatra'
2
- require 'rack/highlighter'
3
2
 
4
3
  module Devcenter::Previewer
5
4
 
6
5
  class WebApp < Sinatra::Base
7
6
 
8
- use Rack::Highlighter, :coderay, { misc: { :css => :class, :element => "pre>code" } }
9
-
10
7
  include Devcenter::Logger
11
8
 
12
9
  set :logging, false
@@ -46,11 +46,7 @@ module Devcenter::Previewer
46
46
  end
47
47
 
48
48
  def init_listener
49
- file_listener_callback = Proc.new do |modified, added, removed|
50
- modified.each{ |f| Devcenter::Logger.log "File modified: #{f}" }
51
- WebApp.send_server_event
52
- end
53
- FileListener.new(md_path, file_listener_callback)
49
+ FileListener.new(md_path)
54
50
  end
55
51
 
56
52
  def start
@@ -1,3 +1,3 @@
1
1
  module Devcenter
2
- VERSION = "1.1.8"
2
+ VERSION = '1.2.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,233 +1,207 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: devcenter
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.8
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
- - Raul Murciano
8
- - Clint Shryock
9
- autorequire:
7
+ - Heroku
8
+ autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2015-12-22 00:00:00.000000000 Z
11
+ date: 2023-08-17 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: listen
14
+ name: coderay
16
15
  requirement: !ruby/object:Gem::Requirement
17
16
  requirements:
18
17
  - - "~>"
19
18
  - !ruby/object:Gem::Version
20
- version: '1.3'
19
+ version: 1.1.3
21
20
  type: :runtime
22
21
  prerelease: false
23
22
  version_requirements: !ruby/object:Gem::Requirement
24
23
  requirements:
25
24
  - - "~>"
26
25
  - !ruby/object:Gem::Version
27
- version: '1.3'
26
+ version: 1.1.3
28
27
  - !ruby/object:Gem::Dependency
29
28
  name: commander
30
29
  requirement: !ruby/object:Gem::Requirement
31
30
  requirements:
32
31
  - - "~>"
33
32
  - !ruby/object:Gem::Version
34
- version: '4.1'
33
+ version: '4.6'
35
34
  type: :runtime
36
35
  prerelease: false
37
36
  version_requirements: !ruby/object:Gem::Requirement
38
37
  requirements:
39
38
  - - "~>"
40
39
  - !ruby/object:Gem::Version
41
- version: '4.1'
40
+ version: '4.6'
42
41
  - !ruby/object:Gem::Dependency
43
- name: json
42
+ name: devcenter-parser
44
43
  requirement: !ruby/object:Gem::Requirement
45
44
  requirements:
46
45
  - - "~>"
47
46
  - !ruby/object:Gem::Version
48
- version: '1.8'
49
- - - ">="
50
- - !ruby/object:Gem::Version
51
- version: 1.8.2
47
+ version: '2.3'
52
48
  type: :runtime
53
49
  prerelease: false
54
50
  version_requirements: !ruby/object:Gem::Requirement
55
51
  requirements:
56
52
  - - "~>"
57
53
  - !ruby/object:Gem::Version
58
- version: '1.8'
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: 1.8.2
54
+ version: '2.3'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: excon
64
57
  requirement: !ruby/object:Gem::Requirement
65
58
  requirements:
66
59
  - - "~>"
67
60
  - !ruby/object:Gem::Version
68
- version: '0.45'
61
+ version: 0.100.0
69
62
  type: :runtime
70
63
  prerelease: false
71
64
  version_requirements: !ruby/object:Gem::Requirement
72
65
  requirements:
73
66
  - - "~>"
74
67
  - !ruby/object:Gem::Version
75
- version: '0.45'
68
+ version: 0.100.0
76
69
  - !ruby/object:Gem::Dependency
77
- name: launchy
78
- requirement: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '2.1'
83
- type: :runtime
84
- prerelease: false
85
- version_requirements: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '2.1'
90
- - !ruby/object:Gem::Dependency
91
- name: coderay
70
+ name: json
92
71
  requirement: !ruby/object:Gem::Requirement
93
72
  requirements:
94
73
  - - "~>"
95
74
  - !ruby/object:Gem::Version
96
- version: '1.0'
75
+ version: 2.3.1
97
76
  type: :runtime
98
77
  prerelease: false
99
78
  version_requirements: !ruby/object:Gem::Requirement
100
79
  requirements:
101
80
  - - "~>"
102
81
  - !ruby/object:Gem::Version
103
- version: '1.0'
82
+ version: 2.3.1
104
83
  - !ruby/object:Gem::Dependency
105
- name: thin
84
+ name: launchy
106
85
  requirement: !ruby/object:Gem::Requirement
107
86
  requirements:
108
87
  - - "~>"
109
88
  - !ruby/object:Gem::Version
110
- version: '1.5'
89
+ version: 2.4.3
111
90
  type: :runtime
112
91
  prerelease: false
113
92
  version_requirements: !ruby/object:Gem::Requirement
114
93
  requirements:
115
94
  - - "~>"
116
95
  - !ruby/object:Gem::Version
117
- version: '1.5'
96
+ version: 2.4.3
118
97
  - !ruby/object:Gem::Dependency
119
- name: rack
98
+ name: listen
120
99
  requirement: !ruby/object:Gem::Requirement
121
100
  requirements:
122
101
  - - "~>"
123
102
  - !ruby/object:Gem::Version
124
- version: '1.4'
103
+ version: 3.4.1
125
104
  type: :runtime
126
105
  prerelease: false
127
106
  version_requirements: !ruby/object:Gem::Requirement
128
107
  requirements:
129
108
  - - "~>"
130
109
  - !ruby/object:Gem::Version
131
- version: '1.4'
110
+ version: 3.4.1
132
111
  - !ruby/object:Gem::Dependency
133
- name: rack-protection
112
+ name: netrc
134
113
  requirement: !ruby/object:Gem::Requirement
135
114
  requirements:
136
115
  - - "~>"
137
116
  - !ruby/object:Gem::Version
138
- version: '1.3'
117
+ version: 0.11.0
139
118
  type: :runtime
140
119
  prerelease: false
141
120
  version_requirements: !ruby/object:Gem::Requirement
142
121
  requirements:
143
122
  - - "~>"
144
123
  - !ruby/object:Gem::Version
145
- version: '1.3'
124
+ version: 0.11.0
146
125
  - !ruby/object:Gem::Dependency
147
- name: sinatra
126
+ name: rack
148
127
  requirement: !ruby/object:Gem::Requirement
149
128
  requirements:
150
129
  - - "~>"
151
130
  - !ruby/object:Gem::Version
152
- version: '1.3'
131
+ version: 2.2.8
153
132
  type: :runtime
154
133
  prerelease: false
155
134
  version_requirements: !ruby/object:Gem::Requirement
156
135
  requirements:
157
136
  - - "~>"
158
137
  - !ruby/object:Gem::Version
159
- version: '1.3'
138
+ version: 2.2.8
160
139
  - !ruby/object:Gem::Dependency
161
- name: tilt
140
+ name: rack-protection
162
141
  requirement: !ruby/object:Gem::Requirement
163
142
  requirements:
164
143
  - - "~>"
165
144
  - !ruby/object:Gem::Version
166
- version: '1.3'
145
+ version: 2.2.4
167
146
  type: :runtime
168
147
  prerelease: false
169
148
  version_requirements: !ruby/object:Gem::Requirement
170
149
  requirements:
171
150
  - - "~>"
172
151
  - !ruby/object:Gem::Version
173
- version: '1.3'
152
+ version: 2.2.4
174
153
  - !ruby/object:Gem::Dependency
175
- name: rack-highlighter
154
+ name: sinatra
176
155
  requirement: !ruby/object:Gem::Requirement
177
156
  requirements:
178
157
  - - "~>"
179
158
  - !ruby/object:Gem::Version
180
- version: '0.2'
159
+ version: 2.2.4
181
160
  type: :runtime
182
161
  prerelease: false
183
162
  version_requirements: !ruby/object:Gem::Requirement
184
163
  requirements:
185
164
  - - "~>"
186
165
  - !ruby/object:Gem::Version
187
- version: '0.2'
166
+ version: 2.2.4
188
167
  - !ruby/object:Gem::Dependency
189
- name: devcenter-parser
168
+ name: thin
190
169
  requirement: !ruby/object:Gem::Requirement
191
170
  requirements:
192
171
  - - "~>"
193
172
  - !ruby/object:Gem::Version
194
- version: '2.0'
173
+ version: 1.8.2
195
174
  type: :runtime
196
175
  prerelease: false
197
176
  version_requirements: !ruby/object:Gem::Requirement
198
177
  requirements:
199
178
  - - "~>"
200
179
  - !ruby/object:Gem::Version
201
- version: '2.0'
180
+ version: 1.8.2
202
181
  - !ruby/object:Gem::Dependency
203
- name: netrc
182
+ name: tilt
204
183
  requirement: !ruby/object:Gem::Requirement
205
184
  requirements:
206
185
  - - "~>"
207
186
  - !ruby/object:Gem::Version
208
- version: '0.10'
209
- - - ">="
210
- - !ruby/object:Gem::Version
211
- version: 0.10.2
187
+ version: 2.0.11
212
188
  type: :runtime
213
189
  prerelease: false
214
190
  version_requirements: !ruby/object:Gem::Requirement
215
191
  requirements:
216
192
  - - "~>"
217
193
  - !ruby/object:Gem::Version
218
- version: '0.10'
219
- - - ">="
220
- - !ruby/object:Gem::Version
221
- version: 0.10.2
194
+ version: 2.0.11
222
195
  description: CLI to interact with Heroku's Dev Center
223
196
  email:
224
- - raul@heroku.com
197
+ - heroku-front-end@salesforce.com
225
198
  executables:
226
199
  - devcenter
227
200
  extensions: []
228
201
  extra_rdoc_files: []
229
202
  files:
230
203
  - ".gitignore"
204
+ - CODEOWNERS
231
205
  - CONTRIBUTING.md
232
206
  - Gemfile
233
207
  - LICENSE.txt
@@ -261,7 +235,7 @@ files:
261
235
  homepage: https://devcenter.heroku.com
262
236
  licenses: []
263
237
  metadata: {}
264
- post_install_message:
238
+ post_install_message:
265
239
  rdoc_options: []
266
240
  require_paths:
267
241
  - lib
@@ -269,16 +243,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
269
243
  requirements:
270
244
  - - ">="
271
245
  - !ruby/object:Gem::Version
272
- version: '0'
246
+ version: 3.0.0
273
247
  required_rubygems_version: !ruby/object:Gem::Requirement
274
248
  requirements:
275
249
  - - ">="
276
250
  - !ruby/object:Gem::Version
277
251
  version: '0'
278
252
  requirements: []
279
- rubyforge_project:
280
- rubygems_version: 2.2.2
281
- signing_key:
253
+ rubygems_version: 3.2.33
254
+ signing_key:
282
255
  specification_version: 4
283
256
  summary: CLI to interact with Heroku's Dev Center
284
257
  test_files: []