alphabetical_schema 0.1.1 → 0.1.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1cea5b5756978b8ab3f079b3591d75fe61b4c2ab77ebce5718ad994e780643c7
4
- data.tar.gz: dec3acfe012bf6d28fb158291d407e6f881a95b29c98be2448f202b42612b139
3
+ metadata.gz: 230ee01f85d039a45a4f30aebd5dbee72fbdbe4d5edb44992afffaf6cfcab31c
4
+ data.tar.gz: 27d504b81e17bc82643a96accb50c57117a24efde7d47c65c4e65f695db72647
5
5
  SHA512:
6
- metadata.gz: 7872af6e790b51fa5d16c960f1bc16caeda9ba9c94369ccdd7d9fe10b57d777396caa0ab1dc70b001fa708c2a1bf957700b52f82e9ab8d2281ac56c0e492f7f6
7
- data.tar.gz: ed722534cac545b6a098d08988c4ea9bb6aa74b467c50afb623ca7396380781f2ad817a4d925a1e06a9705047f780b3f8017997eb8d43587f71ac4e3e45860ce
6
+ metadata.gz: 8a9c03008e8d3fd7a304819e396b8b7ac7557608b82bd52b8c2d4d987881ee4f35d365518164748c086be303028627a9cb0d939bada26a021e9ef8a025814c9e
7
+ data.tar.gz: 8c5612ce8c9d92a26b65752f8a485f699d455af3443d4cc6e2aeda2531d445eae9addc0e6d64e61daf50b96a0620b1655a63f3acdd80189b7390bd7522306f12
@@ -13,7 +13,7 @@ jobs:
13
13
  - uses: actions/checkout@v2
14
14
  - uses: ruby/setup-ruby@v1
15
15
  with:
16
- ruby-version: 2.7
16
+ ruby-version: 3.3
17
17
  - run: bundle install
18
18
  - run: bundle exec appraisal install
19
19
  - run: bundle exec appraisal rspec
data/.gitignore CHANGED
@@ -7,5 +7,6 @@
7
7
  /spec/reports/
8
8
  /tmp/
9
9
  /spec/internal/db/*.sqlite
10
+ /spec/internal/db/*.sqlite-*
10
11
  /Gemfile.lock
11
12
  /gemfiles/*.lock
data/Appraisals CHANGED
@@ -1,15 +1,15 @@
1
- appraise "rails-5.2" do
2
- gem "rails", "~> 5.2.0"
1
+ appraise "rails-7.1" do
2
+ gem "rails", "~> 7.1.0"
3
3
  end
4
4
 
5
- appraise "rails-6.0" do
6
- gem "rails", "~> 6.0.0"
5
+ appraise "rails-7.2" do
6
+ gem "rails", "~> 7.2.0"
7
7
  end
8
8
 
9
- appraise "rails-6.1" do
10
- gem "rails", "~> 6.1.0"
9
+ appraise "rails-8.0" do
10
+ gem "rails", "~> 8.0.0"
11
11
  end
12
12
 
13
- appraise "rails-7.0" do
14
- gem "rails", "~> 7.0.0"
13
+ appraise "rails-8.1" do
14
+ gem "rails", "~> 8.1.0"
15
15
  end
data/README.md CHANGED
@@ -16,6 +16,15 @@ Run `rake db:migrate`.
16
16
 
17
17
  ## Changelog
18
18
 
19
+ ### 0.1.3 (2026-10-06)
20
+
21
+ * Relax rails dependency to allow rails 8.1
22
+ * Support the batched column lookup of upcoming rails versions
23
+
24
+ ### 0.1.2 (2025-03-17)
25
+
26
+ * Relax rails dependency to allow rails 8
27
+
19
28
  ### 0.1.1 (2022-04-28)
20
29
 
21
30
  * Relax rails dependency to allow rails 7
@@ -24,7 +24,7 @@ Gem::Specification.new do |spec|
24
24
  spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
25
25
  spec.require_paths = ["lib"]
26
26
 
27
- spec.add_dependency "rails", "< 8"
27
+ spec.add_dependency "rails", "< 8.2"
28
28
 
29
29
  spec.add_development_dependency "appraisal"
30
30
  spec.add_development_dependency "combustion", "~> 1.3"
@@ -4,6 +4,6 @@ source "https://rubygems.org"
4
4
 
5
5
  gem "rake", "~> 13.0"
6
6
  gem "sqlite3"
7
- gem "rails", "~> 5.2.0"
7
+ gem "rails", "~> 7.1.0"
8
8
 
9
9
  gemspec path: "../"
@@ -4,6 +4,6 @@ source "https://rubygems.org"
4
4
 
5
5
  gem "rake", "~> 13.0"
6
6
  gem "sqlite3"
7
- gem "rails", "~> 6.0.0"
7
+ gem "rails", "~> 7.2.0"
8
8
 
9
9
  gemspec path: "../"
@@ -4,6 +4,6 @@ source "https://rubygems.org"
4
4
 
5
5
  gem "rake", "~> 13.0"
6
6
  gem "sqlite3"
7
- gem "rails", "~> 6.1.0"
7
+ gem "rails", "~> 8.0.0"
8
8
 
9
9
  gemspec path: "../"
@@ -4,6 +4,6 @@ source "https://rubygems.org"
4
4
 
5
5
  gem "rake", "~> 13.0"
6
6
  gem "sqlite3"
7
- gem "rails", "~> 7.0.0"
7
+ gem "rails", "~> 8.1.0"
8
8
 
9
9
  gemspec path: "../"
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module AlphabeticalSchema
4
- VERSION = "0.1.1"
4
+ VERSION = "0.1.3"
5
5
  end
@@ -1,12 +1,25 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "alphabetical_schema/version"
4
+ require "delegate"
4
5
 
5
6
  module AlphabeticalSchema
6
7
  class SortedConnection < SimpleDelegator
7
- def columns(table_name)
8
- super.sort_by(&:name)
8
+ # Rails < 8.2 reads the columns of one table at a time. Later versions pass
9
+ # all table names at once and receive a hash of columns by table name.
10
+ def columns(table_names)
11
+ columns = super
12
+ if columns.is_a?(Hash)
13
+ columns.transform_values { |table_columns| sort(table_columns) }
14
+ else
15
+ sort(columns)
16
+ end
9
17
  end
18
+
19
+ private
20
+ def sort(columns)
21
+ columns.sort_by(&:name)
22
+ end
10
23
  end
11
24
 
12
25
  module SchemaDumperPatch
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alphabetical_schema
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fabian Schwahn
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2022-04-28 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: rails
@@ -16,14 +15,14 @@ dependencies:
16
15
  requirements:
17
16
  - - "<"
18
17
  - !ruby/object:Gem::Version
19
- version: '8'
18
+ version: '8.2'
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
23
  - - "<"
25
24
  - !ruby/object:Gem::Version
26
- version: '8'
25
+ version: '8.2'
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: appraisal
29
28
  requirement: !ruby/object:Gem::Requirement
@@ -66,7 +65,6 @@ dependencies:
66
65
  - - ">="
67
66
  - !ruby/object:Gem::Version
68
67
  version: '0'
69
- description:
70
68
  email:
71
69
  - fabian.schwahn@gmail.com
72
70
  executables: []
@@ -82,10 +80,10 @@ files:
82
80
  - README.md
83
81
  - Rakefile
84
82
  - alphabetical_schema.gemspec
85
- - gemfiles/rails_5.2.gemfile
86
- - gemfiles/rails_6.0.gemfile
87
- - gemfiles/rails_6.1.gemfile
88
- - gemfiles/rails_7.0.gemfile
83
+ - gemfiles/rails_7.1.gemfile
84
+ - gemfiles/rails_7.2.gemfile
85
+ - gemfiles/rails_8.0.gemfile
86
+ - gemfiles/rails_8.1.gemfile
89
87
  - lib/alphabetical_schema.rb
90
88
  - lib/alphabetical_schema/version.rb
91
89
  homepage: https://github.com/denkungsart/alphabetical_schema
@@ -93,7 +91,6 @@ licenses:
93
91
  - MIT
94
92
  metadata:
95
93
  homepage_uri: https://github.com/denkungsart/alphabetical_schema
96
- post_install_message:
97
94
  rdoc_options: []
98
95
  require_paths:
99
96
  - lib
@@ -108,8 +105,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
108
105
  - !ruby/object:Gem::Version
109
106
  version: '0'
110
107
  requirements: []
111
- rubygems_version: 3.1.6
112
- signing_key:
108
+ rubygems_version: 3.6.9
113
109
  specification_version: 4
114
110
  summary: Sort schema.rb alphabetically to prevent conflicts
115
111
  test_files: []