Use directly TZInfo::Timezone without proxy #18328
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Use directly TZInfo::Timezone without proxy since real timezone is loaded anyway in
#utc_offset
which is called during#create
.The purpose of
TZInfo::TimezoneProxy
was to offload parsing tzinfo to improve startup time.But it was defeated by calling
#utc_offset
on creation ofAS::TimeZone
instance.This is why the time to run
AS::TimeZone.all
has not changed after this PR.Also there was an edge-case when
AS::TimeZone
instance could have been created with bogus timezone if utc_offset was provided. But this would break almost any other method since a lot of them depend on realTZInfo::Timezone
instance.