tree 2643ca813cf10ec94789c415700d2c908ae7fc26
parent ea0592c50fd437dc07cec6f757f3010ede156f7a
author Finn Ball <finn.ball@codificasolutions.com> 1785510443 +0100
committer GitHub <noreply@github.com> 1785510443 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJqbLo7CRC1aQ7uu5UhlAAAvWYQAAS/07MzF9QfVLU/6v+5RKd8
 HMd+XfhAMa2spAEfEod6Z654keoU8GAoIIr/lK/dYT99Ilk+GHYoD1LrCVms1hPb
 kEUPXz3q9vqKmLuZJOm+uhUY+soBb/Cp2d0B93YKx8DlJ1kD7jxRzf1rbQRrOTRQ
 Z0KKsPH7LK49eDH7bY0lFjcQVKdM1RMx9K2ivBIXxuAjprK1JZhxKnW2CI25UMNl
 Mzi4txgqH9/wxPW2D86MqWp6KOdQTBUIBsSAnEmdKlIhXsCzUDWu8YgZz8S28yV1
 92cpD59YjYFnWFeMu4WWv+Di86gGkmXc3Kr0wWOWSJeIz8Dn4fLrFbkPSREGalZN
 3cLt6vEtrXoLVVzJD+BPgQmTWp1O65Tdf77aGmDuoyydYCo5pF4FcUhglQ21pup2
 rrpdhV7h5evnwxieqxlI1SMGjfEHkp+zGaJlECMviZQf+7vh5SGogRAzuWNhljrT
 fLqnkrjKQfRWoh8ChMDn9VDI3tyNsKtFnkxVbFtclXgRenaYMr3+tQr+LOWq/+Qj
 Mv8t6EHxp/A3lcWSYECroGuKl59owuT/OjY8a8sZaaDCXrD5jleP2xA3WNKjRtqj
 rSI6MxVkbROei3jghj5RjsBklajP1tP2xBfli2WMEcoae4pxNrDeYXdIJZHU8WrK
 pFuj19OZ64jjYZabjmVG
 =lyJD
 -----END PGP SIGNATURE-----
 

Add build_script_env_files crate annotation (#4166)

## Summary

Add `build_script_env_files` support to `crate.annotation`, allowing
environment files to be passed to generated `cargo_build_script`
targets.

The change:

- Exposes `build_script_env_files` through bzlmod and legacy crate
annotations.
- Propagates the annotation through crate-universe configuration and
build-script context.
- Renders the attribute on generated `cargo_build_script` rules.
- Supports unconditional and platform-selected values.
- Updates the configuration digest.
- Adds tests for annotation propagation and BUILD-file rendering.

## Testing

- `bazel test //crate_universe:unit_test`