Skip to content

Potentially expose sync feature of icu_provider #641

Open

Description

@aapoalas

At least in Nova's usage, dropping of GC'd heap items (and generally will) can happen on threads other than the main JavaScript runtime thread.

For ZonedDateTime specifically, it is not currently Send due to using an Rc<Box<[u8]>> inside of icu_provider crate. The crate does offer a sync feature which would (presumably) switch to using Arc.

I assume this would be necessary for us to use temporal_rs safely; but maybe I'm mistaken?

Activity

  1. LeandroVandari commented on Dec 24, 2025

    @LeandroVandari
    Contributor

    imo it at least should be documented that ZonedDateTime requires icu_provider's sync feature in order to become Send + Sync. While building a multi-threaded program with it, i ran into an issue with the lack of implementation of those traits, and had to dig into icu_provider's source code to figure out the issue (and find out that the sync feature existed)

  2. added this to the v1.0 blocking milestone on Mar 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions