# Vendoring Rust Dependencies for rust-rav1e

This package uses vendored Rust dependencies for building the C library (`librav1e0.8`)
which is promoted to Ubuntu main. The `librust-rav1e-dev` package has been removed in
the Ubuntu delta since it would conflict with the vendored build.

## Steps to Create the Vendor Tarball

1. Install cargo-vendor-filterer:
   ```bash
   cargo install cargo-vendor-filterer
   ```

2. Generate the vendor tarball:
   ```bash
   debian/rules vendor-tarball
   ```

3. Generate the XS-Vendored-Sources-Rust field content:
   ```bash
   CARGO_VENDOR_DIR=rust-vendor /usr/share/cargo/bin/dh-cargo-vendored-sources
   ```

4. Update `debian/control` `XS-Vendored-Sources-Rust` field with the output from step 3

## Ubuntu Delta Maintenance

When merging with Debian, note that Debian may add patches that relax dependency
versions in Cargo.toml to match the Debian archive (e.g., patches named like
`relax-*.patch` or `revert-update-to-*.patch`). These patches are needed in
Debian for building with archive librust-*-dev Build-Depends. Since Ubuntu uses
vendored dependencies instead and drops `librust-rav1e-dev` package, these
patches should be removed in the Ubuntu delta.
