Skip to content

Make serde optional #176

Open
Open
@nicoburns

Description

@nicoburns

Serde derives are expensive (in terms of compile time and binary size) and are also on the critical path for Stylo compilation (pushing Stylo later in compile graph). Many consumers of Stylo (e.g. Blitz) will not need serde support, so we should make it optional.

Notes

This is technically simple: it is mostly "just" a case of adding feature flags to serde Serialize and Deserialize derives. However, as Servo requires these derives (and thus the "servo" feature will need to continue to enable them), it will likely require the introduction of either:

  • a separate non-servo, non-gecko feature (e.g. oss_base)
  • The use of not(feature = "gecko")

And switching most of the uses of the servo feature to use this new feature instread.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions