devcenter 1.1.9 → 1.3.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
2
  SHA256:
3
- metadata.gz: ba4159349794b2cd138e08eb6237e62a196f281dd7c5bf676e2e8de1d2979c29
4
- data.tar.gz: 32e80db978f09e1e0a01ef0e336875e147fb56ec932c8e0f8090764eed853191
3
+ metadata.gz: e14877c0a01c5a7452775884149d1ce58b50e274072bc9766beffa4ab2c8a506
4
+ data.tar.gz: 7f2d3ff839591dd7077b0d9d71af29d32d9490e8c5d0573bef03540ca77fcfa7
5
5
  SHA512:
6
- metadata.gz: 94298d431105a5b030bb89c374c4bd4f1e768ed3dd08e721848786daf2843f51961c95373b60c5e442f9a798c2d2b6c44e9430c0c31ca594e9bf3f428ee4fbe3
7
- data.tar.gz: f02901faaacefa1613afff5b9846ce35276eadd2a1036056c47ef6aa94b113273af689daf000b57c19301cd3abc3bb757b1733b8dc5a2185253c3f9332cfb70d
6
+ metadata.gz: efd596a2e45bcbee1162ad4d46b57f4f118511b2a61c839f2c20e587c07f53c5fcdb6c42980af1629aa569f6604edc24ac33eca9eb677133c40098617abfe039
7
+ data.tar.gz: d3eef4bffd642c45430da300e2dd791efe5684c5b02501fde995d5c2907444d3e76702bd9b1e75e1d8dacc026e5dbaf56fffaac9f317cf7618485215af9bf142
@@ -0,0 +1,11 @@
1
+ # To get started with Dependabot version updates, you'll need to specify which
2
+ # package ecosystems to update and where the package manifests are located.
3
+ # Please see the documentation for all configuration options:
4
+ # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5
+
6
+ version: 2
7
+ updates:
8
+ - package-ecosystem: "bundler"
9
+ directory: "/"
10
+ schedule:
11
+ interval: "weekly"
@@ -0,0 +1,25 @@
1
+ name: "Send data to Components Inventory"
2
+ on:
3
+ workflow_dispatch:
4
+ push:
5
+ branches:
6
+ - "main"
7
+ paths:
8
+ - ".heroku/components-inventory/*.json"
9
+ pull_request:
10
+ types:
11
+ - opened
12
+ - synchronize
13
+ paths:
14
+ - ".heroku/components-inventory/*.json"
15
+ jobs:
16
+ action:
17
+ runs-on: sfdc-hk-ubuntu-latest
18
+ steps:
19
+ - uses: actions/checkout@v3
20
+ - name: Send data to Components Inventory
21
+ uses: heroku/components-action@main
22
+ with:
23
+ COMPONENTS_GHA_APP_ID: ${{ secrets.COMPONENTS_GHA_APP_ID}}
24
+ COMPONENTS_GHA_APP_PRIVATE_KEY: ${{ secrets.COMPONENTS_GHA_APP_PRIVATE_KEY}}
25
+ COMPONENTS_GHA_JSON_TOKEN: ${{ secrets.COMPONENTS_GHA_JSON_TOKEN}}
data/CODEOWNERS ADDED
@@ -0,0 +1,4 @@
1
+ # Comment line immediately above ownership line is reserved for related gus information. Please be careful while editing.
2
+ * @heroku/marketing-web-ops
3
+ * @heroku/front-end
4
+ #ECCN:Open Source
data/CONTRIBUTING.md CHANGED
@@ -3,12 +3,12 @@
3
3
  We welcome contributions!
4
4
 
5
5
  ## Urgent Security Updates
6
- * Page us from the "Dev Center" HipChat room. While you wait for us, push your fix to a topic branch on GitHub.
6
+ * If internal to Salesforce/Heroku, please contact the #marketing-web-ops team on Slack.
7
7
 
8
8
  ## Any Other Contribution
9
9
 
10
- * Create a topic branch from where you want to base your work (this is usually the `master` branch).
10
+ * Create a topic branch from where you want to base your work (this is usually the `main` branch).
11
11
  * Make commits of logical units.
12
12
  * Check for unnecessary whitespace with `git --diff` before commiting.
13
- * Push your changes to a topic branch in the main repository.
13
+ * Push your changes to a topic branch in the GitHub repository.
14
14
  * Submit a pull request to the base branch.
