Closed
Description
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