danger-dangermattic 1.0.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 +7 -0
- data/.buildkite/gem-push.sh +15 -0
- data/.buildkite/pipeline.yml +69 -0
- data/.bundle/config +2 -0
- data/.github/workflows/reusable-check-labels-on-issues.yml +91 -0
- data/.github/workflows/reusable-run-danger.yml +54 -0
- data/.gitignore +30 -0
- data/.rubocop.yml +67 -0
- data/.ruby-version +1 -0
- data/.yardopts +7 -0
- data/CHANGELOG.md +7 -0
- data/Gemfile +5 -0
- data/Gemfile.lock +191 -0
- data/Guardfile +21 -0
- data/LICENSE +373 -0
- data/README.md +68 -0
- data/Rakefile +24 -0
- data/danger-dangermattic.gemspec +58 -0
- data/lib/danger_dangermattic.rb +3 -0
- data/lib/danger_plugin.rb +4 -0
- data/lib/dangermattic/gem_version.rb +5 -0
- data/lib/dangermattic/plugins/android_release_checker.rb +50 -0
- data/lib/dangermattic/plugins/android_strings_checker.rb +31 -0
- data/lib/dangermattic/plugins/android_unit_test_checker.rb +187 -0
- data/lib/dangermattic/plugins/common/common_release_checker.rb +113 -0
- data/lib/dangermattic/plugins/common/git_utils.rb +166 -0
- data/lib/dangermattic/plugins/common/github_utils.rb +68 -0
- data/lib/dangermattic/plugins/common/reporter.rb +38 -0
- data/lib/dangermattic/plugins/ios_release_checker.rb +106 -0
- data/lib/dangermattic/plugins/labels_checker.rb +74 -0
- data/lib/dangermattic/plugins/manifest_pr_checker.rb +106 -0
- data/lib/dangermattic/plugins/milestone_checker.rb +98 -0
- data/lib/dangermattic/plugins/podfile_checker.rb +122 -0
- data/lib/dangermattic/plugins/pr_size_checker.rb +125 -0
- data/lib/dangermattic/plugins/tracks_checker.rb +72 -0
- data/lib/dangermattic/plugins/view_changes_checker.rb +46 -0
- data/spec/android_release_checker_spec.rb +93 -0
- data/spec/android_strings_checker_spec.rb +185 -0
- data/spec/android_unit_test_checker_spec.rb +343 -0
- data/spec/common_release_checker_spec.rb +70 -0
- data/spec/fixtures/android_unit_test_checker/Abc.java +7 -0
- data/spec/fixtures/android_unit_test_checker/AbcFeatureConfig.java +7 -0
- data/spec/fixtures/android_unit_test_checker/Abcdef.kt +5 -0
- data/spec/fixtures/android_unit_test_checker/AbcdefgViewHelper.java +7 -0
- data/spec/fixtures/android_unit_test_checker/AnotherViewHelper.kt +7 -0
- data/spec/fixtures/android_unit_test_checker/MyNewClass.java +7 -0
- data/spec/fixtures/android_unit_test_checker/Polygon.kt +3 -0
- data/spec/fixtures/android_unit_test_checker/Shape.kt +10 -0
- data/spec/fixtures/android_unit_test_checker/TestsINeedThem.java +5 -0
- data/spec/fixtures/android_unit_test_checker/TestsINeedThem.kt +7 -0
- data/spec/fixtures/android_unit_test_checker/TestsINeedThem2.kt +12 -0
- data/spec/fixtures/android_unit_test_checker/src/android/java/org/activities/MyActivity.kt +7 -0
- data/spec/fixtures/android_unit_test_checker/src/android/java/org/activities/MyJavaActivity.java +7 -0
- data/spec/fixtures/android_unit_test_checker/src/android/java/org/fragments/MyFragment.kt +6 -0
- data/spec/fixtures/android_unit_test_checker/src/android/java/org/fragments/MyNewJavaFragment.java +7 -0
- data/spec/fixtures/android_unit_test_checker/src/android/java/org/module/MyModule.java +13 -0
- data/spec/fixtures/android_unit_test_checker/src/android/java/org/view/ActionCardViewHolder.kt +22 -0
- data/spec/fixtures/android_unit_test_checker/src/android/java/org/view/MyRecyclerView.java +7 -0
- data/spec/fixtures/android_unit_test_checker/src/androidTest/java/org/test/AbcTests.java +5 -0
- data/spec/fixtures/android_unit_test_checker/src/androidTest/java/org/test/AnotherTestClass.java +7 -0
- data/spec/fixtures/android_unit_test_checker/src/androidTest/java/org/test/PolygonTest.kt +4 -0
- data/spec/fixtures/android_unit_test_checker/src/androidTest/java/org/test/TestMyNewClass.java +9 -0
- data/spec/fixtures/android_unit_test_checker/src/androidTest/java/org/test/ToolTest.kt +5 -0
- data/spec/fixtures/android_unit_test_checker/src/main/java/org/wordpress/android/widgets/NestedWebView.kt +32 -0
- data/spec/fixtures/android_unit_test_checker/src/main/java/org/wordpress/util/config/BloggingPromptsFeatureConfig.kt +23 -0
- data/spec/fixtures/android_unit_test_checker/src/test/java/org/test/TestsINeedThem.java +9 -0
- data/spec/github_utils_spec.rb +110 -0
- data/spec/ios_release_checker_spec.rb +191 -0
- data/spec/labels_checker_spec.rb +169 -0
- data/spec/manifest_pr_checker_spec.rb +140 -0
- data/spec/milestone_checker_spec.rb +222 -0
- data/spec/podfile_checker_spec.rb +595 -0
- data/spec/pr_size_checker_spec.rb +250 -0
- data/spec/spec_helper.rb +115 -0
- data/spec/tracks_checker_spec.rb +156 -0
- data/spec/view_changes_checker_spec.rb +168 -0
- metadata +341 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: e85f01a1d938e27470bb45e542e181b976500f6ecd7753f02536e778af12b370
|
4
|
+
data.tar.gz: 79ec4d88e1bb27c40a72be9b19a70a2a3200aa2eb7a68a7433849550d31f11bf
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: a681ba5b47937b6fe5ab6abd568954f8b5e26570e75385a9a3fa719ea6420c7bcd4dd216c90a9a431755270beec609183f161bd6a7ccf4f502af6d31793c1120
|
7
|
+
data.tar.gz: a3542e84de8347a75760d8501aeac783305e5ff3c665d1209a706100c889aeb0afa959f4b80e66d166fd9c4f881c373f24155333a0a6bf27817b84ecb6b1ceac
|
@@ -0,0 +1,15 @@
|
|
1
|
+
#!/bin/bash -eu
|
2
|
+
|
3
|
+
GEM_NAME="danger-dangermattic"
|
4
|
+
|
5
|
+
echo "--- :hammer: Build Gemspec"
|
6
|
+
gem build "$GEM_NAME.gemspec" -o "$GEM_NAME.gem"
|
7
|
+
|
8
|
+
echo "--- :sleuth_or_spy: Validate Gem Install"
|
9
|
+
gem install --user-install "$GEM_NAME.gem"
|
10
|
+
|
11
|
+
echo "--- :rubygems: Gem Push"
|
12
|
+
echo ":rubygems_api_key: ${RUBYGEMS_API_KEY}" >>".gem-credentials"
|
13
|
+
chmod 600 ".gem-credentials"
|
14
|
+
gem push --config-file ".gem-credentials" "$GEM_NAME.gem"
|
15
|
+
|
@@ -0,0 +1,69 @@
|
|
1
|
+
agents:
|
2
|
+
queue: "default"
|
3
|
+
|
4
|
+
# Nodes with values to reuse in the pipeline.
|
5
|
+
common_params:
|
6
|
+
- &docker_plugin "docker#v5.7.0"
|
7
|
+
- &docker_ruby_image "public.ecr.aws/docker/library/ruby:3.2.2"
|
8
|
+
- &common_plugins
|
9
|
+
- *docker_plugin :
|
10
|
+
image: *docker_ruby_image
|
11
|
+
|
12
|
+
steps:
|
13
|
+
#################
|
14
|
+
# Build and Test
|
15
|
+
#################
|
16
|
+
- group: "🧪 Build and Test"
|
17
|
+
key: test
|
18
|
+
steps:
|
19
|
+
- label: "🧪 Build and Test"
|
20
|
+
command: |
|
21
|
+
echo "--- :rubygems: Setting up Gems"
|
22
|
+
bundle install
|
23
|
+
|
24
|
+
echo "--- :rspec: Run Rspec"
|
25
|
+
bundle exec rspec --profile 10 --format progress
|
26
|
+
plugins: *common_plugins
|
27
|
+
|
28
|
+
#################
|
29
|
+
# Lint
|
30
|
+
#################
|
31
|
+
- label: "🧹 Lint (Rubocop)"
|
32
|
+
key: rubocop
|
33
|
+
command: |
|
34
|
+
echo "--- :rubygems: Setting up Gems"
|
35
|
+
bundle install
|
36
|
+
|
37
|
+
echo "--- :rubocop: Run Rubocop"
|
38
|
+
bundle exec rubocop
|
39
|
+
plugins: *common_plugins
|
40
|
+
|
41
|
+
#################
|
42
|
+
# Danger Lint
|
43
|
+
#################
|
44
|
+
- label: "☢️ Lint (Danger)"
|
45
|
+
key: dangerlint
|
46
|
+
command: |
|
47
|
+
echo "--- :rubygems: Setting up Gems"
|
48
|
+
bundle install
|
49
|
+
|
50
|
+
echo "--- ☢️ Run Danger Lint"
|
51
|
+
bundle exec danger plugins lint
|
52
|
+
plugins: *common_plugins
|
53
|
+
|
54
|
+
#################
|
55
|
+
# Push to RubyGems
|
56
|
+
#################
|
57
|
+
- label: ":rubygems: Publish to RubyGems"
|
58
|
+
key: "gem-push"
|
59
|
+
if: build.tag != null
|
60
|
+
depends_on:
|
61
|
+
- test
|
62
|
+
- rubocop
|
63
|
+
command: .buildkite/gem-push.sh
|
64
|
+
plugins:
|
65
|
+
- *docker_plugin :
|
66
|
+
image: *docker_ruby_image
|
67
|
+
propagate-environment: true
|
68
|
+
environment:
|
69
|
+
- "RUBYGEMS_API_KEY"
|
data/.bundle/config
ADDED
@@ -0,0 +1,91 @@
|
|
1
|
+
on:
|
2
|
+
workflow_call:
|
3
|
+
inputs:
|
4
|
+
label-format-list:
|
5
|
+
description: 'The Regex formats expected for the labels; must be a JSON list'
|
6
|
+
default: '[
|
7
|
+
".*"
|
8
|
+
]'
|
9
|
+
type: string
|
10
|
+
required: false
|
11
|
+
label-error-message:
|
12
|
+
description: 'Error message to be posted when the labels set don''t match the required list of formats.'
|
13
|
+
default: 'At least one label is required.'
|
14
|
+
type: string
|
15
|
+
required: false
|
16
|
+
label-success-message:
|
17
|
+
description: 'Message to be posted when the labels set fulfill the entire list of expected formats.'
|
18
|
+
default: '✅ Yay, issue looks great!'
|
19
|
+
type: string
|
20
|
+
required: false
|
21
|
+
secrets:
|
22
|
+
github-token:
|
23
|
+
required: true
|
24
|
+
|
25
|
+
concurrency:
|
26
|
+
group: danger-${{ github.event.issue.number }}
|
27
|
+
cancel-in-progress: true
|
28
|
+
|
29
|
+
jobs:
|
30
|
+
check-issue-labels:
|
31
|
+
runs-on: ubuntu-latest
|
32
|
+
permissions:
|
33
|
+
issues: write
|
34
|
+
steps:
|
35
|
+
- name: "🏷️ Check Issue Labels"
|
36
|
+
env:
|
37
|
+
GITHUB_TOKEN: ${{ secrets.github-token }}
|
38
|
+
GH_REPO: ${{ github.repository }}
|
39
|
+
ISSUE_NUMBER: ${{ github.event.issue.number }}
|
40
|
+
ISSUE_LABELS: ${{ toJSON(github.event.issue.labels.*.name) }}
|
41
|
+
LABEL_REGEX_LIST: ${{ inputs.label-format-list }}
|
42
|
+
ISSUE_SUCCESS_COMMENT: >
|
43
|
+
${{ inputs.label-success-message }}
|
44
|
+
<!-- generated_by_dangermattic -->
|
45
|
+
ISSUE_ERROR_COMMENT: >
|
46
|
+
${{ inputs.label-error-message }}
|
47
|
+
<!-- generated_by_dangermattic -->
|
48
|
+
run: |
|
49
|
+
#!/bin/bash
|
50
|
+
|
51
|
+
readarray -t labels < <(echo "$ISSUE_LABELS" | jq -r '.[]')
|
52
|
+
readarray -t label_regex_list < <(echo "$LABEL_REGEX_LIST" | jq -r '.[]')
|
53
|
+
|
54
|
+
all_patterns_matched=true
|
55
|
+
|
56
|
+
for regex in "${label_regex_list[@]}"; do
|
57
|
+
pattern_matched=false
|
58
|
+
|
59
|
+
for label in "${labels[@]}"; do
|
60
|
+
if [[ "$label" =~ $regex ]]; then
|
61
|
+
pattern_matched=true
|
62
|
+
echo "👍 Match found for regex '$regex': $label"
|
63
|
+
break
|
64
|
+
fi
|
65
|
+
done
|
66
|
+
|
67
|
+
if [ "$pattern_matched" = false ]; then
|
68
|
+
all_patterns_matched=false
|
69
|
+
echo "⚠️ No match found for regex '$regex'"
|
70
|
+
fi
|
71
|
+
done
|
72
|
+
|
73
|
+
ISSUE_COMMENT=''
|
74
|
+
if [ "$all_patterns_matched" = true ]; then
|
75
|
+
echo "✅ All regex patterns have at least one match."
|
76
|
+
ISSUE_COMMENT="$ISSUE_SUCCESS_COMMENT"
|
77
|
+
else
|
78
|
+
echo "❌ Not all regex patterns have at least one match."
|
79
|
+
ISSUE_COMMENT="$ISSUE_ERROR_COMMENT"
|
80
|
+
fi
|
81
|
+
|
82
|
+
set +e
|
83
|
+
echo "✍️ Attempting to edit existing comment on issue $ISSUE_NUMBER, if it exists:"
|
84
|
+
gh issue comment $ISSUE_NUMBER --body "$ISSUE_COMMENT" --edit-last
|
85
|
+
comment_update_status=$?
|
86
|
+
set -e
|
87
|
+
|
88
|
+
if [ $comment_update_status -ne 0 ]; then
|
89
|
+
echo "✍️ Adding new comment on issue $ISSUE_NUMBER:"
|
90
|
+
gh issue comment $ISSUE_NUMBER --body "$ISSUE_COMMENT"
|
91
|
+
fi
|
@@ -0,0 +1,54 @@
|
|
1
|
+
on:
|
2
|
+
workflow_call:
|
3
|
+
inputs:
|
4
|
+
remove-previous-comments:
|
5
|
+
description: 'Configures Danger to always remove previous comments and add a new one instead of editing the same comment.'
|
6
|
+
default: false
|
7
|
+
type: boolean
|
8
|
+
required: false
|
9
|
+
cancel-running-jobs:
|
10
|
+
description: 'Cancel currently in progress jobs when new ones are added.'
|
11
|
+
default: true
|
12
|
+
type: boolean
|
13
|
+
required: false
|
14
|
+
secrets:
|
15
|
+
github-token:
|
16
|
+
required: true
|
17
|
+
|
18
|
+
concurrency:
|
19
|
+
group: danger-${{ github.ref }}
|
20
|
+
cancel-in-progress: ${{ inputs.cancel-running-jobs }}
|
21
|
+
|
22
|
+
jobs:
|
23
|
+
dangermattic:
|
24
|
+
runs-on: ubuntu-latest
|
25
|
+
steps:
|
26
|
+
- name: "📥 Checkout Repo"
|
27
|
+
uses: actions/checkout@v4
|
28
|
+
with:
|
29
|
+
fetch-depth: 100
|
30
|
+
- name: "💎 Ruby Setup"
|
31
|
+
uses: ruby/setup-ruby@v1
|
32
|
+
with:
|
33
|
+
bundler-cache: true
|
34
|
+
- name: "☢️ Danger PR Check"
|
35
|
+
env:
|
36
|
+
PR_URL: ${{ github.event.pull_request.html_url }}
|
37
|
+
RUNNING_ON_FORK: ${{ github.event.pull_request.head.repo.fork }}
|
38
|
+
REMOVE_PREVIOUS_COMMENTS: ${{ inputs.remove-previous-comments }}
|
39
|
+
DANGER_GITHUB_API_TOKEN: ${{ secrets.github-token }}
|
40
|
+
run: |
|
41
|
+
echo "--- 🏃 Running Danger: PR Check"
|
42
|
+
|
43
|
+
if [ "$RUNNING_ON_FORK" = true ]; then
|
44
|
+
danger_output=$(bundle exec danger pr "$PR_URL" --verbose)
|
45
|
+
|
46
|
+
echo "$danger_output"
|
47
|
+
|
48
|
+
if echo "$danger_output" | grep -q "Errors:"; then
|
49
|
+
echo "Danger encountered errors."
|
50
|
+
exit 1
|
51
|
+
fi
|
52
|
+
else
|
53
|
+
bundle exec danger --fail-on-errors=true --danger_id=pr-check $([ "$REMOVE_PREVIOUS_COMMENTS" = true ] && echo "--remove-previous-comments")
|
54
|
+
fi
|
data/.gitignore
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
.DS_Store
|
2
|
+
/tmp
|
3
|
+
|
4
|
+
# JetBrains IDE files
|
5
|
+
.idea
|
6
|
+
|
7
|
+
# VSCode IDE files
|
8
|
+
.vscode
|
9
|
+
|
10
|
+
# Ruby / Bundler
|
11
|
+
vendor/bundle
|
12
|
+
|
13
|
+
# Fastlane
|
14
|
+
fastlane/README.md
|
15
|
+
fastlane/report.xml
|
16
|
+
|
17
|
+
# Testing
|
18
|
+
test_results/
|
19
|
+
coverage/
|
20
|
+
|
21
|
+
# YARD Documentation
|
22
|
+
yard-doc/
|
23
|
+
.yardoc/
|
24
|
+
|
25
|
+
|
26
|
+
# L10n Linter
|
27
|
+
vendor/swiftgen
|
28
|
+
|
29
|
+
# Build Products
|
30
|
+
*.gem
|
data/.rubocop.yml
ADDED
@@ -0,0 +1,67 @@
|
|
1
|
+
require:
|
2
|
+
- rubocop-rake
|
3
|
+
- rubocop-rspec
|
4
|
+
|
5
|
+
AllCops:
|
6
|
+
NewCops: enable
|
7
|
+
|
8
|
+
Style/HashSyntax:
|
9
|
+
EnforcedShorthandSyntax: never
|
10
|
+
|
11
|
+
########## Gemspec Rules
|
12
|
+
|
13
|
+
# Disabling this as all the gem publishing will be done within CI and doesn't allow for user input such as an MFA code.
|
14
|
+
Gemspec/RequireMFA:
|
15
|
+
Enabled: false
|
16
|
+
|
17
|
+
Gemspec/DevelopmentDependencies:
|
18
|
+
EnforcedStyle: gemspec
|
19
|
+
|
20
|
+
########## Metrics / Max Lengths Rules
|
21
|
+
|
22
|
+
Layout/LineLength:
|
23
|
+
Max: 300
|
24
|
+
|
25
|
+
Metrics/AbcSize:
|
26
|
+
Max: 140
|
27
|
+
|
28
|
+
Metrics/BlockLength:
|
29
|
+
Max: 80
|
30
|
+
Exclude:
|
31
|
+
- spec/**/*_spec.rb
|
32
|
+
- spec/**/shared_examples_*.rb
|
33
|
+
|
34
|
+
Metrics/ClassLength:
|
35
|
+
Max: 300
|
36
|
+
|
37
|
+
Metrics/MethodLength:
|
38
|
+
Max: 150
|
39
|
+
|
40
|
+
Metrics/ModuleLength:
|
41
|
+
Max: 300
|
42
|
+
Exclude:
|
43
|
+
- spec/**/*_spec.rb
|
44
|
+
|
45
|
+
Metrics/ParameterLists:
|
46
|
+
Max: 10
|
47
|
+
|
48
|
+
########## Metrics / Complexity
|
49
|
+
|
50
|
+
Metrics/CyclomaticComplexity:
|
51
|
+
Max: 20
|
52
|
+
|
53
|
+
Metrics/PerceivedComplexity:
|
54
|
+
Max: 20
|
55
|
+
|
56
|
+
########## RSpec Rules
|
57
|
+
|
58
|
+
# We are not strict to the point that we want to enforce super-short `it '…' do … end` blocks in our specs.
|
59
|
+
RSpec/ExampleLength:
|
60
|
+
Enabled: false
|
61
|
+
|
62
|
+
# Same for number of let/subject
|
63
|
+
RSpec/MultipleMemoizedHelpers:
|
64
|
+
Enabled: false
|
65
|
+
|
66
|
+
RSpec/MultipleExpectations:
|
67
|
+
Max: 2
|
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
3.2.2
|
data/.yardopts
ADDED
data/CHANGELOG.md
ADDED
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,191 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
danger-dangermattic (0.0.1)
|
5
|
+
danger (~> 9.4)
|
6
|
+
danger-junit (~> 1.0)
|
7
|
+
danger-plugin-api (~> 1.0)
|
8
|
+
danger-rubocop (~> 0.12)
|
9
|
+
danger-swiftlint (~> 0.35)
|
10
|
+
danger-xcode_summary (~> 1.0)
|
11
|
+
rubocop (~> 1.60)
|
12
|
+
|
13
|
+
GEM
|
14
|
+
remote: https://rubygems.org/
|
15
|
+
specs:
|
16
|
+
addressable (2.8.6)
|
17
|
+
public_suffix (>= 2.0.2, < 6.0)
|
18
|
+
ast (2.4.2)
|
19
|
+
base64 (0.2.0)
|
20
|
+
claide (1.1.0)
|
21
|
+
claide-plugins (0.9.2)
|
22
|
+
cork
|
23
|
+
nap
|
24
|
+
open4 (~> 1.3)
|
25
|
+
coderay (1.1.3)
|
26
|
+
colored2 (3.1.2)
|
27
|
+
cork (0.3.0)
|
28
|
+
colored2 (~> 3.1)
|
29
|
+
danger (9.4.3)
|
30
|
+
claide (~> 1.0)
|
31
|
+
claide-plugins (>= 0.9.2)
|
32
|
+
colored2 (~> 3.1)
|
33
|
+
cork (~> 0.1)
|
34
|
+
faraday (>= 0.9.0, < 3.0)
|
35
|
+
faraday-http-cache (~> 2.0)
|
36
|
+
git (~> 1.13)
|
37
|
+
kramdown (~> 2.3)
|
38
|
+
kramdown-parser-gfm (~> 1.0)
|
39
|
+
no_proxy_fix
|
40
|
+
octokit (>= 4.0)
|
41
|
+
terminal-table (>= 1, < 4)
|
42
|
+
danger-junit (1.0.2)
|
43
|
+
danger (> 2.0)
|
44
|
+
ox (~> 2.0)
|
45
|
+
danger-plugin-api (1.0.0)
|
46
|
+
danger (> 2.0)
|
47
|
+
danger-rubocop (0.12.0)
|
48
|
+
danger
|
49
|
+
rubocop (~> 1.0)
|
50
|
+
danger-swiftlint (0.35.0)
|
51
|
+
danger
|
52
|
+
rake (> 10)
|
53
|
+
thor (~> 1.0.0)
|
54
|
+
danger-xcode_summary (1.2.0)
|
55
|
+
danger-plugin-api (~> 1.0)
|
56
|
+
xcresult (~> 0.2)
|
57
|
+
diff-lcs (1.5.1)
|
58
|
+
faraday (2.9.0)
|
59
|
+
faraday-net_http (>= 2.0, < 3.2)
|
60
|
+
faraday-http-cache (2.5.1)
|
61
|
+
faraday (>= 0.8)
|
62
|
+
faraday-net_http (3.1.0)
|
63
|
+
net-http
|
64
|
+
ffi (1.16.3)
|
65
|
+
formatador (1.1.0)
|
66
|
+
git (1.19.1)
|
67
|
+
addressable (~> 2.8)
|
68
|
+
rchardet (~> 1.8)
|
69
|
+
guard (2.18.1)
|
70
|
+
formatador (>= 0.2.4)
|
71
|
+
listen (>= 2.7, < 4.0)
|
72
|
+
lumberjack (>= 1.0.12, < 2.0)
|
73
|
+
nenv (~> 0.1)
|
74
|
+
notiffany (~> 0.0)
|
75
|
+
pry (>= 0.13.0)
|
76
|
+
shellany (~> 0.0)
|
77
|
+
thor (>= 0.18.1)
|
78
|
+
guard-compat (1.2.1)
|
79
|
+
guard-rspec (4.7.3)
|
80
|
+
guard (~> 2.1)
|
81
|
+
guard-compat (~> 1.1)
|
82
|
+
rspec (>= 2.99.0, < 4.0)
|
83
|
+
json (2.7.1)
|
84
|
+
kramdown (2.4.0)
|
85
|
+
rexml
|
86
|
+
kramdown-parser-gfm (1.1.0)
|
87
|
+
kramdown (~> 2.0)
|
88
|
+
language_server-protocol (3.17.0.3)
|
89
|
+
listen (3.8.0)
|
90
|
+
rb-fsevent (~> 0.10, >= 0.10.3)
|
91
|
+
rb-inotify (~> 0.9, >= 0.9.10)
|
92
|
+
lumberjack (1.2.10)
|
93
|
+
method_source (1.0.0)
|
94
|
+
nap (1.1.0)
|
95
|
+
nenv (0.3.0)
|
96
|
+
net-http (0.4.1)
|
97
|
+
uri
|
98
|
+
no_proxy_fix (0.1.2)
|
99
|
+
notiffany (0.1.3)
|
100
|
+
nenv (~> 0.1)
|
101
|
+
shellany (~> 0.0)
|
102
|
+
octokit (8.1.0)
|
103
|
+
base64
|
104
|
+
faraday (>= 1, < 3)
|
105
|
+
sawyer (~> 0.9)
|
106
|
+
open4 (1.3.4)
|
107
|
+
ox (2.14.17)
|
108
|
+
parallel (1.24.0)
|
109
|
+
parser (3.3.0.5)
|
110
|
+
ast (~> 2.4.1)
|
111
|
+
racc
|
112
|
+
pry (0.14.2)
|
113
|
+
coderay (~> 1.1)
|
114
|
+
method_source (~> 1.0)
|
115
|
+
public_suffix (5.0.4)
|
116
|
+
racc (1.7.3)
|
117
|
+
rainbow (3.1.1)
|
118
|
+
rake (13.1.0)
|
119
|
+
rb-fsevent (0.11.2)
|
120
|
+
rb-inotify (0.10.1)
|
121
|
+
ffi (~> 1.0)
|
122
|
+
rchardet (1.8.0)
|
123
|
+
regexp_parser (2.9.0)
|
124
|
+
rexml (3.2.6)
|
125
|
+
rspec (3.13.0)
|
126
|
+
rspec-core (~> 3.13.0)
|
127
|
+
rspec-expectations (~> 3.13.0)
|
128
|
+
rspec-mocks (~> 3.13.0)
|
129
|
+
rspec-core (3.13.0)
|
130
|
+
rspec-support (~> 3.13.0)
|
131
|
+
rspec-expectations (3.13.0)
|
132
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
133
|
+
rspec-support (~> 3.13.0)
|
134
|
+
rspec-mocks (3.13.0)
|
135
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
136
|
+
rspec-support (~> 3.13.0)
|
137
|
+
rspec-support (3.13.0)
|
138
|
+
rubocop (1.60.2)
|
139
|
+
json (~> 2.3)
|
140
|
+
language_server-protocol (>= 3.17.0)
|
141
|
+
parallel (~> 1.10)
|
142
|
+
parser (>= 3.3.0.2)
|
143
|
+
rainbow (>= 2.2.2, < 4.0)
|
144
|
+
regexp_parser (>= 1.8, < 3.0)
|
145
|
+
rexml (>= 3.2.5, < 4.0)
|
146
|
+
rubocop-ast (>= 1.30.0, < 2.0)
|
147
|
+
ruby-progressbar (~> 1.7)
|
148
|
+
unicode-display_width (>= 2.4.0, < 3.0)
|
149
|
+
rubocop-ast (1.30.0)
|
150
|
+
parser (>= 3.2.1.0)
|
151
|
+
rubocop-capybara (2.20.0)
|
152
|
+
rubocop (~> 1.41)
|
153
|
+
rubocop-factory_bot (2.25.1)
|
154
|
+
rubocop (~> 1.41)
|
155
|
+
rubocop-rake (0.6.0)
|
156
|
+
rubocop (~> 1.0)
|
157
|
+
rubocop-rspec (2.26.1)
|
158
|
+
rubocop (~> 1.40)
|
159
|
+
rubocop-capybara (~> 2.17)
|
160
|
+
rubocop-factory_bot (~> 2.22)
|
161
|
+
ruby-progressbar (1.13.0)
|
162
|
+
sawyer (0.9.2)
|
163
|
+
addressable (>= 2.3.5)
|
164
|
+
faraday (>= 0.17.3, < 3)
|
165
|
+
shellany (0.0.1)
|
166
|
+
terminal-table (3.0.2)
|
167
|
+
unicode-display_width (>= 1.1.1, < 3)
|
168
|
+
thor (1.0.1)
|
169
|
+
unicode-display_width (2.5.0)
|
170
|
+
uri (0.13.0)
|
171
|
+
xcresult (0.2.1)
|
172
|
+
yard (0.9.34)
|
173
|
+
|
174
|
+
PLATFORMS
|
175
|
+
arm64-darwin-22
|
176
|
+
ruby
|
177
|
+
|
178
|
+
DEPENDENCIES
|
179
|
+
bundler (~> 2.0)
|
180
|
+
danger-dangermattic!
|
181
|
+
guard (~> 2.18)
|
182
|
+
guard-rspec (~> 4.7)
|
183
|
+
pry
|
184
|
+
rake (~> 13.1)
|
185
|
+
rspec (~> 3.4)
|
186
|
+
rubocop-rake
|
187
|
+
rubocop-rspec
|
188
|
+
yard
|
189
|
+
|
190
|
+
BUNDLED WITH
|
191
|
+
2.4.13
|
data/Guardfile
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# A guardfile for making Danger Plugins
|
4
|
+
# For more info see https://github.com/guard/guard#readme
|
5
|
+
|
6
|
+
# To run, use `bundle exec guard`.
|
7
|
+
|
8
|
+
guard :rspec, cmd: 'bundle exec rspec' do
|
9
|
+
require 'guard/rspec/dsl'
|
10
|
+
dsl = Guard::RSpec::Dsl.new(self)
|
11
|
+
|
12
|
+
# RSpec files
|
13
|
+
rspec = dsl.rspec
|
14
|
+
watch(rspec.spec_helper) { rspec.spec_dir }
|
15
|
+
watch(rspec.spec_support) { rspec.spec_dir }
|
16
|
+
watch(rspec.spec_files)
|
17
|
+
|
18
|
+
# Ruby files
|
19
|
+
ruby = dsl.ruby
|
20
|
+
dsl.watch_spec_files_for(ruby.lib_files)
|
21
|
+
end
|