Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: b35d67a6fdad00a914a5201d900b875b81ffbb7d
https://github.com/WebKit/WebKit/commit/b35d67a6fdad00a914a5201d900b875b81ffbb7d
Author: Yijia Huang <[email protected]>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M JSTests/stress/intl-canonical-iana-time-zone.js
M JSTests/stress/temporal-calendar.js
M JSTests/stress/temporal-duration.js
M JSTests/stress/temporal-plaindate.js
M JSTests/stress/temporal-plaindatetime.js
M JSTests/stress/temporal-plainmonthday.js
M JSTests/stress/temporal-plaintime.js
M JSTests/stress/temporal-plainyearmonth.js
M JSTests/stress/temporal-timezone.js
M JSTests/test262/expectations.yaml
M Source/JavaScriptCore/CMakeLists.txt
M Source/JavaScriptCore/DerivedSources-input.xcfilelist
M Source/JavaScriptCore/DerivedSources-output.xcfilelist
M Source/JavaScriptCore/DerivedSources.make
M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
M Source/JavaScriptCore/Sources.txt
M Source/JavaScriptCore/heap/Heap.h
M Source/JavaScriptCore/runtime/CommonIdentifiers.h
M Source/JavaScriptCore/runtime/Error.h
M Source/JavaScriptCore/runtime/ISO8601.cpp
M Source/JavaScriptCore/runtime/ISO8601.h
M Source/JavaScriptCore/runtime/JSGlobalObject.cpp
M Source/JavaScriptCore/runtime/JSGlobalObject.h
M Source/JavaScriptCore/runtime/TemporalCalendar.cpp
M Source/JavaScriptCore/runtime/TemporalCalendar.h
R Source/JavaScriptCore/runtime/TemporalCalendarConstructor.cpp
R Source/JavaScriptCore/runtime/TemporalCalendarConstructor.h
R Source/JavaScriptCore/runtime/TemporalCalendarPrototype.cpp
R Source/JavaScriptCore/runtime/TemporalCalendarPrototype.h
M Source/JavaScriptCore/runtime/TemporalDuration.cpp
M Source/JavaScriptCore/runtime/TemporalDuration.h
M Source/JavaScriptCore/runtime/TemporalDurationConstructor.cpp
M Source/JavaScriptCore/runtime/TemporalDurationPrototype.cpp
M Source/JavaScriptCore/runtime/TemporalInstant.cpp
M Source/JavaScriptCore/runtime/TemporalInstant.h
M Source/JavaScriptCore/runtime/TemporalInstantConstructor.cpp
M Source/JavaScriptCore/runtime/TemporalInstantPrototype.cpp
M Source/JavaScriptCore/runtime/TemporalNow.cpp
M Source/JavaScriptCore/runtime/TemporalObject.cpp
M Source/JavaScriptCore/runtime/TemporalObject.h
M Source/JavaScriptCore/runtime/TemporalPlainDate.cpp
M Source/JavaScriptCore/runtime/TemporalPlainDate.h
M Source/JavaScriptCore/runtime/TemporalPlainDateConstructor.cpp
M Source/JavaScriptCore/runtime/TemporalPlainDatePrototype.cpp
M Source/JavaScriptCore/runtime/TemporalPlainDateTime.cpp
M Source/JavaScriptCore/runtime/TemporalPlainDateTime.h
M Source/JavaScriptCore/runtime/TemporalPlainDateTimeConstructor.cpp
M Source/JavaScriptCore/runtime/TemporalPlainDateTimePrototype.cpp
M Source/JavaScriptCore/runtime/TemporalPlainMonthDay.cpp
M Source/JavaScriptCore/runtime/TemporalPlainMonthDay.h
M Source/JavaScriptCore/runtime/TemporalPlainMonthDayConstructor.cpp
M Source/JavaScriptCore/runtime/TemporalPlainMonthDayPrototype.cpp
M Source/JavaScriptCore/runtime/TemporalPlainTime.cpp
M Source/JavaScriptCore/runtime/TemporalPlainTime.h
M Source/JavaScriptCore/runtime/TemporalPlainTimeConstructor.cpp
M Source/JavaScriptCore/runtime/TemporalPlainTimePrototype.cpp
M Source/JavaScriptCore/runtime/TemporalPlainYearMonth.cpp
M Source/JavaScriptCore/runtime/TemporalPlainYearMonth.h
M Source/JavaScriptCore/runtime/TemporalPlainYearMonthConstructor.cpp
M Source/JavaScriptCore/runtime/TemporalPlainYearMonthPrototype.cpp
M Source/JavaScriptCore/runtime/TemporalTimeZone.cpp
M Source/JavaScriptCore/runtime/TemporalTimeZone.h
M Source/JavaScriptCore/runtime/TemporalTimeZoneConstructor.cpp
M Source/JavaScriptCore/runtime/TemporalTimeZonePrototype.cpp
M Source/JavaScriptCore/runtime/temporal/core/CalendarFields.cpp
M Source/JavaScriptCore/runtime/temporal/core/CalendarFields.h
M Source/JavaScriptCore/runtime/temporal/core/CalendarICUBridge.cpp
M Source/JavaScriptCore/runtime/temporal/core/CalendarICUBridge.h
Log Message:
-----------
[JSC][Temporal] Remove Temporal.Calendar object and update JS layer to Stage
4 spec
https://bugs.webkit.org/show_bug.cgi?id=315608
rdar://177987905
Reviewed by Yusuke Suzuki.
Remove the Temporal.Calendar constructor and prototype (Stage 3 API absent from
Stage 4). JSGlobalObject no longer registers Temporal.Calendar; the constructor
and prototype source files are deleted. TemporalCalendar.cpp is kept as the
internal calendar-math library.
Migrate calendar representation from String-based calendarId to an integer
CalendarID type throughout all Temporal types (PlainDate, PlainDateTime,
PlainTime, PlainYearMonth, PlainMonthDay, Duration, Instant). This eliminates
repeated String round-trips and enables compile-time calendar dispatch via
CalendarICUBridge.
Update Temporal.Now to support named-timezone offset queries for
plainDateTimeISO, plainDateISO, and plainTimeISO using ICU calendar probing.
Fix several spec-compliance issues in constructors and prototypes:
- PlainYearMonth rejects bare "YYYY-MM" strings without calendar annotation
- PlainDateTime defaults missing time fields to 0 instead of undefined
- PlainMonthDay.prototype.with() throws TypeError for unrecognised fields
- PlainTime constructor rejects NaN arguments
Add throwError(JSGlobalObject*, ThrowScope&, ErrorType, const String&) inline
to Error.h to support throwTemporalError in TemporalObject.
Add //@ skip to temporal-plain{date,datetime,time,yearmonth,monthday}.js,
temporal-calendar.js, and temporal-timezone.js pending IntlDateTimeFormat
Temporal support in the follow-up patch. Update intl-canonical-iana-time-zone.js
to replace Temporal.TimeZone references with FIXME comments for ZonedDateTime.
Canonical link: https://commits.webkit.org/313942@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications