puzzle-apartment 2.12.0 → 2.13.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/.circleci/config.yml +3 -3
- data/.github/workflows/main.yml +68 -0
- data/.ruby-version +1 -1
- data/Appraisals +27 -26
- data/Rakefile +12 -17
- data/gemfiles/rails_7_2.gemfile +17 -0
- data/gemfiles/rails_8_0.gemfile +17 -0
- data/lib/apartment/active_record/postgres/schema_dumper.rb +12 -0
- data/lib/apartment/adapters/abstract_adapter.rb +1 -1
- data/lib/apartment/migrator.rb +6 -11
- data/lib/apartment/version.rb +1 -1
- data/lib/apartment.rb +8 -14
- data/puzzle-apartment.gemspec +12 -7
- metadata +45 -30
- data/gemfiles/rails_6_1.gemfile +0 -17
- data/gemfiles/rails_7_0.gemfile +0 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: caf999b402944727005ef82e81f76e97b8bbe81bdb6806af0d2bc3f334ac8c5e
|
4
|
+
data.tar.gz: e5dbfbb81010992e94d53a13ebd1219214c7cb04738169aa9acf78fecd54c941
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a049127f950862ed75bb911bb15f358039f7ef795678e4a139e667c29fe1f6bbb1a66c6bbc5e8db0584ede9ecd13be9fce8089e309d93fb21be1d3925df10e4e
|
7
|
+
data.tar.gz: aa1105aec786fe3c0d2ac8e031fda63f01ab17c16909b98df892407bda87c1f3fd0141b0fc2cbf8142cfc97f62a801c59863fae30d51da0fd4ddcb41517ae9ff
|
data/.circleci/config.yml
CHANGED
@@ -62,10 +62,10 @@ workflows:
|
|
62
62
|
- build:
|
63
63
|
matrix:
|
64
64
|
parameters:
|
65
|
-
ruby_version: ["ruby:3.
|
65
|
+
ruby_version: ["ruby:3.2.2", "ruby:3.3.6", "ruby:3.4.3"]
|
66
66
|
gemfile:
|
67
67
|
[
|
68
|
-
"gemfiles/rails_6_1.gemfile",
|
69
|
-
"gemfiles/rails_7_0.gemfile",
|
70
68
|
"gemfiles/rails_7_1.gemfile",
|
69
|
+
"gemfiles/rails_7_2.gemfile",
|
70
|
+
"gemfiles/rails_8_0.gemfile",
|
71
71
|
]
|
@@ -0,0 +1,68 @@
|
|
1
|
+
name: RSpec
|
2
|
+
on:
|
3
|
+
push:
|
4
|
+
branches:
|
5
|
+
- development
|
6
|
+
- main
|
7
|
+
pull_request:
|
8
|
+
types: [opened, synchronize, reopened]
|
9
|
+
release:
|
10
|
+
types: [published]
|
11
|
+
|
12
|
+
jobs:
|
13
|
+
test:
|
14
|
+
name: rails / rspec
|
15
|
+
runs-on: ubuntu-latest
|
16
|
+
strategy:
|
17
|
+
fail-fast: false
|
18
|
+
matrix:
|
19
|
+
ruby_version:
|
20
|
+
- 3.2
|
21
|
+
- 3.3
|
22
|
+
- 3.4
|
23
|
+
rails_version:
|
24
|
+
- 7_1
|
25
|
+
- 7_2
|
26
|
+
- 8_0
|
27
|
+
env:
|
28
|
+
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/rails_${{ matrix.rails_version }}.gemfile
|
29
|
+
CI: true
|
30
|
+
services:
|
31
|
+
postgres:
|
32
|
+
image: postgres:14 # pg_dump tests currently depend on this version
|
33
|
+
env:
|
34
|
+
POSTGRES_PASSWORD: postgres
|
35
|
+
POSTGRES_HOST_AUTH_METHOD: trust
|
36
|
+
POSTGRES_DB: apartment_postgresql_test
|
37
|
+
options: >-
|
38
|
+
--health-cmd pg_isready
|
39
|
+
--health-interval 10s
|
40
|
+
--health-timeout 5s
|
41
|
+
--health-retries 5
|
42
|
+
ports:
|
43
|
+
- 5432:5432
|
44
|
+
mysql:
|
45
|
+
image: mysql:8.0
|
46
|
+
env:
|
47
|
+
MYSQL_ALLOW_EMPTY_PASSWORD: true
|
48
|
+
MYSQL_DATABASE: apartment_mysql_test
|
49
|
+
options: >-
|
50
|
+
--health-cmd "mysqladmin ping"
|
51
|
+
--health-interval 10s
|
52
|
+
--health-timeout 5s
|
53
|
+
--health-retries 5
|
54
|
+
ports:
|
55
|
+
- 3306:3306
|
56
|
+
steps:
|
57
|
+
- uses: actions/checkout@v4
|
58
|
+
- name: Set up Ruby ${{ matrix.ruby-version }}
|
59
|
+
uses: ruby/setup-ruby@v1
|
60
|
+
with:
|
61
|
+
ruby-version: ${{ matrix.ruby_version }}
|
62
|
+
bundler-cache: true
|
63
|
+
- name: Configure config database.yml
|
64
|
+
run: bundle exec rake db:copy_credentials
|
65
|
+
- name: Database Setup
|
66
|
+
run: bundle exec rake db:test:prepare
|
67
|
+
- name: Run tests
|
68
|
+
run: bundle exec rspec --format progress --format RspecJunitFormatter -o ~/test-results/rspec/rspec.xml
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.
|
1
|
+
3.3.6
|
data/Appraisals
CHANGED
@@ -1,21 +1,9 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
appraise 'rails-
|
4
|
-
gem 'rails', '~>
|
5
|
-
platforms :ruby do
|
6
|
-
gem 'sqlite3', '~> 1.4'
|
7
|
-
end
|
8
|
-
platforms :jruby do
|
9
|
-
gem 'activerecord-jdbc-adapter', '~> 61.0'
|
10
|
-
gem 'activerecord-jdbcpostgresql-adapter', '~> 61.0'
|
11
|
-
gem 'activerecord-jdbcmysql-adapter', '~> 61.0'
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
appraise 'rails-7-0' do
|
16
|
-
gem 'rails', '~> 7.0.0'
|
3
|
+
appraise 'rails-7-1' do
|
4
|
+
gem 'rails', '~> 7.1.0'
|
17
5
|
platforms :ruby do
|
18
|
-
gem 'sqlite3', '~> 1.
|
6
|
+
gem 'sqlite3', '~> 1.6'
|
19
7
|
end
|
20
8
|
platforms :jruby do
|
21
9
|
gem 'activerecord-jdbc-adapter', '~> 61.0'
|
@@ -24,26 +12,39 @@ appraise 'rails-7-0' do
|
|
24
12
|
end
|
25
13
|
end
|
26
14
|
|
27
|
-
appraise 'rails-7-
|
28
|
-
gem 'rails', '~> 7.
|
15
|
+
appraise 'rails-7-2' do
|
16
|
+
gem 'rails', '~> 7.2.0'
|
29
17
|
platforms :ruby do
|
30
18
|
gem 'sqlite3', '~> 1.6'
|
31
19
|
end
|
32
20
|
platforms :jruby do
|
33
|
-
gem 'activerecord-jdbc-adapter', '~>
|
34
|
-
gem 'activerecord-jdbcpostgresql-adapter', '~>
|
35
|
-
gem 'activerecord-jdbcmysql-adapter', '~>
|
21
|
+
gem 'activerecord-jdbc-adapter', '~> 70.0'
|
22
|
+
gem 'activerecord-jdbcpostgresql-adapter', '~> 70.0'
|
23
|
+
gem 'activerecord-jdbcmysql-adapter', '~> 70.0'
|
36
24
|
end
|
37
25
|
end
|
38
26
|
|
39
|
-
appraise 'rails-
|
40
|
-
gem 'rails',
|
27
|
+
appraise 'rails-8-0' do
|
28
|
+
gem 'rails', '~> 8.0.0'
|
41
29
|
platforms :ruby do
|
42
|
-
gem 'sqlite3', '~>
|
30
|
+
gem 'sqlite3', '~> 2.0'
|
43
31
|
end
|
44
32
|
platforms :jruby do
|
45
|
-
gem 'activerecord-jdbc-adapter', '~>
|
46
|
-
gem 'activerecord-jdbcpostgresql-adapter', '~>
|
47
|
-
gem 'activerecord-jdbcmysql-adapter', '~>
|
33
|
+
gem 'activerecord-jdbc-adapter', '~> 70.0'
|
34
|
+
gem 'activerecord-jdbcpostgresql-adapter', '~> 70.0'
|
35
|
+
gem 'activerecord-jdbcmysql-adapter', '~> 70.0'
|
48
36
|
end
|
49
37
|
end
|
38
|
+
|
39
|
+
# Install Rails from the main branch are failing
|
40
|
+
# appraise 'rails-master' do
|
41
|
+
# gem 'rails', git: 'https://github.com/rails/rails.git'
|
42
|
+
# platforms :ruby do
|
43
|
+
# gem 'sqlite3', '~> 2.0'
|
44
|
+
# end
|
45
|
+
# platforms :jruby do
|
46
|
+
# gem 'activerecord-jdbc-adapter', '~> 61.0'
|
47
|
+
# gem 'activerecord-jdbcpostgresql-adapter', '~> 61.0'
|
48
|
+
# gem 'activerecord-jdbcmysql-adapter', '~> 61.0'
|
49
|
+
# end
|
50
|
+
# end
|
data/Rakefile
CHANGED
@@ -15,6 +15,7 @@ require 'rspec/core/rake_task'
|
|
15
15
|
|
16
16
|
RSpec::Core::RakeTask.new(spec: %w[db:copy_credentials db:test:prepare]) do |spec|
|
17
17
|
spec.pattern = 'spec/**/*_spec.rb'
|
18
|
+
spec.rspec_opts = "--tag ~database:#{ENV['DB'] == 'pg' ? 'mysql' : 'postgresql'}" if ENV['DB'].present?
|
18
19
|
# spec.rspec_opts = '--order rand:47078'
|
19
20
|
end
|
20
21
|
|
@@ -59,6 +60,8 @@ namespace :postgres do
|
|
59
60
|
|
60
61
|
desc 'Build the PostgreSQL test databases'
|
61
62
|
task :build_db do
|
63
|
+
next if ENV['DB'] && ENV['DB'] != 'pg'
|
64
|
+
|
62
65
|
params = []
|
63
66
|
params << '-E UTF8'
|
64
67
|
params << pg_config['database']
|
@@ -77,6 +80,8 @@ namespace :postgres do
|
|
77
80
|
|
78
81
|
desc 'drop the PostgreSQL test database'
|
79
82
|
task :drop_db do
|
83
|
+
next if ENV['DB'] && ENV['DB'] != 'pg'
|
84
|
+
|
80
85
|
puts "dropping database #{pg_config['database']}"
|
81
86
|
params = []
|
82
87
|
params << pg_config['database']
|
@@ -93,6 +98,8 @@ namespace :mysql do
|
|
93
98
|
|
94
99
|
desc 'Build the MySQL test databases'
|
95
100
|
task :build_db do
|
101
|
+
next if ENV['DB'] && ENV['DB'] != 'mysql'
|
102
|
+
|
96
103
|
params = []
|
97
104
|
params << "-h #{my_config['host']}" if my_config['host']
|
98
105
|
params << "-u #{my_config['username']}" if my_config['username']
|
@@ -109,6 +116,8 @@ namespace :mysql do
|
|
109
116
|
|
110
117
|
desc 'drop the MySQL test database'
|
111
118
|
task :drop_db do
|
119
|
+
next if ENV['DB'] && ENV['DB'] != 'mysql'
|
120
|
+
|
112
121
|
puts "dropping database #{my_config['database']}"
|
113
122
|
params = []
|
114
123
|
params << "-h #{my_config['host']}" if my_config['host']
|
@@ -132,26 +141,12 @@ def my_config
|
|
132
141
|
config['mysql']
|
133
142
|
end
|
134
143
|
|
135
|
-
def activerecord_below_5_2?
|
136
|
-
ActiveRecord.version.release < Gem::Version.new('5.2.0')
|
137
|
-
end
|
138
|
-
|
139
|
-
def activerecord_below_6_0?
|
140
|
-
ActiveRecord.version.release < Gem::Version.new('6.0.0')
|
141
|
-
end
|
142
|
-
|
143
|
-
def activerecord_above_7_0?
|
144
|
-
ActiveRecord.version.release > Gem::Version.new('7.0.0')
|
145
|
-
end
|
146
|
-
|
147
144
|
def migrate
|
148
|
-
if
|
149
|
-
|
150
|
-
|
145
|
+
# TODO: Figure out if there is any other possibility that can/should be
|
146
|
+
# passed here as the second argument for the migration context
|
147
|
+
if ActiveRecord.version > "7.1"
|
151
148
|
ActiveRecord::MigrationContext.new('spec/dummy/db/migrate').migrate
|
152
149
|
else
|
153
|
-
# TODO: Figure out if there is any other possibility that can/should be
|
154
|
-
# passed here as the second argument for the migration context
|
155
150
|
ActiveRecord::MigrationContext.new('spec/dummy/db/migrate', ActiveRecord::SchemaMigration).migrate
|
156
151
|
end
|
157
152
|
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# This file was generated by Appraisal
|
2
|
+
|
3
|
+
source "http://rubygems.org"
|
4
|
+
|
5
|
+
gem "rails", "~> 7.2.0"
|
6
|
+
|
7
|
+
platforms :ruby do
|
8
|
+
gem "sqlite3", "~> 1.6"
|
9
|
+
end
|
10
|
+
|
11
|
+
platforms :jruby do
|
12
|
+
gem 'activerecord-jdbc-adapter', '~> 70.0'
|
13
|
+
gem "activerecord-jdbcpostgresql-adapter", "~> 70.0"
|
14
|
+
gem "activerecord-jdbcmysql-adapter", "~> 70.0"
|
15
|
+
end
|
16
|
+
|
17
|
+
gemspec path: "../"
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# This file was generated by Appraisal
|
2
|
+
|
3
|
+
source "http://rubygems.org"
|
4
|
+
|
5
|
+
gem "rails", "~> 8.0.0"
|
6
|
+
|
7
|
+
platforms :ruby do
|
8
|
+
gem "sqlite3", "~> 2.0"
|
9
|
+
end
|
10
|
+
|
11
|
+
platforms :jruby do
|
12
|
+
gem 'activerecord-jdbc-adapter', '~> 70.0'
|
13
|
+
gem "activerecord-jdbcpostgresql-adapter", "~> 70.0"
|
14
|
+
gem "activerecord-jdbcmysql-adapter", "~> 70.0"
|
15
|
+
end
|
16
|
+
|
17
|
+
gemspec path: "../"
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# This patch prevents `create_schema` from being added to db/schema.rb as schemas are managed by Apartment
|
2
|
+
# not ActiveRecord like they would be in a vanilla Rails setup.
|
3
|
+
|
4
|
+
require "active_record/connection_adapters/abstract/schema_dumper"
|
5
|
+
require "active_record/connection_adapters/postgresql/schema_dumper"
|
6
|
+
|
7
|
+
class ActiveRecord::ConnectionAdapters::PostgreSQL::SchemaDumper
|
8
|
+
alias_method :_original_schemas, :schemas
|
9
|
+
def schemas(stream)
|
10
|
+
_original_schemas(stream) unless Apartment.use_schemas
|
11
|
+
end
|
12
|
+
end
|
@@ -181,7 +181,7 @@ module Apartment
|
|
181
181
|
query_cache_enabled = ActiveRecord::Base.connection.query_cache_enabled
|
182
182
|
|
183
183
|
Apartment.establish_connection multi_tenantify(tenant)
|
184
|
-
Apartment.connection.
|
184
|
+
Apartment.connection.verify! # call active? to manually check if this connection is valid
|
185
185
|
|
186
186
|
Apartment.connection.enable_query_cache! if query_cache_enabled
|
187
187
|
rescue *rescuable_exceptions => e
|
data/lib/apartment/migrator.rb
CHANGED
@@ -13,8 +13,8 @@ module Apartment
|
|
13
13
|
|
14
14
|
migration_scope_block = ->(migration) { ENV['SCOPE'].blank? || (ENV['SCOPE'] == migration.scope) }
|
15
15
|
|
16
|
-
if
|
17
|
-
ActiveRecord::
|
16
|
+
if ActiveRecord.version >= Gem::Version.new('7.2.0')
|
17
|
+
ActiveRecord::Base.connection_pool.migration_context.migrate(version, &migration_scope_block)
|
18
18
|
else
|
19
19
|
ActiveRecord::Base.connection.migration_context.migrate(version, &migration_scope_block)
|
20
20
|
end
|
@@ -24,8 +24,8 @@ module Apartment
|
|
24
24
|
# Migrate up/down to a specific version
|
25
25
|
def run(direction, database, version)
|
26
26
|
Tenant.switch(database) do
|
27
|
-
if
|
28
|
-
ActiveRecord::
|
27
|
+
if ActiveRecord.version >= Gem::Version.new('7.2.0')
|
28
|
+
ActiveRecord::Base.connection_pool.migration_context.run(direction, version)
|
29
29
|
else
|
30
30
|
ActiveRecord::Base.connection.migration_context.run(direction, version)
|
31
31
|
end
|
@@ -35,18 +35,13 @@ module Apartment
|
|
35
35
|
# rollback latest migration `step` number of times
|
36
36
|
def rollback(database, step = 1)
|
37
37
|
Tenant.switch(database) do
|
38
|
-
if
|
39
|
-
ActiveRecord::
|
38
|
+
if ActiveRecord.version >= Gem::Version.new('7.2.0')
|
39
|
+
ActiveRecord::Base.connection_pool.migration_context.rollback(step)
|
40
40
|
else
|
41
41
|
ActiveRecord::Base.connection.migration_context.rollback(step)
|
42
42
|
end
|
43
43
|
end
|
44
44
|
end
|
45
45
|
|
46
|
-
private
|
47
|
-
|
48
|
-
def activerecord_below_5_2?
|
49
|
-
ActiveRecord.version.release < Gem::Version.new('5.2.0')
|
50
|
-
end
|
51
46
|
end
|
52
47
|
end
|
data/lib/apartment/version.rb
CHANGED
data/lib/apartment.rb
CHANGED
@@ -7,14 +7,12 @@ require 'active_record'
|
|
7
7
|
require 'apartment/tenant'
|
8
8
|
|
9
9
|
require_relative 'apartment/log_subscriber'
|
10
|
+
require_relative 'apartment/active_record/connection_handling'
|
11
|
+
require_relative 'apartment/active_record/schema_migration'
|
12
|
+
require_relative 'apartment/active_record/internal_metadata'
|
10
13
|
|
11
|
-
if ActiveRecord.version.release >= Gem::Version.new('
|
12
|
-
require_relative 'apartment/active_record/
|
13
|
-
end
|
14
|
-
|
15
|
-
if ActiveRecord.version.release >= Gem::Version.new('6.1')
|
16
|
-
require_relative 'apartment/active_record/schema_migration'
|
17
|
-
require_relative 'apartment/active_record/internal_metadata'
|
14
|
+
if ActiveRecord.version.release >= Gem::Version.new('7.1')
|
15
|
+
require_relative 'apartment/active_record/postgres/schema_dumper'
|
18
16
|
end
|
19
17
|
|
20
18
|
# Apartment main definitions
|
@@ -33,14 +31,10 @@ module Apartment
|
|
33
31
|
attr_accessor(*ACCESSOR_METHODS)
|
34
32
|
attr_writer(*WRITER_METHODS)
|
35
33
|
|
36
|
-
|
37
|
-
def_delegators :connection_class, :connection, :connection_db_config, :establish_connection
|
34
|
+
def_delegators :connection_class, :connection, :connection_db_config, :establish_connection
|
38
35
|
|
39
|
-
|
40
|
-
|
41
|
-
end
|
42
|
-
else
|
43
|
-
def_delegators :connection_class, :connection, :connection_config, :establish_connection
|
36
|
+
def connection_config
|
37
|
+
connection_db_config.configuration_hash
|
44
38
|
end
|
45
39
|
|
46
40
|
# configure apartment with available options
|
data/puzzle-apartment.gemspec
CHANGED
@@ -26,11 +26,16 @@ Gem::Specification.new do |s|
|
|
26
26
|
|
27
27
|
s.homepage = 'https://github.com/puzzle/apartment'
|
28
28
|
s.licenses = ['MIT']
|
29
|
+
s.metadata = {
|
30
|
+
'github_repo' => 'ssh://github.com/puzzle/apartment'
|
31
|
+
}
|
29
32
|
|
30
|
-
s.
|
31
|
-
|
32
|
-
s.add_dependency '
|
33
|
-
s.add_dependency '
|
33
|
+
s.required_ruby_version = '>= 3.1', '< 3.5'
|
34
|
+
|
35
|
+
s.add_dependency 'activerecord', '>= 7.0.0', '< 8.1'
|
36
|
+
s.add_dependency 'parallel', '< 2.0'
|
37
|
+
s.add_dependency 'public_suffix', '>= 2.0.5', '<= 6.0.1'
|
38
|
+
s.add_dependency 'rack', '>= 1.3.6', '< 4.0'
|
34
39
|
|
35
40
|
s.add_development_dependency 'appraisal', '~> 2.2'
|
36
41
|
s.add_development_dependency 'bundler', '>= 1.3', '< 3.0'
|
@@ -52,8 +57,8 @@ Gem::Specification.new do |s|
|
|
52
57
|
s.add_development_dependency 'jdbc-mysql'
|
53
58
|
s.add_development_dependency 'jdbc-postgres'
|
54
59
|
else
|
55
|
-
s.add_development_dependency 'mysql2'
|
56
|
-
s.add_development_dependency 'pg'
|
57
|
-
s.add_development_dependency 'sqlite3'
|
60
|
+
s.add_development_dependency 'mysql2'
|
61
|
+
s.add_development_dependency 'pg'
|
62
|
+
s.add_development_dependency 'sqlite3'
|
58
63
|
end
|
59
64
|
end
|
metadata
CHANGED
@@ -1,16 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: puzzle-apartment
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.13.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryan Brunner
|
8
8
|
- Brad Robertson
|
9
9
|
- Rui Baltazar
|
10
|
-
autorequire:
|
11
10
|
bindir: bin
|
12
11
|
cert_chain: []
|
13
|
-
date:
|
12
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
14
13
|
dependencies:
|
15
14
|
- !ruby/object:Gem::Dependency
|
16
15
|
name: activerecord
|
@@ -18,34 +17,34 @@ dependencies:
|
|
18
17
|
requirements:
|
19
18
|
- - ">="
|
20
19
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
20
|
+
version: 7.0.0
|
22
21
|
- - "<"
|
23
22
|
- !ruby/object:Gem::Version
|
24
|
-
version: '
|
23
|
+
version: '8.1'
|
25
24
|
type: :runtime
|
26
25
|
prerelease: false
|
27
26
|
version_requirements: !ruby/object:Gem::Requirement
|
28
27
|
requirements:
|
29
28
|
- - ">="
|
30
29
|
- !ruby/object:Gem::Version
|
31
|
-
version:
|
30
|
+
version: 7.0.0
|
32
31
|
- - "<"
|
33
32
|
- !ruby/object:Gem::Version
|
34
|
-
version: '
|
33
|
+
version: '8.1'
|
35
34
|
- !ruby/object:Gem::Dependency
|
36
35
|
name: parallel
|
37
36
|
requirement: !ruby/object:Gem::Requirement
|
38
37
|
requirements:
|
39
|
-
- - "
|
38
|
+
- - "<"
|
40
39
|
- !ruby/object:Gem::Version
|
41
|
-
version: '
|
40
|
+
version: '2.0'
|
42
41
|
type: :runtime
|
43
42
|
prerelease: false
|
44
43
|
version_requirements: !ruby/object:Gem::Requirement
|
45
44
|
requirements:
|
46
|
-
- - "
|
45
|
+
- - "<"
|
47
46
|
- !ruby/object:Gem::Version
|
48
|
-
version: '
|
47
|
+
version: '2.0'
|
49
48
|
- !ruby/object:Gem::Dependency
|
50
49
|
name: public_suffix
|
51
50
|
requirement: !ruby/object:Gem::Requirement
|
@@ -53,6 +52,9 @@ dependencies:
|
|
53
52
|
- - ">="
|
54
53
|
- !ruby/object:Gem::Version
|
55
54
|
version: 2.0.5
|
55
|
+
- - "<="
|
56
|
+
- !ruby/object:Gem::Version
|
57
|
+
version: 6.0.1
|
56
58
|
type: :runtime
|
57
59
|
prerelease: false
|
58
60
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -60,6 +62,9 @@ dependencies:
|
|
60
62
|
- - ">="
|
61
63
|
- !ruby/object:Gem::Version
|
62
64
|
version: 2.0.5
|
65
|
+
- - "<="
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: 6.0.1
|
63
68
|
- !ruby/object:Gem::Dependency
|
64
69
|
name: rack
|
65
70
|
requirement: !ruby/object:Gem::Requirement
|
@@ -67,6 +72,9 @@ dependencies:
|
|
67
72
|
- - ">="
|
68
73
|
- !ruby/object:Gem::Version
|
69
74
|
version: 1.3.6
|
75
|
+
- - "<"
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '4.0'
|
70
78
|
type: :runtime
|
71
79
|
prerelease: false
|
72
80
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -74,6 +82,9 @@ dependencies:
|
|
74
82
|
- - ">="
|
75
83
|
- !ruby/object:Gem::Version
|
76
84
|
version: 1.3.6
|
85
|
+
- - "<"
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '4.0'
|
77
88
|
- !ruby/object:Gem::Dependency
|
78
89
|
name: appraisal
|
79
90
|
requirement: !ruby/object:Gem::Requirement
|
@@ -252,44 +263,44 @@ dependencies:
|
|
252
263
|
name: mysql2
|
253
264
|
requirement: !ruby/object:Gem::Requirement
|
254
265
|
requirements:
|
255
|
-
- - "
|
266
|
+
- - ">="
|
256
267
|
- !ruby/object:Gem::Version
|
257
|
-
version: '0
|
268
|
+
version: '0'
|
258
269
|
type: :development
|
259
270
|
prerelease: false
|
260
271
|
version_requirements: !ruby/object:Gem::Requirement
|
261
272
|
requirements:
|
262
|
-
- - "
|
273
|
+
- - ">="
|
263
274
|
- !ruby/object:Gem::Version
|
264
|
-
version: '0
|
275
|
+
version: '0'
|
265
276
|
- !ruby/object:Gem::Dependency
|
266
277
|
name: pg
|
267
278
|
requirement: !ruby/object:Gem::Requirement
|
268
279
|
requirements:
|
269
|
-
- - "
|
280
|
+
- - ">="
|
270
281
|
- !ruby/object:Gem::Version
|
271
|
-
version: '
|
282
|
+
version: '0'
|
272
283
|
type: :development
|
273
284
|
prerelease: false
|
274
285
|
version_requirements: !ruby/object:Gem::Requirement
|
275
286
|
requirements:
|
276
|
-
- - "
|
287
|
+
- - ">="
|
277
288
|
- !ruby/object:Gem::Version
|
278
|
-
version: '
|
289
|
+
version: '0'
|
279
290
|
- !ruby/object:Gem::Dependency
|
280
291
|
name: sqlite3
|
281
292
|
requirement: !ruby/object:Gem::Requirement
|
282
293
|
requirements:
|
283
|
-
- - "
|
294
|
+
- - ">="
|
284
295
|
- !ruby/object:Gem::Version
|
285
|
-
version:
|
296
|
+
version: '0'
|
286
297
|
type: :development
|
287
298
|
prerelease: false
|
288
299
|
version_requirements: !ruby/object:Gem::Requirement
|
289
300
|
requirements:
|
290
|
-
- - "
|
301
|
+
- - ">="
|
291
302
|
- !ruby/object:Gem::Version
|
292
|
-
version:
|
303
|
+
version: '0'
|
293
304
|
description: Apartment allows Rack applications to deal with database multitenancy
|
294
305
|
through ActiveRecord
|
295
306
|
email:
|
@@ -303,6 +314,7 @@ files:
|
|
303
314
|
- ".circleci/config.yml"
|
304
315
|
- ".github/ISSUE_TEMPLATE.md"
|
305
316
|
- ".github/workflows/changelog.yml"
|
317
|
+
- ".github/workflows/main.yml"
|
306
318
|
- ".github/workflows/reviewdog.yml"
|
307
319
|
- ".gitignore"
|
308
320
|
- ".pryrc"
|
@@ -320,13 +332,14 @@ files:
|
|
320
332
|
- Rakefile
|
321
333
|
- TODO.md
|
322
334
|
- docker-compose.yml
|
323
|
-
- gemfiles/rails_6_1.gemfile
|
324
|
-
- gemfiles/rails_7_0.gemfile
|
325
335
|
- gemfiles/rails_7_1.gemfile
|
336
|
+
- gemfiles/rails_7_2.gemfile
|
337
|
+
- gemfiles/rails_8_0.gemfile
|
326
338
|
- gemfiles/rails_master.gemfile
|
327
339
|
- lib/apartment.rb
|
328
340
|
- lib/apartment/active_record/connection_handling.rb
|
329
341
|
- lib/apartment/active_record/internal_metadata.rb
|
342
|
+
- lib/apartment/active_record/postgres/schema_dumper.rb
|
330
343
|
- lib/apartment/active_record/postgresql_adapter.rb
|
331
344
|
- lib/apartment/active_record/schema_migration.rb
|
332
345
|
- lib/apartment/adapters/abstract_adapter.rb
|
@@ -362,8 +375,8 @@ files:
|
|
362
375
|
homepage: https://github.com/puzzle/apartment
|
363
376
|
licenses:
|
364
377
|
- MIT
|
365
|
-
metadata:
|
366
|
-
|
378
|
+
metadata:
|
379
|
+
github_repo: ssh://github.com/puzzle/apartment
|
367
380
|
rdoc_options: []
|
368
381
|
require_paths:
|
369
382
|
- lib
|
@@ -371,15 +384,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
371
384
|
requirements:
|
372
385
|
- - ">="
|
373
386
|
- !ruby/object:Gem::Version
|
374
|
-
version: '
|
387
|
+
version: '3.1'
|
388
|
+
- - "<"
|
389
|
+
- !ruby/object:Gem::Version
|
390
|
+
version: '3.5'
|
375
391
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
376
392
|
requirements:
|
377
393
|
- - ">="
|
378
394
|
- !ruby/object:Gem::Version
|
379
395
|
version: '0'
|
380
396
|
requirements: []
|
381
|
-
rubygems_version: 3.
|
382
|
-
signing_key:
|
397
|
+
rubygems_version: 3.6.7
|
383
398
|
specification_version: 4
|
384
399
|
summary: A Ruby gem for managing database multitenancy. Apartment Gem drop in replacement
|
385
400
|
test_files: []
|
data/gemfiles/rails_6_1.gemfile
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
# This file was generated by Appraisal
|
2
|
-
|
3
|
-
source "http://rubygems.org"
|
4
|
-
|
5
|
-
gem "rails", "~> 6.1.0"
|
6
|
-
|
7
|
-
platforms :ruby do
|
8
|
-
gem "sqlite3", "~> 1.4"
|
9
|
-
end
|
10
|
-
|
11
|
-
platforms :jruby do
|
12
|
-
gem "activerecord-jdbc-adapter", "~> 61.0"
|
13
|
-
gem "activerecord-jdbcpostgresql-adapter", "~> 61.0"
|
14
|
-
gem "activerecord-jdbcmysql-adapter", "~> 61.0"
|
15
|
-
end
|
16
|
-
|
17
|
-
gemspec path: "../"
|
data/gemfiles/rails_7_0.gemfile
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
# This file was generated by Appraisal
|
2
|
-
|
3
|
-
source "http://rubygems.org"
|
4
|
-
|
5
|
-
gem "rails", "~> 7.0.0"
|
6
|
-
|
7
|
-
platforms :ruby do
|
8
|
-
gem "sqlite3", "~> 1.4"
|
9
|
-
end
|
10
|
-
|
11
|
-
platforms :jruby do
|
12
|
-
gem "activerecord-jdbc-adapter", "~> 61.0"
|
13
|
-
gem "activerecord-jdbcpostgresql-adapter", "~> 61.0"
|
14
|
-
gem "activerecord-jdbcmysql-adapter", "~> 61.0"
|
15
|
-
end
|
16
|
-
|
17
|
-
gemspec path: "../"
|