git-annex/doc/news/version_8.20200226.mdwn
2020-02-26 19:11:15 -04:00

56 lines
3.2 KiB
Markdown

News for git-annex 8.20200226:
This version of git-annex uses repository version 8 for all repositories.
Existing repositories will be automatically upgraded by default.
You can prevent this, by runing: git config annex.autoupgraderepository false
The upgrade process involves regenerating some sqlite databases. There are a
couple consequences of the upgrade to keep in mind:
* Any incremental fscks that were started in v7 won't resume where
they left off in v8, but will instead begin again from the first file.
* An interrupted export that was started in v7 won't resume where it left
off after upgrade to v8; files will be re-uploaded to the export remote.
* After the upgrade, git-annex will in some situations have to do extra
work while it finishes populating its sqlite databases.
Also, there are some behavior changes around adding dotfiles. While before
git-annex add skipped adding dotfiles when operating on whole directories,
and added dotfiles that were explicitly listed to the annex, it now adds
dotfiles to git by default, unless annex.dotfiles is set to true.
git-annex 8.20200226 released with [[!toggle text="these changes"]]
[[!toggleable text="""
* New v8 repository version.
* v7 upgrades automatically to v8. The upgrade deletes old sqlite
databases, which may cause git-annex to need to do extra work to
regenerate the databases or due to not having the information from the
old databases available. Two notable cases are interrupted incremental
fscks and interrupted exports, both of which will restart from the
beginning.
* Improved serialization of filenames and keys to the sqlite databases,
avoiding encoding problems and speeding up operations on them.
* Add some missing indexes to sqlite databases. This will speed up
some things involving export and import remotes, and git-annex smudge.
Microbenchmarks show around 10-25% speedup of sqlite database operations.
* add: When adding a whole directory, any dotfiles found in it will
not be skipped, but will be added to git by default. This behavior
can be configured with annex.dotfiles.
* add: Removed special case for explicitly passing dotfiles,
that no longer adds them to the annex, but to git. This behavior
can be configured with annex.dotfiles.
* add: Removed the --include-dotfiles option.
* initremote, enableremote: Set remote.name.skipFetchAll when
the remote cannot be fetched from by git, so git fetch --all
will not try to use it.
* Fix some cases where handling of keys with extensions varied depending
on the locale.
* annex.maxextensionlength used to be the number of characters, not
bytes, when in a utf-8 locale. It's now always the number of bytes.
* Extended annex.security.allowed-ip-addresses to let specific ports
of an IP address to be used, while denying use of other ports.
* init --version: When the version given is one that automatically
upgrades to a newer version, use the newer version instead.
* Auto upgrades from older repo versions, like v5, now jump right to v8.
* Makefile: Support newer versions of cabal that use the new-build system."""]]