data/SECURITY.md ADDED
@@ -0,0 +1,7 @@
1
+ ## Security
2
+
3
+ Please report any security issue to [security@salesforce.com](mailto:security@salesforce.com)
4
+ as soon as it is discovered. This library limits its runtime dependencies in
5
+ order to reduce the total cost of ownership as much as can be, but all consumers
6
+ should remain vigilant and have their security stakeholders review all third-party
7
+ products (3PP) like this one and their dependencies.
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.4')
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
@@ -12,7 +12,7 @@ module Devcenter::Commands
12
12
 
13
13
  def validate
14
14
  empty_slug = @slug.nil? || @slug.to_s.strip.empty?
15
- file_exists = !empty_slug && File.exists?(@md_path)
15
+ file_exists = !empty_slug && File.exist?(@md_path)
16
16
  if empty_slug
17
17
  @validation_errors << 'Please provide an article slug'
18
18
  elsif !file_exists
@@ -24,7 +24,7 @@ module Devcenter::Commands
24
24
  file_path = md_file_path(@slug)
25
25
 
26
26
  unless @force_overwrite
27
- cancel_save = File.exists?(file_path) && !agree("The file #{file_path} already exists - overwrite? (yes/no)")
27
+ cancel_save = File.exist?(file_path) && !agree("The file #{file_path} already exists - overwrite? (yes/no)")
28
28
  return if cancel_save
29
29
  end
30
30
 
@@ -10,7 +10,7 @@ module Devcenter::Commands
10
10
 
11
11
  def validate
12
12
  empty_slug = @slug.nil? || @slug.to_s.strip.empty?
13
- file_exists = !empty_slug && File.exists?(@md_path)
13
+ file_exists = !empty_slug && File.exist?(@md_path)
14
14
  if empty_slug
15
15
  @validation_errors << 'Please provide an article slug'
16
16
  elsif !file_exists
@@ -62,7 +62,7 @@ module Devcenter::Helpers
62
62
  def netrc_path
63
63
  default = Netrc.default_path
64
64
  encrypted = default + ".gpg"
65
- if File.exists?(encrypted)
65
+ if File.exist?(encrypted)
66
66
  encrypted
67
67
  else
68
68
  default
@@ -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
@@ -48,7 +45,7 @@ module Devcenter::Previewer
48
45
  get '/:slug' do
49
46
  log "Local article requested: #{params[:slug]}"
50
47
  src_path = File.join(Dir.pwd, "#{params[:slug]}.md")
51
- if File.exists?(src_path)
48
+ if File.exist?(src_path)
52
49
  log "Parsing"
53
50
  @article = Devcenter::ArticleFile.read(src_path)
54
51
  @page_title = @article.metadata.title
@@ -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.9"
3
- end
2
+ VERSION = '1.3.0'.freeze
3
+ end
metadata CHANGED
@@ -1,238 +1,215 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: devcenter
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.9
4
+ version: 1.3.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: 2018-07-04 00:00:00.000000000 Z
11
+ date: 2024-05-02 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.4'
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.4'
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:
203
+ - ".github/dependabot.yml"
204
+ - ".github/workflows/sync_component_metadata.yml"
230
205
  - ".gitignore"
206
+ - CODEOWNERS
231
207
  - CONTRIBUTING.md
232
208
  - Gemfile
233
209
  - LICENSE.txt
234
210
  - README.md
235
211
  - Rakefile
212
+ - SECURITY.md
236
213
  - bin/devcenter
237
214
  - devcenter.gemspec
238
215
  - lib/devcenter.rb
@@ -261,7 +238,7 @@ files:
261
238
  homepage: https://devcenter.heroku.com
262
239
  licenses: []
263
240
  metadata: {}
264
- post_install_message:
241
+ post_install_message:
265
242
  rdoc_options: []
266
243
  require_paths:
267
244
  - lib
@@ -269,16 +246,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
269
246
  requirements:
270
247
  - - ">="
271
248
  - !ruby/object:Gem::Version
272
- version: '0'
249
+ version: 3.0.0
273
250
  required_rubygems_version: !ruby/object:Gem::Requirement
274
251
  requirements:
275
252
  - - ">="
276
253
  - !ruby/object:Gem::Version
277
254
  version: '0'
278
255
  requirements: []
279
- rubyforge_project:
280
- rubygems_version: 2.7.6
281
- signing_key:
256
+ rubygems_version: 3.5.6
257
+ signing_key:
282
258
  specification_version: 4
283
259
  summary: CLI to interact with Heroku's Dev Center
284
260
  test_files: []