Skip to content

Commit 622f473

Browse files
committed
Merge branch 'feat/20-year-cert' into 'main'
20-year cert for cryptographic signing of release See merge request oauth-xx/oauth2!642
2 parents da04856 + 26eb30d commit 622f473

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

103 files changed

+3602
-2236
lines changed

.envrc

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# Run any command in this library's bin/ without the bin/ prefix!
2+
PATH_add bin
3+
4+
# Only add things to this file that should be shared with the team.
5+
6+
# **dotenv** (See end of file for .env.local integration)
7+
# .env would override anything in this file, if enabled.
8+
# .env is a DOCKER standard, and if we use it, it would be in deployed, or DOCKER, environments.
9+
# Override and customize anything below in your own .env.local
10+
# If you are using dotenv and not direnv,
11+
# copy the following `export` statements to your own .env file.
12+
13+
### General Ruby ###
14+
# Turn off Ruby Warnings about deprecated code
15+
# export RUBYOPT="-W0"
16+
17+
### External Testing Controls
18+
export K_SOUP_COV_DO=true # Means you want code coverage
19+
# Available formats are html, xml, rcov, lcov, json, tty
20+
export K_SOUP_COV_COMMAND_NAME="RSpec Coverage"
21+
export K_SOUP_COV_FORMATTERS="html,tty"
22+
export K_SOUP_COV_MIN_BRANCH=99 # Means you want to enforce X% branch coverage
23+
export K_SOUP_COV_MIN_LINE=100 # Means you want to enforce X% line coverage
24+
export K_SOUP_COV_MIN_HARD=true # Means you want the build to fail if the coverage thresholds are not met
25+
export K_SOUP_COV_MULTI_FORMATTERS=true
26+
export K_SOUP_COV_OPEN_BIN= # Means don't try to open coverage results in browser
27+
export MAX_ROWS=1 # Setting for simplecov-console gem for tty output, limits to the worst N rows of bad coverage
28+
29+
# Internal Debugging Controls
30+
export DEBUG=false # do not allow byebug statements (override in .env.local)
31+
32+
# .env would override anything in this file, if `dotenv` is uncommented below.
33+
# .env is a DOCKER standard, and if we use it, it would be in deployed, or DOCKER, environments,
34+
# and that is why we generally want to leave it commented out.
35+
# dotenv
36+
37+
# .env.local will override anything in this file.
38+
dotenv_if_exists .env.local

.github/FUNDING.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@ liberapay: pboling # Replace with a single Liberapay username
99
open_collective: # Replace with a single Open Collective username
1010
patreon: galtzo # Replace with a single Patreon username
1111
polar: pboling
12-
thanks_dev: gh/pboling
12+
thanks_dev: u/gh/pboling
1313
tidelift: rubygems/oauth2 # Replace with a single Tidelift platform-name/package-name e.g., npm/babel

.github/dependabot.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,7 @@ updates:
88
open-pull-requests-limit: 10
99
ignore:
1010
- dependency-name: "rubocop-lts"
11+
- package-ecosystem: "github-actions"
12+
directory: "/"
13+
schedule:
14+
interval: "daily"

.github/workflows/heads.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,9 @@ jobs:
3636
- f1
3737
- f2
3838
rubygems:
39-
- latest
39+
- default
4040
bundler:
41-
- latest
41+
- default
4242
ruby:
4343
- truffleruby+graalvm-head
4444
- truffleruby-head

.github/workflows/jruby-head.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,9 @@ jobs:
3737
- f1
3838
- f2
3939
rubygems:
40-
- latest
40+
- default
4141
bundler:
42-
- latest
42+
- default
4343
ruby:
4444
- jruby-head
4545
include:

.github/workflows/style.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
bundler:
2727
- latest
2828
ruby:
29-
- "2.7"
29+
- ruby
3030
runs-on: ubuntu-latest
3131
steps:
3232
- name: Checkout

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,3 +37,6 @@
3737
# Version Managers
3838
.ruby-version
3939
.tool-versions
40+
41+
# Local config
42+
.env.local

.gitlab-ci.yml

Lines changed: 47 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,19 @@
11
default:
22
image: ruby:3.2
33

4+
variables:
5+
BUNDLE_INSTALL_FLAGS: "--quiet --jobs=$(nproc) --retry=3"
6+
BUNDLE_FROZEN: "false" # No lockfile!
7+
K_SOUP_COV_DEBUG: true
8+
K_SOUP_COV_DO: true
9+
K_SOUP_COV_HARD: true
10+
K_SOUP_COV_MIN_BRANCH: 98
11+
K_SOUP_COV_MIN_LINE: 98
12+
K_SOUP_COV_VERBOSE: true
13+
K_SOUP_COV_FORMATTERS: "html,xml,rcov,lcov,json,tty"
14+
K_SOUP_COV_MULTI_FORMATTERS: true
15+
K_SOUP_COV_COMMAND_NAME: "RSpec Coverage"
16+
417
workflow:
518
rules:
619
# For merge requests, create a pipeline.
@@ -16,8 +29,8 @@ workflow:
1629
script:
1730
- gem update --system > /dev/null 2>&1
1831
- bundle config --local path vendor
19-
- bundle install --quiet --jobs 4 --retry 3
20-
- bundle exec rake test
32+
- bundle install
33+
- bundle exec rake
2134
cache:
2235
key: ${CI_JOB_IMAGE}
2336
paths:
@@ -28,24 +41,51 @@ workflow:
2841
stage: test
2942
script:
3043
# Because we support EOL Ruby still...
31-
- gem install rubygems-update -v 3.4.22 > /dev/null 2>&1
44+
- gem install rubygems-update -v ${RUBYGEMS_VERSION}
3245
# Actually updates both RubyGems and Bundler!
33-
- update_rubygems > /dev/null 2>&1
46+
- update_rubygems
3447
- bundle config --local path vendor
35-
- bundle install --quiet --jobs 4 --retry 3
48+
- bundle install
3649
- bundle exec rake test
3750
cache:
3851
key: ${CI_JOB_IMAGE}
3952
paths:
4053
- vendor/ruby
4154

4255
ruby-current:
56+
variables:
57+
BUNDLE_GEMFILE: gemfiles/omnibus.gemfile
58+
K_SOUP_COV_DO: true
4359
<<: *test_definition-current
4460
parallel:
4561
matrix:
46-
- RUBY_VERSION: ["3.0", "3.1", "3.2"]
62+
- RUBY_VERSION: ["3.2", "3.3", "3.4"]
63+
64+
ruby-ruby3_1:
65+
variables:
66+
RUBYGEMS_VERSION: "3.6.9"
67+
BUNDLE_GEMFILE: gemfiles/vanilla.gemfile
68+
K_SOUP_COV_DO: false
69+
<<: *test_definition-legacy
70+
parallel:
71+
matrix:
72+
- RUBY_VERSION: ["3.1"]
73+
74+
ruby-ruby3_0:
75+
variables:
76+
RUBYGEMS_VERSION: "3.5.23"
77+
BUNDLE_GEMFILE: gemfiles/vanilla.gemfile
78+
K_SOUP_COV_DO: false
79+
<<: *test_definition-legacy
80+
parallel:
81+
matrix:
82+
- RUBY_VERSION: ["3.0"]
4783

48-
ruby-legacy:
84+
ruby-ruby2_7:
85+
variables:
86+
RUBYGEMS_VERSION: "3.4.22"
87+
BUNDLE_GEMFILE: gemfiles/vanilla.gemfile
88+
K_SOUP_COV_DO: false
4989
<<: *test_definition-legacy
5090
parallel:
5191
matrix:

.rspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
--format documentation
2-
--require spec_helper
32
--color
3+
--require spec_helper
44
--order random

.rubocop.yml

Lines changed: 4 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,8 @@
1-
inherit_from:
2-
- .rubocop_todo.yml
3-
- .rubocop_rspec.yml
4-
51
inherit_gem:
62
rubocop-lts: rubocop-lts.yml
73

8-
require:
9-
# Try adding back once we reach rubocop-ruby2_3+
10-
# - 'rubocop-md'
11-
# Can be added once we reach rubocop-ruby2_3+
12-
# - 'rubocop-packaging'
13-
- 'rubocop-performance'
14-
- 'rubocop-rake'
15-
- 'rubocop-rspec'
4+
inherit_from:
5+
- .rubocop_rspec.yml
166

177
AllCops:
188
DisplayCopNames: true # Display the name of the failing cops
@@ -22,23 +12,15 @@ AllCops:
2212
- '**/.irbrc'
2313

2414
Metrics/BlockLength:
25-
ExcludedMethods:
26-
- context
27-
- describe
28-
- it
29-
- shared_context
30-
- shared_examples
31-
- shared_examples_for
32-
- namespace
33-
- draw
15+
Enabled: false
3416

3517
Gemspec/RequiredRubyVersion:
3618
Enabled: false
3719

3820
Metrics/BlockNesting:
3921
Max: 2
4022

41-
Metrics/LineLength:
23+
Layout/LineLength:
4224
Enabled: false
4325

4426
Metrics/ParameterLists:
@@ -60,12 +42,6 @@ Lint/UnusedBlockArgument:
6042
- 'vendor/**/*'
6143
- '**/.irbrc'
6244

63-
RSpec/DescribeClass:
64-
Exclude:
65-
- 'spec/examples/*'
66-
67-
RSpec/NestedGroups:
68-
Enabled: false
6945

7046
Style/ClassVars:
7147
Enabled: false

0 commit comments

Comments
 (0)