All notable changes to this project will be documented in this file.
- Update zoneinfo64 and Diplomat by @Manishearth in #713
- Update icu_calendar to fix
with()regression by @Manishearth in #716
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.2.2...v0.2.3
- Update ICU4X to 2.2 by @Manishearth in #705
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.2.1...v0.2.2
- Pin icu_calendar to v2.1 by @jedel1043 in #704
- Remove unwrap in PYM::epoch_ns_for_utc by @Manishearth in #701
- Fix bug with rounding with zoned RelativeTo and increment by @Manishearth in #696
- Add epoch_ns_for_utc to all Plain APIs by @Manishearth in #700
- Ensure offsets do not have more than 9 digits while parsing by @Manishearth in #698
- Do not overly range check when constructing Temporal PlainMonthDay by @Manishearth in #695
- Replace icu_locale with icu_locale_core by @Manishearth in #694
- docs: temporal is stage four by @ghostdevv in #692
- Expose fields needed for structured clone by @lucacasonato in #686
- @ghostdevv made their first contribution in #692
- @lucacasonato made their first contribution in #686
- Fix incorrect decimal digits bug by @nekevss in #679
- Update the documentation by @nekevss in #680
- chore: cleanup zoneinfo_rs crate by @nekevss in #674
- Test time zone canonicalization against ICU4X by @robertbastian in #676
- Fix Sao Paulo bug in zoneinfo_rs by @nekevss in #663
- Implement a zero copy tzdb provider by @nekevss in #662
- Restrict the units that can be added to PlainYearMonth by @Manishearth in #671
- Fix Duration out of bounds crash by @Manishearth in #667
- Implement std::error::Error for TemporalError by @LeandroVandari in #664
- Rebuild time zone data with 2025c by @nekevss in #660
- Add support for time zone designations by @nekevss in #659
- Fix bug in POSIX time zone calculations by @nekevss in #658
- Add two different HostHook impls by @nekevss in #591
- Add NonZeroSign type to ensure proper sign handling by @nekevss in #652
- Update to new ComputeNudgeWindow spec text by @Manishearth in #636
- Fix ZonedDateTime::with bug when empty fields is provided by @nekevss in #650
- Add manual PartialOrd impl for FiniteF64 by @nekevss in #649
- Correct sign in nudge_to_zoned_time by @catamorphism in #647
- YearMonth addition: Use ISO parameters, not calendared parameters, when subtracting by @Manishearth in #645
- Fix typo in doc string by @catamorphism in #639
- Set YearMonth's day to 1 in calendar space when diffing by @Manishearth in #640
- unify iso naming in
Nowby @Sharktheone in #631 - Style updates by @Sharktheone in #632
- Use all-features for timezone_provider on docs.rs by @Manishearth in #630
- remove unneeded clone in TzdbResolver::get by @Sharktheone in #628
- Attempt to handle the "completely contained within" timezone rule by @Manishearth in #629
- Reject on empty fields object in PlainYearMonth::with by @nekevss in #626
- @robertbastian made their first contribution in #676
- @LeandroVandari made their first contribution in #664
- @catamorphism made their first contribution in #647
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.1.2...v0.2.0
- Publish 0.1.2 by @Manishearth in #625
- Ignore timezones mentioned in zone.tab when constructing the canonicalization table by @Manishearth in #624
- Add logic to Duration::total to handle loss of precision by @nekevss in #622
- Add feature to force float64-representable durations by @Manishearth in #621
- Updates for ZonedDateTime since / until issue by @Manishearth in #619
- Fix returned duration sign for non-ISO date arithmetic by @Manishearth in #618
- Constrain durations into a range that will produce valid Temporal dates before passing to ICU4X by @Manishearth in #615
- Add smart pointer implementations for TimeZone traits by @jedel1043 in #614
- Fix serialization of durations with zero seconds and nonzero subseconds by @ptomato in #610
- Remove support for unqualified
islamiccalendar by @Manishearth in #609 - Make ISO the default AnyCalendarKind over FFI by @Manishearth in #608
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.1.1...v0.1.2
- Publish 0.1.1 by @Manishearth in #605
- fix: allow passing
&dyn TimeZoneProviderin arguments by @jedel1043 in #599 - Update ICU4X to 2.1 by @Manishearth in #604
- Update Diplomat to 0.14.0 by @Manishearth in #603
- Update ICU4X by @Manishearth in #601
- Move to new ICU4X arithmetic code by @Manishearth in #595
- Update to ICU4X main by @Manishearth in #596
- Remove HijriSimulatedMecca / islamic-rgsa by @Manishearth in #597
- Fix a small typo in errors by @reillysiemens in #594
- Update to ICU4X's new Calendar::from_fields by @Manishearth in #582
- re-export DefaultHostSystem by @Sharktheone in #590
- @reillysiemens made their first contribution in #594
- @Sharktheone made their first contribution in #590
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.1.0...v0.1.1
- Update Diplomat to 0.13.0 by @Manishearth in #588
- Add TryFrom for PartialDuration to Duration by @nekevss in #585
- Add missing from_epoch_nanoseconds() FFI by @linusg in #584
- Add from_nanoseconds to FFI PlainDateTime by @nekevss in #583
- Update diplomat to using cpp lib name by @Manishearth in #581
- Fix TimeZone::get_possible_epoch_ns at date-time limits by @ptomato in #580
- Rename timezone.rs to time_zone.rs by @nekevss in #574
- General updates to temporal_rs's exports and docs by @nekevss in #575
- Review Instant API + Duration by @nekevss in #573
- Make TimeZone no longer allocate over FFI by @Manishearth in #572
- Update the library introduction and README for timezone_provider by @nekevss in #570
- Add a minimal README for zoneinfo_rs by @nekevss in #569
- Remove passing lint allows by @Manishearth in #571
- Updates to PlainYearMonth and PlainMonthDay based on review by @nekevss in #567
- Update library introduction documentation and the project README.md by @nekevss in #564
- Updates to PlainTime API based on review by @nekevss in #565
- Make ISO getters crate private by @nekevss in #568
- Handle und month codes by @Manishearth in #563
- Update
ZonedDateTimeconstructors by @nekevss in #562 - Review and update PlainDate and PlainDateTime API by @nekevss in #561
- Refactor Now to be trait based for lazy host getters by @nekevss in #560
- Fix comment and organization of TimeZone::zero by @Manishearth in #559
- Update ZonedDateTime module and API by @nekevss in #557
- Remove yoke dep from temporal_capi by @Manishearth in #556
- @ptomato made their first contribution in #580
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.16...v0.1.0
- Bump versions to 0.0.16
- Remove extraneous icu_time dependency
- Add TimeZone::zero() to capi by @Manishearth in #554
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.15...v0.0.16
- Bump versions
- Update zoneinfo64 by @Manishearth in #552
- Remove Default impl from TimeZone; use utc() everywhere by @Manishearth in #551
- Add missing header files by @Manishearth in #550
- Add provider APIs to capi by @Manishearth in #544
- Add new unit validation code by @Manishearth in #542
- Add calendar consts for calendar construction by @nekevss in #541
- Remove some unreachables by @Manishearth in #543
- Move timezone tests to testing against multiple providers by @Manishearth in #539
- Move TimeZone over to being Copy with TimeZoneId by @Manishearth in #538
- Split TimeZoneProvider trait by @Manishearth in #537
- Update compiled tzif data provider data by @nekevss in #535
- Add zoneinfo64 support to temporal_provider by @Manishearth in #533
- Update zoneinfo compilation in zoneinfo crate by @nekevss in #532
- Complete some cleanup options module by @nekevss in #531
- Make errors Copy by @Manishearth in #528
- More saturating arithmetic by @Manishearth in #527
- Move TimeZoneProvider to timezone_provider crate by @Manishearth in #526
- Clean up TimeZoneProvider crate by @Manishearth in #525
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.14...v0.0.15
- Release 0.0.14
- Fix validity checks by @Manishearth in #523
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.13...v0.0.14
- Bump versions to 0.13
- Add validity checks on parse by @Manishearth in #517
- Use correct cached offset when rounding ZDTs by @Manishearth in #520
- Clamp unit indices before checking table by @Manishearth in #516
- Check that year values are in safe arithmetical range by @Manishearth in #513
- Use correct sign value in nudge code by @Manishearth in #514
- Support fractional hour values in hoursInDay by @Manishearth in #515
- Cache offsets on ZDT by @Manishearth in #510
- Update duration to unsigned fields + specification updates by @nekevss in #507
- Reduce (and lint-disallow) panics in main code by @Manishearth in #506
- Further normalize MWDs, add Vancouver and Santiago tests by @Manishearth in #504
- Duration rounding: is_date_unit(), not is_calendar_unit() by @Manishearth in #503
- Use beyondDaySpan in NudgeToZonedDateTime by @Manishearth in #501
- Remove use of unsafe from the main crate by @Manishearth in #502
- Simplify calendar API over FFI by @Manishearth in #498
- Handle week=5 MWD cases in posix TZ strings by @Manishearth in #499
- Exclude tzif files from publish by @Manishearth in #495
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.12...v0.0.13
- Bump versions
- cleanup: Remove parsing functionality from PartialZDT by @Manishearth in #493
- Various MonthDay fixes by @Manishearth in #492
- Add
CalendarFieldsconcept and integate it with API and Partial structs by @nekevss in #487 - Add support for non-ISO yearmonths and monthdays by @Manishearth in #490
- Add separate parsed variants of all types by @Manishearth in #486
- Update icu_calendar, fix self-consistency test by @Manishearth in #488
- Add builder pattern
with_xxxmethods for PartialDuration by @nekevss in #485 - Add CalendarFieldKeysToIgnore by @Manishearth in #484
- Reuse ZDT parsing logic from PartialZDT by @Manishearth in #483
- Fix hours in day calculation around gap transitions by @Manishearth in #482
- Generate the baked zone info data for ZoneInfoProvider by @nekevss in #264
- Precompute before/after offsets and use in disambiguate_possible_epoch_nanos by @Manishearth in #479
- Add tzif-inspect tool for inspecting tzif data by @Manishearth in #480
- Fix behavior of ns-to-seconds casting for negative values by @Manishearth in #475
- Fix panics from calling abs on i64::MIN by @nekevss in #474
- Implement get_named_tzdb_transition by @Manishearth in #472
- Use ISO day of week unconditionally by @Manishearth in #471
- Fix overflow when validating Duration by @nekevss in #470
- Rewrite v2_estimate_tz_pair to compare local timestamps by @Manishearth in #468
- Normalize, don't canonicalize time zones by @Manishearth in #466
- Normalize UTC to UTC by @Manishearth in #463
- Ensure that the correct year-month is range-checked during diff operations by @Manishearth in #461
- Correctly handle matchBehavior for sub-minute offset strings by @Manishearth in #462
- Correctly normalize timezones by @Manishearth in #460
- Fix posix logic that was causing panics by @nekevss in #459
- Fix float precision check by @Manishearth in #457
- CalendarDateAdd takes DateDurations, not full Durations by @Manishearth in #453
- Check validity where requested by the spec by @Manishearth in #456
- Add .clone() to FFI, YearMonth::reference_day by @Manishearth in #454
- Move nanoseconds-validity checking to being explicit by @Manishearth in #452
- Add debug impl for error message by @Manishearth in #451
- Rename ffi epoch_ns_for to epoch_ms_for by @Manishearth in #443
- Fix panic in tzdb logic by @nekevss in #441
- Support RoundNumberToIncrementAsIfPositive by @Manishearth in #440
- Support sub-minute offsets in UTCOffset by @Manishearth in #437
- Fix bug in
to_zoned_date_time_with_providerby @nekevss in #436 - Ensure dates are in limits after performing arithmetic by @Manishearth in #435
- YearMonth::compare should compare ISO days by @Manishearth in #433
- toPlainDate should use CONSTRAIN by @Manishearth in #430
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.11...v0.0.12
- Add PartialZonedDateTime::try_from_str by @Manishearth in #420
- Add from_partial for YearMonth/MonthDay FFI by @Manishearth in #351
- Throw error if given more than 9 duration digits by @Manishearth in #425
- Fix up eras, correctly expose arithmetic year by @Manishearth in #424
- Add time zone normalization by @Manishearth in #415
- Allow adding date durations to PlainTime by @Manishearth in #421
- Parse both zoned and unzoned date times in relativeTo by @Manishearth in #422
- Add get_epoch_ns_for on YearMonth/MonthDay by @Manishearth in #414
- Don't set None time in ZDT::from_partial by @Manishearth in #416
- [capi] Add from_utf8/from_utf16 for OwnedRelativeTo by @Manishearth in #375
- Forbid MonthDay/YearMonth formats for non-iso by @Manishearth in #413
- Use track_caller in assertion errors by @Manishearth in #417
- Properly respect overflow options when performing with_fallback_date/time by @Manishearth in #407
- Add TimeZone::utc() to FFI by @Manishearth in #358
- Add POSIX time zone string support to zoneinfo by @nekevss in #265
- Fix duration validity check by @Manishearth in #411
- Produce correct error types for invalid month/era codes by @Manishearth in #405
- Add support for offsetBehavior == WALL by @Manishearth in #404
- Update README.md - mention other usages of lib by @jasonwilliams in #401
- Make TimeZone::identifier() infallible by @linusg in #399
- Fix the bakedata provider path by @nekevss in #398
- Include time duration in InternalDurationSign by @Manishearth in #397
- Use rounded instant in ZDT::toString by @Manishearth in #396
- Fix hoursInDay division constant by @nekevss in #395
- Expose ParseTemporalCalendarString over FFI by @Manishearth in #390
- Remove UTC designator check from time zone parsing by @nekevss in #392
- Update ixdtf to icu4x main git branch by @robot-head in #365
- Fix
9.5.8 AddDurationToYearMonthabstract method by @HalidOdat in #389 - Fix ZonedDateTime::nanosecond by @Manishearth in #388
- Allow datetime strings for YearMonth/MonthDay/Time by @Manishearth in #386
- Remove orgs/boa-dev/people from links by @nekevss in #387
- Update maintainers in README.md by @jasonwilliams in #384
- Re-add try_from_offset_str by @Manishearth in #376
- Fix clippy lints for Rust 1.88 by @nekevss in #377
- @linusg made their first contribution in #399
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.10...v0.0.11
- Add documentation and doctests for builtins by @blarfoon in #360
- More error enums by @Manishearth in #373
- [capi] Add stringifier/cloning to timezones by @Manishearth in #344
- Handle unknown timezone identifiers in FsTzdbProvider by @Manishearth in #345
- [capi] Fix i128Nanoseconds by @Manishearth in #372
- [capi] expose error strings by @Manishearth in #364
- Consolidate tools into a single
tooldirectory by @nekevss in #368 - Add a new PartialYearMonth to available partial structs (#288) by @robot-head in #342
- Implement zoneinfo parsing/compilation and add TZif structs by @nekevss in #257
- Add ErrorMessage enum, start using it by @Manishearth in #355
- [capi] Add is_valid() to I128Nanoseconds by @Manishearth in #363
- [capi] Add ZonedDateTime::{equals,offset} by @Manishearth in #362
- Add convenience methods for constructing FFI datetime types from milliseconds by @Manishearth in #359
- [capi] Add offset_nanoseconds() to ZDT FFI by @Manishearth in #361
- Update diplomat by @Manishearth in #357
- Stop depending on
is_dstfor calculations by @jedel1043 in #356 - Add some FAQ style docs for temporal_rs by @nekevss in #350
- Add try_from_offset_str ctor for TimeZone by @Manishearth in #348
- Switch compiled_data APIs to new CompiledTzdbProvider by @Manishearth in #346
- @blarfoon made their first contribution in #360
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.9...v0.0.10
- Cross boundary rounding fix #286 by @robot-head in #343
- Implement PlainMonthDay::with functionality by @nekevss in #335
- Add Writeable getters for some types, use in FFI by @Manishearth in #340
- Add missing FFI APIs by @Manishearth in #339
- Fill in missing Zoned APIs by @Manishearth in #331
- Add stringifiers to MonthDay/YearMonth by @Manishearth in #338
- Use AnyCalendarKind in PartialDate by @Manishearth in #332
- Add ZonedDateTime FFI by @Manishearth in #329
- Use a lock internally to FsTzdbProvider instead of externally by @Manishearth in #327
- Remove create() APIs, consistently use try_new() by @Manishearth in #326
- Switch FFI calendar APIs over to using AnyCalendarKind for input by @Manishearth in #324
- Update abstract method
7.5.37 RoundRelativeDurationby @HalidOdat in #323 - Fix abstract method
7.5.36 BubbleRelativeDuration()by @HalidOdat in #322 - Generate FFI bindings for C by @jedel1043 in #321
- Improve baked data formatting by @Manishearth in #319
- Correctly validate largestUnit when constructing from DifferenceSettings by @Manishearth in #316
- Align
Duration.prototype.round()to latest specification by @HalidOdat in #317
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.8...v0.0.9
- Make duration capi getters non-optional by @Manishearth in #314
- Add to_string to Duration by @Manishearth in #312
- Add comparison methods to Instant by @Manishearth in #311
- Add LICENSEs to timezone_provider crate by @Manishearth in #308
- Prune dependencies of timezone_provider in normal mode, add depcheck by @Manishearth in #310
- Add to_plain_date to PlainMonthDay and PlainYearMonth by @HenrikTennebekk in #287
- Remove exclude and readme by @nekevss in #304
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.7...v0.0.8
- Bump ixdtf and complete changes for update by @nekevss in #299
- A few more changes to the readme by @nekevss in #297
- Implement a builder API for Now by @nekevss in #296
- Some docs cleanup and updates by @nekevss in #294
- Add
PlainMonthDaymethod + clean up by @nekevss in #284 - Add Eq, Ord impls on FiniteF64 by @sffc in #187
- Allow parsers to accept unvalidated UTF8 by @HalidOdat in #295
- Bump to icu_calendar 2.0 by @nekevss in #292
- Add ISO specific constructors to builtins by @nekevss in #263
- Rename the provider crate by @nekevss in #289
- Expose equals and compare over FFI by @Magnus-Fjeldstad in #269
- Impl round_with_provider for ZonedDateTIme by @sebastianjacmatt in #278
- Add some compiled_data FFI APIs by @Manishearth in #273
- Add string conversion functions for Temporal types by @Manishearth in #276
- Make sure temporal_capi can be built no_std by @Manishearth in #281
- Make iana-time-zone dep optional by @Manishearth in #279
- Implementation of ZonedDateTime.prototype.with by @lockels in #267
- Update Duration's inner representation from floating point to integers. by @nekevss in #268
- Add all-features = true to docs.rs metadata by @Manishearth in #271
- Fix instant math in capi by @Manishearth in #270
- Remove the Temporal prefix from Unit, RoundingMode, and UnsignedRoundingMode by @nekevss in #254
- Since until by @sebastianjacmatt in #259
- Implementation of toZonedDateTimeISO for Instant by @lockels in #258
- Implement toZonedDateTime in PlainDate by @JohannesHelleve in #192
- Add intro documentation to ZonedDateTime and PlainDateTime by @nekevss in #253
- Implement IANA normalizer baked data provider by @nekevss in #251
- @HalidOdat made their first contribution in #295
- @JohannesHelleve made their first contribution in #192
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.6...v0.0.7
- Rename methods on
Nowand add a test by @nekevss in #243 - Add licenses to
temporal_capiandtemporal_rsfor publish by @nekevss in #247 - Add with to PlainYearMonth by @sebastianjacmatt in #231
- initial implementation of ToZonedDateTime, ToPlainDate, ToPlainTime by @lockels in #244
- Initial implementation of Duration.prototype.total by @lockels in #241
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.5...v0.0.6
- Prepare temporal_capi for publish by @jedel1043 in #238
- Adjustments to
toPlainYearMonthandtoPlainMonthDaymethods on PlainDate by @nekevss in #237 - Missed an unwrap in the README.md example by @nekevss in #236
- Clean up API ergonomics for calendar methods by @nekevss in #235
- Add various updates to docs by @nekevss in #234
- Reject datetime when fraction digits are too large by @nekevss in #229
- Fix not adjusting fraction for duration unit by @nekevss in #228
- Fixes for
EpochNanoseconds andOffsetparsing by @nekevss in #223 - Fix bugs around validating diffing units by @nekevss in #225
- Add
UtcOffsetstruct forPartialZonedDateTimeby @nekevss in #207 - Check in bindings, add CI for keeping them up to date by @Manishearth in #220
- Fix
Instant::epoch_millisecondsfor values before Epoch by @nekevss in #221 - Update ixdtf to 0.4.0 by @Manishearth in #219
- Update icu4x to 2.0.0-beta2 by @Manishearth in #218
- Add
GetNamedTimeZoneTransitionmethod to TimeZoneProvider trait by @nekevss in #203 - Implement posix resolution for month-week-day by @jedel1043 in #214
- implement utility methods on partial structs by @nekevss in #206
- Test all combinations of features by @jedel1043 in #212
- Reject non-iso calendar in
YearMonth::from_strandMonthDay::from_strby @nekevss in #211 - Fix not validating
MonthCodein ISO path by @nekevss in #210 - Integrate
MonthCodeinto public API and related adjustments by @nekevss in #208 - Implement the remaining non-ISO calendar method calls by @nekevss in #209
- PlainYearMonth parsing and Calendar field resolution cleanup/fixes by @nekevss in #205
- Build out stubs for remaining unimplemented methods by @nekevss in #202
- Fix clippy lints by @nekevss in #201
- Temporal duration compare by @sffc, @lockels, @Neelzee, @sebastianjacmatt, @Magnus-Fjeldstad and @HenrikTennebekk. in #186
- Fix issues with
from_partialmethod implementations by @nekevss in #200 - More FFI: Finish Calendar, add Instant by @Manishearth in #198
- Fix parsing bugs related to UTC Designator usage by @nekevss in #197
- Update time parsing to error on dup critical calendars by @nekevss in #196
- Update unit group validation to handle rounding options by @nekevss in #194
- Fix handling of leap seconds in parsing by @nekevss in #195
- Update time zone parsing to include other ixdtf formats by @nekevss in #193
- Fix calendar parsing on
from_strimplementation by @nekevss in #191 - Cleanup
NowAPI in favor of system defined implementations by @nekevss in #182 - Reimplement Unit Group with different approach by @nekevss in #183
- Implement
ZonedDateTime::offsetandZonedDateTime::offset_nanosecondsby @nekevss in #185 - Small API cleanup and a couple dev docs updates by @nekevss in #190
- Add Eq and Ord for PlainYearMonth + Eq for PlainMonthDay by @nekevss in #175
- More FFI APIs by @Manishearth in #178
- Fix the typo that's returning milliseconds instead of microseconds by @nekevss in #184
- Add some FFI tests by @Manishearth in #179
- Fix Instant parsing by handling order of operations and properly balance
IsoDateTimeby @nekevss in #174 - Add some testing / debugging docs by @nekevss in #176
- Fix logic on asserting is_time_duration by @nekevss in #177
- Rework library restructure to remove wrapper types by @nekevss in #181
- Restructure project to separate core provider APIs from non-provider APIs by @nekevss in #169
- Fix
Durationparsing not returning a range error. by @nekevss in #173 - Set up basic diplomat workflow by @Manishearth in #163
- Implement Neri-Schneider calculations by @nekevss in #147
- Remove
UnitGroupaddition by @nekevss in #171 - Implement
ZonedDateTime::sinceandZonedDateTime::untilby @nekevss in #170 - Implement to_string functionality and methods for
Duration,PlainYearMonth, andPlainMonthDayby @nekevss in #164 - API cleanup, visibility updates, and tech debt cleanup by @nekevss in #168
- Add to_string functionality for timezone identifer by @nekevss in #161
- Bug fixes to address test failures + removing unused API by @nekevss in #162
- Implement correct resolving of
getStartOfDayby @jedel1043 in #159 - Add an MSRV check to CI by @nekevss in #158
- Fixing panics in test262 when running in debug mode by @nekevss in #157
- Fix edge case for disambiguating
ZonedDateTimes on DSTs skipping midnight by @jedel1043 in #156 - Extend implementation of
to_ixdtf_stringto more types by @nekevss in #155 - Implement support for
to_stringand implementPlainDate::to_stringby @nekevss in #153 - Fix RoundingMode::truncation to UnsignedRoundingMode mapping by @nekevss in #146
- Add validation logic to
from_diff_settingsby @nekevss in #144 - Build out the rest of the Now methods by @nekevss in #145
- Adjust
RelativeToaccording to specification and implementation by @nekevss in #140 - Complete some general cleanup of
temporal_rsby @nekevss in #138 - Add ZonedDateTime functionality to
Duration::roundby @nekevss in #134 - Update try_new, new, and new_with_overflow integer type by @nekevss in #137
- Fix
Calendar::from_strto be case-insensitive by @nekevss in #135 - Add ToIntegerWithTruncation, ToPositiveIntegerWithTruncation, and ToIntegerIfIntegral methods to
FiniteF64by @nekevss in #131 - Add to-x methods and with-x methods to ZonedDateTime by @nekevss in #129
- Fix
epoch_time_to_epoch_yeardate equation bug related toBalanceISODateby @nekevss in #132 - Bump dependencies for
ixdtf,tzif,icu_calendar, andtinystr. by @nekevss in #133 - Fix bug introduced by
EpochNanoseconds+ adjust tests to catch better by @nekevss in #128 - Remove epochSeconds and epochMicroseconds + adjust epochMillseconds by @nekevss in #127
- Adjust compilation configuration of tzdb to target_family from target_os by @nekevss in #125
- Migrate repo to workspace by @jedel1043 in #126
- Add now feature flag by @nekevss in #123
- Add
ZonedDateTimecalendar accessor methods by @nekevss in #117 - Implement
PartialZonedDateTimeandfrom_partialandfrom_strforZonedDateTimeby @nekevss in #115 - Update CHANGELOG for v0.0.4 release by @nekevss in #124
- Patch the now test per matrix discussion by @nekevss in #121
- @sffc made their first contribution in #186
- @lockels made their first contribution in #186
- @Neelzee made their first contribution in #186
- @sebastianjacmatt made their first contribution in #186
- @Magnus-Fjeldstad made their first contribution in #186
- @HenrikTennebekk made their first contribution in #186
- @cassioneri made their first contribution in #147
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.4...v0.0.5
- bump release by @jasonwilliams in #120
- Add an
EpochNanosecondnew type by @nekevss in #116 - Migrate to
web_time::SystemTimeforwasm32-unknown-unknowntargets by @nekevss in #118 - Bug fixes and more implementation by @jasonwilliams in #110
- Some
Erroroptimizations by @CrazyboyQCD in #112 - Add
from_partialmethods toPlainTime,PlainDate, andPlainDateTimeby @nekevss in #106 - Implement
ZonedDateTime's add and subtract methods by @nekevss in #102 - Add matrix links to README and some layout adjustments by @nekevss in #108
- Stub out
tzdbsupport for Windows and POSIX tz string by @nekevss in #100 - Stub out tzdb support to unblock
NowandZonedDateTimeby @nekevss in #99 - Remove num-bigint dependency and rely on primitives by @nekevss in #103
- Move to no_std by @Manishearth in #101
- General API cleanup and adjustments by @nekevss in #97
- Update README.md by @jasonwilliams in #96
- Refactor
TemporalFieldsintoCalendarFieldsby @nekevss in #95 - Patch for partial records by @nekevss in #94
- Add
PartialTimeandPartialDateTimewith correspondingwithmethods. by @nekevss in #92 - Implement
MonthCode,PartialDate, andDate::withby @nekevss in #89 - Add is empty for partialDuration by @jasonwilliams in #90
- Fix lints for rustc 1.80.0 by @jedel1043 in #91
- adding methods for yearMonth and MonthDay by @jasonwilliams in #44
- Implement
DateTimeround method by @nekevss in #88 - Update
Durationtypes to use aFiniteF64instead off64primitive. by @nekevss in #86 - Refactor
TemporalFieldsinterface and addFieldsKeyenum by @nekevss in #87 - Updates to instant and its methods by @nekevss in #85
- Implement compare functionality and some more traits by @nekevss in #82
- Implement
DateTimediffing methodsUntilandSinceby @nekevss in #83 - Add
with_*methods toDateandDateTimeby @nekevss in #84 - Add some missing trait implementations by @nekevss in #81
- chore(dependabot): bump zerovec-derive from 0.10.2 to 0.10.3 by @dependabot[bot] in #80
- Add prefix option to commit-message by @nekevss in #79
- Add commit-message prefix to dependabot by @nekevss in #77
- Bump zerovec from 0.10.2 to 0.10.4 by @dependabot[bot] in #78
- @jasonwilliams made their first contribution in #120
- @CrazyboyQCD made their first contribution in #112
- @Manishearth made their first contribution in #101
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.3...v0.0.4
- Implement add and subtract methods for Duration by @nekevss in #74
- Implement PartialEq and Eq for
Calendar,Date, andDateTimeby @nekevss in #75 - Update duration validation and switch asserts to debug-asserts by @nekevss in #73
- Update duration rounding to new algorithms by @nekevss in #65
- Remove
CalendarProtocolandTimeZoneProtocolby @jedel1043 in #66 - Use groups in dependabot updates by @jedel1043 in #69
- Ensure parsing throws with unknown critical annotations by @jedel1043 in #63
- Reject
IsoDatewhen outside the allowed range by @jedel1043 in #62 - Avoid overflowing when calling
NormalizedTimeDuration::add_daysby @jedel1043 in #61 - Ensure parsing throws when duplicate calendar is critical by @jedel1043 in #58
- Fix rounding when the dividend is smaller than the divisor by @jedel1043 in #57
- Implement the
toYearMonth,toMonthDay, andtoDateTimeforDatecomponent by @nekevss in #56 - Update increment rounding functionality by @nekevss in #53
- Patch
(un)balance_relativeto avoid panicking by @jedel1043 in #48 - Cleanup rounding increment usages with new struct by @jedel1043 in #54
- Add struct to encapsulate invariants of rounding increments by @jedel1043 in #49
- Migrate parsing to
ixdtfcrate by @nekevss in #50 - Fix method call in days_in_month by @nekevss in #46
- Implement add & subtract methods for
DateTimecomponent by @nekevss in #45 - Fix panics when no relative_to is supplied to round by @nekevss in #40
- Implement Time's until and since methods by @nekevss in #36
- Implements
Date'sadd,subtract,until, andsincemethods by @nekevss in #35 - Fix clippy lints and bump bitflags version by @nekevss in #38
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.2...v0.0.3
Full Changelog: https://github.com/boa-dev/temporal/compare/v0.0.1...v0.0.2
- Add blank and negated + small adjustments by @nekevss in #17
- Simplify Temporal APIs by @jedel1043 in #18
- Implement
Durationnormalization - Part 1 by @nekevss in #20 - Duration Normalization - Part 2 by @nekevss in #23
- Add
non_exhaustiveattribute to component structs by @nekevss in #25 - Implement
Duration::roundand some general updates/fixes by @nekevss in #24
- Adding a
docsdirectory by @nekevss in #16 - Build out README and CONTRIBUTING docs by @nekevss in #21
- Port
boa_temporalto newtemporalcrate by @nekevss in #1 - Add CI and rename license by @jedel1043 in #3
- Create LICENSE-Apache by @jedel1043 in #6
- Setup publish CI by @jedel1043 in #26
- Remove keywords from Cargo.toml by @jedel1043 in #28
Full Changelog: https://github.com/boa-dev/temporal/commits/v0.0.1