Skip to content

Handle missing tarball cross-compilers gracefully#1882

Merged
oferchen merged 1 commit into
masterfrom
fix-cross-compilation-tooling-issue
Nov 1, 2025
Merged

Handle missing tarball cross-compilers gracefully#1882
oferchen merged 1 commit into
masterfrom
fix-cross-compilation-tooling-issue

Conversation

@oferchen
Copy link
Copy Markdown
Owner

@oferchen oferchen commented Nov 1, 2025

Summary

  • skip Linux tarball targets that cannot resolve a cross-compilation linker and keep building the remaining ones
  • surface explicit console warnings for skipped targets while preserving the original error if every target is skipped
  • extend the xtask package tests to cover the new tarball resolution helper and expose the helper for reuse in tests

Testing

  • cargo test -p xtask

https://chatgpt.com/codex/tasks/task_e_69061bd85f6c832385f14a21dcaf8cd8

@oferchen oferchen merged commit c791332 into master Nov 1, 2025
@oferchen oferchen deleted the fix-cross-compilation-tooling-issue branch November 1, 2025 14:52
oferchen added a commit that referenced this pull request May 1, 2026
Verifies that --jump-host=<value> propagates as `-J <value>` to the
spawned SSH subprocess in the correct argv position (before the
destination operand). A POSIX shell-script wrapper named `ssh` records
its argv to a temp file and exits 255 so we can assert the wire-level
contract without standing up a real two-hop sshd topology.

Scenarios covered:
- single hop: --jump-host=bastion.example.com
- multi-hop chain: --jump-host=alice@a,bob@b
- host with port:  --jump-host=user@bastion:2200
- absent flag:     no -J emitted
- empty value:     no -J emitted

An end-to-end test that exercises a real two-hop SSH transfer through
localhost is included but marked #[ignore] (requires sshd + remote
rsync). The whole module is #[cfg(unix)] - the recorder relies on a
Bourne shell wrapper. Closes #1882; references #1881 (implementation).
oferchen added a commit that referenced this pull request May 1, 2026
Verifies that --jump-host=<value> propagates as `-J <value>` to the
spawned SSH subprocess in the correct argv position (before the
destination operand). A POSIX shell-script wrapper named `ssh` records
its argv to a temp file and exits 255 so we can assert the wire-level
contract without standing up a real two-hop sshd topology.

Scenarios covered:
- single hop: --jump-host=bastion.example.com
- multi-hop chain: --jump-host=alice@a,bob@b
- host with port:  --jump-host=user@bastion:2200
- absent flag:     no -J emitted
- empty value:     no -J emitted

An end-to-end test that exercises a real two-hop SSH transfer through
localhost is included but marked #[ignore] (requires sshd + remote
rsync). The whole module is #[cfg(unix)] - the recorder relies on a
Bourne shell wrapper. Closes #1882; references #1881 (implementation).
oferchen added a commit that referenced this pull request May 2, 2026
Verifies that --jump-host=<value> propagates as `-J <value>` to the
spawned SSH subprocess in the correct argv position (before the
destination operand). A POSIX shell-script wrapper named `ssh` records
its argv to a temp file and exits 255 so we can assert the wire-level
contract without standing up a real two-hop sshd topology.

Scenarios covered:
- single hop: --jump-host=bastion.example.com
- multi-hop chain: --jump-host=alice@a,bob@b
- host with port:  --jump-host=user@bastion:2200
- absent flag:     no -J emitted
- empty value:     no -J emitted

An end-to-end test that exercises a real two-hop SSH transfer through
localhost is included but marked #[ignore] (requires sshd + remote
rsync). The whole module is #[cfg(unix)] - the recorder relies on a
Bourne shell wrapper. Closes #1882; references #1881 (implementation).
oferchen added a commit that referenced this pull request May 2, 2026
Verifies that --jump-host=<value> propagates as `-J <value>` to the
spawned SSH subprocess in the correct argv position (before the
destination operand). A POSIX shell-script wrapper named `ssh` records
its argv to a temp file and exits 255 so we can assert the wire-level
contract without standing up a real two-hop sshd topology.

Scenarios covered:
- single hop: --jump-host=bastion.example.com
- multi-hop chain: --jump-host=alice@a,bob@b
- host with port:  --jump-host=user@bastion:2200
- absent flag:     no -J emitted
- empty value:     no -J emitted

An end-to-end test that exercises a real two-hop SSH transfer through
localhost is included but marked #[ignore] (requires sshd + remote
rsync). The whole module is #[cfg(unix)] - the recorder relies on a
Bourne shell wrapper. Closes #1882; references #1881 (implementation).
oferchen added a commit that referenced this pull request May 5, 2026
Verifies that --jump-host=<value> propagates as `-J <value>` to the
spawned SSH subprocess in the correct argv position (before the
destination operand). A POSIX shell-script wrapper named `ssh` records
its argv to a temp file and exits 255 so we can assert the wire-level
contract without standing up a real two-hop sshd topology.

Scenarios covered:
- single hop: --jump-host=bastion.example.com
- multi-hop chain: --jump-host=alice@a,bob@b
- host with port:  --jump-host=user@bastion:2200
- absent flag:     no -J emitted
- empty value:     no -J emitted

An end-to-end test that exercises a real two-hop SSH transfer through
localhost is included but marked #[ignore] (requires sshd + remote
rsync). The whole module is #[cfg(unix)] - the recorder relies on a
Bourne shell wrapper. Closes #1882; references #1881 (implementation).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant