🦁
[Bug #21141] Time#utc? が timezone オブジェクトの場合だと false が返ってくるバグ報告
[Bug #21141] Time#utc?
does not work with a timezone object
-
Time#utc?
はレシーバのタイムゾーンがutc
の場合にtrue
を返します
utc = Time.now(in: "UTC")
pp utc.utc? # => true
utc = Time.now(in: "+09:00")
pp utc.utc? # => false
- このチケットでは
Time#utc?
がtimezone
オブジェクトの場合だとfalse
が返ってくるバグ報告になります-
timezone
とtzinfo
って標準ライブラリだっけ?と思ったら思いっきり 3rd party ライブラリでした -
timezone
オブジェクトとは?は class Time - Documentation for Ruby 3.4 のあたりが参考になります
-
require "timezone"
require 'tzinfo'
t_timezone = Time.now(in: Timezone["UTC"])
t_tzinfo = Time.now(in: TZInfo::Timezone.get("UTC"))
p t_timezone.utc? #=> false
p t_tzinfo.utc? #=> false
- 他にも環境変数
TZ=UTC
の場合でもfalse
が返ってくるみたいですね
ENV["TZ"] = "UTC"
p Time.now.utc? #=> false
- これはどこまで厳密にチェックするとよいのですかねー
Discussion