Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .envrc
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ export K_SOUP_COV_DO=true # Means you want code coverage
export K_SOUP_COV_COMMAND_NAME="Test Coverage"
# Available formats are html, xml, rcov, lcov, json, tty
export K_SOUP_COV_FORMATTERS="html,xml,rcov,lcov,json,tty"
export K_SOUP_COV_MIN_BRANCH=80 # Means you want to enforce X% branch coverage
export K_SOUP_COV_MIN_LINE=96 # Means you want to enforce X% line coverage
export K_SOUP_COV_MIN_BRANCH=96 # Means you want to enforce X% branch coverage
export K_SOUP_COV_MIN_LINE=100 # Means you want to enforce X% line coverage
export K_SOUP_COV_MIN_HARD=true # Means you want the build to fail if the coverage thresholds are not met
export K_SOUP_COV_MULTI_FORMATTERS=true
export K_SOUP_COV_OPEN_BIN= # Means don't try to open coverage results in browser
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ permissions:
id-token: write

env:
K_SOUP_COV_MIN_BRANCH: 100
K_SOUP_COV_MIN_BRANCH: 96
K_SOUP_COV_MIN_LINE: 100
K_SOUP_COV_MIN_HARD: true
K_SOUP_COV_FORMATTERS: "xml,rcov,lcov,tty"
Expand Down Expand Up @@ -115,7 +115,7 @@ jobs:
hide_complexity: true
indicators: true
output: both
thresholds: '100 100'
thresholds: '100 96'
continue-on-error: ${{ matrix.experimental != 'false' }}

- name: Add Coverage PR Comment
Expand Down
40 changes: 33 additions & 7 deletions .github/workflows/current.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,11 +63,11 @@ jobs:

steps:
- name: Checkout
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
uses: actions/checkout@v5

- name: Setup Ruby & RubyGems
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
Expand All @@ -79,11 +79,37 @@ jobs:
# We need to do this first to get appraisal installed.
# NOTE: This does not use the primary Gemfile at all.
- name: Install Root Appraisal
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle
- name: Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}

- name: "[Attempt 1] Install Root Appraisal"
id: bundleAttempt1
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle
# Continue to the next step on failure
continue-on-error: true

