Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
054893d5
R
rails
项目概览
张重言
/
rails
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rails
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
054893d5
编写于
5月 21, 2018
作者:
R
Ryuta Kamizono
提交者:
GitHub
5月 21, 2018
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #32923 from yahonda/bump_sqlite3_version_to_38
Bump minimum SQLite version to 3.8
上级
a77447f4
d1a74c1e
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
17 addition
and
32 deletion
+17
-32
activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb
..._record/connection_adapters/abstract/schema_statements.rb
+1
-7
activerecord/lib/active_record/connection_adapters/abstract_adapter.rb
...lib/active_record/connection_adapters/abstract_adapter.rb
+5
-0
activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb
.../lib/active_record/connection_adapters/sqlite3_adapter.rb
+6
-6
activerecord/test/cases/adapter_test.rb
activerecord/test/cases/adapter_test.rb
+4
-0
activerecord/test/cases/schema_dumper_test.rb
activerecord/test/cases/schema_dumper_test.rb
+1
-19
未找到文件。
activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb
浏览文件 @
054893d5
...
...
@@ -1062,13 +1062,7 @@ def assume_migrated_upto_version(version, migrations_paths)
if
(
duplicate
=
inserting
.
detect
{
|
v
|
inserting
.
count
(
v
)
>
1
})
raise
"Duplicate migration
#{
duplicate
}
. Please renumber your migrations to resolve the conflict."
end
if
supports_multi_insert?
execute
insert_versions_sql
(
inserting
)
else
inserting
.
each
do
|
v
|
execute
insert_versions_sql
(
v
)
end
end
execute
insert_versions_sql
(
inserting
)
end
end
...
...
activerecord/lib/active_record/connection_adapters/abstract_adapter.rb
浏览文件 @
054893d5
...
...
@@ -137,6 +137,10 @@ def initialize(version_string)
def
<
=>
(
version_string
)
@version
<=>
version_string
.
split
(
"."
).
map
(
&
:to_i
)
end
def
to_s
@version
.
join
(
"."
)
end
end
def
valid_type?
(
type
)
# :nodoc:
...
...
@@ -320,6 +324,7 @@ def supports_comments_in_create?
def
supports_multi_insert?
true
end
deprecate
:supports_multi_insert?
# Does this adapter support virtual columns?
def
supports_virtual_columns?
...
...
activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb
浏览文件 @
054893d5
...
...
@@ -104,6 +104,10 @@ def initialize(connection, logger, connection_options, config)
@active
=
true
@statements
=
StatementPool
.
new
(
self
.
class
.
type_cast_config_to_integer
(
config
[
:statement_limit
]))
if
sqlite_version
<
"3.8.0"
raise
"Your version of SQLite (
#{
sqlite_version
}
) is too old. Active Record supports SQLite >= 3.8."
end
configure_connection
end
...
...
@@ -116,7 +120,7 @@ def supports_savepoints?
end
def
supports_partial_index?
sqlite_version
>=
"3.8.0"
true
end
def
requires_reloading?
...
...
@@ -124,7 +128,7 @@ def requires_reloading?
end
def
supports_foreign_keys_in_create?
sqlite_version
>=
"3.6.19"
true
end
def
supports_views?
...
...
@@ -139,10 +143,6 @@ def supports_json?
true
end
def
supports_multi_insert?
sqlite_version
>=
"3.7.11"
end
def
active?
@active
end
...
...
activerecord/test/cases/adapter_test.rb
浏览文件 @
054893d5
...
...
@@ -295,6 +295,10 @@ def test_log_invalid_encoding
assert_equal
"ы"
,
error
.
message
end
end
def
test_supports_multi_insert_is_deprecated
assert_deprecated
{
@connection
.
supports_multi_insert?
}
end
end
class
AdapterForeignKeyTest
<
ActiveRecord
::
TestCase
...
...
activerecord/test/cases/schema_dumper_test.rb
浏览文件 @
054893d5
...
...
@@ -37,24 +37,6 @@ def test_dump_schema_information_outputs_lexically_ordered_versions
ActiveRecord
::
SchemaMigration
.
delete_all
end
if
current_adapter?
(
:SQLite3Adapter
)
%w{3.7.8 3.7.11 3.7.12}
.
each
do
|
version_string
|
test
"dumps schema version for sqlite version
#{
version_string
}
"
do
version
=
ActiveRecord
::
ConnectionAdapters
::
SQLite3Adapter
::
Version
.
new
(
version_string
)
ActiveRecord
::
Base
.
connection
.
stubs
(
:sqlite_version
).
returns
(
version
)
versions
=
%w{ 20100101010101 20100201010101 20100301010101 }
versions
.
reverse_each
do
|
v
|
ActiveRecord
::
SchemaMigration
.
create!
(
version:
v
)
end
schema_info
=
ActiveRecord
::
Base
.
connection
.
dump_schema_information
assert_match
(
/20100201010101.*20100301010101/m
,
schema_info
)
ActiveRecord
::
SchemaMigration
.
delete_all
end
end
end
def
test_schema_dump
output
=
standard_dump
assert_match
%r{create_table "accounts"}
,
output
...
...
@@ -192,7 +174,7 @@ def test_schema_dumps_index_columns_in_right_order
def
test_schema_dumps_partial_indices
index_definition
=
dump_table_schema
(
"companies"
).
split
(
/\n/
).
grep
(
/t\.index.*company_partial_index/
).
first
.
strip
if
current_adapter?
(
:PostgreSQLAdapter
,
:SQLite3Adapter
)
&&
ActiveRecord
::
Base
.
connection
.
supports_partial_index?
if
ActiveRecord
::
Base
.
connection
.
supports_partial_index?
assert_equal
't.index ["firm_id", "type"], name: "company_partial_index", where: "(rating > 10)"'
,
index_definition
else
assert_equal
't.index ["firm_id", "type"], name: "company_partial_index"'
,
index_definition
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录