-
-
Notifications
You must be signed in to change notification settings - Fork 413
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update boa_temporal
Time Zone design
#3543
Conversation
Test262 conformance changes
|
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## main #3543 +/- ##
==========================================
- Coverage 47.42% 47.38% -0.04%
==========================================
Files 470 471 +1
Lines 45690 45727 +37
==========================================
Hits 21667 21667
- Misses 24023 24060 +37 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me! :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good progress! I have a suggestion for the next ergonomics change, but this can be merged as is.
/// The Time Zone Protocol that must be implemented for time zones. | ||
pub trait TzProtocol: TzProtocolClone { | ||
pub trait TzProtocol: Clone { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thought: We should probably add an associated error type type Error: From<TemporalError>
so that we can preserve the full engine error. Would also have to be added to CalendarProtocol
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That makes sense. As the change can be done on both traits. I'll update that on another PR for both traits.
The updates on this branch is to bring the time zone implementation in line with the design from #3522 and related to #1804.
It changes the following:
TimeZoneSlot
to the belowTrace
impl).Notably, as further context on the below, Time Zones right now is mostly the structure/scaffolding with limited functionality. We'll need to figure out a good way to handle tz system calls and IANA mapping (whether that be using some
icu4x
provider or baking something ourselves based from the IANA tz database) to really build this out functionality wise and test it, at least imo. If anyone has any thoughts, let me know 😄