Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FYI: I rebuilt the gem and released with a 2 #6

Open
wants to merge 66 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
c1b85ce
🐛 Compatibility with Rack::Timeout
pboling Sep 4, 2024
abaee4b
🔧 Ruby 2.7 for development
pboling Sep 4, 2024
bd94fc2
📝 Fix typo
pboling Sep 4, 2024
77553c2
🔥 Travis CI is dead
pboling Sep 4, 2024
339c1ed
🙈 Add .gitignore
pboling Sep 4, 2024
183d512
⬆️ Compatibility with Rack v2 & v3
pboling Sep 4, 2024
0e6400d
🎨 Modernize: Push the button
pboling Sep 4, 2024
edad56d
📝 Markdown formatting
pboling Sep 4, 2024
ac12ece
🔧 Integrate version_gem
pboling Sep 5, 2024
90be1f4
🔧 binstubs
pboling Sep 5, 2024
c35503f
🔒️ cert for releasing
pboling Sep 5, 2024
951459d
📝 CONTRIBUTING.md
pboling Sep 5, 2024
2071e41
👷 Add GitHub Actions
pboling Sep 5, 2024
7f2920e
🔥 trash old cert
pboling Sep 5, 2024
bc8e5f9
📝 CHANGELOG.md
pboling Sep 5, 2024
7870b6b
📝 CODE_OF_CONDUCT.md
pboling Sep 5, 2024
62bbb6c
📝 SECURITY.md
pboling Sep 5, 2024
85fe705
💚 Enforce code coverage
pboling Sep 5, 2024
a1bf999
📝 Document contributors
pboling Sep 5, 2024
3c64d46
🚨 Markdown formatting
pboling Sep 5, 2024
73e6e3c
🚨 Markdown formatting
pboling Sep 5, 2024
f4fa3c4
🚨 Linting
pboling Sep 5, 2024
0264bc4
✨ Badges FTW!
pboling Sep 5, 2024
5a23250
📝 Normalize instructions
pboling Sep 5, 2024
07b6460
🔒️ Add checksums script
pboling Sep 5, 2024
f54faf3
🔒️ Checksums for v2.0.0
pboling Sep 5, 2024
8625294
✏️ Oops, typo
pboling Sep 5, 2024
013a2b2
🍱 Include markdown files in released gem
pboling Sep 5, 2024
5f5af59
🔖 Prepare release v2.0.1
pboling Sep 5, 2024
df769af
📌 use VitalConnectInc/rots from GitHub
pboling Sep 5, 2024
ebc5d2a
🔒️ Checksums for v2.0.1
pboling Sep 5, 2024
bf46d9c
🔧 Improved integration with direnv for development
pboling Sep 20, 2024
40a9d93
🙈 Ignore ignorable things
pboling Sep 20, 2024
c855ce9
🔥 Rakefile doesn't need shebang
pboling Sep 20, 2024
9c60f23
🔥 Remove duplicate ENV var
pboling Sep 20, 2024
bdb124d
♻️ Refactor test requires for proper load order
pboling Sep 20, 2024
8a01720
📌 Update to new home of rots: oauth-xx
pboling Sep 20, 2024
7421a86
🔥 Remove duplicate dependencies (gemspec > Gemfile)
pboling Sep 20, 2024
79327a2
⬆️ ruby-openid2
pboling Sep 20, 2024
b7a8fdb
🚚 retarget links to oauth-xx org
pboling Sep 24, 2024
bc28a6b
✨ automatic loading via bundler
pboling Sep 24, 2024
d69abdf
🎨 Namespace constant less confusingly
pboling Sep 24, 2024
2df048f
🔧 binstub for rackup
pboling Sep 24, 2024
f7bc482
🔧 ruby 3.3.5 for development
pboling Sep 24, 2024
8bca163
🔖 Prepare for release v2.0.2
pboling Sep 25, 2024
f65b61a
🔒️ New year, new cert
pboling Sep 25, 2024
4653ec6
🔒️ Checksums for v2.0.2
pboling Sep 25, 2024
5c20801
📝 Documentation
pboling Sep 25, 2024
e7d4d49
📝 Fix documentation in Yard (on RubyDoc.info)
pboling Sep 25, 2024
eeddf92
🔖 Prepare release v2.0.3
pboling Sep 25, 2024
7534f72
🔒️ Checksums for v2.0.3
pboling Sep 25, 2024
e06679a
📝 Organize Markdown
pboling Sep 25, 2024
14f3ca8
✏️ Fix typo
pboling Sep 25, 2024
ba0017b
✏️ Fix markdown
pboling Sep 25, 2024
c5f1735
Update rexml to version 3.3.9
depfu[bot] Oct 28, 2024
392bd21
Update minitest to version 5.25.4
depfu[bot] Dec 5, 2024
92bbc22
Update rack-session to version 2.1.0
depfu[bot] Jan 5, 2025
56e84b1
Merge pull request #7 from oauth-xx/depfu/update/rexml-3.3.9
pboling Feb 2, 2025
820dcab
Merge pull request #12 from oauth-xx/depfu/update/minitest-5.25.4
pboling Feb 2, 2025
ddf8e29
Merge pull request #16 from oauth-xx/depfu/update/rack-session-2.1.0
pboling Feb 2, 2025
b6d7e13
Update logger to version 1.6.5
depfu[bot] Feb 2, 2025
1a6df58
Update standard to version 1.44.0
depfu[bot] Feb 2, 2025
aa0e87c
Update rack to version 3.1.9
depfu[bot] Feb 2, 2025
d4553cb
Merge pull request #17 from oauth-xx/depfu/update/logger-1.6.5
pboling Feb 3, 2025
5140205
Merge pull request #19 from oauth-xx/depfu/update/rack-3.1.9
pboling Feb 3, 2025
fe593ea
Merge pull request #18 from oauth-xx/depfu/update/standard-1.44.0
pboling Feb 3, 2025
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
38 changes: 38 additions & 0 deletions .envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Run any command in this library's bin/ without the bin/ prefix!
PATH_add bin

# Only add things to this file that should be shared with the team.

# **dotenv** (See end of file for .env.local integration)
# .env would override anything in this file, if enabled.
# .env is a DOCKER standard, and if we use it, it would be in deployed, or DOCKER, environments.
# Override and customize anything below in your own .env.local
# If you are using dotenv and not direnv,
# copy the following `export` statements to your own .env file.

### General Ruby ###
# Turn off Ruby Warnings about deprecated code
# export RUBYOPT="-W0"

### External Testing Controls
export K_SOUP_COV_DO=true # Means you want code coverage
# Available formats are html, xml, rcov, lcov, json, tty
export K_SOUP_COV_COMMAND_NAME="MiniTest Coverage"
export K_SOUP_COV_FORMATTERS="html,tty"
export K_SOUP_COV_MIN_BRANCH=86 # Means you want to enforce X% branch coverage
export K_SOUP_COV_MIN_LINE=97 # 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 MAX_ROWS=1 # Setting for simplecov-console gem for tty output, limits to the worst N rows of bad coverage

# Internal Debugging Controls
export DEBUG=false # do not allow byebug statements (override in .env.local)
export REQUIRE_BENCH=false # set to true in .env.local to turn on require_bench

# .env would override anything in this file, if `dotenv` is uncommented below.
# .env is a DOCKER standard, and if we use it, it would be in deployed, or DOCKER, environments,
# and that is why we generally want to leave it commented out.
# dotenv

# .env.local will override anything in this file.
dotenv_if_exists .env.local
13 changes: 13 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
version: 2
updates:
- package-ecosystem: bundler
directory: "/"
schedule:
interval: "daily"
open-pull-requests-limit: 10
ignore:
- dependency-name: "rubocop-lts"
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
85 changes: 85 additions & 0 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
name: Ruby - Coverage

env:
K_SOUP_COV_MIN_BRANCH: 86
K_SOUP_COV_MIN_LINE: 97
K_SOUP_COV_MIN_HARD: true
K_SOUP_COV_DO: true
K_SOUP_COV_COMMAND_NAME: "MiniTest Coverage"

on:
push:
branches:
- 'main'
tags:
- '!*' # Do not execute on tags
pull_request:
branches:
- '*'
# Allow manually triggering the workflow.
workflow_dispatch:

permissions:
contents: read

