* Sun Jul 10 2016 firstname.lastname@example.org
- Update to version 6.20160511 revision 0 with cabal2obs.
* Fri Jun 17 2016 email@example.com
- Declare the fact that the git-annex bash-completion sub-package
supplements normal bash-completions, i.e. it's a recommended
package. Suggested by @dimstar in his OBS review.
* Tue Jun 14 2016 firstname.lastname@example.org
- Declare build requirement on 'bash-completion' to fix the build in
* Thu May 12 2016 email@example.com
- update to 6.20160511
* Fix bug that sometimes prevented git-annex smudge --clean from consuming
all its input, which resulted in git add bypassing git-annex.
* Fix build with directory-18.104.22.168.
* Improve behavior when a just added http remote is not available
during uuid probe. Do not mark it as annex-ignore, so it will be tried
* Added DIRHASH-LOWER to external special remote protocol.
* git-annex.cabal: Add Setup-Depends.
* map: Hide dead repositories that are not connected to the graph.
* map: Changed colors; red is used for untrusted repositories and grey
* version: Display OS version and architecture too.
* Propigate GIT_DIR and GIT_WORK_TREE environment to external special
* Added annex.gnupg-decrypt-options and
remote.<name>.annex-gnupg-decrypt-options, which are passed to gpg
when it's decrypting data.
* fsck: When a key is not previously known in the location log,
record something so that reinject --known will work.
* In the unusual configuration where annex.crippledfilesystem=true but
core.symlinks=true, store object contents in mixed case hash
directories so that symlinks will point to them.
* Added new encryption=sharedpubkey mode for special remotes.
This is useful for makking a special remote that anyone with a clone
of the repo and your public keys can upload files to, but only you can
decrypt the files stored in it.
* Sat Apr 30 2016 firstname.lastname@example.org
- update to 6.20160419
* Fix bug that prevented resuming of uploads to encrypted special remotes
that used chunking.
* That bug could also expose the names of keys to such remotes when
attempting to resume an upload, so it is a minor security issue.
* Fix duplicate progress meter display when downloading from a git remote
over http with -J.
* reinject: When src file's content cannot be verified, leave it alone,
instead of deleting it.
* reinject: Added new mode which can reinject known files into the annex.
For example: git-annex reinject --known /mnt/backup/*
* calckey: New plumbing command, calculates the key that would be used
to refer to a file.
* Fix bug that prevented annex.sshcaching=false configuration from taking
effect when on a crippled filesystem. Thanks, divergentdave.
* git 2.9.0 is going to prevent git merge from merging in unrelated
branches. Since the webapp's pairing etc features often combine
together repositories with unrelated histories, work around
this behavior change when the assistant merges, by passing
- -allow-unrelated-histories. Note though that this is not done
for git annex sync's merges, so it will follow git's default or
* When git-annex is used with a git version older than 2.2.0, disable
support for adjusted branches, since GIT_COMMON_DIR is needed to update
them and was first added in that version of git.
* Avoid setting LOCPATH in linux standalone builds that are built with
a ghc that has been fixed to not hang when it cannot find locale files.
* Isolate test suite from global git config settings.
* Thu Apr 28 2016 email@example.com
- Add "ghc-magic" dependency to enable support for libmagic-based
guessing of MIME types.
* Thu Apr 28 2016 firstname.lastname@example.org
- Add "ghc-mountpoints" dependency to fix support for the Assistant.
* Tue Apr 26 2016 email@example.com
- Improve accuracy of the license header to include AGPL-licensed
parts of the package.
* Tue Apr 19 2016 firstname.lastname@example.org
- update to 6.20160418
* smudge: Print a warning when annex.thin is set, as git's smudge
interface does not allow honoring that configuration.
* webapp: When $HOME is a git repository, and has been initialized for
use by git-annex, opening the webapp went ahead and ran the assistant
there, annexing all files. Since this is almost certianly not
desirable, especially when the user is just opening the webapp from
a dekstop menu which happens to run it in $HOME, the webapp will now not
treat such a $HOME git repository as a git-annex repository.
* webapp: Update url to add gitlab.com ssh key.
* Fix bug in v6 mode that prevented treating unlocked executable files
as annexed. If you have such files, run git annex init --version=6
to update the cache after upgrading to this version of git-annex.
* Preserve execute bits of unlocked files in v6 mode.
* fsck: Warn when core.sharedRepository is set and an annex object file's
write bit is not set and cannot be set due to the file being owned
by a different user.
* Fix hang when dropping content needs to lock the content on a
ssh remote, which occurred when the remote has git-annex version
5.20151019 or newer.
* Wed Apr 13 2016 email@example.com
- update to 6.20160412
* adjust --unlock: Enters an adjusted branch in which all annexed files
are unlocked. The v6 equivilant of direct mode, but much cleaner!
* Upgrading a direct mode repository to v6 has changed to enter
an adjusted unlocked branch. This makes the direct mode to v6 upgrade
able to be performed in one clone of a repository without affecting
other clones, which can continue using v5 and direct mode.
* init --version=6: Automatically enter the adjusted unlocked branch
when filesystem doesn't support symlinks.
* ddar remote: fix ssh calls
* log: Display time with time zone.
* log --raw-date: Use to display seconds from unix epoch.
* v6: Close pointer file handles more quickly, to avoid problems on Windows.
* sync: Show output of git commit.
* Fix bug in annex.largefiles mimetype= matching when git-annex
is run in a subdirectory of the repository.
* Mon Mar 21 2016 firstname.lastname@example.org
- update to 6.20160318
* metadata: Added -r to remove all current values of a field.
* Fix data loss that can occur when annex.pidlock is set in a repository.
* Fix bug preventing moving files to/from a repository with annex.pidlock set.
* Fix shared lock file FD leak.
* Fix metadata hook behavior when multiple files are added at once.
* Added dependencies on haskell mountpoints and disk-free-space
libraries, removing FFI code from git-annex.
* dropkey: Add --batch and --json.
* Always try to thaw content, even when annex.crippledfilesystem is set.
* Correct git-annex info to include unlocked files in v6 repository.
* Sped up git-annex add in direct mode and v6 by using
git hash-object --stdin-paths.
* Sped up git-annex merge by using git hash-object --stdin-paths.
* Mon Mar 07 2016 email@example.com
- update to 6.20160229
* Update perlmagick build dependency.
* Fix memory leak in last release, which affected commands like
git-annex status when a large non-annexed file is present in the work
* fsck: When the only copy of a file is in a dead repository, mention
* info: Mention when run in a dead repository.
* Linux and OSX standalone builds put the bundled gpg last in PATH,
so any system gpg will be preferred over it.
* Avoid crashing when built with MagicMime support, but when the magic
database cannot be loaded.
* Include magic database in the linux and OSX standalone builds.
* Fix memory leak when hashing files, which triggered during fsck
when an external hash program was not used.
(This leak was introduced in version 6.20160114.)
* Support --metadata field<number, --metadata field>number etc
to match ranges of numeric values.
* Similarly, support preferred content expressions like
metadata=field<number and metadata=field>number
* The pre-commit-annex hook script that automatically extracts
metadata has been updated to also use exiftool.
* Sun Feb 28 2016 firstname.lastname@example.org
- update to 6.20160211
* annex.addsmallfiles: New option controlling what is done when
adding files not matching annex.largefiles.
* Fix reversion in lookupkey, contentlocation, and examinekey which
caused them to sometimes output side messages.
* webapp: Fix deletion of current repository directory.
* Added "nothing" to preferred content expression syntax.
* annex.largefiles can be configured in .gitattributes too;
this is particulary useful for v6 repositories, since the
.gitattributes configuration will apply in all clones of the
* Limit annex.largefiles parsing to the subset of preferred content
expressions that make sense in its context. So, not "standard"
or "lackingcopies", etc.
* annex.largefiles: Add support for mimetype=text/* etc, when git-annex
is linked with libmagic.
* matchexpression: Added --largefiles option to parse an annex.largefiles
* Brought back the dbus and xmpp build flags, so build from source can be
done without C libraries that may be hard to install.
* init: Fix bugs in submodule .git symlink fixup, that occurred when
initializing in a subdirectory of a submodule and a submodule of a
* WebDAV: Set depth 1 in PROPFIND request, for better compatibility with
some servers. Thanks, wzhd.
* WebDAV: Remove a bogus trailing slash from the end of the url to the
temporary store location for a key. Thanks, wzhd.
* S3: Allow configuring with requeststyle=path to use path-style bucket
access instead of the default DNS-style access.
* Fix nasty reversion in the last release that broke sync --content's
handling of many preferred content expressions.
* whereis --json: Urls are now listed inside the remote that claims them,
rather than all together at the end.
* info, add, whereis, find: Support --batch mode.
* Force output to be line-buffered, even when it's not connected to the
terminal. This is particuarly important for commands with --batch
output, which was not always being flushed at an appropriate time.
* add, import: Support --json output.
* addurl --json: Include field for added key (unless the file was
added directly to git due to annex.largefiles configuration.)
(Also done by add --json and import --json)
* registerurl: Check if a remote claims the url, same as addurl does.
* Bug fix: Git config settings passed to git-annex -c did not always take
* assistant: Use udisks2 dbus events to detect when disks are mounted,
instead of relying on gnome/kde stuff that is not stable.
* Fix build with QuickCheck 2.8.2
* matchexpression: New plumbing command to check if a preferred content
expression matches some data.
* Removed the webapp-secure build flag, rolling it into the webapp build
* Removed the quvi, tahoe, feed, and tfds build flags, adding
aeson feed and regex-tdfa to the core dependencies.
* Roll the dns build flag into the assistant build flag.
* Tue Feb 23 2016 email@example.com
- Initial version of git-annex-6.20160114.
* Thu Jan 27 2022 Peter Simons <firstname.lastname@example.org>
- Update git-annex to version 10.20220127.
git-annex (10.20220127) upstream; urgency=medium
* New v10 repository version (with v9 as a stepping-stone to it).
v8 remains the default version for now.
* In v10, object files are locked using separate lock files. This allows
the object files to be kept non-writable even in repositories where
core.sharedRepository is set.
* The v10 upgrade will happen automatically, one year after the v9
upgrade, in order to allow time for any old git-annex processes that
are not aware of the locking change to finish. Or git-annex upgrade
can be used to upgrade to v10 immediately.
* In v9 upgrade, set filter.annex.process. This makes git add/checkout faster
when there are a lot of unlocked annexed files or non-annexed files, but can
also make git add of large files to the annex somewhat slower.
If this tradeoff does not work for your use case, you can still unset
* export: When a non-annexed symlink is in the tree to be exported, skip it.
* import: When the previously exported tree contained a non-annexed symlink,
preserve it in the imported tree so it does not get deleted.
* enableremote, renameremote: Better handling of the unusual case where
multiple special remotes have been initialized with the same name.
* Recover from corrupted content being received from a git remote,
by deleting the temporary file when it fails to verify. This prevents
a retry from failing again.
(reversion introduced in version 8.20210903)
* adb: Added ignorefinderror configuration parameter.
* Avoid crashing when run in a bare git repo that somehow contains an
* Reject combinations of --batch (or --batch-keys) with options like
- -all or --key or with filenames.
- - Joey Hess <email@example.com> Thu, 27 Jan 2022 13:25:19 -0400
* Wed Jan 19 2022 Ben Greiner <firstname.lastname@example.org>
- Update git-annex to version 8.20211231.
* Improved support for using git-annex in a read-only repository,
git-annex branch information from remotes that cannot be merged
into the git-annex branch will now not crash it, but will be
merged in memory.
* addurl, youtube-dl: When --check-raw prevents downloading an
url, still continue with any downloads that come after it,
rather than erroring out.
* Fix locking problems when annex.pidlock is set and concurrency
is enabled eg with -J.
* Improve error message display when autoinit fails due to eg, a
* export: Avoid unncessarily re-exporting non-annexed files that
were already exported.
* Improve git command queue flushing so that eg, addurl of
several large files that take time to download will update the
index for each file, rather than deferring the index updates to
* sync: Better error message when unable to export to a remote
because remote.name.annex-tracking-branch is configured to a
ref that does not exist.
* Fix build with ghc 9.0.1
* Fix build with old versions of feed library.
- git-annex 8.20211123 was released with these changes:
* Bugfix: When -J was enabled, getting files could leak an
ever-growing number of git cat-file processes.
* Support git's new "ort" resolver, which became the default in
git 2.34.0, and broke the test suite and automatic merge
resolution of a conflict between an annexed file and a
* importfeed: Display url before starting youtube-dl download.
- Move to _service checking out the upstream source directly
- Avoid compiling and linking the binary a second time in the
install phase and a third time in the check phase
* Sat Nov 20 2021 email@example.com
- Update git-annex to version 8.20211117.
git-annex (8.20211117) upstream; urgency=medium
* filter-process: New command that can make git add/checkout faster when
there are a lot of unlocked annexed files or non-annexed files, but that
also makes git add of large annexed files slower. Use it by running:
git config filter.annex.process 'git-annex filter-process'
* Fix a typo in the name of youtube-dl
(reversion introduced in version 8.20210903)
* git-lfs: Fix interoperability with gitlab's implementation of the
git-lfs protocol, which requests Content-Encoding chunked.
* importfeed: Fix a crash when used in a non-unicode locale.
* migrate: New --remove-size option.
* uninit: Avoid error message when no commits have been made to the
* uninit: Avoid error message when there is no git-annex branch.
* metadata --batch: Avoid crashing when a non-annexed file is input,
instead output a blank line like other batch commands do.
* metadata --batch --json: Reject input whose "fields" does not consist
of arrays of strings. Such invalid input used to be silently ignored.
- - Joey Hess <firstname.lastname@example.org> Wed, 17 Nov 2021 12:18:49 -0400
* Mon Nov 01 2021 email@example.com
- Update git-annex to version 8.20211028.
git-annex (8.20211028) upstream; urgency=medium
* Removed support for accessing git remotes that use versions of
git-annex older than 6.20180312.
* git-annex-shell: Removed several commands that were only needed to
support git-annex versions older than 6.20180312.
* Negotiate P2P protocol version with tor remotes, allowing
use of protocol version 1. This negotiation is not supported
by versions of git-annex older than 6.20180312.
* Fix bug that caused stale git-annex branch information to read
when annex.private or remote.name.annex-private is set.
* git-annex get when run as the first git-annex command in a new repo
did not populate all unlocked files.
(Reversion in version 8.20210621)
* Fix using lookupkey and info inside a subdirectory of the git repository.
(Reversion in version 8.20211011)
* Avoid some sqlite crashes on Windows SubSystem for Linux (WSL).
* Call annex.freezecontent-command on the annex object file
after it has been moved into place in annex/objects/. This allows
the hook to freeze the file in ways that prevent moving it, such as
removing the Windows delete permission.
Thanks, Reiko Asakura.
* addurl: Support adding the same url to multiple files at the same
time when using -J with --batch --with-files.
* When retrieval from a chunked remote fails, display the error that
occurred when downloading the chunk, rather than the error that
occurred when trying to download the unchunked content, which is less
likely to actually be stored in the remote.
* Avoid crashing tilde expansion on user who does not exist.
* test: Put gpg temp home directory in system temp directory,
not filesystem being tested.
- - Joey Hess <firstname.lastname@example.org> Thu, 28 Oct 2021 11:58:29 -0400
* Tue Oct 12 2021 email@example.com
- Update git-annex to version 8.20211011.
git-annex (8.20211011) upstream; urgency=medium
* Added annex.bwlimit and remote.name.annex-bwlimit config to limit
the bandwidth of transfers. It works for git remotes and many
but not all special remotes.
* Bug fix: Git configs such as annex.verify were incorrectly overriding
per-remote git configs such as remote.name.annex-verify.
(Reversion in version 4.20130323)
* borg: Significantly improved memory use when a borg repository
contains many archives.
* borg: Avoid trying to extract xattrs, ACLS, and bsdflags when
retrieving from a borg repository.
* Sped up git-annex smudge --clean by 25%.
* Resume where it left off when copying a file to/from a local git remote
* sync --content: Avoid a redundant checksum of a file that was
incrementally verified, when used on NTFS and perhaps other filesystems.
* reinject: Fix crash when reinjecting a file from outside the repository.
(Reversion in version 8.20210621)
* Avoid cursor jitter when updating progress display.
- - Joey Hess <firstname.lastname@example.org> Mon, 11 Oct 2021 12:52:14 -0400
* Sun Sep 05 2021 email@example.com
- Update git-annex to version 8.20210903.
git-annex (8.20210903) upstream; urgency=medium
* Deal with clock skew, both forwards and backwards, when logging
information to the git-annex branch.
* GIT_ANNEX_VECTOR_CLOCK can now be set to a fixed value (eg 1)
rather than needing to be advanced each time a new change is made.
* Misuse of GIT_ANNEX_VECTOR_CLOCK will no longer confuse git-annex.
* add: When adding a dotfile, avoid treating its name as an extension.
* rsync special remote: Stop displaying rsync progress, and use
git-annex's own progress display.
* Many special remotes now checksum content while it is being retrieved,
instead of in a separate pass at the end. This is supported for all
special remotes on Linux (except for bittorrent), and for many
on other OS's (except for adb, external, gcrypt, hook, and rsync).
* unused: Skip the refs/annex/last-index ref that git-annex recently
* Fix test suite failure on Windows.
* New --batch-keys option added to these commands:
get, drop, move, copy, whereis
* Added annex.youtube-dl-command config. This can be used to run some
forks of youtube-dl.
* Run cp -a with --no-preserve=xattr, to avoid problems with copied
xattrs, including them breaking permissions setting on some NFS
* add, import: Detect when xattrs or perhaps ACLs prevent removing
write permissions from an annexed file, and fail with an informative
* Fix support for readonly git remotes.
(Reversion in version 8.20210621)
* When downloading urls fail, explain which urls failed for which
* web: Avoid displaying a warning when downloading one url failed
but another url later succeeded.
- - Joey Hess <firstname.lastname@example.org> Fri, 03 Sep 2021 12:00:46 -0400
* Wed Aug 04 2021 email@example.com
- Update git-annex to version 8.20210803.
git-annex (8.20210803) upstream; urgency=medium
* whereused: New command, finds what files use a key, or where a key
was used historically.
* Fix a bug that prevented getting content from a repository that
started out as a bare repository, or had annex.crippledfilesystem
set, and was converted to a non-bare repository.
* Fix retrieval of content from borg repos accessed over ssh.
* sync: When --quiet is used, run git commit, push, and pull without
their ususual output.
* merge: When --quiet is used, run git merge without its usual output.
* sync, merge, post-receive: Avoid merging unrelated histories,
which used to be allowed only to support direct mode repositories.
(However, sync does still merge unrelated histories when importing
trees from special remotes, and the assistant still merges unrelated
* sync, merge: Added --allow-unrelated-histories option, which
is the same as the git merge option.
* Fix bug that caused some transfers to incorrectly fail with
"content changed while it was being sent", when the content was not
* Fix bug that could prevent pointer files from being populated,
in a repository that was upgraded from v7.
* fsck: Detect and correct stale or missing inode caches.
* Fix a rounding bug in display of data sizes.
* git-annex get when run as the first git-annex command in a new repo
did not populate unlocked files.
(Reversion in version 8.20210621)
- - Joey Hess <firstname.lastname@example.org> Tue, 03 Aug 2021 12:20:09 -0400
* Thu Jul 15 2021 email@example.com
- Update git-annex to version 8.20210714.
git-annex (8.20210714) upstream; urgency=medium
* assistant: Avoid unncessary git repository repair in a situation where
git fsck gets confused about a commit that is made while it's running.
* addurl: Avoid crashing when used on beegfs.
* --debug output goes to stderr again, not stdout.
(Reversion in version 8.20210428)
* init: Fix misbehavior when core.sharedRepository = group that
caused it to enter an adjusted branch and set annex.crippledfilesystem
(Reversion in version 8.20210630)
* assistant: When adding non-large files to git, honor annex.delayadd
configuration. Also, don't add non-large files to git when they
are still being written to.
- - Joey Hess <firstname.lastname@example.org> Wed, 14 Jul 2021 12:22:55 -0400
* Thu Jul 01 2021 email@example.com
- Update git-annex to version 8.20210630.
git-annex (8.20210630) upstream; urgency=medium
* Fixed bug that interrupting git-annex repair (or assistant) while
it was fixing repository corruption would lose objects that were
contained in pack files. Also the assistant might sometimes have
crashed with the same result.
* repair: Fix reversion in version 8.20200522 that prevented fetching
missing objects from remotes.
* sync: Partly work around github behavior that first branch to be pushed
to a new repository is assumed to be the head branch, by not pushing
* Added annex.freezecontent-command and annex.thawcontent-command
* Improve display of errors when transfers fail.
* Dropping an unused object with drop --unused or dropunused will
mark it as dead, preventing fsck --all from complaining about it
after it's been dropped from all repositories.
* addurl, importfeed: Added --no-raw option that forces download
with youtube-dl or a special remote. In particular this can avoid
falling back to raw download when youtube-dl is blocked for some
- - Joey Hess <firstname.lastname@example.org> Wed, 30 Jun 2021 11:48:16 -0400
* Tue Jun 22 2021 email@example.com
- Update git-annex to version 8.20210621.
git-annex (8.20210621) upstream; urgency=medium
* New matching options --excludesamecontent and --includesamecontent
* When two files have the same content, and a required content expression
matches one but not the other, dropping the latter file will fail as it
would also remove the content of the required file.
* drop, move, mirror: When two files have the same content, and
different numcopies or requiredcopies values, use the higher value.
* drop --auto: When two files have the same content, and a preferred content
expression matches one but not the other, do not drop the content.
* sync --content, assistant: When two unlocked files have the same
content, and a preferred content expression matches one but not the
other, do not drop the content. (This was already the case for locked
* sync --content, assistant: Fix an edge case where a file that is not
preferred content did not get dropped.
* filter-branch: New command, useful to produce a filtered version of the
git-annex branch, eg when splitting a repository.
* fromkey: Create an unlocked file when used in an adjusted branch
where the file should be unlocked, or when configured by annex.addunlocked.
* Fix behavior of several commands, including reinject, addurl, and rmurl
when given an absolute path to an unlocked file, or a relative path
that leaves and re-enters the repository.
* smudge: Fix a case where an unlocked annexed file that annex.largefiles
does not match could get its unchanged content checked into git,
due to git running the smudge filter unecessarily.
* reinject: Error out when run on a file that is not annexed, rather
than silently skipping it.
* assistant: Fix a crash on startup by avoiding using forkProcess.
* init: When annex.commitmessage is set, use that message for the commit
that creates the git-annex branch.
* Added annex.adviceNoSshCaching config.
* Added --size-limit option.
* Future proof activity log parsing.
* Fix an exponential slowdown when large numbers of duplicate files are
being added in unlocked form.
- - Joey Hess <firstname.lastname@example.org> Mon, 21 Jun 2021 12:17:24 -0400
* Thu Apr 29 2021 Ond?ej Súkup <email@example.com>
- drop persistent.patch
* Thu Apr 29 2021 firstname.lastname@example.org
- Update git-annex to version 8.20210428.
git-annex (8.20210428) upstream; urgency=medium
* New annex.private and remote.name.annex-private configs that can
prevent storing information about a repository and remotes in the
* initremote: Added --private option to set up a private special remote.
* importfeed: Made "checking known urls" phase run 12 times faster.
* Added --debugfilter (and annex.debugfilter)
* diffdriver: Support unlocked files.
* forget: Preserve currently exported trees, avoiding problems with
exporttree remotes in some unusual circumstances.
* fsck: When downloading content from a remote, if the content is able
to be verified during the transfer, skip checksumming it a second time.
* directory: When cp supports reflinks, use it.
* Avoid excess commits to the git-annex branch when stall detection is
* git-annex-config: Allow setting annex.securehashesonly, which has
otherwise been supported since 2019, but was missing from the list of
allowed repo-global configs.
* init: Fix a crash when the repo's was cloned from a repo that had an
adjusted branch checked out, and the origin remote is not named "origin".
* Fix some bugs that made git-annex not see recently recorded status
information when configured with annex.alwayscommit=false.
* When mincopies is set to a larger value than numcopies, make sure that
mincopies is satisfied. Before, it assumed a sane configuration would
have numcopies larger or equal to mincopies. It's still a good idea
not to configure git-annex this way.
* Avoid more than 1 gpg password prompt at the same time, which
could happen occasionally before when concurrency is enabled.
* Fix build with persistent-22.214.171.124
- - Joey Hess <email@example.com> Wed, 28 Apr 2021 12:13:24 -0400
* Tue Apr 06 2021 Ond?ej Súkup <firstname.lastname@example.org>
- add persistent.patch - support new persistent library
* Wed Mar 31 2021 Ond?ej Súkup <email@example.com>
- drop atto.patch
* Wed Mar 31 2021 firstname.lastname@example.org
- Update git-annex to version 8.20210330.
git-annex (8.20210330) upstream; urgency=medium
* Behavior change: When autoenabling special remotes of type S3, weddav,
or glacier, do not take login credentials from environment variables,
as the user may not be expecting the autoenable to happen, or may
have those set for other purposes and not intend git-annex to use them.
* New annex.supportunlocked config that can be set to false to avoid
some expensive things needed to support unlocked files, if you do not
* Fix bug importing from a special remote into a subdirectory more than
one level deep, which generated unusual git trees that could confuse
* borg: Fix a bug that prevented importing keys of type URL and WORM.
* borg: Support importing files that are hard linked in the borg backup.
* export: When a submodule is in the tree to be exported, skip it.
* import: When the previously exported tree contained a submodule,
preserve it in the imported tree so it does not get deleted.
* export --json: Fill in the file field.
* rmurl: When youtube-dl was used for an url, it no longer needs to be
prefixed with "yt:" in order to be removed.
* rmurl: If an url is both used by the web and also claimed by another
special remote, fix a bug that caused the url to to not be removed.
* unregisterurl: Fix a bug that caused an url to not be unregistered
when it is claimed by a special remote other than the web.
* whereis: Don't include yt: prefix when showing url to content
retrieved with youtube-dl.
* webdav: Work around some buggy webdav server behavior involving
* Make --debug also enable debugging in child git-annex processes.
* fsck: When --from is used in combination with --all or similar options,
do not verify required content, which can't be checked properly when
operating on keys.
* Sped up git-annex init in a clone of an existing repository.
* Improved display of errors when accessing a git http remote fails.
* Fix build with attoparsec-0.14.
- - Joey Hess <email@example.com> Tue, 30 Mar 2021 13:01:17 -0400
* Thu Mar 25 2021 Ond?ej Súkup <firstname.lastname@example.org>
- add atto.patch fixing build with attoparsec-0.14+
* Thu Mar 11 2021 email@example.com
- Update git-annex to version 8.20210310.
git-annex (8.20210310) upstream; urgency=medium
* When non-annexed files in a tree are exported to a special remote,
importing from the special remote keeps the files non-annexed,
as long as their content has not changed, rather than converting
them to annexed files.
(Such a conversion will still happen when importing from a remote
an old git-annex exported such a tree to before; export the tree
with the new git-annex before importing to avoid that.)
* Added support for git-remote-gcrypt's rsync URIs, which access a remote
using rsync over ssh, and which git pushes to much more efficiently
than ssh urls.
* unregisterurl: New command.
* registerurl: Allow it to be used in a bare repository.
* Prevent combinations of options such as --all with --include.
* Fixed handling of --mimetype or --mimeencoding combined with
options like --all or --unused.
* Fix handling of --branch combined with --unlocked or --locked.
* Fix support for local gcrypt repositories with a space in their URI.
* uninit: Fix a small bug that left a lock file in .git/annex
* Windows: Correct the path to the html help file for 64 bit build.
* OSX dmg: Updated bundled git to 2.30.2 which fixes CVE-2021-21300.
- - Joey Hess <firstname.lastname@example.org> Wed, 10 Mar 2021 13:58:15 -0400
* Tue Feb 23 2021 email@example.com
- Update git-annex to version 8.20210223.
git-annex (8.20210223) upstream; urgency=medium
* annex.stalldetection can now be set to "true" to make git-annex
do automatic stall detection when it detects a remote is updating its
transfer progress consistently enough for stall detection to work.
* When annex.stalldetection is not enabled and a likely stall is
detected, display a suggestion to enable it.
* Commands can be added to git-annex, by installing a program in PATH
with a name starting with "git-annex-"
* Fix a reversion that made import of a tree from a special remote
result in a merge that deleted files that were not preferred content
of that special remote.
* Bugfix: fsck --from a ssh remote did not actually check that the
content on the remote is not corrupted.
* unannex, uninit: When an annexed file is modified, don't overwrite
the modified version with an older version from the annex.
* When adding files to an adjusted branch set up by --unlock-present,
add them unlocked, not locked.
* Fix an oddity in matching options and preferred content expressions
such as "foo (bar or baz)", which was incorrectly handled as if
it were "(foo or bar) and baz)" rather than the intended
"foo and (bar or baz)"
* Checksum as content is received from a remote git-annex repository,
rather than doing it in a second pass.
* Tahoe: Avoid verifying hash after download, since tahoe does sufficient
* unannex, uninit: Don't run git rm once per annexed file,
for a large speedup.
* When a git remote is configured with an absolute path, use that
path, rather than making it relative.
* get: Improve output when failing to get a file fails.
* Fix build on openbsd.
Thanks, James Cook for the patch.
* Include libkqueue.h file needed to build the assistant on BSDs.
- - Joey Hess <firstname.lastname@example.org> Tue, 23 Feb 2021 14:40:14 -0400
* Thu Feb 18 2021 Guillaume GARDET <email@example.com>
- Update _constraints
* Wed Jan 27 2021 firstname.lastname@example.org
- Update git-annex to version 8.20210127.
git-annex (8.20210127) upstream; urgency=medium
* Added mincopies configuration. This is like numcopies, but is
enforced even more strictly. While numcopies can be violated in
concurrent drop situations involving special remotes that do not
support locking, mincopies cannot be. The default value has always
been 1, but now it can be set to higher values if desired.
* Behavior change: When numcopies is set to 0, git-annex used to drop
content without requiring any copies. Now to get that (highly unsafe)
behavior, mincopies also needs to be set to 0.
* Behavior change: git-annex trust now needs --force, since unconsidered
use of trusted repositories can lead to data loss.
* Behavior change: --trust and --trust-glacier options no longer overrides
trust, since that can lead to data loss, which should never be enabled
by an option other than --force.
* add: Significantly speed up adding lots of non-large files to git,
by disabling the annex smudge filter when running git add.
* add --force-small: Run git add rather than updating the index itself,
so any other smudge filters than the annex one that may be enabled will
* Fix --time-limit, which got broken in several ways by some optimisations
in version 8.20201007.
* When syncing changes back from an adjusted branch to the basis branch,
include deletions of submodules.
Thanks, Kyle Meyer for the patch.
* Bug fix: export with -J could fail when two files had the same content.
* Bug fix: Fix tilde expansion in ssh urls when the tilde is the last
character in the url.
Thanks, Grond for the patch.
* Avoid crashing when there are remotes using unparseable urls.
Including the non-standard URI form that git-remote-gcrypt uses for rsync.
* Directory special remotes with importtree=yes now avoid unncessary
hashing when inodes of files have changed, as happens whenever a FAT
filesystem gets remounted.
* Fix a bug that prevented git-annex init from working in a submodule.
* Fix a bug in view filename generation when a metadata value ended with
"/" (or ":" or "\" on Windows)
* adjust: Fix some bad behavior when unlocked files use URL keys.
* smudge: Fix some bad behavior when git add is run on an unlocked
file that used an URL key.
* Added GETGITREMOTENAME to external special remote protocol.
* Windows: Work around win32 length limits when dealing with lock files.
- - Joey Hess <email@example.com> Wed, 27 Jan 2021 11:09:25 -0400