Skip to content

mv --exchange ft #8391

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open

mv --exchange ft #8391

wants to merge 2 commits into from

Conversation

hz2
Copy link
Contributor

@hz2 hz2 commented Jul 25, 2025

implements the --exchange flag for linux systems with testing

fixes #8220

@hz2 hz2 changed the title fixes #8220 mv --exchange ft Jul 25, 2025
Copy link

GNU testsuite comparison:

GNU test failed: tests/mv/mv-exchange. tests/mv/mv-exchange is passing on 'main'. Maybe you have to rebase?
Skip an intermittent issue tests/misc/tee (fails in this run but passes in the 'main' branch)
Skipping an intermittent issue tests/timeout/timeout (passes in this run but fails in the 'main' branch)

@hz2 hz2 force-pushed the mv-exchange-flag branch from 8be20e3 to 77875aa Compare July 25, 2025 21:58
Copy link

GNU testsuite comparison:

GNU test failed: tests/mv/mv-exchange. tests/mv/mv-exchange is passing on 'main'. Maybe you have to rebase?
Skipping an intermittent issue tests/misc/stdbuf (passes in this run but fails in the 'main' branch)

@drinkcat
Copy link
Collaborator

Can you also look into fixing the GNU test? I guess it suddenly enabled itself now that you support some of the feature:

Error: GNU test failed: tests/mv/mv-exchange. tests/mv/mv-exchange is passing on 'main'. Maybe you have to rebase?

Copy link

GNU testsuite comparison:

GNU test failed: tests/mv/mv-exchange. tests/mv/mv-exchange is passing on 'main'. Maybe you have to rebase?
Skip an intermittent issue tests/misc/stdbuf (fails in this run but passes in the 'main' branch)
Skip an intermittent issue tests/misc/tee (fails in this run but passes in the 'main' branch)

Copy link
Collaborator

@drinkcat drinkcat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

Just one question, wondering if we can use use nix crate -- we use it in many other places already, so that's probably simpler.

@drinkcat
Copy link
Collaborator

GNU testsuite comparison:

GNU test failed: tests/mv/mv-exchange. tests/mv/mv-exchange is passing on 'main'. Maybe you have to rebase?

Oh, the test is still unhappy ,-(

implements the --exchange flag for linux systems with testing

clippy checks

- added test for testing -T

- switched print statement to match GNU exchange format
- switched to using the translate! macro instead of get_message

took out duplicate uses

removed mv-exchange checks in build-gnu.sh

cargo fmt

swapped RENAME_EXCHANGE with nix renameat

Cargo.lock

clippy

fix formatting, test error messages and reverted build-gnu.sh
@hz2 hz2 force-pushed the mv-exchange-flag branch from 5ed1bef to 8ec6cd2 Compare July 31, 2025 02:41
@hz2
Copy link
Contributor Author

hz2 commented Jul 31, 2025

GNU testsuite comparison:

GNU test failed: tests/mv/mv-exchange. tests/mv/mv-exchange is passing on 'main'. Maybe you have to rebase?

Oh, the test is still unhappy ,-(

Yup sorry still working on this part, trying to mock the tests on macOS was messy, trying docker now

Copy link

GNU testsuite comparison:

GNU test failed: tests/mv/mv-exchange. tests/mv/mv-exchange is passing on 'main'. Maybe you have to rebase?
Skip an intermittent issue tests/misc/tee (fails in this run but passes in the 'main' branch)

Copy link

GNU testsuite comparison:

GNU test failed: tests/mv/mv-exchange. tests/mv/mv-exchange is passing on 'main'. Maybe you have to rebase?
Skip an intermittent issue tests/misc/tee (fails in this run but passes in the 'main' branch)

@drinkcat
Copy link
Collaborator

GNU testsuite comparison:

GNU test failed: tests/mv/mv-exchange. tests/mv/mv-exchange is passing on 'main'. Maybe you have to rebase?

Oh, the test is still unhappy ,-(

Yup sorry still working on this part, trying to mock the tests on macOS was messy, trying docker now

I need to document this somewhere... lima could be useful. I've used it recently to run SELinux tests (on a non-SELinux Linux box -- that's what we do in CI too), but lima was meant for Mac originally.

Command dump from my scratchpad:

limactl start --plain --name=default --cpus=4 --disk=40 --memory=8 --network=lima:user-v2 template://fedora
rsync -a -e ssh --exclude target gnu coreutils lima-default:~/work/
lima bash -c 'cd ~/work/coreutils/ && bash util/build-gnu.sh'
lima bash -c 'cd ~/work/coreutils/ && sudo bash util/run-gnu-test.sh tests/misc/selinux.sh'

Copy link

github-actions bot commented Aug 7, 2025

GNU testsuite comparison:

GNU test failed: tests/mv/mv-exchange. tests/mv/mv-exchange is passing on 'main'. Maybe you have to rebase?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

mv: support --exchange flag
2 participants