# Effectively an automatic retry of the previous step.
- name: "[Attempt 2] Install Root Appraisal"
id: bundleAttempt2
# If bundleAttempt1 failed, try again here; Otherwise skip.
if: ${{ steps.bundleAttempt1.outcome == 'failure' && !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle

- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
id: bundleAppraisalAttempt1
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
# Continue to the next step on failure
continue-on-error: true

# Effectively an automatic retry of the previous step.
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
id: bundleAppraisalAttempt2
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
- name: Tests for ${{ matrix.ruby }}@${{ matrix.appraisal }} via ${{ matrix.exec_cmd }}
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}

- name: Tests for ${{ matrix.ruby }} via ${{ matrix.exec_cmd }}
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
36 changes: 25 additions & 11 deletions .github/workflows/dep-heads.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,11 +67,11 @@ jobs:

steps:
- name: Checkout
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
uses: actions/checkout@v5

- name: Setup Ruby & RubyGems
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
Expand All @@ -82,24 +82,38 @@ jobs:
# Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
# We need to do this first to get appraisal installed.
# NOTE: This does not use the primary Gemfile at all.
- name: "Install Root Appraisal"
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
- name: Install Root Appraisal
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle

- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
- name: "[Attempt 1] Install Root Appraisal"
id: bundleAttempt1
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle
# Continue to the next step on failure
continue-on-error: true

# Effectively an automatic retry of the previous step.
- name: "[Attempt 2] Install Root Appraisal"
id: bundleAttempt2
# If bundleAttempt1 failed, try again here; Otherwise skip.
if: ${{ steps.bundleAttempt1.outcome == 'failure' && !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle

- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
id: bundleAppraisalAttempt1
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
# Continue to the next step on failure
continue-on-error: true

# Effectively an automatic retry of the previous step.
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
# If bundleAttempt1 failed, try again here; Otherwise skip.
if: ${{ steps.bundleAttempt1.outcome == 'failure' && !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
id: bundleAttempt2
id: bundleAppraisalAttempt2
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle

- name: Tests for ${{ matrix.ruby }}@${{ matrix.appraisal }} via ${{ matrix.exec_cmd }}
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
- name: Tests for ${{ matrix.ruby }} via ${{ matrix.exec_cmd }}
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
36 changes: 25 additions & 11 deletions .github/workflows/heads.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,11 +64,11 @@ jobs:

steps:
- name: Checkout
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
uses: actions/checkout@v5

- name: Setup Ruby & RubyGems
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
Expand All @@ -79,24 +79,38 @@ jobs:
# Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
# We need to do this first to get appraisal installed.
# NOTE: This does not use the primary Gemfile at all.
- name: "Install Root Appraisal"
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
- name: Install Root Appraisal
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle

- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
- name: "[Attempt 1] Install Root Appraisal"
id: bundleAttempt1
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle
# Continue to the next step on failure
continue-on-error: true

# Effectively an automatic retry of the previous step.
- name: "[Attempt 2] Install Root Appraisal"
id: bundleAttempt2
# If bundleAttempt1 failed, try again here; Otherwise skip.
if: ${{ steps.bundleAttempt1.outcome == 'failure' && !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle

- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
id: bundleAppraisalAttempt1
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
# Continue to the next step on failure
continue-on-error: true

# Effectively an automatic retry of the previous step.
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
# If bundleAttempt1 failed, try again here; Otherwise skip.
if: ${{ steps.bundleAttempt1.outcome == 'failure' && !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
id: bundleAttempt2
id: bundleAppraisalAttempt2
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle

- name: Tests for ${{ matrix.ruby }}@${{ matrix.appraisal }} via ${{ matrix.exec_cmd }}
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
- name: Tests for ${{ matrix.ruby }} via ${{ matrix.exec_cmd }}
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
12 changes: 9 additions & 3 deletions .github/workflows/truffle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,11 @@ jobs:

steps:
- name: Checkout
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
uses: actions/checkout@v5

- name: Setup Ruby & RubyGems
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
Expand All @@ -61,10 +63,12 @@ jobs:
# We need to do this first to get appraisal installed.
# NOTE: This does not use the primary Gemfile at all.
- name: Install Root Appraisal
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle

- name: "[Attempt 1] Install Root Appraisal"
id: bundleAttempt1
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle
# Continue to the next step on failure
continue-on-error: true
Expand All @@ -73,21 +77,23 @@ jobs:
- name: "[Attempt 2] Install Root Appraisal"
id: bundleAttempt2
# If bundleAttempt1 failed, try again here; Otherwise skip.
if: steps.bundleAttempt1.outcome == 'failure'
if: ${{ steps.bundleAttempt1.outcome == 'failure' && !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle

- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
id: bundleAppraisalAttempt1
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
# Continue to the next step on failure
continue-on-error: true

# Effectively an automatic retry of the previous step.
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
id: bundleAppraisalAttempt2
# If bundleAttempt1 failed, try again here; Otherwise skip.
if: steps.bundleAppraisalAttempt1.outcome == 'failure'
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle

- name: Tests for ${{ matrix.ruby }} via ${{ matrix.exec_cmd }}
if: ${{ !(env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
2 changes: 1 addition & 1 deletion .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ variables:
K_SOUP_COV_DEBUG: true
K_SOUP_COV_DO: true
K_SOUP_COV_HARD: true
K_SOUP_COV_MIN_BRANCH: 100
K_SOUP_COV_MIN_BRANCH: 96
K_SOUP_COV_MIN_LINE: 100
K_SOUP_COV_VERBOSE: true
K_SOUP_COV_FORMATTERS: "tty"
Expand Down
2 changes: 1 addition & 1 deletion .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading