ros-apartment 2.3.0.alpha2 → 2.3.0
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/HISTORY.md +7 -0
- data/README.md +19 -21
- data/Rakefile +9 -1
- data/apartment.gemspec +19 -18
- data/lib/apartment/version.rb +1 -1
- metadata +40 -37
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ea7b5564bca9125cfb7b8a7863793c69a3462dabd8211d274891b79a948c28f5
|
4
|
+
data.tar.gz: c502a0c3dccdd4edca005b68b6e945d82a6943716d917ef2df2e6fa91d2a2204
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c1babac9d50b907b36337157870ab606291a91cb022a80b11a1e3f008301f2a1b019137fb8ea03119e2a054b97041d4e532191142fff97eee3ad27cc30b10a0c
|
7
|
+
data.tar.gz: 7cee77bbe095d7f2d8b3a64468b5730d719152d5ec904ab15261b49366bc113dbb97f7b4a1297535c4c294d8b8099090f542ae315a2744fe55d1fb19895b4615
|
data/HISTORY.md
CHANGED
data/README.md
CHANGED
@@ -4,34 +4,27 @@
|
|
4
4
|
[](https://codeclimate.com/github/influitive/apartment)
|
5
5
|
[](https://travis-ci.org/influitive/apartment)
|
6
6
|
|
7
|
-
# NOT ACTIVELY MAINTAINED YET. SOLELY FOR TESTING PURPOSES ATM
|
8
|
-
|
9
7
|
*Multitenancy for Rails and ActiveRecord*
|
10
8
|
|
11
9
|
Apartment provides tools to help you deal with multiple tenants in your Rails
|
12
10
|
application. If you need to have certain data sequestered based on account or company,
|
13
11
|
but still allow some data to exist in a common tenant, Apartment can help.
|
14
12
|
|
15
|
-
##
|
16
|
-
|
17
|
-
In order to help drive the direction of development and clean up the codebase, we'd like to take a poll
|
18
|
-
on how people are currently using Apartment. If you can take 5 seconds (1 question) to answer
|
19
|
-
this poll, we'd greatly appreciated it.
|
20
|
-
|
21
|
-
[View Poll](http://www.poll-maker.com/poll391552x4Bfb41a9-15)
|
13
|
+
## Apartment drop in replacement gem
|
22
14
|
|
23
|
-
|
15
|
+
After having reached out via github issues and email directly, no replies ever
|
16
|
+
came. Since we wanted to upgrade our application to Rails 6 we decided to fork
|
17
|
+
and start some development to support Rails 6. Because we don't have access
|
18
|
+
to the apartment gem itself, the solution was to release it under a different
|
19
|
+
name but providing the exact same API as it was before.
|
24
20
|
|
25
|
-
|
26
|
-
> when using Apartment, that's because there's [an issue](https://github.com/rails/rails/issues/19578)
|
27
|
-
> with how ActiveRecord maps Postgresql data types into AR data types.
|
28
|
-
> This has been patched and will be released for AR 4.2.2. It's apparently hard
|
29
|
-
> to backport to 4.1 unfortunately.
|
30
|
-
> If you're noticing high memory usage from ActiveRecord with Apartment please upgrade.
|
21
|
+
## Help wanted
|
31
22
|
|
32
|
-
|
33
|
-
|
34
|
-
|
23
|
+
We were never involved with the development of Apartment gem in the first place
|
24
|
+
and this project started out of our own needs. We will be more than happy
|
25
|
+
to collaborate to maintain the gem alive and supporting the latest versions
|
26
|
+
of ruby and rails, but your help is appreciated. Either by reporting bugs you
|
27
|
+
may find or proposing improvements to the gem itself. Feel free to reach out.
|
35
28
|
|
36
29
|
## Installation
|
37
30
|
|
@@ -40,7 +33,7 @@ gem 'rails', '4.2.1', github: 'influitive/rails', tag: 'v4.2.1.memfix'
|
|
40
33
|
Add the following to your Gemfile:
|
41
34
|
|
42
35
|
```ruby
|
43
|
-
gem 'apartment'
|
36
|
+
gem 'ros-apartment'
|
44
37
|
```
|
45
38
|
|
46
39
|
Then generate your `Apartment` config file using
|
@@ -533,7 +526,12 @@ end
|
|
533
526
|
|
534
527
|
## Background workers
|
535
528
|
|
536
|
-
|
529
|
+
Both these gems have been forked as a side consequence of having a new gem name.
|
530
|
+
You can use them exactly as you were using before. They are, just like this one
|
531
|
+
a drop-in replacement.
|
532
|
+
|
533
|
+
See [apartment-sidekiq](https://github.com/rails-on-services/apartment-sidekiq)
|
534
|
+
or [apartment-activejob](https://github.com/rails-on-services/apartment-activejob).
|
537
535
|
|
538
536
|
## Callbacks
|
539
537
|
|
data/Rakefile
CHANGED
@@ -119,10 +119,18 @@ def activerecord_below_5_2?
|
|
119
119
|
ActiveRecord.version.release < Gem::Version.new('5.2.0')
|
120
120
|
end
|
121
121
|
|
122
|
+
def activerecord_below_6_0?
|
123
|
+
ActiveRecord.version.release < Gem::Version.new('6.0.0')
|
124
|
+
end
|
125
|
+
|
122
126
|
def migrate
|
123
127
|
if activerecord_below_5_2?
|
124
128
|
ActiveRecord::Migrator.migrate('spec/dummy/db/migrate')
|
125
|
-
|
129
|
+
elsif activerecord_below_6_0?
|
126
130
|
ActiveRecord::MigrationContext.new('spec/dummy/db/migrate').migrate
|
131
|
+
else
|
132
|
+
# TODO: Figure out if there is any other possibility that can/should be
|
133
|
+
# passed here as the second argument for the migration context
|
134
|
+
ActiveRecord::MigrationContext.new('spec/dummy/db/migrate', ActiveRecord::SchemaMigration).migrate
|
127
135
|
end
|
128
136
|
end
|
data/apartment.gemspec
CHANGED
@@ -1,42 +1,43 @@
|
|
1
|
-
#
|
2
|
-
|
3
|
-
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
$LOAD_PATH << File.expand_path('lib', __dir__)
|
4
|
+
require 'apartment/version'
|
4
5
|
|
5
6
|
Gem::Specification.new do |s|
|
6
|
-
s.name =
|
7
|
+
s.name = 'ros-apartment'
|
7
8
|
s.version = Apartment::VERSION
|
8
9
|
|
9
|
-
s.authors = [
|
10
|
-
s.summary =
|
11
|
-
s.description =
|
12
|
-
s.email = [
|
10
|
+
s.authors = ['Ryan Brunner', 'Brad Robertson', 'Rui Baltazar']
|
11
|
+
s.summary = 'A Ruby gem for managing database multitenancy. Apartment Gem drop in replacement'
|
12
|
+
s.description = 'Apartment allows Rack applications to deal with database multitenancy through ActiveRecord'
|
13
|
+
s.email = ['ryan@influitive.com', 'brad@influitive.com', 'rui.p.baltazar@gmail.com']
|
13
14
|
s.files = `git ls-files`.split($/)
|
14
|
-
s.executables = s.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
15
|
+
s.executables = s.files.grep(%r{^bin/}).map { |f| File.basename(f) }
|
15
16
|
s.test_files = s.files.grep(%r{^(test|spec|features)/})
|
16
|
-
s.require_paths = [
|
17
|
+
s.require_paths = ['lib']
|
17
18
|
|
18
|
-
s.homepage =
|
19
|
-
s.licenses = [
|
19
|
+
s.homepage = 'https://github.com/rails-on-services/apartment'
|
20
|
+
s.licenses = ['MIT']
|
20
21
|
|
21
22
|
# must be >= 3.1.2 due to bug in prepared_statements
|
22
23
|
s.add_dependency 'activerecord', '>= 3.1.2', '< 6.1'
|
23
|
-
s.add_dependency 'rack', '>= 1.3.6'
|
24
|
-
s.add_dependency 'public_suffix', '>= 2'
|
25
24
|
s.add_dependency 'parallel', '>= 0.7.1'
|
25
|
+
s.add_dependency 'public_suffix', '>= 2'
|
26
|
+
s.add_dependency 'rack', '>= 1.3.6'
|
26
27
|
|
27
28
|
s.add_development_dependency 'appraisal'
|
29
|
+
s.add_development_dependency 'bundler', '>= 1.3', '< 2.0'
|
30
|
+
s.add_development_dependency 'capybara', '~> 2.0'
|
28
31
|
s.add_development_dependency 'rake', '~> 0.9'
|
29
32
|
s.add_development_dependency 'rspec', '~> 3.4'
|
30
33
|
s.add_development_dependency 'rspec-rails', '~> 3.4'
|
31
|
-
s.add_development_dependency 'capybara', '~> 2.0'
|
32
|
-
s.add_development_dependency 'bundler', '>= 1.3', '< 2.0'
|
33
34
|
|
34
35
|
if defined?(JRUBY_VERSION)
|
35
36
|
s.add_development_dependency 'activerecord-jdbc-adapter'
|
36
|
-
s.add_development_dependency 'activerecord-jdbcpostgresql-adapter'
|
37
37
|
s.add_development_dependency 'activerecord-jdbcmysql-adapter'
|
38
|
-
s.add_development_dependency '
|
38
|
+
s.add_development_dependency 'activerecord-jdbcpostgresql-adapter'
|
39
39
|
s.add_development_dependency 'jdbc-mysql'
|
40
|
+
s.add_development_dependency 'jdbc-postgres'
|
40
41
|
s.add_development_dependency 'jruby-openssl'
|
41
42
|
else
|
42
43
|
s.add_development_dependency 'mysql2'
|
data/lib/apartment/version.rb
CHANGED
metadata
CHANGED
@@ -1,15 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ros-apartment
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.0
|
4
|
+
version: 2.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryan Brunner
|
8
8
|
- Brad Robertson
|
9
|
+
- Rui Baltazar
|
9
10
|
autorequire:
|
10
11
|
bindir: bin
|
11
12
|
cert_chain: []
|
12
|
-
date: 2020-01-
|
13
|
+
date: 2020-01-03 00:00:00.000000000 Z
|
13
14
|
dependencies:
|
14
15
|
- !ruby/object:Gem::Dependency
|
15
16
|
name: activerecord
|
@@ -32,19 +33,19 @@ dependencies:
|
|
32
33
|
- !ruby/object:Gem::Version
|
33
34
|
version: '6.1'
|
34
35
|
- !ruby/object:Gem::Dependency
|
35
|
-
name:
|
36
|
+
name: parallel
|
36
37
|
requirement: !ruby/object:Gem::Requirement
|
37
38
|
requirements:
|
38
39
|
- - ">="
|
39
40
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
41
|
+
version: 0.7.1
|
41
42
|
type: :runtime
|
42
43
|
prerelease: false
|
43
44
|
version_requirements: !ruby/object:Gem::Requirement
|
44
45
|
requirements:
|
45
46
|
- - ">="
|
46
47
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
48
|
+
version: 0.7.1
|
48
49
|
- !ruby/object:Gem::Dependency
|
49
50
|
name: public_suffix
|
50
51
|
requirement: !ruby/object:Gem::Requirement
|
@@ -60,19 +61,19 @@ dependencies:
|
|
60
61
|
- !ruby/object:Gem::Version
|
61
62
|
version: '2'
|
62
63
|
- !ruby/object:Gem::Dependency
|
63
|
-
name:
|
64
|
+
name: rack
|
64
65
|
requirement: !ruby/object:Gem::Requirement
|
65
66
|
requirements:
|
66
67
|
- - ">="
|
67
68
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
69
|
+
version: 1.3.6
|
69
70
|
type: :runtime
|
70
71
|
prerelease: false
|
71
72
|
version_requirements: !ruby/object:Gem::Requirement
|
72
73
|
requirements:
|
73
74
|
- - ">="
|
74
75
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
76
|
+
version: 1.3.6
|
76
77
|
- !ruby/object:Gem::Dependency
|
77
78
|
name: appraisal
|
78
79
|
requirement: !ruby/object:Gem::Requirement
|
@@ -88,81 +89,81 @@ dependencies:
|
|
88
89
|
- !ruby/object:Gem::Version
|
89
90
|
version: '0'
|
90
91
|
- !ruby/object:Gem::Dependency
|
91
|
-
name:
|
92
|
+
name: bundler
|
92
93
|
requirement: !ruby/object:Gem::Requirement
|
93
94
|
requirements:
|
94
|
-
- - "
|
95
|
+
- - ">="
|
95
96
|
- !ruby/object:Gem::Version
|
96
|
-
version: '
|
97
|
+
version: '1.3'
|
98
|
+
- - "<"
|
99
|
+
- !ruby/object:Gem::Version
|
100
|
+
version: '2.0'
|
97
101
|
type: :development
|
98
102
|
prerelease: false
|
99
103
|
version_requirements: !ruby/object:Gem::Requirement
|
100
104
|
requirements:
|
101
|
-
- - "
|
105
|
+
- - ">="
|
102
106
|
- !ruby/object:Gem::Version
|
103
|
-
version: '
|
107
|
+
version: '1.3'
|
108
|
+
- - "<"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '2.0'
|
104
111
|
- !ruby/object:Gem::Dependency
|
105
|
-
name:
|
112
|
+
name: capybara
|
106
113
|
requirement: !ruby/object:Gem::Requirement
|
107
114
|
requirements:
|
108
115
|
- - "~>"
|
109
116
|
- !ruby/object:Gem::Version
|
110
|
-
version: '
|
117
|
+
version: '2.0'
|
111
118
|
type: :development
|
112
119
|
prerelease: false
|
113
120
|
version_requirements: !ruby/object:Gem::Requirement
|
114
121
|
requirements:
|
115
122
|
- - "~>"
|
116
123
|
- !ruby/object:Gem::Version
|
117
|
-
version: '
|
124
|
+
version: '2.0'
|
118
125
|
- !ruby/object:Gem::Dependency
|
119
|
-
name:
|
126
|
+
name: rake
|
120
127
|
requirement: !ruby/object:Gem::Requirement
|
121
128
|
requirements:
|
122
129
|
- - "~>"
|
123
130
|
- !ruby/object:Gem::Version
|
124
|
-
version: '
|
131
|
+
version: '0.9'
|
125
132
|
type: :development
|
126
133
|
prerelease: false
|
127
134
|
version_requirements: !ruby/object:Gem::Requirement
|
128
135
|
requirements:
|
129
136
|
- - "~>"
|
130
137
|
- !ruby/object:Gem::Version
|
131
|
-
version: '
|
138
|
+
version: '0.9'
|
132
139
|
- !ruby/object:Gem::Dependency
|
133
|
-
name:
|
140
|
+
name: rspec
|
134
141
|
requirement: !ruby/object:Gem::Requirement
|
135
142
|
requirements:
|
136
143
|
- - "~>"
|
137
144
|
- !ruby/object:Gem::Version
|
138
|
-
version: '
|
145
|
+
version: '3.4'
|
139
146
|
type: :development
|
140
147
|
prerelease: false
|
141
148
|
version_requirements: !ruby/object:Gem::Requirement
|
142
149
|
requirements:
|
143
150
|
- - "~>"
|
144
151
|
- !ruby/object:Gem::Version
|
145
|
-
version: '
|
152
|
+
version: '3.4'
|
146
153
|
- !ruby/object:Gem::Dependency
|
147
|
-
name:
|
154
|
+
name: rspec-rails
|
148
155
|
requirement: !ruby/object:Gem::Requirement
|
149
156
|
requirements:
|
150
|
-
- - "
|
151
|
-
- !ruby/object:Gem::Version
|
152
|
-
version: '1.3'
|
153
|
-
- - "<"
|
157
|
+
- - "~>"
|
154
158
|
- !ruby/object:Gem::Version
|
155
|
-
version: '
|
159
|
+
version: '3.4'
|
156
160
|
type: :development
|
157
161
|
prerelease: false
|
158
162
|
version_requirements: !ruby/object:Gem::Requirement
|
159
163
|
requirements:
|
160
|
-
- - "
|
161
|
-
- !ruby/object:Gem::Version
|
162
|
-
version: '1.3'
|
163
|
-
- - "<"
|
164
|
+
- - "~>"
|
164
165
|
- !ruby/object:Gem::Version
|
165
|
-
version: '
|
166
|
+
version: '3.4'
|
166
167
|
- !ruby/object:Gem::Dependency
|
167
168
|
name: mysql2
|
168
169
|
requirement: !ruby/object:Gem::Requirement
|
@@ -210,6 +211,7 @@ description: Apartment allows Rack applications to deal with database multitenan
|
|
210
211
|
email:
|
211
212
|
- ryan@influitive.com
|
212
213
|
- brad@influitive.com
|
214
|
+
- rui.p.baltazar@gmail.com
|
213
215
|
executables: []
|
214
216
|
extensions: []
|
215
217
|
extra_rdoc_files: []
|
@@ -376,14 +378,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
376
378
|
version: '0'
|
377
379
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
378
380
|
requirements:
|
379
|
-
- - "
|
381
|
+
- - ">="
|
380
382
|
- !ruby/object:Gem::Version
|
381
|
-
version:
|
383
|
+
version: '0'
|
382
384
|
requirements: []
|
383
|
-
|
385
|
+
rubyforge_project:
|
386
|
+
rubygems_version: 2.7.6
|
384
387
|
signing_key:
|
385
388
|
specification_version: 4
|
386
|
-
summary: A Ruby gem for managing database multitenancy
|
389
|
+
summary: A Ruby gem for managing database multitenancy. Apartment Gem drop in replacement
|
387
390
|
test_files:
|
388
391
|
- spec/adapters/jdbc_mysql_adapter_spec.rb
|
389
392
|
- spec/adapters/jdbc_postgresql_adapter_spec.rb
|