Skip to content

Build: tinyvec 1.13.0 breaks cold unlocked dependency resolution #1524

Description

@developer0hye

Problem

A fresh checkout without Cargo.lock resolves tinyvec 1.13.0 and fails before office2pdf compiles:

error: cannot find macro `vec` in this scope
  --> tinyvec-1.13.0/src/tinyvec.rs:710:21

The dependency graph enables tinyvec's alloc feature without its std feature through fontdb / unicode-normalization. tinyvec 1.13.0 accidentally calls an unqualified vec! macro in that configuration.

This currently leaves multiple otherwise-valid office2pdf PRs red, including the cold unlocked Publish Verification job.

Upstream tracking:

Proposed bounded workaround

Because office2pdf is already std-only, explicitly enable tinyvec's std feature in the published office2pdf crate. Cargo feature unification then avoids the broken no_std + alloc code path for both workspace builds and downstream consumers. Remove the direct feature-unification dependency after a patched tinyvec release is available and verified.

Acceptance criteria

  • A fresh unlocked cargo check --workspace resolves crates.io tinyvec 1.13.0 and passes.
  • Native tests, formatting, and clippy remain green.
  • All three wasm32-unknown-unknown check configurations remain green.
  • Package/publish verification includes the workaround in the normalized published manifest.
  • Existing dependency-blocked PRs are updated and rerun after this lands.

Activity

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

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions