Skip to content
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

tooling for better copy detection #1529

Merged
merged 4 commits into from
Aug 20, 2024
Merged

tooling for better copy detection #1529

merged 4 commits into from
Aug 20, 2024

Commits on Aug 20, 2024

  1. remove #[momo] directive as it seems to prevent auto-completion in …

    …IDEs.
    
    Given it's marginal effect on the binary size, the negative effects on RustRover
    at least, and the added complexity, I think that ultimately it's not worth keeping,
    unfortunately.
    Byron committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    3a339da View commit details
    Browse the repository at this point in the history
  2. Add it copy-royal a degenerative copy tool

    Its main purpose is to help build test-cases from real-world repositories.
    Byron committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    ba91274 View commit details
    Browse the repository at this point in the history
  3. Add internal-tools git-to-sh to serialize a git repo partially to a…

    … shell script.
    
    The shell-script will reproduce the repository, as long as the history is linear.
    Byron committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    d54d99c View commit details
    Browse the repository at this point in the history
  4. add a real-world test to reproduce an issue discovered in jj (#1524)

    The pathspec list to reduce the set of files was generated with
    
    ```
    git diff 47bd6f4aa4a7eeef8b01ce168c6c771bdfffcbd3~1 47bd6f4aa4a7eeef8b01ce168c6c771bdfffcbd3  --stat --no-renames --name-only
    ```
    
    The assets and script to reproduce the fixture was created with:
    
    ```
    cargo run -p internal-tools -- git-to-sh -c2 /Users/byron/dev/github.com/martinvonz/jj assets/jj-trackcopy-1 47bd6f4aa4a7eeef8b01ce168c6c771bdfffcbd3 CHANGELOG.md cli/src/commands/cat.rs cli/src/commands/chmod.rs cli/src/commands/file/chmod.rs cli/src/commands/file/mod.rs cli/src/commands/file/print.rs cli/src/commands/mod.rs cli/tests/cli-reference@.md.snap cli/tests/runner.rs cli/tests/test_acls.rs cli/tests/test_cat_command.rs cli/tests/test_chmod_command.rs cli/tests/test_diffedit_command.rs cli/tests/test_file_chmod_command.rs cli/tests/test_file_print_command.rs cli/tests/test_fix_command.rs cli/tests/test_global_opts.rs cli/tests/test_immutable_commits.rs cli/tests/test_move_command.rs cli/tests/test_new_command.rs cli/tests/test_squash_command.rs cli/tests/test_unsquash_command.rs
    ```
    
    It's notable that such issues are currently expected as the tracker
    implementation isn't as precise as the one in Git, which tracks more
    than one candidate.
    Byron committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    7ef1e88 View commit details
    Browse the repository at this point in the history