Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
9ce2d1b1
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,发现更多精彩内容 >>
提交
9ce2d1b1
编写于
10月 01, 2016
作者:
A
Andrew White
提交者:
GitHub
10月 01, 2016
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #26677 from tbalthazar/26644
Fix `ActiveSupport::TimeWithZone#localtime`
上级
53ede1af
607a6c7a
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
30 addition
and
1 deletion
+30
-1
activesupport/CHANGELOG.md
activesupport/CHANGELOG.md
+22
-0
activesupport/lib/active_support/time_with_zone.rb
activesupport/lib/active_support/time_with_zone.rb
+2
-1
activesupport/test/core_ext/time_with_zone_test.rb
activesupport/test/core_ext/time_with_zone_test.rb
+6
-0
未找到文件。
activesupport/CHANGELOG.md
浏览文件 @
9ce2d1b1
*
Fix
`ActiveSupport::TimeWithZone#localtime`
when called with different
`utc_offset`
values.
Previously memoization in `localtime` wasn't taking the `utc_offset`
parameter into account when returning a cached value. It now caches the
computed value depending on the `utc_offset` parameter, e.g:
Time.zone = "US/Eastern"
t = Time.zone.local(2016,5,2,11)
# => Mon, 02 May 2016 11:00:00 EDT -04:00
t.localtime(-7200)
# => 2016-05-02 13:00:00 -0200
t.localtime(-3600)
# => 2016-05-02 14:00:00 -0100
Fixes #26644.
*Thomas Balthazar*
*
Fix
`ActiveSupport::TimeWithZone#in`
across DST boundaries.
*
Fix
`ActiveSupport::TimeWithZone#in`
across DST boundaries.
Previously calls to `in` were being sent to the non-DST aware
Previously calls to `in` were being sent to the non-DST aware
...
...
activesupport/lib/active_support/time_with_zone.rb
浏览文件 @
9ce2d1b1
...
@@ -80,7 +80,8 @@ def in_time_zone(new_zone = ::Time.zone)
...
@@ -80,7 +80,8 @@ def in_time_zone(new_zone = ::Time.zone)
# Returns a <tt>Time</tt> instance of the simultaneous time in the system timezone.
# Returns a <tt>Time</tt> instance of the simultaneous time in the system timezone.
def
localtime
(
utc_offset
=
nil
)
def
localtime
(
utc_offset
=
nil
)
@localtime
||=
utc
.
getlocal
(
utc_offset
)
@localtime
||=
{}
@localtime
[
utc_offset
]
||=
utc
.
getlocal
(
utc_offset
)
end
end
alias_method
:getlocal
,
:localtime
alias_method
:getlocal
,
:localtime
...
...
activesupport/test/core_ext/time_with_zone_test.rb
浏览文件 @
9ce2d1b1
...
@@ -54,6 +54,12 @@ def test_localtime
...
@@ -54,6 +54,12 @@ def test_localtime
assert_instance_of
Time
,
@dt_twz
.
localtime
assert_instance_of
Time
,
@dt_twz
.
localtime
end
end
def
test_localtime_with_offset
assert_equal
0
,
@twz
.
localtime
.
gmt_offset
assert_equal
(
-
3600
),
@twz
.
localtime
(
-
3600
).
gmt_offset
assert_equal
(
-
7200
),
@twz
.
localtime
(
-
7200
).
gmt_offset
end
def
test_utc?
def
test_utc?
assert_equal
false
,
@twz
.
utc?
assert_equal
false
,
@twz
.
utc?
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录