github facebook/sapling 0.2.20221222-152408-ha6a66d09

latest releases: 0.2.20240219-172743+3e819974, test-release-33, 0.2.20240218-160543+560f4e83...
18 months ago

This release focuses on correctness issues around handling submodules as well as various usability/workflow improvements.

  • We made a number of improvements to working in repos with submodules:
    • Rebasing past an update to a submodule no longer adds the submodule change to the bottom of the stack that was rebased: 2f0f0fd
    • Rebasing a stack that contains a submodule change will preserve the change in the destination if the destination does not change the submodules: 1f5424d
    • Rebasing a stack with a conflicting submodule change no longer crashes: 2b94b6f
  • Improvements to the sl pr command:
    • You must now specify sl pr submit explicitly: submit is no longer the default subcommand for sl pr, but s can be used as an alias for submit: 56b5e3e
    • The sl pr submit command now supports a --draft flag: 6e9c3d7
    • New sl pr pull subcommand: if you use sl pr submit to create a stack of pull requests, now you can use sl pr pull to import the stack back into your working copy: d09d598
    • New sl pr list subcommand that mirrors the functionality of gh pr list: 8f0a657
    • Experimental new command for creating stacks: sl -c github.pr_workflow=single pr submit. See #302 and 166e264 for details.
    • sl pr submit now appends the stack information to the end of the pull request body instead of prepending it to the top: 8910d18
    • The branch name for a PR created by sl pr submit is now guaranteed to match the PR number: e77e67b
  • Improvements to commands involving remote names and bookmarks:
    • SCP-style URIs (such as git@github.com:git/git-reference) are now supported for remote names: 67fa848
    • sl clone --git <URL> --updaterev <branch/commit> can now be used to clone a specific branch or commit: 9804c66
    • sl rebase -b was reworked for better selecting branching points by avoiding public commits (reverse rebase now works): 96b767e
    • sl bookmark --remote can be used to list remote branches. Further, sl bookmark --remote-path myfork --remote tags will list tags from remote myfork:
    • e8f57d7
  • It is now possible to specify the Git committer for newly created commit objects by specifying the git.committer config option when running a command. For example, sl --config git.committer="User <user@example.com>" amend would update the committer for the current commit to User <user@example.com>. Though note that if git.committer is not set, the value defaults to the ui.username config. This means that sl metaedit --user IDENTITY will not update the committer to IDENTITY if the git.committer config is not set, but sl metaedit --config ui.username=IDENTITY --user IDENTITY would. See 7f88efd for details.
  • Removed a dependency on gdbm in the Python code, that was causing crashes for some users: cfbb6a2

Don't miss a new sapling release

NewReleases is sending notifications on new releases.