devcenter 1.1.9 → 1.3.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
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: []