activerecord 5.1.3.rc1 → 5.1.3.rc2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of activerecord might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/lib/active_record/connection_adapters/abstract/database_statements.rb +18 -4
- data/lib/active_record/connection_adapters/abstract/schema_statements.rb +6 -6
- data/lib/active_record/connection_adapters/abstract_mysql_adapter.rb +10 -10
- data/lib/active_record/connection_adapters/mysql/database_statements.rb +4 -0
- data/lib/active_record/connection_adapters/mysql/schema_dumper.rb +2 -2
- data/lib/active_record/connection_adapters/postgresql/quoting.rb +3 -0
- data/lib/active_record/connection_adapters/postgresql/schema_statements.rb +19 -21
- data/lib/active_record/connection_adapters/postgresql_adapter.rb +6 -12
- data/lib/active_record/connection_adapters/sqlite3_adapter.rb +3 -3
- data/lib/active_record/gem_version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3f54b991c2ccce6dde330df92c2c86f876b2f6ca
|
4
|
+
data.tar.gz: f1156fd0643e7553f37f7da7ff251efb2b60ebca
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b82a23631c24884976a1ab9afb5a2fdd092c34c7c04d1038a23216b2b696c2241597ee707e4f2f3681f8556b170a0926965af585d6f9d1a6263794c70e25ee15
|
7
|
+
data.tar.gz: de3171ca3b3d3d8e99b32c19a4b31abd9a2a658423454f5124721f6e41d4de9ae0531e486903a72912ac5e8309195d8fb5ceef94da913ae97a5aaae5c7fa4174
|
data/CHANGELOG.md
CHANGED
@@ -51,9 +51,7 @@ module ActiveRecord
|
|
51
51
|
|
52
52
|
# Returns a single value from a record
|
53
53
|
def select_value(arel, name = nil, binds = [])
|
54
|
-
|
55
|
-
result.first
|
56
|
-
end
|
54
|
+
single_value_from_rows(select_rows(arel, name, binds))
|
57
55
|
end
|
58
56
|
|
59
57
|
# Returns an array of the values of the first column in a select:
|
@@ -68,6 +66,18 @@ module ActiveRecord
|
|
68
66
|
select_all(arel, name, binds).rows
|
69
67
|
end
|
70
68
|
|
69
|
+
def query_value(sql, name = nil) # :nodoc:
|
70
|
+
single_value_from_rows(query(sql, name))
|
71
|
+
end
|
72
|
+
|
73
|
+
def query_values(sql, name = nil) # :nodoc:
|
74
|
+
query(sql, name).map(&:first)
|
75
|
+
end
|
76
|
+
|
77
|
+
def query(sql, name = nil) # :nodoc:
|
78
|
+
exec_query(sql, name).rows
|
79
|
+
end
|
80
|
+
|
71
81
|
# Executes the SQL statement in the context of this connection and returns
|
72
82
|
# the raw result from the connection adapter.
|
73
83
|
# Note: depending on your database connector, the result returned by this
|
@@ -370,7 +380,11 @@ module ActiveRecord
|
|
370
380
|
end
|
371
381
|
|
372
382
|
def last_inserted_id(result)
|
373
|
-
|
383
|
+
single_value_from_rows(result.rows)
|
384
|
+
end
|
385
|
+
|
386
|
+
def single_value_from_rows(rows)
|
387
|
+
row = rows.first
|
374
388
|
row && row.first
|
375
389
|
end
|
376
390
|
|
@@ -31,7 +31,7 @@ module ActiveRecord
|
|
31
31
|
# Returns the relation names useable to back Active Record models.
|
32
32
|
# For most adapters this means all #tables and #views.
|
33
33
|
def data_sources
|
34
|
-
|
34
|
+
query_values(data_source_sql, "SCHEMA")
|
35
35
|
rescue NotImplementedError
|
36
36
|
tables | views
|
37
37
|
end
|
@@ -41,14 +41,14 @@ module ActiveRecord
|
|
41
41
|
# data_source_exists?(:ebooks)
|
42
42
|
#
|
43
43
|
def data_source_exists?(name)
|
44
|
-
|
44
|
+
query_values(data_source_sql(name), "SCHEMA").any? if name.present?
|
45
45
|
rescue NotImplementedError
|
46
46
|
data_sources.include?(name.to_s)
|
47
47
|
end
|
48
48
|
|
49
49
|
# Returns an array of table names defined in the database.
|
50
50
|
def tables
|
51
|
-
|
51
|
+
query_values(data_source_sql(type: "BASE TABLE"), "SCHEMA")
|
52
52
|
end
|
53
53
|
|
54
54
|
# Checks to see if the table +table_name+ exists on the database.
|
@@ -56,14 +56,14 @@ module ActiveRecord
|
|
56
56
|
# table_exists?(:developers)
|
57
57
|
#
|
58
58
|
def table_exists?(table_name)
|
59
|
-
|
59
|
+
query_values(data_source_sql(table_name, type: "BASE TABLE"), "SCHEMA").any? if table_name.present?
|
60
60
|
rescue NotImplementedError
|
61
61
|
tables.include?(table_name.to_s)
|
62
62
|
end
|
63
63
|
|
64
64
|
# Returns an array of view names defined in the database.
|
65
65
|
def views
|
66
|
-
|
66
|
+
query_values(data_source_sql(type: "VIEW"), "SCHEMA")
|
67
67
|
end
|
68
68
|
|
69
69
|
# Checks to see if the view +view_name+ exists on the database.
|
@@ -71,7 +71,7 @@ module ActiveRecord
|
|
71
71
|
# view_exists?(:ebooks)
|
72
72
|
#
|
73
73
|
def view_exists?(view_name)
|
74
|
-
|
74
|
+
query_values(data_source_sql(view_name, type: "VIEW"), "SCHEMA").any? if view_name.present?
|
75
75
|
rescue NotImplementedError
|
76
76
|
views.include?(view_name.to_s)
|
77
77
|
end
|
@@ -140,11 +140,11 @@ module ActiveRecord
|
|
140
140
|
end
|
141
141
|
|
142
142
|
def get_advisory_lock(lock_name, timeout = 0) # :nodoc:
|
143
|
-
|
143
|
+
query_value("SELECT GET_LOCK(#{quote(lock_name)}, #{timeout})") == 1
|
144
144
|
end
|
145
145
|
|
146
146
|
def release_advisory_lock(lock_name) # :nodoc:
|
147
|
-
|
147
|
+
query_value("SELECT RELEASE_LOCK(#{quote(lock_name)})") == 1
|
148
148
|
end
|
149
149
|
|
150
150
|
def native_database_types
|
@@ -176,7 +176,7 @@ module ActiveRecord
|
|
176
176
|
# REFERENTIAL INTEGRITY ====================================
|
177
177
|
|
178
178
|
def disable_referential_integrity #:nodoc:
|
179
|
-
old =
|
179
|
+
old = query_value("SELECT @@FOREIGN_KEY_CHECKS")
|
180
180
|
|
181
181
|
begin
|
182
182
|
update("SET FOREIGN_KEY_CHECKS = 0")
|
@@ -291,7 +291,7 @@ module ActiveRecord
|
|
291
291
|
end
|
292
292
|
|
293
293
|
def current_database
|
294
|
-
|
294
|
+
query_value("SELECT database()", "SCHEMA")
|
295
295
|
end
|
296
296
|
|
297
297
|
# Returns the database character set.
|
@@ -351,7 +351,7 @@ module ActiveRecord
|
|
351
351
|
def table_comment(table_name) # :nodoc:
|
352
352
|
scope = quoted_scope(table_name)
|
353
353
|
|
354
|
-
|
354
|
+
query_value(<<-SQL.strip_heredoc, "SCHEMA")
|
355
355
|
SELECT table_comment
|
356
356
|
FROM information_schema.tables
|
357
357
|
WHERE table_schema = #{scope[:schema]}
|
@@ -457,7 +457,7 @@ module ActiveRecord
|
|
457
457
|
|
458
458
|
scope = quoted_scope(table_name)
|
459
459
|
|
460
|
-
fk_info =
|
460
|
+
fk_info = exec_query(<<-SQL.strip_heredoc, "SCHEMA")
|
461
461
|
SELECT fk.referenced_table_name AS 'to_table',
|
462
462
|
fk.referenced_column_name AS 'primary_key',
|
463
463
|
fk.column_name AS 'column',
|
@@ -534,7 +534,7 @@ module ActiveRecord
|
|
534
534
|
|
535
535
|
# SHOW VARIABLES LIKE 'name'
|
536
536
|
def show_variable(name)
|
537
|
-
|
537
|
+
query_value("SELECT @@#{name}", "SCHEMA")
|
538
538
|
rescue ActiveRecord::StatementInvalid
|
539
539
|
nil
|
540
540
|
end
|
@@ -544,7 +544,7 @@ module ActiveRecord
|
|
544
544
|
|
545
545
|
scope = quoted_scope(table_name)
|
546
546
|
|
547
|
-
|
547
|
+
query_values(<<-SQL.strip_heredoc, "SCHEMA")
|
548
548
|
SELECT column_name
|
549
549
|
FROM information_schema.key_column_usage
|
550
550
|
WHERE constraint_name = 'PRIMARY'
|
@@ -745,7 +745,7 @@ module ActiveRecord
|
|
745
745
|
auto_increment: column.auto_increment?
|
746
746
|
}
|
747
747
|
|
748
|
-
current_type =
|
748
|
+
current_type = exec_query("SHOW COLUMNS FROM #{quote_table_name(table_name)} LIKE #{quote(column_name)}", "SCHEMA").first["Type"]
|
749
749
|
td = create_table_definition(table_name)
|
750
750
|
cd = td.new_column_definition(new_column_name, current_type, options)
|
751
751
|
schema_creation.accept(ChangeColumnDefinition.new(cd, column.name))
|
@@ -864,7 +864,7 @@ module ActiveRecord
|
|
864
864
|
end
|
865
865
|
|
866
866
|
def create_table_info(table_name) # :nodoc:
|
867
|
-
|
867
|
+
exec_query("SHOW CREATE TABLE #{quote_table_name(table_name)}", "SCHEMA").first["Create Table"]
|
868
868
|
end
|
869
869
|
|
870
870
|
def create_table_definition(*args) # :nodoc:
|
@@ -13,6 +13,10 @@ module ActiveRecord
|
|
13
13
|
result
|
14
14
|
end
|
15
15
|
|
16
|
+
def query(sql, name = nil) # :nodoc:
|
17
|
+
execute(sql, name).to_a
|
18
|
+
end
|
19
|
+
|
16
20
|
# Executes the SQL statement in the context of this connection.
|
17
21
|
def execute(sql, name = nil)
|
18
22
|
# make sure we carry over any changes to ActiveRecord::Base.default_timezone that have been
|
@@ -47,7 +47,7 @@ module ActiveRecord
|
|
47
47
|
def schema_collation(column)
|
48
48
|
if column.collation && table_name = column.table_name
|
49
49
|
@table_collation_cache ||= {}
|
50
|
-
@table_collation_cache[table_name] ||=
|
50
|
+
@table_collation_cache[table_name] ||= exec_query("SHOW TABLE STATUS LIKE #{quote(table_name)}", "SCHEMA").first["Collation"]
|
51
51
|
column.collation.inspect if column.collation != @table_collation_cache[table_name]
|
52
52
|
end
|
53
53
|
end
|
@@ -64,7 +64,7 @@ module ActiveRecord
|
|
64
64
|
" WHERE table_schema = #{scope[:schema]}" \
|
65
65
|
" AND table_name = #{scope[:name]}" \
|
66
66
|
" AND column_name = #{quote(column.name)}"
|
67
|
-
|
67
|
+
query_value(sql, "SCHEMA").inspect
|
68
68
|
end
|
69
69
|
end
|
70
70
|
end
|
@@ -60,7 +60,7 @@ module ActiveRecord
|
|
60
60
|
|
61
61
|
# Returns true if schema exists.
|
62
62
|
def schema_exists?(name)
|
63
|
-
|
63
|
+
query_value("SELECT COUNT(*) FROM pg_namespace WHERE nspname = #{quote(name)}", "SCHEMA").to_i > 0
|
64
64
|
end
|
65
65
|
|
66
66
|
# Verifies existence of an index with a given name.
|
@@ -73,7 +73,7 @@ module ActiveRecord
|
|
73
73
|
table = quoted_scope(table_name)
|
74
74
|
index = quoted_scope(index_name)
|
75
75
|
|
76
|
-
|
76
|
+
query_value(<<-SQL, "SCHEMA").to_i > 0
|
77
77
|
SELECT COUNT(*)
|
78
78
|
FROM pg_class t
|
79
79
|
INNER JOIN pg_index d ON t.oid = d.indrelid
|
@@ -173,7 +173,7 @@ module ActiveRecord
|
|
173
173
|
def table_comment(table_name) # :nodoc:
|
174
174
|
scope = quoted_scope(table_name, type: "BASE TABLE")
|
175
175
|
if scope[:name]
|
176
|
-
|
176
|
+
query_value(<<-SQL.strip_heredoc, "SCHEMA")
|
177
177
|
SELECT pg_catalog.obj_description(c.oid, 'pg_class')
|
178
178
|
FROM pg_catalog.pg_class c
|
179
179
|
LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
|
@@ -186,32 +186,32 @@ module ActiveRecord
|
|
186
186
|
|
187
187
|
# Returns the current database name.
|
188
188
|
def current_database
|
189
|
-
|
189
|
+
query_value("SELECT current_database()", "SCHEMA")
|
190
190
|
end
|
191
191
|
|
192
192
|
# Returns the current schema name.
|
193
193
|
def current_schema
|
194
|
-
|
194
|
+
query_value("SELECT current_schema", "SCHEMA")
|
195
195
|
end
|
196
196
|
|
197
197
|
# Returns the current database encoding format.
|
198
198
|
def encoding
|
199
|
-
|
199
|
+
query_value("SELECT pg_encoding_to_char(encoding) FROM pg_database WHERE datname = current_database()", "SCHEMA")
|
200
200
|
end
|
201
201
|
|
202
202
|
# Returns the current database collation.
|
203
203
|
def collation
|
204
|
-
|
204
|
+
query_value("SELECT datcollate FROM pg_database WHERE datname = current_database()", "SCHEMA")
|
205
205
|
end
|
206
206
|
|
207
207
|
# Returns the current database ctype.
|
208
208
|
def ctype
|
209
|
-
|
209
|
+
query_value("SELECT datctype FROM pg_database WHERE datname = current_database()", "SCHEMA")
|
210
210
|
end
|
211
211
|
|
212
212
|
# Returns an array of schema names.
|
213
213
|
def schema_names
|
214
|
-
|
214
|
+
query_values(<<-SQL, "SCHEMA")
|
215
215
|
SELECT nspname
|
216
216
|
FROM pg_namespace
|
217
217
|
WHERE nspname !~ '^pg_.*'
|
@@ -244,12 +244,12 @@ module ActiveRecord
|
|
244
244
|
|
245
245
|
# Returns the active schema search path.
|
246
246
|
def schema_search_path
|
247
|
-
@schema_search_path ||=
|
247
|
+
@schema_search_path ||= query_value("SHOW search_path", "SCHEMA")
|
248
248
|
end
|
249
249
|
|
250
250
|
# Returns the current client message level.
|
251
251
|
def client_min_messages
|
252
|
-
|
252
|
+
query_value("SHOW client_min_messages", "SCHEMA")
|
253
253
|
end
|
254
254
|
|
255
255
|
# Set the client message level.
|
@@ -267,7 +267,7 @@ module ActiveRecord
|
|
267
267
|
end
|
268
268
|
|
269
269
|
def serial_sequence(table, column)
|
270
|
-
|
270
|
+
query_value("SELECT pg_get_serial_sequence(#{quote(table)}, #{quote(column)})", "SCHEMA")
|
271
271
|
end
|
272
272
|
|
273
273
|
# Sets the sequence of a table's primary key to the specified value.
|
@@ -278,7 +278,7 @@ module ActiveRecord
|
|
278
278
|
if sequence
|
279
279
|
quoted_sequence = quote_table_name(sequence)
|
280
280
|
|
281
|
-
|
281
|
+
query_value("SELECT setval(#{quote(quoted_sequence)}, #{value})", "SCHEMA")
|
282
282
|
else
|
283
283
|
@logger.warn "#{table} has primary key #{pk} with no default sequence." if @logger
|
284
284
|
end
|
@@ -300,18 +300,16 @@ module ActiveRecord
|
|
300
300
|
|
301
301
|
if pk && sequence
|
302
302
|
quoted_sequence = quote_table_name(sequence)
|
303
|
-
max_pk =
|
303
|
+
max_pk = query_value("SELECT MAX(#{quote_column_name pk}) FROM #{quote_table_name(table)}", "SCHEMA")
|
304
304
|
if max_pk.nil?
|
305
305
|
if postgresql_version >= 100000
|
306
|
-
minvalue =
|
306
|
+
minvalue = query_value("SELECT seqmin FROM pg_sequence WHERE seqrelid = #{quote(quoted_sequence)}::regclass", "SCHEMA")
|
307
307
|
else
|
308
|
-
minvalue =
|
308
|
+
minvalue = query_value("SELECT min_value FROM #{quoted_sequence}", "SCHEMA")
|
309
309
|
end
|
310
310
|
end
|
311
311
|
|
312
|
-
|
313
|
-
SELECT setval('#{quoted_sequence}', #{max_pk ? max_pk : minvalue}, #{max_pk ? true : false})
|
314
|
-
end_sql
|
312
|
+
query_value("SELECT setval(#{quote(quoted_sequence)}, #{max_pk ? max_pk : minvalue}, #{max_pk ? true : false})", "SCHEMA")
|
315
313
|
end
|
316
314
|
end
|
317
315
|
|
@@ -370,7 +368,7 @@ module ActiveRecord
|
|
370
368
|
end
|
371
369
|
|
372
370
|
def primary_keys(table_name) # :nodoc:
|
373
|
-
|
371
|
+
query_values(<<-SQL.strip_heredoc, "SCHEMA")
|
374
372
|
SELECT a.attname
|
375
373
|
FROM (
|
376
374
|
SELECT indrelid, indkey, generate_subscripts(indkey, 1) idx
|
@@ -520,7 +518,7 @@ module ActiveRecord
|
|
520
518
|
|
521
519
|
def foreign_keys(table_name)
|
522
520
|
scope = quoted_scope(table_name)
|
523
|
-
fk_info =
|
521
|
+
fk_info = exec_query(<<-SQL.strip_heredoc, "SCHEMA")
|
524
522
|
SELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
|
525
523
|
FROM pg_constraint c
|
526
524
|
JOIN pg_class t1 ON c.conrelid = t1.oid
|
@@ -326,14 +326,14 @@ module ActiveRecord
|
|
326
326
|
unless lock_id.is_a?(Integer) && lock_id.bit_length <= 63
|
327
327
|
raise(ArgumentError, "Postgres requires advisory lock ids to be a signed 64 bit integer")
|
328
328
|
end
|
329
|
-
|
329
|
+
query_value("SELECT pg_try_advisory_lock(#{lock_id})")
|
330
330
|
end
|
331
331
|
|
332
332
|
def release_advisory_lock(lock_id) # :nodoc:
|
333
333
|
unless lock_id.is_a?(Integer) && lock_id.bit_length <= 63
|
334
334
|
raise(ArgumentError, "Postgres requires advisory lock ids to be a signed 64 bit integer")
|
335
335
|
end
|
336
|
-
|
336
|
+
query_value("SELECT pg_advisory_unlock(#{lock_id})")
|
337
337
|
end
|
338
338
|
|
339
339
|
def enable_extension(name)
|
@@ -350,15 +350,14 @@ module ActiveRecord
|
|
350
350
|
|
351
351
|
def extension_enabled?(name)
|
352
352
|
if supports_extensions?
|
353
|
-
res = exec_query
|
354
|
-
"SCHEMA"
|
353
|
+
res = exec_query("SELECT EXISTS(SELECT * FROM pg_available_extensions WHERE name = '#{name}' AND installed_version IS NOT NULL) as enabled", "SCHEMA")
|
355
354
|
res.cast_values.first
|
356
355
|
end
|
357
356
|
end
|
358
357
|
|
359
358
|
def extensions
|
360
359
|
if supports_extensions?
|
361
|
-
exec_query("SELECT extname
|
360
|
+
exec_query("SELECT extname FROM pg_extension", "SCHEMA").cast_values
|
362
361
|
else
|
363
362
|
super
|
364
363
|
end
|
@@ -366,14 +365,14 @@ module ActiveRecord
|
|
366
365
|
|
367
366
|
# Returns the configured supported identifier length supported by PostgreSQL
|
368
367
|
def table_alias_length
|
369
|
-
@max_identifier_length ||=
|
368
|
+
@max_identifier_length ||= query_value("SHOW max_identifier_length", "SCHEMA").to_i
|
370
369
|
end
|
371
370
|
alias index_name_length table_alias_length
|
372
371
|
|
373
372
|
# Set the authorized user for this session
|
374
373
|
def session_auth=(user)
|
375
374
|
clear_cache!
|
376
|
-
|
375
|
+
execute("SET SESSION AUTHORIZATION #{user}")
|
377
376
|
end
|
378
377
|
|
379
378
|
def use_insert_returning?
|
@@ -384,11 +383,6 @@ module ActiveRecord
|
|
384
383
|
PostgreSQL::Table.new(table_name, base)
|
385
384
|
end
|
386
385
|
|
387
|
-
def lookup_cast_type(sql_type) # :nodoc:
|
388
|
-
oid = execute("SELECT #{quote(sql_type)}::regtype::oid", "SCHEMA").first["oid"].to_i
|
389
|
-
super(oid)
|
390
|
-
end
|
391
|
-
|
392
386
|
def column_name_for_operation(operation, node) # :nodoc:
|
393
387
|
OPERATION_ALIASES.fetch(operation) { operation.downcase }
|
394
388
|
end
|
@@ -183,7 +183,7 @@ module ActiveRecord
|
|
183
183
|
# REFERENTIAL INTEGRITY ====================================
|
184
184
|
|
185
185
|
def disable_referential_integrity # :nodoc:
|
186
|
-
old =
|
186
|
+
old = query_value("PRAGMA foreign_keys")
|
187
187
|
|
188
188
|
begin
|
189
189
|
execute("PRAGMA foreign_keys = OFF")
|
@@ -398,7 +398,7 @@ module ActiveRecord
|
|
398
398
|
alias :add_belongs_to :add_reference
|
399
399
|
|
400
400
|
def foreign_keys(table_name)
|
401
|
-
fk_info =
|
401
|
+
fk_info = exec_query("PRAGMA foreign_key_list(#{quote(table_name)})", "SCHEMA")
|
402
402
|
fk_info.map do |row|
|
403
403
|
options = {
|
404
404
|
column: row["from"],
|
@@ -498,7 +498,7 @@ module ActiveRecord
|
|
498
498
|
end
|
499
499
|
|
500
500
|
def sqlite_version
|
501
|
-
@sqlite_version ||= SQLite3Adapter::Version.new(
|
501
|
+
@sqlite_version ||= SQLite3Adapter::Version.new(query_value("SELECT sqlite_version(*)"))
|
502
502
|
end
|
503
503
|
|
504
504
|
def translate_exception(exception, message)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activerecord
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.1.3.
|
4
|
+
version: 5.1.3.rc2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Heinemeier Hansson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-07-
|
11
|
+
date: 2017-07-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -16,28 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 5.1.3.
|
19
|
+
version: 5.1.3.rc2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 5.1.3.
|
26
|
+
version: 5.1.3.rc2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: activemodel
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 5.1.3.
|
33
|
+
version: 5.1.3.rc2
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 5.1.3.
|
40
|
+
version: 5.1.3.rc2
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: arel
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|