diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1d3053c..07ad8cf 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -21,21 +21,24 @@ jobs: - ruby: 2.7.3 gemfile: Gemfile.6-1 - ruby: 2.7.3 - gemfile: Gemfile.7-0 + gemfile: Gemfile.7-1 - ruby: 3.2.0 gemfile: Gemfile.6-1 - ruby: 3.2.0 - gemfile: Gemfile.7-0 + gemfile: Gemfile.7-1 - ruby: 3.3.4 gemfile: Gemfile.7-1 + - ruby: 3.3.4 + gemfile: Gemfile.7-2 env: BUNDLE_GEMFILE: "${{ matrix.gemfile }}" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Install ruby uses: ruby/setup-ruby@v1 with: ruby-version: "${{ matrix.ruby }}" + bundler-cache: true # runs 'bundle install' and caches installed gems automatically - name: Bundle run: | gem install bundler:1.17.3 diff --git a/Gemfile b/Gemfile index 36d7f6f..944f183 120000 --- a/Gemfile +++ b/Gemfile @@ -1 +1 @@ -Gemfile.7-1 \ No newline at end of file +Gemfile.7-2 \ No newline at end of file diff --git a/Gemfile.7-0.lock b/Gemfile.7-0.lock deleted file mode 100644 index f80112d..0000000 --- a/Gemfile.7-0.lock +++ /dev/null @@ -1,133 +0,0 @@ -PATH - remote: . - specs: - consul (1.3.2) - activerecord (>= 3.2) - activesupport (>= 3.2) - edge_rider (>= 0.3.0) - memoized (>= 1.0.2) - railties (>= 3.2) - -GEM - remote: https://rubygems.org/ - specs: - actionpack (7.0.4.1) - actionview (= 7.0.4.1) - activesupport (= 7.0.4.1) - rack (~> 2.0, >= 2.2.0) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.2.0) - actionview (7.0.4.1) - activesupport (= 7.0.4.1) - builder (~> 3.1) - erubi (~> 1.4) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.1, >= 1.2.0) - activemodel (7.0.4.1) - activesupport (= 7.0.4.1) - activerecord (7.0.4.1) - activemodel (= 7.0.4.1) - activesupport (= 7.0.4.1) - activesupport (7.0.4.1) - concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (>= 1.6, < 2) - minitest (>= 5.1) - tzinfo (~> 2.0) - assignable_values (0.18.0) - activerecord (>= 2.3) - builder (3.2.4) - concurrent-ruby (1.2.0) - crass (1.0.6) - database_cleaner (2.0.1) - database_cleaner-active_record (~> 2.0.0) - database_cleaner-active_record (2.0.1) - activerecord (>= 5.a) - database_cleaner-core (~> 2.0.0) - database_cleaner-core (2.0.1) - diff-lcs (1.5.0) - edge_rider (2.1.1) - activerecord (>= 3.2) - erubi (1.12.0) - gemika (0.8.1) - i18n (1.12.0) - concurrent-ruby (~> 1.0) - loofah (2.19.1) - crass (~> 1.0.2) - nokogiri (>= 1.5.9) - memoized (1.1.1) - method_source (1.0.0) - mini_portile2 (2.8.1) - minitest (5.17.0) - nokogiri (1.14.0) - mini_portile2 (~> 2.8.0) - racc (~> 1.4) - racc (1.6.2) - rack (2.2.6.2) - rack-test (2.0.2) - rack (>= 1.3) - rails-dom-testing (2.0.3) - activesupport (>= 4.2.0) - nokogiri (>= 1.6) - rails-html-sanitizer (1.5.0) - loofah (~> 2.19, >= 2.19.1) - railties (7.0.4.1) - actionpack (= 7.0.4.1) - activesupport (= 7.0.4.1) - method_source - rake (>= 12.2) - thor (~> 1.0) - zeitwerk (~> 2.5) - rake (13.0.6) - rspec (3.12.0) - rspec-core (~> 3.12.0) - rspec-expectations (~> 3.12.0) - rspec-mocks (~> 3.12.0) - rspec-core (3.12.0) - rspec-support (~> 3.12.0) - rspec-expectations (3.12.2) - diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.12.0) - rspec-mocks (3.12.3) - diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.12.0) - rspec-rails (6.0.1) - actionpack (>= 6.1) - activesupport (>= 6.1) - railties (>= 6.1) - rspec-core (~> 3.11) - rspec-expectations (~> 3.11) - rspec-mocks (~> 3.11) - rspec-support (~> 3.11) - rspec-support (3.12.0) - rspec_candy (0.5.1) - rspec - sneaky-save - shoulda-matchers (5.3.0) - activesupport (>= 5.2.0) - sneaky-save (0.1.3) - activerecord (>= 3.2.0) - sqlite3 (1.6.0) - mini_portile2 (~> 2.8.0) - thor (1.2.1) - tzinfo (2.0.5) - concurrent-ruby (~> 1.0) - zeitwerk (2.6.6) - -PLATFORMS - ruby - -DEPENDENCIES - assignable_values - consul! - database_cleaner - gemika (>= 0.8.1) - railties (>= 7.0.1) - rspec - rspec-rails - rspec_candy - shoulda-matchers - sqlite3 - -BUNDLED WITH - 2.3.5 diff --git a/Gemfile.7-1.lock b/Gemfile.7-1.lock index 2125305..ac6a30a 100644 --- a/Gemfile.7-1.lock +++ b/Gemfile.7-1.lock @@ -76,7 +76,7 @@ GEM mini_portile2 (2.8.7) minitest (5.24.1) mutex_m (0.2.0) - nokogiri (1.16.6) + nokogiri (1.15.6) mini_portile2 (~> 2.8.2) racc (~> 1.4) psych (5.1.2) @@ -134,7 +134,7 @@ GEM rspec_candy (0.5.1) rspec sneaky-save - shoulda-matchers (6.2.0) + shoulda-matchers (5.3.0) activesupport (>= 5.2.0) sneaky-save (0.1.3) activerecord (>= 3.2.0) @@ -164,4 +164,4 @@ DEPENDENCIES sqlite3 (~> 1.7) BUNDLED WITH - 2.5.15 + 2.4.22 diff --git a/Gemfile.7-0 b/Gemfile.7-2 similarity index 84% rename from Gemfile.7-0 rename to Gemfile.7-2 index 5ea0197..aad267c 100644 --- a/Gemfile.7-0 +++ b/Gemfile.7-2 @@ -1,7 +1,7 @@ source 'https://rubygems.org' # Runtime dependencies -gem 'railties', '>= 7.0.1' +gem 'railties', '~> 7.2' gem 'assignable_values' # Development dependencies @@ -9,7 +9,7 @@ gem 'rspec' gem 'rspec-rails' gem 'rspec_candy' gem 'shoulda-matchers' -gem 'sqlite3' +gem 'sqlite3', "~> 1.7" gem 'database_cleaner' gem 'gemika', '>= 0.8.1' diff --git a/Gemfile.7-2.lock b/Gemfile.7-2.lock new file mode 100644 index 0000000..d19208c --- /dev/null +++ b/Gemfile.7-2.lock @@ -0,0 +1,171 @@ +PATH + remote: . + specs: + consul (1.3.2) + activerecord (>= 3.2) + activesupport (>= 3.2) + edge_rider (>= 0.3.0) + memoized (>= 1.0.2) + railties (>= 3.2) + +GEM + remote: https://rubygems.org/ + specs: + actionpack (7.2.2) + actionview (= 7.2.2) + activesupport (= 7.2.2) + nokogiri (>= 1.8.5) + racc + rack (>= 2.2.4, < 3.2) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + useragent (~> 0.16) + actionview (7.2.2) + activesupport (= 7.2.2) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activemodel (7.2.2) + activesupport (= 7.2.2) + activerecord (7.2.2) + activemodel (= 7.2.2) + activesupport (= 7.2.2) + timeout (>= 0.4.0) + activesupport (7.2.2) + base64 + benchmark (>= 0.3) + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + logger (>= 1.4.2) + minitest (>= 5.1) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + assignable_values (1.0.0) + activerecord (>= 2.3) + base64 (0.2.0) + benchmark (0.4.0) + bigdecimal (3.1.8) + builder (3.3.0) + concurrent-ruby (1.3.3) + connection_pool (2.4.1) + crass (1.0.6) + database_cleaner (2.0.2) + database_cleaner-active_record (>= 2, < 3) + database_cleaner-active_record (2.2.0) + activerecord (>= 5.a) + database_cleaner-core (~> 2.0.0) + database_cleaner-core (2.0.1) + diff-lcs (1.5.1) + drb (2.2.1) + edge_rider (2.3.0) + activerecord (>= 3.2) + erubi (1.13.0) + gemika (0.8.3) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + io-console (0.7.2) + irb (1.14.1) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + logger (1.6.1) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + memoized (1.1.1) + mini_portile2 (2.8.7) + minitest (5.24.1) + nokogiri (1.16.6) + mini_portile2 (~> 2.8.2) + racc (~> 1.4) + psych (5.2.0) + stringio + racc (1.8.0) + rack (3.1.7) + rack-session (2.0.0) + rack (>= 3.0.0) + rack-test (2.1.0) + rack (>= 1.3) + rackup (2.2.1) + rack (>= 3) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.2.2) + actionpack (= 7.2.2) + activesupport (= 7.2.2) + irb (~> 1.13) + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) + rake (13.2.1) + rdoc (6.7.0) + psych (>= 4.0.0) + reline (0.5.11) + io-console (~> 0.5) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-rails (6.1.3) + actionpack (>= 6.1) + activesupport (>= 6.1) + railties (>= 6.1) + rspec-core (~> 3.13) + rspec-expectations (~> 3.13) + rspec-mocks (~> 3.13) + rspec-support (~> 3.13) + rspec-support (3.13.1) + rspec_candy (0.5.1) + rspec + sneaky-save + securerandom (0.3.2) + shoulda-matchers (6.2.0) + activesupport (>= 5.2.0) + sneaky-save (0.1.3) + activerecord (>= 3.2.0) + sqlite3 (1.7.3) + mini_portile2 (~> 2.8.0) + stringio (3.1.2) + thor (1.3.2) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + useragent (0.16.10) + zeitwerk (2.7.1) + +PLATFORMS + ruby + +DEPENDENCIES + assignable_values + consul! + database_cleaner + gemika (>= 0.8.1) + railties (~> 7.2) + rspec + rspec-rails + rspec_candy + shoulda-matchers + sqlite3 (~> 1.7) + +BUNDLED WITH + 2.5.15 diff --git a/Gemfile.lock b/Gemfile.lock index 9142ed3..9397aa1 120000 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1 +1 @@ -Gemfile.7-1.lock \ No newline at end of file +Gemfile.7-2.lock \ No newline at end of file diff --git a/README.md b/README.md index e1175e6..6cff918 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ Consul is an authorization solution for Ruby on Rails where you describe _sets o We have used Consul in combination with [assignable_values](https://github.com/makandra/assignable_values) to solve a variety of authorization requirements ranging from boring to bizarre. Also see our crash course video: [Solving bizare authorization requirements with Rails](http://bizarre-authorization.talks.makandra.com/). -Consul is tested with Rails 5.2, 6.1, 7.0, 7.1 on Ruby 2.5, 2.7, 3.2, 3.3 (only if supported, for each Ruby/Rails combination). If you need support for Rails 3.2, please use [v0.13.2](https://github.com/makandra/consul/tree/v0.13.2). +Consul is tested with Rails 5.2, 6.1, 7.1, 7.2 on Ruby 2.5, 2.7, 3.2, 3.3 (only if supported, for each Ruby/Rails combination). If you need support for Rails 3.2, please use [v0.13.2](https://github.com/makandra/consul/tree/v0.13.2). ## Describing access to your application