brick 1.0.175 → 1.0.177
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 236474c3b0979bffb66ab3561a8fe008ee912ce358dc13556afc2e6e7564fe9a
|
4
|
+
data.tar.gz: d288645dce34156548bd393352591ae1d8eb83a4d1797fa9a2d4150d6e40506d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a8c336750619205c99a76a97414a1315261b0f1498981f3ec7573e73aa759be935357ce7844eb51de4fb905744b3ebe47890fc63005e38fa5f11ce3b009f02c1
|
7
|
+
data.tar.gz: b05c551dc2b483cabdd4b7788c1dc2c8e211803f4d9d1632c69cbe44b2bcf2933f1f39ac4217507fbefe42e0fa680315b3fdcf17b6129108d7811108e7f6f893
|
data/lib/brick/extensions.rb
CHANGED
@@ -1553,9 +1553,13 @@ class Object
|
|
1553
1553
|
end))
|
1554
1554
|
end
|
1555
1555
|
hmts = nil
|
1556
|
+
if (schema_module || Object).const_defined?((chosen_name = (inheritable_name || model_name)).to_sym)
|
1557
|
+
possible = (schema_module || Object).const_get(chosen_name)
|
1558
|
+
return possible unless possible == schema_module
|
1559
|
+
end
|
1556
1560
|
code = +"class #{full_name} < #{base_model.name}\n"
|
1557
1561
|
built_model = Class.new(base_model) do |new_model_class|
|
1558
|
-
(schema_module || Object).const_set(
|
1562
|
+
(schema_module || Object).const_set(chosen_name, new_model_class)
|
1559
1563
|
@_brick_relation = relation
|
1560
1564
|
if inheritable_name
|
1561
1565
|
new_model_class.define_singleton_method :inherited do |subclass|
|
@@ -3100,7 +3104,8 @@ module Brick
|
|
3100
3104
|
missing << fk[1] unless relations.key?(fk[1])
|
3101
3105
|
missing << primary_table unless is_class || relations.key?(primary_table)
|
3102
3106
|
unless missing.empty?
|
3103
|
-
tables = relations.reject { |_k, v| v.fetch(:isView, nil) }.keys
|
3107
|
+
tables = relations.reject { |_k, v| v.is_a?(Hash) && v.fetch(:isView, nil) }.keys
|
3108
|
+
.select { |table_name| table_name.is_a?(String) }.sort
|
3104
3109
|
puts "Brick: Additional reference #{fk.inspect} refers to non-existent #{'table'.pluralize(missing.length)} #{missing.join(' and ')}. (Available tables include #{tables.join(', ')}.)"
|
3105
3110
|
return
|
3106
3111
|
end
|
data/lib/brick/version_number.rb
CHANGED
data/lib/brick.rb
CHANGED
@@ -89,7 +89,7 @@ end
|
|
89
89
|
# is first established), and then automatically creates models, controllers, views,
|
90
90
|
# and routes based on those available relations.
|
91
91
|
require 'brick/config'
|
92
|
-
if Gem::Specification.all_names.any? { |g| g.start_with?('rails-') && g[6..-1] =~ /^([0-9]|\.)
|
92
|
+
if Gem::Specification.all_names.any? { |g| g.start_with?('rails-') && g[6..-1] =~ /^([0-9]|\.)+(?:|rc1|beta1)$/ }
|
93
93
|
require 'rails'
|
94
94
|
require 'brick/frameworks/rails'
|
95
95
|
end
|
@@ -18,7 +18,7 @@ module Brick
|
|
18
18
|
::Brick.mode = :on
|
19
19
|
ActiveRecord::Base.establish_connection
|
20
20
|
|
21
|
-
if (tables = ::Brick.relations.reject { |k, v| v.key?(:isView) && v[:isView] == true }.map(&:first).sort).empty?
|
21
|
+
if (tables = ::Brick.relations.reject { |k, v| k.is_a?(Symbol) || v.key?(:isView) && v[:isView] == true }.map(&:first).sort).empty?
|
22
22
|
puts "No tables found in database #{ActiveRecord::Base.connection.current_database}."
|
23
23
|
return
|
24
24
|
end
|
@@ -28,11 +28,13 @@ module Brick
|
|
28
28
|
existing_models = ActiveRecord::Base.descendants.reject do |m|
|
29
29
|
m.abstract_class? || !m.table_exists? || ::Brick.relations.key?(m.table_name)
|
30
30
|
end
|
31
|
-
models = ::Brick.relations.keys.
|
31
|
+
models = ::Brick.relations.keys.each_with_object([]) do |tbl, s|
|
32
|
+
next if tbl.is_a?(Symbol)
|
33
|
+
|
32
34
|
tbl_parts = tbl.split('.')
|
33
35
|
tbl_parts.shift if [::Brick.default_schema, 'public'].include?(tbl_parts.first)
|
34
36
|
tbl_parts[-1] = tbl_parts[-1].singularize
|
35
|
-
tbl_parts.join('/').camelize
|
37
|
+
s << tbl_parts.join('/').camelize
|
36
38
|
end - existing_models.map(&:name)
|
37
39
|
models.sort! do |a, b| # Sort first to separate namespaced stuff from the rest, then alphabetically
|
38
40
|
is_a_namespaced = a.include?('::')
|
@@ -31,7 +31,7 @@ module Brick
|
|
31
31
|
models = (existing_models.values +
|
32
32
|
# ... then add models which can be auto-built by Brick
|
33
33
|
::Brick.relations.reject do |k, v|
|
34
|
-
(v.key?(:isView) && v[:isView] == true) || existing_models.key?(k)
|
34
|
+
k.is_a?(Symbol) || (v.key?(:isView) && v[:isView] == true) || existing_models.key?(k)
|
35
35
|
end.map { |k, v| SeedModel.new(k, v[:class_name].constantize, true) }
|
36
36
|
).sort { |a, b| a.to_s <=> b.to_s }
|
37
37
|
if models.empty?
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: brick
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.177
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Lorin Thwaits
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-09-
|
11
|
+
date: 2023-09-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -178,20 +178,6 @@ dependencies:
|
|
178
178
|
- - ">="
|
179
179
|
- !ruby/object:Gem::Version
|
180
180
|
version: '0'
|
181
|
-
- !ruby/object:Gem::Dependency
|
182
|
-
name: mysql2
|
183
|
-
requirement: !ruby/object:Gem::Requirement
|
184
|
-
requirements:
|
185
|
-
- - "~>"
|
186
|
-
- !ruby/object:Gem::Version
|
187
|
-
version: '0.5'
|
188
|
-
type: :development
|
189
|
-
prerelease: false
|
190
|
-
version_requirements: !ruby/object:Gem::Requirement
|
191
|
-
requirements:
|
192
|
-
- - "~>"
|
193
|
-
- !ruby/object:Gem::Version
|
194
|
-
version: '0.5'
|
195
181
|
- !ruby/object:Gem::Dependency
|
196
182
|
name: pg
|
197
183
|
requirement: !ruby/object:Gem::Requirement
|