# Cancels all previous workflow runs for the same branch that have not yet completed.
concurrency:
# The concurrency group contains the workflow name and the branch name.
group: "${{ github.workflow }}-${{ github.ref }}"
cancel-in-progress: true

jobs:
test:
name: Specs with Coverage - Ruby ${{ matrix.ruby }} ${{ matrix.name_extra || '' }}
if: "!contains(github.event.commits[0].message, '[ci skip]') && !contains(github.event.commits[0].message, '[skip ci]')"
env: # $BUNDLE_GEMFILE must be set at the job level, so it is set for all steps
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
runs-on: ubuntu-latest
strategy:
matrix:
rubygems:
- latest
bundler:
- latest
gemfile:
- coverage
ruby:
- '3.1'

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Ruby & RubyGems
uses: ruby/setup-ruby@v1
with:
ruby-version: "${{ matrix.ruby }}"
rubygems: "${{ matrix.rubygems }}"
bundler: "${{ matrix.bundler }}"
bundler-cache: true # runs 'bundle install' and caches installed gems automatically

- name: Run tests
run: bundle exec rake test

- name: Code Coverage Summary Report
uses: irongut/[email protected]
if: ${{ github.event_name == 'pull_request' }}
with:
filename: ./coverage/coverage.xml
badge: true
fail_below_min: true
format: markdown
hide_branch_rate: false
hide_complexity: true
indicators: true
output: both
thresholds: '97 86'
continue-on-error: ${{ matrix.experimental != 'false' }}

- name: Add Coverage PR Comment
uses: marocchino/sticky-pull-request-comment@v2
if: ${{ github.event_name == 'pull_request' }}
with:
recreate: true
path: code-coverage-results.md
continue-on-error: ${{ matrix.experimental != 'false' }}
60 changes: 60 additions & 0 deletions .github/workflows/heads.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
name: Ruby Heads Matrix

env:
K_SOUP_COV_DO: false

on:
push:
branches:
- 'main'
tags:
- '!*' # Do not execute on tags
pull_request:
branches:
- '*'
# Allow manually triggering the workflow.
workflow_dispatch:

permissions:
contents: read

# Cancels all previous workflow runs for the same branch that have not yet completed.
concurrency:
# The concurrency group contains the workflow name and the branch name.
group: "${{ github.workflow }}-${{ github.ref }}"
cancel-in-progress: true

jobs:
test:
name: Specs - Ruby ${{ matrix.ruby }} ${{ matrix.name_extra || '' }}
if: "!contains(github.event.commits[0].message, '[ci skip]') && !contains(github.event.commits[0].message, '[skip ci]')"
env: # $BUNDLE_GEMFILE must be set at the job level, so it is set for all steps
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
strategy:
fail-fast: true
matrix:
rubygems:
- latest
bundler:
- latest
gemfile:
- vanilla
ruby:
- head

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Ruby & RubyGems
uses: ruby/setup-ruby@v1
with:
ruby-version: "${{ matrix.ruby }}"
rubygems: "${{ matrix.rubygems }}"
bundler: "${{ matrix.bundler }}"
bundler-cache: true # runs 'bundle install' and caches installed gems automatically

- name: Run tests
run: bundle exec rake test
42 changes: 42 additions & 0 deletions .github/workflows/style.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Ruby - Style

on:
push:
branches:
- 'main'
tags:
- '!*' # Do not execute on tags
pull_request:
branches:
- '*'

jobs:
rubocop:
name: RuboCop
strategy:
fail-fast: false
matrix:
rubygems:
- latest
bundler:
- latest
gemfile:
- style
ruby:
- "3.2"
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
env: # $BUNDLE_GEMFILE must be set at the job level, so it is set for all steps
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Ruby & RubyGems
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
rubygems: ${{ matrix.rubygems }}
bundler: ${{ matrix.bundler }}
bundler-cache: true
- name: Run RuboCop
run: bundle exec rake rubocop_gradual:check
57 changes: 57 additions & 0 deletions .github/workflows/supported.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: Supported Ruby Matrix

env:
K_SOUP_COV_DO: false

on:
push:
branches:
- 'main'
tags:
- '!*' # Do not execute on tags
pull_request:
branches:
- '*'
# Allow manually triggering the workflow.
workflow_dispatch:

permissions:
contents: read

