startling 0.0.9 → 0.0.10

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
  SHA1:
3
- metadata.gz: a8af8796ba134784e1a43a9cc6afe4206089989b
4
- data.tar.gz: cd4fd0ad6d0a46f235acad5d66c1721cafb3cac0
3
+ metadata.gz: 6f04b6e9ac2708a21d861de715b8c0533465265d
4
+ data.tar.gz: cf63e7176023764951ac7082ed88acb9222ad773
5
5
  SHA512:
6
- metadata.gz: f9d77f0b239694944fca9d5cfbeb415d370c81952c23a262adecfbb7fac3839378c2ccdb10f695db4297dccf083f32ddd83fdbf35013067b7a26d8a327317b87
7
- data.tar.gz: a13542fc2890aa0f63a873b1c6d69a72e0eb7e469105012f7e4c68cb4ad0cc3a98963587f66ddbfebbc3511b84a65c9b139fb00ff7630da204f134fa6f8306f9
6
+ metadata.gz: 1fbb64b4d9071f7e17b86815e61d71ed216868630baad8749c6121235846fb62364340001982673980a9e25ec13a90e0daefc97d8350c53f969eb4d26b95c400
7
+ data.tar.gz: 9c7f0484384773d10a17ffd99913f0415e9efee1bebc5deadf8c6b6b906548b86517d4cf3f380023102ec8453a7f701ac6be24e84e2f87a774f6c75fe8e4b9f2
@@ -0,0 +1,49 @@
1
+ # Contributor Code of Conduct
2
+
3
+ As contributors and maintainers of this project, and in the interest of
4
+ fostering an open and welcoming community, we pledge to respect all people who
5
+ contribute through reporting issues, posting feature requests, updating
6
+ documentation, submitting pull requests or patches, and other activities.
7
+
8
+ We are committed to making participation in this project a harassment-free
9
+ experience for everyone, regardless of level of experience, gender, gender
10
+ identity and expression, sexual orientation, disability, personal appearance,
11
+ body size, race, ethnicity, age, religion, or nationality.
12
+
13
+ Examples of unacceptable behavior by participants include:
14
+
15
+ * The use of sexualized language or imagery
16
+ * Personal attacks
17
+ * Trolling or insulting/derogatory comments
18
+ * Public or private harassment
19
+ * Publishing other's private information, such as physical or electronic
20
+ addresses, without explicit permission
21
+ * Other unethical or unprofessional conduct
22
+
23
+ Project maintainers have the right and responsibility to remove, edit, or
24
+ reject comments, commits, code, wiki edits, issues, and other contributions
25
+ that are not aligned to this Code of Conduct, or to ban temporarily or
26
+ permanently any contributor for other behaviors that they deem inappropriate,
27
+ threatening, offensive, or harmful.
28
+
29
+ By adopting this Code of Conduct, project maintainers commit themselves to
30
+ fairly and consistently applying these principles to every aspect of managing
31
+ this project. Project maintainers who do not follow or enforce the Code of
32
+ Conduct may be permanently removed from the project team.
33
+
34
+ This code of conduct applies both within project spaces and in public spaces
35
+ when an individual is representing the project or its community.
36
+
37
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
38
+ reported by contacting a project maintainer at startling@substantial.com. All
39
+ complaints will be reviewed and investigated and will result in a response that
40
+ is deemed necessary and appropriate to the circumstances. Maintainers are
41
+ obligated to maintain confidentiality with regard to the reporter of an
42
+ incident.
43
+
44
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage],
45
+ version 1.3.0, available at
46
+ [http://contributor-covenant.org/version/1/3/0/][version]
47
+
48
+ [homepage]: http://contributor-covenant.org
49
+ [version]: http://contributor-covenant.org/version/1/3/0/
data/README.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # Startling
2
2
 
3
+ Utility script for starting a story from a Github repository.
4
+
5
+ 1. Checks WIP limit. (optional)
6
+ 1. Starts the story in your project management tool (optional).
7
+ [Pivotal Tracker](https://rubygems.org/gems/startling_pivotal) and
8
+ [Trello](https://rubygems.org/gems/startling_trello) are
9
+ supported.
10
+ 1. Creates a branch if the specified branch does not already exist.
11
+ 1. Opens a pull request on Github.
12
+
3
13
  ## Installation
4
14
 
5
15
  Add this line to your application's Gemfile:
@@ -15,29 +25,21 @@ Or install it yourself as:
15
25
  $ gem install startling
16
26
 
17
27
  Generate configuration file in rails.
18
- Use -H to generate a handler folder and -C to generate a commands folder
28
+ Use -H to generate a handlers directory and -C to generate a commands directory
19
29
 
20
30
  $ rails g startling:configuration
21
31
 
22
32
  ## Configuration
23
33
 
24
- Startlingfile.rb or startlingfile.rb should be defined in the root of the project. It can contain a block for configuration:
34
+ Startlingfile.rb or startlingfile.rb should be defined in the root of the
35
+ project. It can contain a block for configuration:
25
36
 
26
37
  ```ruby
27
38
  Startling.configure do |config|
28
- # WIP Limit
29
- # config.wip_limit = 4
30
-
31
- # Labels for WIP pull requests
32
- # config.wip_labels = ["WIP", "REVIEW"]
33
-
34
- # Repos to check against for WIP limit
35
- # config.repos << "substantial/startling"
36
-
37
39
  # Commands to be run before a story is stared
38
40
  # config.hook_commands.before_story_start = [:check_wip]
39
41
 
40
- # Command to be run after a story has started
42
+ # Commands to be run after a story has started
41
43
  # config.hook_commands.after_story_start = []
42
44
 
43
45
  # Commands to be run before a pull request is created
@@ -49,42 +51,161 @@ Startling.configure do |config|
49
51
  # Handler used to start a provider specific story related to the pull request
50
52
  # config.story_handler = :pivotal_start
51
53
 
52
- # Validate branch name with a Proc that returns a boolean
53
- # config.validate_branch_name = -> (branch_name) { /feature\/.*/ =~ branch_name }
54
+ # Handler used for setting the title and body of a pull request
55
+ # config.pull_request_handler = :default_pull_request_handler
56
+ end
57
+ ```
54
58
 
55
- # Message for pull request commit
56
- # config.pull_request_commit_message = "Startling"
59
+ ### 1. WIP limit
57
60
 
58
- # Message for pull request body
59
- # config.pull_request_body = "Startling Body"
61
+ WIP is calculated by the number of pull requests open in the repository.
60
62
 
61
- # Labels for a pull request
62
- # config.pull_request_labels = [WIP, REVIEW, HOLD]
63
+ Set WIP limit:
63
64
 
64
- # Handler used for setting the title and body of a pull request
65
- #config.pull_request_handler = :custom_pull_request_handler
66
- end
65
+ ```ruby
66
+ config.wip_limit = 4
67
+ ```
68
+
69
+ ### 2. WIP labels
70
+
71
+ You can limit the pull requests included in WIP by configuring the pull request
72
+ labels for WIP.
73
+
74
+ ```ruby
75
+ config.wip_labels = ["WIP", "REVIEW"]
76
+ ```
77
+
78
+ ### 3. WIP repositories
79
+
80
+ WIP limit can be checked across multiple Github repositories. Use the same
81
+ branch name across repositories to count multiple pull requests as only one WIP.
82
+
83
+ ```ruby
84
+ config.repos << "substantial/startling"
85
+ ```
86
+
87
+ ### 4. Check the WIP limit before starting a story:
88
+
89
+ ```ruby
90
+ config.hook_commands.before_story_start = [:check_wip]
91
+ ```
92
+
93
+ ### 5. Branch name
94
+
95
+ You can check the branch name being used with a custom Proc. For example, this
96
+ Proc only allows branches that are prefixed with `feature/`:
97
+
98
+ ```ruby
99
+ config.validate_branch_name = -> (branch_name) { /feature\/.*/ =~ branch_name }
100
+ ```
101
+
102
+ ### 6. Pull request commit message
103
+
104
+ If the branch is newly created, Startling must create an empty commit in order
105
+ to open a pull request. The commit message for the empty commit can be set:
106
+
107
+ ```ruby
108
+ config.pull_request_commit_message = "Startling"
109
+ ```
110
+
111
+ ### 7. Pull request description
112
+
113
+ You will be prompted to set a title for the pull request, but the pull request
114
+ description is set to a default value that can be configured:
115
+
116
+ ```ruby
117
+ config.pull_request_body = "Startling Body"
118
+ ```
119
+
120
+ ### 8. Pull request labels
121
+
122
+ You can set one or more labels on the pull request:
123
+
124
+ ```ruby
125
+ config.pull_request_labels = [WIP, REVIEW, HOLD]
126
+
127
+ config.hook_commands.after_pull_request = [:label_pull_request]
67
128
  ```
68
129
 
69
130
  ## Usage
70
131
 
71
132
  Start a new story with a given story id
72
133
 
73
- $ start 12345
134
+ $ start '#12345'
74
135
 
75
136
  Start a new story with a given story id and branch name
76
137
 
77
- $ start 12345 foo
138
+ $ start '#12345' foo
139
+
140
+ Check WIP
141
+
142
+ $ wip
143
+
144
+ ## Commands
145
+
146
+ Commands are custom Ruby scripts that can be run at various stages of Startling.
147
+
148
+ 1. Before the story is started
149
+ 1. After the story is started
150
+ 1. Before the pull request is opened
151
+ 1. After the pull request is opened
152
+
153
+ ### Creating a custom command
154
+
155
+ Custom commands should be put in the startling/commands directory. Create a
156
+ Ruby class that inherits from the Startling::Commands::Base class and
157
+ implements an execute method. Add your command class to the corresponding
158
+ config value for the stage in which your command should be executed.
159
+
160
+ ```ruby
161
+ config.hook_commands.before_story_start = [:check_wip]
162
+ ```
163
+
164
+ ## Handlers
165
+
166
+ Handlers allow for customization of Startling behavior.
167
+
168
+ Existing handlers:
169
+
170
+ 1. PullRequestHandler
171
+
172
+ Handles setting the title and description of the pull request and setting the
173
+ commit message for the empty commit.
174
+
175
+ ### Creating a custom handler
176
+
177
+ Custom handlers should be put in the startling/handlers directory.
178
+
179
+ 1. PullRequestHandler
180
+
181
+ Create a Ruby class that inherits from the PullRequestHandler::Base class. Set
182
+ `pull_request_handler` config value to your handler class.
183
+
184
+ ```ruby
185
+ config.pull_request_handler = :default_pull_request_handler
186
+ ```
187
+
188
+ ## Development
189
+
190
+ After checking out the repo, run `cd startling/startling && bin/setup` to
191
+ install dependencies. Create `.env` from the Secure Note `startling .env` in
192
+ LastPass. Then, run `rake spec` to run the tests. You can also run
193
+ `bin/console` for an interactive prompt that will allow you to experiment.
78
194
 
79
- TODO: Write usage instructions here
195
+ To install this gem onto your local machine, run `bundle exec rake install`.
196
+ To release a new version, update the version number in `version.rb`, and then
197
+ run `bundle exec rake release`, which will create a git tag for the version,
198
+ push git commits and tags, and push the `.gem` file to
199
+ [rubygems.org](https://rubygems.org).
80
200
 
81
201
  ## Contributing
82
202
 
83
- 1. Create `.env` from the Secure Note `startling .env` in
84
- LastPass.
85
- 1. `gem install bundler`
86
- 1. `bundle install`
203
+ Bug reports and pull requests are welcome on GitHub at
204
+ https://github.com/substantial/startling. This project is intended to be a safe,
205
+ welcoming space for collaboration, and contributors are expected to adhere to
206
+ the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
87
207
 
88
- ### Running tests
208
+ ## License
89
209
 
90
- `rake`
210
+ The gem is available as open source under the terms of the
211
+ [MIT License](http://opensource.org/licenses/MIT).
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "bundler/setup"
4
+ require "startling"
5
+
6
+ require "pry"
7
+ Pry.start
8
+
9
+ require "irb"
10
+ IRB.start
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+ set -vx
5
+
6
+ bundle install
File without changes
File without changes
@@ -1,5 +1,6 @@
1
1
  require 'rails/generators'
2
2
  require 'rails/generators/base'
3
+ require 'startling'
3
4
 
4
5
  module Startling
5
6
  module Generators
@@ -19,7 +20,7 @@ module Startling
19
20
 
20
21
  def create_startling_folders
21
22
  pull_request_handler_file = "#{destination_root.split('/').last.underscore}_pull_request_handler"
22
- create_file "startlingfile.rb" do
23
+ create_file Startling::Configuration::DEFAULT_STARTLINGFILES[0] do
23
24
  <<CONFIG
24
25
  Startling.configure do |config|
25
26
  # WIP Limit
@@ -34,7 +35,7 @@ Startling.configure do |config|
34
35
  # Commands to be run before a story is stared
35
36
  # config.hook_commands.before_story_start = [:check_wip]
36
37
 
37
- # Command to be run after a story has started
38
+ # Commands to be run after a story has started
38
39
  # config.hook_commands.after_story_start = []
39
40
 
40
41
  # Commands to be run before a pull request is created
@@ -59,7 +60,7 @@ Startling.configure do |config|
59
60
  # config.pull_request_labels = [WIP, REVIEW, HOLD]
60
61
 
61
62
  # Handler used for setting the title and body of a pull request
62
- #config.pull_request_handler = :#{pull_request_handler_file}
63
+ # config.pull_request_handler = :#{pull_request_handler_file}
63
64
  end
64
65
  CONFIG
65
66
  end
@@ -22,6 +22,14 @@ module Startling
22
22
  :validate_branch_name, :pull_request_body, :pull_request_handler,
23
23
  :pull_request_labels, :pull_request_commit_message, :cli_options
24
24
 
25
+ # Pivotal
26
+ DEFAULT_VALID_ESTIMATES = [1, 2, 3]
27
+
28
+ attr_accessor :valid_estimates
29
+
30
+ # Trello
31
+ attr_accessor :developer_public_key, :doing_list_id
32
+
25
33
  def initialize
26
34
  @cache_dir = Dir.pwd
27
35
  @root_dir = Dir.pwd
@@ -35,6 +43,13 @@ module Startling
35
43
  @pull_request_commit_message = DEFAULT_COMMIT_MESSAGE
36
44
  @pull_request_labels = []
37
45
  @cli_options = []
46
+
47
+ # Pivotal
48
+ @valid_estimates = DEFAULT_VALID_ESTIMATES
49
+
50
+ # Trello
51
+ @developer_public_key = nil
52
+ @doing_list_id = nil
38
53
  end
39
54
 
40
55
  def self.load_configuration
@@ -1,3 +1,3 @@
1
1
  module Startling
2
- VERSION = "0.0.9"
2
+ VERSION = "0.0.10"
3
3
  end
@@ -6,26 +6,25 @@ require 'startling/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "startling"
8
8
  spec.version = Startling::VERSION
9
- spec.authors = ["Aaron Jensen", "Shaun Dern", "Jeff Forde"]
10
- spec.email = ["tchdevs@substantial.com"]
11
- spec.description = %q{script for startling a story}
9
+ spec.authors = ["Aaron Jensen", "Shaun Dern", "Jeff Forde", "Cassie Koomjian"]
10
+ spec.email = ["startling@substantial.com"]
12
11
  spec.summary = %q{script for startling a story}
13
12
  spec.homepage = ""
14
13
  spec.license = "MIT"
15
14
 
16
- spec.files = `git ls-files`.split($/)
17
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
15
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
16
+ spec.bindir = "exe"
17
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
19
18
  spec.require_paths = ["lib"]
20
19
 
21
- spec.add_development_dependency "bundler"
22
- spec.add_development_dependency "rake"
20
+ spec.add_development_dependency "bundler", "~> 1.11"
21
+ spec.add_development_dependency "rake", "~> 10.0"
23
22
  spec.add_development_dependency "rspec", "~> 3.2"
24
- spec.add_development_dependency "pry"
23
+ spec.add_development_dependency "pry", "~> 0.10"
25
24
  spec.add_development_dependency "vcr", "~> 2.9"
26
25
  spec.add_development_dependency "webmock", "~> 1.20"
27
- spec.add_development_dependency "excon"
28
- spec.add_development_dependency "dotenv"
26
+ spec.add_development_dependency "excon", "~> 0.45"
27
+ spec.add_development_dependency "dotenv", "~> 2.1"
29
28
 
30
29
  spec.add_dependency "octokit", "~> 4.2"
31
30
  spec.add_dependency "highline", "~> 1.6"
metadata CHANGED
@@ -1,45 +1,46 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: startling
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aaron Jensen
8
8
  - Shaun Dern
9
9
  - Jeff Forde
10
+ - Cassie Koomjian
10
11
  autorequire:
11
- bindir: bin
12
+ bindir: exe
12
13
  cert_chain: []
13
- date: 2016-02-23 00:00:00.000000000 Z
14
+ date: 2016-02-26 00:00:00.000000000 Z
14
15
  dependencies:
15
16
  - !ruby/object:Gem::Dependency
16
17
  name: bundler
17
18
  requirement: !ruby/object:Gem::Requirement
18
19
  requirements:
19
- - - ">="
20
+ - - "~>"
20
21
  - !ruby/object:Gem::Version
21
- version: '0'
22
+ version: '1.11'
22
23
  type: :development
23
24
  prerelease: false
24
25
  version_requirements: !ruby/object:Gem::Requirement
25
26
  requirements:
26
- - - ">="
27
+ - - "~>"
27
28
  - !ruby/object:Gem::Version
28
- version: '0'
29
+ version: '1.11'
29
30
  - !ruby/object:Gem::Dependency
30
31
  name: rake
31
32
  requirement: !ruby/object:Gem::Requirement
32
33
  requirements:
33
- - - ">="
34
+ - - "~>"
34
35
  - !ruby/object:Gem::Version
35
- version: '0'
36
+ version: '10.0'
36
37
  type: :development
37
38
  prerelease: false
38
39
  version_requirements: !ruby/object:Gem::Requirement
39
40
  requirements:
40
- - - ">="
41
+ - - "~>"
41
42
  - !ruby/object:Gem::Version
42
- version: '0'
43
+ version: '10.0'
43
44
  - !ruby/object:Gem::Dependency
44
45
  name: rspec
45
46
  requirement: !ruby/object:Gem::Requirement
@@ -58,16 +59,16 @@ dependencies:
58
59
  name: pry
59
60
  requirement: !ruby/object:Gem::Requirement
60
61
  requirements:
61
- - - ">="
62
+ - - "~>"
62
63
  - !ruby/object:Gem::Version
63
- version: '0'
64
+ version: '0.10'
64
65
  type: :development
65
66
  prerelease: false
66
67
  version_requirements: !ruby/object:Gem::Requirement
67
68
  requirements:
68
- - - ">="
69
+ - - "~>"
69
70
  - !ruby/object:Gem::Version
70
- version: '0'
71
+ version: '0.10'
71
72
  - !ruby/object:Gem::Dependency
72
73
  name: vcr
73
74
  requirement: !ruby/object:Gem::Requirement
@@ -100,30 +101,30 @@ dependencies:
100
101
  name: excon
101
102
  requirement: !ruby/object:Gem::Requirement
102
103
  requirements:
103
- - - ">="
104
+ - - "~>"
104
105
  - !ruby/object:Gem::Version
105
- version: '0'
106
+ version: '0.45'
106
107
  type: :development
107
108
  prerelease: false
108
109
  version_requirements: !ruby/object:Gem::Requirement
109
110
  requirements:
110
- - - ">="
111
+ - - "~>"
111
112
  - !ruby/object:Gem::Version
112
- version: '0'
113
+ version: '0.45'
113
114
  - !ruby/object:Gem::Dependency
114
115
  name: dotenv
115
116
  requirement: !ruby/object:Gem::Requirement
116
117
  requirements:
117
- - - ">="
118
+ - - "~>"
118
119
  - !ruby/object:Gem::Version
119
- version: '0'
120
+ version: '2.1'
120
121
  type: :development
121
122
  prerelease: false
122
123
  version_requirements: !ruby/object:Gem::Requirement
123
124
  requirements:
124
- - - ">="
125
+ - - "~>"
125
126
  - !ruby/object:Gem::Version
126
- version: '0'
127
+ version: '2.1'
127
128
  - !ruby/object:Gem::Dependency
128
129
  name: octokit
129
130
  requirement: !ruby/object:Gem::Requirement
@@ -208,9 +209,9 @@ dependencies:
208
209
  - - "~>"
209
210
  - !ruby/object:Gem::Version
210
211
  version: 0.7.3
211
- description: script for startling a story
212
+ description:
212
213
  email:
213
- - tchdevs@substantial.com
214
+ - startling@substantial.com
214
215
  executables:
215
216
  - start
216
217
  - wip
@@ -218,12 +219,15 @@ extensions: []
218
219
  extra_rdoc_files: []
219
220
  files:
220
221
  - ".ruby-gemset"
222
+ - CODE_OF_CONDUCT.md
221
223
  - Gemfile
222
224
  - LICENSE.txt
223
225
  - README.md
224
226
  - Rakefile
225
- - bin/start
226
- - bin/wip
227
+ - bin/console
228
+ - bin/setup
229
+ - exe/start
230
+ - exe/wip
227
231
  - lib/generators/startling/configuration_generator.rb
228
232
  - lib/startling.rb
229
233
  - lib/startling/cache.rb
@@ -251,23 +255,6 @@ files:
251
255
  - lib/startling/version.rb
252
256
  - lib/startling/work.rb
253
257
  - lib/startling/work_printer.rb
254
- - spec/spec_helper.rb
255
- - spec/startling/command_spec.rb
256
- - spec/startling/commands/base_spec.rb
257
- - spec/startling/commands/create_branch_spec.rb
258
- - spec/startling/commands/create_pull_request_spec.rb
259
- - spec/startling/configuration_spec.rb
260
- - spec/startling/git_local_spec.rb
261
- - spec/startling/github/pull_request_spec.rb
262
- - spec/startling/handlers/default_pull_request_handler_spec.rb
263
- - spec/startling/time_format_helpers_spec.rb
264
- - spec/startling_configuration_spec.rb
265
- - spec/startling_spec.rb
266
- - spec/support/dotenv.rb
267
- - spec/support/tokens.rb
268
- - spec/support/vcr.rb
269
- - spec/vcr_cassettes/bin_start_starts_stories.yml
270
- - spec/vcr_cassettes/bin_start_starts_stories_pr_body.yml
271
258
  - startling.gemspec
272
259
  homepage: ''
273
260
  licenses:
@@ -293,21 +280,4 @@ rubygems_version: 2.5.1
293
280
  signing_key:
294
281
  specification_version: 4
295
282
  summary: script for startling a story
296
- test_files:
297
- - spec/spec_helper.rb
298
- - spec/startling/command_spec.rb
299
- - spec/startling/commands/base_spec.rb
300
- - spec/startling/commands/create_branch_spec.rb
301
- - spec/startling/commands/create_pull_request_spec.rb
302
- - spec/startling/configuration_spec.rb
303
- - spec/startling/git_local_spec.rb
304
- - spec/startling/github/pull_request_spec.rb
305
- - spec/startling/handlers/default_pull_request_handler_spec.rb
306
- - spec/startling/time_format_helpers_spec.rb
307
- - spec/startling_configuration_spec.rb
308
- - spec/startling_spec.rb
309
- - spec/support/dotenv.rb
310
- - spec/support/tokens.rb
311
- - spec/support/vcr.rb
312
- - spec/vcr_cassettes/bin_start_starts_stories.yml
313
- - spec/vcr_cassettes/bin_start_starts_stories_pr_body.yml
283
+ test_files: []