# 0.004000

- Automatically choose an upstream revision if one isn't supplied, based on the
  upstream/tracking branch.
- Support quoted filenames in diff output. git-autofixup now works with
  filenames containing non-ASCII characters.
- Improve error messages and handling. For git commands that are expected to
  fail, their stderr is captured, annotated with the command, and printed, to
  clarify the cause of errors.
- Deprecate --gitopt|-g in favor of GIT_CONFIG_{COUNT,KEY,VALUE} environment
  variables.

# 0.003002

- Speed up creation of temporary git index by copying the existing one and
  subtracting recent changes
- Speed up `git-blame` by only considering commits since the given revision
- Handle filenames (in git diff output) that contain spaces
- Suppress Git warning about implicit default branch

Many thanks to Johannes Altmanninger for his continued work; he implemented or
contributed to all the important changes in this release.

# 0.003001

- Fix bug where the index would be left out-of-sync with `HEAD` after
  autofixing unstaged hunks due to a temporary index being used. If you're
  running v0.003000 and hit this, `git restore --staged` can be used to read
  the new `HEAD`'s tree into the index. Thanks to Johannes Altmanninger for
  finding and fixing this.

# 0.003000

The most important change to the interface is that now, if there are any hunks
staged in the index, only those hunks will be considered for assigning to fixup
commits. A temporary git index is used to make any created fixup commits, so
any staged hunks that don't get assigned will remain staged. Thanks to Jonas
Bernoulli and Max Odnoletkov for their help with this.

- Add --gitopt to allow working around git settings issues
- Add --exit-code option, which gives more granular status about what subset of
  hunks were assigned to commits

Bug fixes:

- Fix diff commands so that the diff.noprefix, diff.mnemonicPrefix, and
  diff.external settings don't result in us getting unexpected input. Thanks to
  Paolo Giarrusso and Ryan Campbell for help with this.
- Fix bug where multiple hunks assigned to the same commit would result in
  copies of the same fixup commit, resulting in "patch does not apply" errors.
  Thanks to Johannes Altmanninger for identifying and fixing this.

# 0.002007

- Fix hunk parsing for files with multiple hunks (broken in 0.002006)
- Create fixup commits in a consistent order

# 0.002006

- Improve docs for the --strict option
- Fix hunk parsing for files without a newline at EOF

# 0.002005

- Fix running from repo subdirectories
- Fix docs for invoking as "git autofixup"

# 0.002004

- Fix angle brackets in POD

# 0.002003

- Check git version when running tests

# 0.002002

- Fix tests when git user.name and email aren't configured.

# 0.002001

- Make compatible with perl 5.8.4. Previously 5.8.9 was required.

# 0.002000

- Better descriptions of hunk handling now printed to stdout.
- Use --strict=1 behaviour as a fallback when --strict=0.
- Fix blamed line number and left side output for runs of added lines

# 0.001002

- Make compatible with perl5.8
- --help now shows the manpage