# Cancels all previous workflow runs for the same branch that have not yet completed.
concurrency:
# The concurrency group contains the workflow name and the branch name.
group: "${{ github.workflow }}-${{ github.ref }}"
cancel-in-progress: true

jobs:
test:
name: Specs - Ruby ${{ matrix.ruby }}${{ matrix.name_extra || '' }}
if: "!contains(github.event.commits[0].message, '[ci skip]') && !contains(github.event.commits[0].message, '[skip ci]')"
env: # $BUNDLE_GEMFILE must be set at the job level, so it is set for all steps
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
runs-on: ubuntu-latest
strategy:
matrix:
include:
- ruby: "3.3"
rubygems: latest
bundler: latest
gemfile: vanilla
- ruby: "3.2"
rubygems: latest
bundler: latest
gemfile: vanilla
#- Ruby 3.1 tests are run by coverage.yml
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Ruby & RubyGems
uses: ruby/setup-ruby@v1
with:
ruby-version: "${{ matrix.ruby }}"
rubygems: "${{ matrix.rubygems }}"
bundler: "${{ matrix.bundler }}"
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- name: Run tests
run: bundle exec rake test
55 changes: 55 additions & 0 deletions .github/workflows/unsupported.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: Unsupported (EOL) Ruby Matrix

env:
K_SOUP_COV_DO: false

on:
push:
branches:
- 'main'
tags:
- '!*' # Do not execute on tags
pull_request:
branches:
- '*'
# Allow manually triggering the workflow.
workflow_dispatch:

# Cancels all previous workflow runs for the same branch that have not yet completed.
concurrency:
# The concurrency group contains the workflow name and the branch name.
group: "${{ github.workflow }}-${{ github.ref }}"
cancel-in-progress: true

jobs:
test:
name: Specs - Ruby ${{ matrix.ruby }}${{ matrix.name_extra || '' }}
if: "!contains(github.event.commits[0].message, '[ci skip]') && !contains(github.event.commits[0].message, '[skip ci]')"
env: # $BUNDLE_GEMFILE must be set at the job level, so it is set for all steps
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
strategy:
fail-fast: false
matrix:
include:
- ruby: "3.0"
rubygems: "3.3.27"
bundler: none
gemfile: vanilla
- ruby: "2.7"
rubygems: "3.3.27"
bundler: none
gemfile: vanilla
runs-on: ubuntu-20.04
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Ruby & RubyGems
uses: ruby/setup-ruby@v1
with:
ruby-version: "${{ matrix.ruby }}"
rubygems: "${{ matrix.rubygems }}"
bundler: "${{ matrix.bundler }}"
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- name: Run tests
run: bundle exec rake test
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/doc/
.env.local
.yardoc/
coverage/
pkg/
.bundle/
.byebug_history
8 changes: 8 additions & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
inherit_gem:
rubocop-lts: config/rubygem.yml

require:
- rubocop-minitest

Style/EmptyElse:
Enabled: false
10 changes: 10 additions & 0 deletions .rubocop_gradual.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"bin/bundle:3870166066": [
[33, 24, 58, "Performance/ConstantRegexp: Extract this regexp into a constant, memoize it, or append an `/o` option to its options.", 2287896868],
[59, 40, 62, "Performance/ConstantRegexp: Extract this regexp into a constant, memoize it, or append an `/o` option to its options.", 2593609308],
[64, 5, 20, "ThreadSafety/InstanceVariableInClassMethod: Avoid instance variables in class methods.", 2485198147],
[86, 7, 34, "Style/MethodCallWithArgsParentheses: Use parentheses for method calls with arguments.", 991972134],
[93, 5, 194, "Style/MethodCallWithArgsParentheses: Use parentheses for method calls with arguments.", 1374511802],
[94, 5, 7, "Style/MethodCallWithArgsParentheses: Use parentheses for method calls with arguments.", 285434243]
]
}
5 changes: 5 additions & 0 deletions .simplecov
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
require "kettle/soup/cover/config"

SimpleCov.start do
add_filter "test/**/*"
end
1 change: 1 addition & 0 deletions .tool-versions
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ruby 3.3.5
6 changes: 0 additions & 6 deletions .travis.yml

This file was deleted.

Loading