Skip to content

Determine whether it's acceptable to remain pinned to a particular version of syn, or choose a different workaround #1088

Closed
@joshlf

Description

@joshlf

To work around #1085 until we have a more complete solution, we plan to pin our dependency on syn to a specific version (#1089). We need to remove this workaround and implement a more complete solution before releasing 0.8.

Progress

  • Determine whether continuing to remain pinned to a particular version of syn will be problematic for 0.8; consider both dependency resolution and build-time performance
    • An alternative: could we pin to a particular version only on certain Rust toolchains, but leave it unpinned for more recent toolchains? We would need to consider whether we run the risk of future MSRV bumps, or whether we can structure the dependency in such a way that it just always works. This would resolve the build-time performance issues for most users.
  • If we decide not to continue pinning, consider this workaround:
    • Declare that zerocopy-derive's MSRV is just whatever syn's is (TODO: How do we pin this in CI for testing?)
    • Document that zerocopy's derive feature is exempt from our MSRV
    • After 0.8, work to resolve this - in the most optimistic scenario, we can return to having both crates have the same MSRV, but at least we won't be blocked on it

Metadata

Metadata

Assignees

No one assigned

    Labels

    blocking-next-releaseThis issue should be resolved before we release on crates.io

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions