Tags: yne/review
Tags
Submitting review 6a274cc Require `git` to be run from a trusted path On Windows, the current working directory is searched for a matching executable before the rest of the user's path. This causes a potential issue where running `git appraise` from within a directory that has an executable file matching the command `git` will cause that (untrusted) file to be invoked instead of the expected `git` executable when `git-appraise` attempts to shell out to `git`. This change prevents that by using the new `execabs` package instead of `os/exec`. With this change, that scenario would cause `git appraise` to report an error rather than invoking the wrong `git` binary. More background on the related issue [here](https://blog.golang.org/path-security)
Submitting review efcba5b Better support for rebasing reviews This change improves the support for rebasing reviews in multiple ways: 1. Adding a new `refs/archives/devtools` ref that can be used to make sure that commits which have been rebased do not get garbage collected. 2. Adding a new `alias` field to the request schema that enables tracking review history across rebases. 3. Adding a new `rebase` subcommand that enables us to update the history for a change prior to submitting it.
Submitting review 8db99d4 Split out the summary of a review into a separate struct. This new struct is then returned by all of the methods that list the reviews in a repo, and is what the "list" subcommand operates on. By making this split, we can separate the data that is cheap to look up from the data that is expensive to look up, and forgoe the expensive look ups when we are operating on multiple reviews. This change improves the performance of listing the open reviews in the git-appraise repo by more than three fold (dropping the run time from more than 7 seconds to less than 2).