Skip to content

Fix case-sensitivity issues, multi-spec toolchains with `--targets=all`, add configurable download timeout

Compare
Choose a tag to compare
@drmikehenry drmikehenry released this 27 Apr 10:24
· 73 commits to main since this release
  • NOTE If upgrading from older Romt, it's recommended to use the same version of Romt on the Internet-connected machine and the offline machine. See Upgrading from Romt versions before 0.4.0 in the README.rst for details.

  • Add support for lowercase crate prefixes in CRATES_ROOT. This avoids problems when using a crate mirror with both case-sensitive and case-insensitive filesystems simultaneously; see #14. See README.rst for details.

  • Add --timeout option to control the timeout in seconds for downloading. Change default timeout from five seconds (the default for the httpx library) to sixty seconds. A value of 0 disables the timeout altogether.

  • Fix toolchain unpacking of archives created with multiple specs and --targets=all (see #17). When packing a toolchain archive, the specs and targets are specified independently, so typically each spec must use the same list of targets; but the special target all is expanded to a per-spec list of targets during packing. During unpacking, Romt had been detecting the union of all targets present in the archive and applying this set of targets to all detected specs in the archive, causing problems if one spec supported more targets than the others. Now Romt detects archives that contain all targets for all included specs and converts back to the special all target for verification and further processing.