omniauth-multipassword 2.0.0.rc1 → 2.0.1
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 +4 -4
- data/.github/workflows/maintenance-cache-wipe.yml +13 -0
- data/.github/workflows/maintenance-workflow-cleanup.yml +17 -0
- data/.github/workflows/test.yml +28 -12
- data/.gitignore +5 -5
- data/.rubocop.yml +2 -2
- data/Appraisals +9 -0
- data/CHANGELOG.md +16 -7
- data/Gemfile +7 -3
- data/gemfiles/omniauth_2.0.gemfile +21 -0
- data/gemfiles/omniauth_2.1.gemfile +21 -0
- data/lib/omniauth/multipassword/base.rb +5 -5
- data/lib/omniauth/multipassword/version.rb +3 -3
- data/lib/omniauth/strategies/multi_password.rb +2 -2
- data/omniauth-multipassword.gemspec +3 -4
- data/renovate.json +6 -0
- data/spec/omniauth/multipassword/base_spec.rb +1 -3
- data/spec/omniauth/strategy/multi_password_spec.rb +1 -1
- data/spec/spec_helper.rb +7 -5
- metadata +15 -10
- data/.travis.yml +0 -10
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 22cda2cc2846bbe4d81087736f52e35f63c590595e6fc384006b0af8da14802f
|
|
4
|
+
data.tar.gz: 0600cb2dbafa41d13aeee34bda46ecb0263546489903aa68444d05126ade735c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f3148c680d27dd56bae5325280e49670cd905d42d6e79cb668b01f0eb8951605bd27816233f3f55cef452c1a67215a94c6b25280dc6083eae3796c1eb12c2ce3
|
|
7
|
+
data.tar.gz: 6b48ab914cd47ff3b8b9641d52f1618050b5cafec8e1f171528eae6f7c8cbe909dd4095fbadc2b92caca6a9f25c002a06e9ab4ee837e8b504d1c031502772f26
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: maintenance-workflow-cleanup
|
|
3
|
+
on:
|
|
4
|
+
schedule:
|
|
5
|
+
- cron: "0 0 1 * *"
|
|
6
|
+
workflow_dispatch:
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
delete-workflow-runs:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- uses: Mattraks/delete-workflow-runs@v2
|
|
13
|
+
with:
|
|
14
|
+
token: ${{ github.token }}
|
|
15
|
+
repository: ${{ github.repository }}
|
|
16
|
+
retain_days: 180
|
|
17
|
+
keep_minimum_runs: 50
|
data/.github/workflows/test.yml
CHANGED
|
@@ -1,45 +1,61 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: test
|
|
3
|
-
on:
|
|
3
|
+
on:
|
|
4
|
+
- push
|
|
5
|
+
- pull_request
|
|
6
|
+
- workflow_dispatch
|
|
7
|
+
|
|
4
8
|
jobs:
|
|
5
9
|
rspec:
|
|
6
|
-
name: "Ruby ${{ matrix.ruby }}"
|
|
7
|
-
runs-on: ubuntu-
|
|
10
|
+
name: "Ruby ${{ matrix.ruby }} / ${{ matrix.gemfile }}"
|
|
11
|
+
runs-on: ubuntu-22.04
|
|
8
12
|
|
|
9
13
|
strategy:
|
|
10
14
|
fail-fast: false
|
|
11
15
|
matrix:
|
|
12
16
|
ruby:
|
|
17
|
+
- "3.3"
|
|
18
|
+
- "3.2"
|
|
19
|
+
- "3.1"
|
|
13
20
|
- "3.0"
|
|
14
21
|
- "2.7"
|
|
15
|
-
|
|
16
|
-
-
|
|
22
|
+
gemfile:
|
|
23
|
+
- omniauth_2.0
|
|
24
|
+
- omniauth_2.1
|
|
25
|
+
|
|
26
|
+
env:
|
|
27
|
+
BUNDLE_GEMFILE: gemfiles/${{ matrix.gemfile }}.gemfile
|
|
28
|
+
BUNDLE_WITHOUT: development
|
|
17
29
|
|
|
18
30
|
steps:
|
|
19
31
|
- uses: actions/checkout@master
|
|
20
32
|
- uses: ruby/setup-ruby@v1
|
|
21
33
|
with:
|
|
22
34
|
ruby-version: ${{ matrix.ruby }}
|
|
23
|
-
bundler-cache:
|
|
35
|
+
bundler-cache: true
|
|
24
36
|
env:
|
|
25
|
-
BUNDLE_WITHOUT: development
|
|
26
37
|
BUNDLE_JOBS: 4
|
|
27
38
|
BUNDLE_RETRY: 3
|
|
28
39
|
|
|
29
|
-
- run:
|
|
40
|
+
- run: |
|
|
41
|
+
bundle exec rspec --color --format documentation
|
|
42
|
+
|
|
43
|
+
- uses: codecov/codecov-action@v4
|
|
44
|
+
with:
|
|
45
|
+
fail_ci_if_error: true
|
|
46
|
+
token: ${{ secrets.CODECOV_TOKEN }}
|
|
30
47
|
|
|
31
48
|
rubocop:
|
|
32
49
|
name: rubocop
|
|
33
|
-
runs-on: ubuntu-
|
|
50
|
+
runs-on: ubuntu-22.04
|
|
34
51
|
|
|
35
52
|
steps:
|
|
36
53
|
- uses: actions/checkout@master
|
|
37
54
|
- uses: ruby/setup-ruby@v1
|
|
38
55
|
with:
|
|
39
|
-
ruby-version: 3.
|
|
40
|
-
bundler-cache:
|
|
56
|
+
ruby-version: "3.3"
|
|
57
|
+
bundler-cache: true
|
|
41
58
|
env:
|
|
42
|
-
BUNDLE_WITHOUT: development
|
|
43
59
|
BUNDLE_JOBS: 4
|
|
44
60
|
BUNDLE_RETRY: 3
|
|
45
61
|
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
data/Appraisals
ADDED
data/CHANGELOG.md
CHANGED
|
@@ -3,16 +3,25 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
This project adheres to [Semantic Versioning](http://semver.org/) and [Keep a Changelog](http://keepachangelog.com/).
|
|
5
5
|
|
|
6
|
-
## Unreleased
|
|
7
|
-
---
|
|
6
|
+
## [Unreleased]
|
|
8
7
|
|
|
9
|
-
|
|
8
|
+
## [2.0.1] - 2024-07-20
|
|
10
9
|
|
|
11
|
-
###
|
|
10
|
+
### Changed
|
|
12
11
|
|
|
13
|
-
|
|
12
|
+
- Version bump due to wrong tag
|
|
14
13
|
|
|
15
|
-
|
|
16
|
-
* Updated strategy to OmniAuth >= 2.0
|
|
14
|
+
## [2.0.0] - 2024-07-20
|
|
17
15
|
|
|
16
|
+
### Added
|
|
18
17
|
|
|
18
|
+
- Add compatibility with newer Rack and OmniAuth 2.1+
|
|
19
|
+
|
|
20
|
+
### Changed
|
|
21
|
+
|
|
22
|
+
- Updated strategy to OmniAuth >= 2.0
|
|
23
|
+
- Drop support for Ruby < 2.7
|
|
24
|
+
|
|
25
|
+
[Unreleased]: https://github.com/jgraichen/omniauth-multipassword/compare/v2.0.1...HEAD
|
|
26
|
+
[2.0.1]: https://github.com/jgraichen/omniauth-multipassword/compare/v2.0.0...v2.0.1
|
|
27
|
+
[2.0.0]: https://github.com/jgraichen/omniauth-multipassword/releases/tag/v2.0.0
|
data/Gemfile
CHANGED
|
@@ -5,6 +5,8 @@ source 'https://rubygems.org'
|
|
|
5
5
|
# Specify your gem's dependencies in omniauth-multipassword.gemspec
|
|
6
6
|
gemspec
|
|
7
7
|
|
|
8
|
+
gem 'appraisal'
|
|
9
|
+
|
|
8
10
|
gem 'rake'
|
|
9
11
|
gem 'rake-release'
|
|
10
12
|
|
|
@@ -13,8 +15,10 @@ group :test do
|
|
|
13
15
|
|
|
14
16
|
gem 'rspec', '~> 3.0'
|
|
15
17
|
|
|
16
|
-
gem '
|
|
17
|
-
gem 'simplecov'
|
|
18
|
+
gem 'simplecov'
|
|
19
|
+
gem 'simplecov-cobertura'
|
|
20
|
+
end
|
|
18
21
|
|
|
19
|
-
|
|
22
|
+
group :development do
|
|
23
|
+
gem 'rubocop-config', github: 'jgraichen/rubocop-config', ref: 'v12'
|
|
20
24
|
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# This file was generated by Appraisal
|
|
2
|
+
|
|
3
|
+
source "https://rubygems.org"
|
|
4
|
+
|
|
5
|
+
gem "appraisal"
|
|
6
|
+
gem "rake"
|
|
7
|
+
gem "rake-release"
|
|
8
|
+
gem "omniauth", "~> 2.0.0"
|
|
9
|
+
|
|
10
|
+
group :test do
|
|
11
|
+
gem "rack-test"
|
|
12
|
+
gem "rspec", "~> 3.0"
|
|
13
|
+
gem "simplecov"
|
|
14
|
+
gem "simplecov-cobertura"
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
group :development do
|
|
18
|
+
gem "rubocop-config", github: "jgraichen/rubocop-config", ref: "v12"
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
gemspec path: "../"
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# This file was generated by Appraisal
|
|
2
|
+
|
|
3
|
+
source "https://rubygems.org"
|
|
4
|
+
|
|
5
|
+
gem "appraisal"
|
|
6
|
+
gem "rake"
|
|
7
|
+
gem "rake-release"
|
|
8
|
+
gem "omniauth", "~> 2.1"
|
|
9
|
+
|
|
10
|
+
group :test do
|
|
11
|
+
gem "rack-test"
|
|
12
|
+
gem "rspec", "~> 3.0"
|
|
13
|
+
gem "simplecov"
|
|
14
|
+
gem "simplecov-cobertura"
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
group :development do
|
|
18
|
+
gem "rubocop-config", github: "jgraichen/rubocop-config", ref: "v12"
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
gemspec path: "../"
|
|
@@ -13,15 +13,15 @@ module OmniAuth
|
|
|
13
13
|
end
|
|
14
14
|
|
|
15
15
|
def username_id
|
|
16
|
-
options
|
|
16
|
+
options.dig(:fields, 0) || 'username'
|
|
17
17
|
end
|
|
18
18
|
|
|
19
19
|
def password_id
|
|
20
|
-
options
|
|
20
|
+
options.dig(:fields, 1) || 'password'
|
|
21
21
|
end
|
|
22
22
|
|
|
23
23
|
def username
|
|
24
|
-
@username || request[username_id].to_s
|
|
24
|
+
@username || request.params[username_id.to_s].to_s
|
|
25
25
|
end
|
|
26
26
|
|
|
27
27
|
def init_authenticator(request, env, username)
|
|
@@ -31,7 +31,7 @@ module OmniAuth
|
|
|
31
31
|
end
|
|
32
32
|
|
|
33
33
|
def callback_phase
|
|
34
|
-
if authenticate(username, request[password_id])
|
|
34
|
+
if authenticate(username, request.params[password_id.to_s])
|
|
35
35
|
super
|
|
36
36
|
else
|
|
37
37
|
fail!(:invalid_credentials)
|
|
@@ -49,7 +49,7 @@ module OmniAuth
|
|
|
49
49
|
# OmniAuth, by default, disables "GET" requests for security reasons.
|
|
50
50
|
# This effectively disables showing a password form on a GET request to
|
|
51
51
|
# the `request_phase`. Instead, we hook the GET requests here.
|
|
52
|
-
|
|
52
|
+
request_phase if on_request_path?
|
|
53
53
|
end
|
|
54
54
|
end
|
|
55
55
|
end
|
|
@@ -5,11 +5,11 @@ module Omniauth
|
|
|
5
5
|
module VERSION
|
|
6
6
|
MAJOR = 2
|
|
7
7
|
MINOR = 0
|
|
8
|
-
PATCH =
|
|
9
|
-
STAGE =
|
|
8
|
+
PATCH = 1
|
|
9
|
+
STAGE = nil
|
|
10
10
|
|
|
11
11
|
def self.to_s
|
|
12
|
-
[MAJOR, MINOR, PATCH, STAGE].
|
|
12
|
+
[MAJOR, MINOR, PATCH, STAGE].compact.join '.'
|
|
13
13
|
end
|
|
14
14
|
end
|
|
15
15
|
end
|
|
@@ -44,8 +44,8 @@ module OmniAuth
|
|
|
44
44
|
end
|
|
45
45
|
|
|
46
46
|
def callback_phase
|
|
47
|
-
username = request[username_id].to_s
|
|
48
|
-
password = request[password_id].to_s
|
|
47
|
+
username = request.params[username_id.to_s].to_s
|
|
48
|
+
password = request.params[password_id.to_s].to_s
|
|
49
49
|
if authenticate(username, password)
|
|
50
50
|
super
|
|
51
51
|
else
|
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
require File.expand_path('lib/omniauth/multipassword/version', __dir__)
|
|
4
4
|
|
|
5
5
|
Gem::Specification.new do |gem|
|
|
6
|
+
gem.name = 'omniauth-multipassword'
|
|
7
|
+
gem.version = Omniauth::Multipassword::VERSION
|
|
6
8
|
gem.authors = ['Jan Graichen']
|
|
7
9
|
gem.email = ['jgraichen@altimos.de']
|
|
8
10
|
gem.description = 'A OmniAuth strategy to authenticate using different passwort strategies.'
|
|
@@ -10,17 +12,14 @@ Gem::Specification.new do |gem|
|
|
|
10
12
|
gem.homepage = 'https://github.com/jgraichen/omniauth-multipassword'
|
|
11
13
|
gem.license = 'MIT'
|
|
12
14
|
|
|
13
|
-
gem.required_ruby_version = '>= 2.
|
|
15
|
+
gem.required_ruby_version = '>= 2.7'
|
|
14
16
|
gem.metadata = {
|
|
15
17
|
'rubygems_mfa_required' => 'true',
|
|
16
18
|
}
|
|
17
19
|
|
|
18
20
|
gem.executables = `git ls-files -- bin/*`.split("\n").map {|f| File.basename(f) }
|
|
19
21
|
gem.files = `git ls-files`.split("\n")
|
|
20
|
-
gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
|
21
|
-
gem.name = 'omniauth-multipassword'
|
|
22
22
|
gem.require_paths = ['lib']
|
|
23
|
-
gem.version = Omniauth::Multipassword::VERSION
|
|
24
23
|
|
|
25
24
|
gem.add_dependency 'omniauth', '~> 2.0'
|
|
26
25
|
end
|
data/renovate.json
ADDED
|
@@ -3,9 +3,7 @@
|
|
|
3
3
|
require 'spec_helper'
|
|
4
4
|
require 'rack/test'
|
|
5
5
|
|
|
6
|
-
describe OmniAuth::MultiPassword::Base do # rubocop:disable RSpec/
|
|
7
|
-
subject { strategy }
|
|
8
|
-
|
|
6
|
+
describe OmniAuth::MultiPassword::Base do # rubocop:disable RSpec/SpecFilePathFormat subject { strategy }
|
|
9
7
|
let(:app) { instance_double(Proc) }
|
|
10
8
|
let(:strategy) do
|
|
11
9
|
OmniAuth::Strategies::OneTest.new(app, *args, &block)
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
require 'spec_helper'
|
|
4
4
|
require 'rack/test'
|
|
5
5
|
|
|
6
|
-
describe OmniAuth::Strategies::MultiPassword do # rubocop:disable RSpec/
|
|
6
|
+
describe OmniAuth::Strategies::MultiPassword do # rubocop:disable RSpec/SpecFilePathFormat
|
|
7
7
|
include Rack::Test::Methods
|
|
8
8
|
|
|
9
9
|
let(:app) do
|
data/spec/spec_helper.rb
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
require 'rspec'
|
|
4
|
-
require 'simplecov'
|
|
5
4
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
SimpleCov.formatter = SimpleCov::Formatter::Codecov
|
|
9
|
-
end
|
|
5
|
+
require 'simplecov'
|
|
6
|
+
require 'simplecov-cobertura'
|
|
10
7
|
|
|
11
8
|
SimpleCov.start do
|
|
12
9
|
add_filter 'spec'
|
|
13
10
|
end
|
|
14
11
|
|
|
12
|
+
SimpleCov.formatters = [
|
|
13
|
+
SimpleCov::Formatter::HTMLFormatter,
|
|
14
|
+
SimpleCov::Formatter::CoberturaFormatter,
|
|
15
|
+
]
|
|
16
|
+
|
|
15
17
|
require 'omniauth-multipassword'
|
|
16
18
|
|
|
17
19
|
Dir[File.expand_path('spec/support/**/*.rb')].sort.each {|f| require f }
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: omniauth-multipassword
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.0.
|
|
4
|
+
version: 2.0.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jan Graichen
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2024-07-20 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: omniauth
|
|
@@ -32,21 +32,26 @@ extensions: []
|
|
|
32
32
|
extra_rdoc_files: []
|
|
33
33
|
files:
|
|
34
34
|
- ".editorconfig"
|
|
35
|
+
- ".github/workflows/maintenance-cache-wipe.yml"
|
|
36
|
+
- ".github/workflows/maintenance-workflow-cleanup.yml"
|
|
35
37
|
- ".github/workflows/test.yml"
|
|
36
38
|
- ".gitignore"
|
|
37
39
|
- ".rspec"
|
|
38
40
|
- ".rubocop.yml"
|
|
39
|
-
-
|
|
41
|
+
- Appraisals
|
|
40
42
|
- CHANGELOG.md
|
|
41
43
|
- Gemfile
|
|
42
44
|
- LICENSE
|
|
43
45
|
- README.md
|
|
44
46
|
- Rakefile
|
|
47
|
+
- gemfiles/omniauth_2.0.gemfile
|
|
48
|
+
- gemfiles/omniauth_2.1.gemfile
|
|
45
49
|
- lib/omniauth-multipassword.rb
|
|
46
50
|
- lib/omniauth/multipassword/base.rb
|
|
47
51
|
- lib/omniauth/multipassword/version.rb
|
|
48
52
|
- lib/omniauth/strategies/multi_password.rb
|
|
49
53
|
- omniauth-multipassword.gemspec
|
|
54
|
+
- renovate.json
|
|
50
55
|
- spec/omniauth/multipassword/base_spec.rb
|
|
51
56
|
- spec/omniauth/strategy/multi_password_spec.rb
|
|
52
57
|
- spec/spec_helper.rb
|
|
@@ -56,7 +61,7 @@ licenses:
|
|
|
56
61
|
- MIT
|
|
57
62
|
metadata:
|
|
58
63
|
rubygems_mfa_required: 'true'
|
|
59
|
-
post_install_message:
|
|
64
|
+
post_install_message:
|
|
60
65
|
rdoc_options: []
|
|
61
66
|
require_paths:
|
|
62
67
|
- lib
|
|
@@ -64,15 +69,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
64
69
|
requirements:
|
|
65
70
|
- - ">="
|
|
66
71
|
- !ruby/object:Gem::Version
|
|
67
|
-
version: '2.
|
|
72
|
+
version: '2.7'
|
|
68
73
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
69
74
|
requirements:
|
|
70
|
-
- - "
|
|
75
|
+
- - ">="
|
|
71
76
|
- !ruby/object:Gem::Version
|
|
72
|
-
version:
|
|
77
|
+
version: '0'
|
|
73
78
|
requirements: []
|
|
74
|
-
rubygems_version: 3.
|
|
75
|
-
signing_key:
|
|
79
|
+
rubygems_version: 3.5.11
|
|
80
|
+
signing_key:
|
|
76
81
|
specification_version: 4
|
|
77
82
|
summary: A OmniAuth strategy to authenticate using different passwort strategies.
|
|
78
83
|
test_files: []
|