|
Posted
over 7 years
ago
git-annex 6.20180409 released with these changes
Added adb special remote which allows exporting files to Android devices.
For url downloads, git-annex now defaults to using a http library,
rather than wget or curl. But, if annex.web-options
... [More]
is set, it will
use curl. To use the .netrc file, run:
git config annex.web-options --netrc
git-annex no longer uses wget (and wget is no longer shipped with
git-annex builds).
Enable HTTP connection reuse across multiple files for improved speed.
Fix calculation of estimated completion for progress meter.
OSX app: Work around libz/libPng/ImageIO.framework version skew
by not bundling libz, assuming OSX includes a suitable libz.1.dylib.
Added annex.retry, annex.retry-delay, and per-remote versions
to configure transfer retries.
Also do forward retrying in cases where no exception is thrown,
but the transfer failed.
When adding a new version of a file, and annex.genmetadata is enabled,
don't copy the data metadata from the old version of the file,
instead use the mtime of the file.
Avoid running annex.http-headers-command more than once.
info: Added "combined size of repositories containing these files"
stat when run on a directory.
info: Changed sorting of numcopies stats table, so it's ordered
by the variance from the desired number of copies.
Fix resuming a download when using curl.
[Less]
|
|
Posted
over 7 years
ago
git-annex 6.20180316 released with these changes
New protocol for communicating with git-annex-shell increases speed
of operations involving ssh remotes. When not transferring large files,
git-annex is between 200% and 400% faster using the
... [More]
new protocol,
and it's just as fast as before when transferring large files.
(When the remote has an old git-annex-shell, git-annex falls back
to the old slower code. This fallback is planned to be removed
after 5 years or so.)
Note that, due to not using rsync to transfer files over ssh
any longer, permissions and other file metadata of annexed files
will no longer be preserved when copying them to and from ssh remotes.
Other remotes never supported preserving that information, so
this is not considered a regression.
Fix data loss bug in content locking over tor, when the remote
repository is in direct mode, it neglected to check that the content
was actually present when locking it. This could cause git annex drop
to remove the only copy of a file when it thought the tor remote had
a copy.
Fix data loss bug when the local repository uses direct mode, and a
locally modified file is dropped from a remote repsitory. The bug
caused the modified file to be counted as a copy of the original file.
(This is not a severe bug because in such a situation, dropping
from the remote and then modifying the file is allowed and has the same
end result.)
Some downloads will be verified, even when annex.verify=false.
This is done in some edge cases where there's a likelyhood than an
object was downloaded incorrectly.
Support exporttree=yes for rsync special remotes.
Added backends for the BLAKE2 family of hashes, when built with
a new enough version of cryptonite.
Improve SHA*E extension extraction code to not treat parts of the
filename that contain punctuation or other non-alphanumeric characters
as extensions. Before, such characters were filtered out.
Better ssh connection warmup when using -J for concurrency.
Avoids ugly messages when forced ssh command is not git-annex-shell.
Fix race condition in ssh warmup that caused git-annex to get
stuck and never process some files when run with high levels of
concurrency.
Fix reversion introduced in 6.20171214 that caused concurrent
transfers to incorrectly fail with "transfer already in progress".
Note that Remote/Git.hs now contains AGPL licensed code,
thus the license of git-annex as a whole is AGPL. This was already
the case when git-annex was built with the webapp enabled.
Include amount of data transferred in progress display.
Dial back optimisation when building on arm, which prevents
ghc and llc from running out of memory when optimising some files.
[Less]
|
|
Posted
over 7 years
ago
git-annex 6.20180227 released with these changes
inprogress: Avoid showing failures for files not in progress.
Added INFO to external special remote protocol.
Added EXTENSIONS to external special remote protocol.
datalad < 0.9.1 had a
... [More]
problem in its special remote protocol handling
which is broken by EXTENSIONS. Make the debian git-annex package
conflict with the problem version of datalad.
fsck: Warn when required content is not present in the repository that
requires it.
Add gpg-agent to Build-Depends.
Needed to run the test suite.
--json: When there are multiple lines of notes about a file, make the note
field multiline, rather than the old behavior of only including the
last line.
git-annex.cabal: Once more try to not build the assistant on the hurd,
hopefully hackage finally recognises that OS.
Split Test.hs and avoid optimising it much, to need less memory to
compile.
Fix behavior of --json-progress followed by --json, the latter option
used to disable the former.
Added --json-error-messages option, which makes messages
that would normally be output to standard error be included in
the json output.
Remove temporary code added in 6.20160619 to prime the mergedrefs
log.
importfeed: Fix a failure when downloading with youtube-dl
and the destination subdirectory does not exist yet.
Added annex.merge-annex-branches config setting which
can be used to disable automatic merge of git-annex branches.
tips/automatically_adding_metadata/pre-commit-annex: Fix to not
silently skip filenames containing non-ascii characters.
sync: Fix bug that prevented pulling changes into direct mode
repositories that were committed to remotes using git commit
rather than git-annex sync.
Makefile: Remove chrpath workaround for bug in cabal,
which is no longer needed.
[Less]
|
|
Posted
almost 8 years
ago
git-annex 6.20180112 released with these changes
Added inprogress command for accessing files as they are being
downloaded.
Fix bug introduced in version 6.20171018 that caused some commands
to print out "ok" twice after processing a file.
... [More]
addurl: When the file youtube-dl will download is already an annexed
file, don't download it again and fail to overwrite it, instead just do
nothing, like it used to when quvi was used.
addurl: Fix encoding of filename queried from youtube-dl when in
--fast mode.
Fix several places where files in .git/annex/ were written with modes
that did not take the core.sharedRepository config into account.
Improve startup time for commands that do not operate on remotes,
and for tab completion, by not unnessessarily statting paths to
remotes, which used to cause eg, spin-up of removable drives.
Added remote..annex-checkuuid config, which can be set to false
to disable the default checking of the uuid of remotes that point to
directories. This can be useful to avoid unncessary drive spin-ups and
automounting.
git-annex.cabal: Add back custom-setup stanza, so cabal new-build works.
git-annex.cabal: Removed the testsuite build flag; test suite is always
included.
[Less]
|
|
Posted
almost 8 years
ago
git-annex 6.20171214 released with these changes
Use youtube-dl rather than quvi to download media from web pages,
since quvi is not being actively developed and youtube-dl supports
many more sites.
addurl --relaxed got slower, since
... [More]
youtube-dl has to hit the network
to check for embedded media. If you relied on --relaxed not hitting the
network for speed reasons, using --relaxed --raw will get the old level
of speed, but can't be used for urls with embedded videos.
importfeed now downloads things linked to by feeds, even when they are
not media files.
Removed no longer needed dependency on yesod-default.
Allow exporttree remotes to be marked as dead.
initremote, enableremote: Really support gpg subkeys suffixed with an
exclamation mark, which forces gpg to use a specific subkey.
(Previous try had a bug.)
lookupkey: Support being given an absolute filename to a file
within the current git repository.
A top-level .noannex file will prevent git-annex init from being used
in a repository. This is useful for repositories that have a policy
reason not to use git-annex. The content of the file will be displayed
to the user who tries to run git-annex init.
[Less]
|
|
Posted
about 8 years
ago
git-annex 6.20171124 released with these changes
Display progress meter when uploading a key without size information,
getting the size by statting the content file.
Fix build with dns-3.0.
|
|
Posted
about 8 years
ago
git-annex 6.20171109 released with these changes
Fix export of subdir of a branch.
Fix exporting of non-annexed files to external special remotes.
unlock, lock: Support --json.
When there are multiple urls for a file, still treat it as being
... [More]
present
in the web when some urls don't work, as long as at least one url does
work.
Makefile improvement for sudo make install.
Thanks, Eric Siegerman
Makefile improvement for BUILDER=stack, use stack to run ghc.
testremote: Test exporttree.
Fix directory special remote's cleanup of empty export directories.
[Less]
|
|
Posted
over 8 years
ago
git-annex 6.20170520 released with these changes
move --to=here moves from all reachable remotes to the local repository.
initremote, enableremote: Support gpg subkeys suffixed with an
exclamation mark, which forces gpg to use a specific
... [More]
subkey.
Improve progress display when watching file size, in cases where
a transfer does not resume.
Fix transfer log file locking problem when running concurrent
transfers.
Avoid concurrent git-config setting problem when running concurrent
threads.
metadata: When setting metadata of a file that did not exist,
no error message was displayed, unlike getting metadata and most other
git-annex commands. Fixed this oversight.
Added annex.resolvemerge configuration, which can be set to false to
disable the usual automatic merge conflict resolution done by git-annex
sync and the assistant.
sync: Added --no-resolvemerge option.
Avoid error about git-annex-shell not being found when
syncing with -J with a git remote where git-annex-shell is not
installed.
Fix bug that prevented transfer locks from working when
run on SMB or other filesystem that does not support fcntl locks
and hard links.
assistant: Merge changes from refs/remotes/foo/master into master.
Previously, only sync branches were merged. This makes regular git push
into a repository watched by the assistant auto-merge.
Makefile: Install completions for the fish and zsh shells
when git-annex is built with optparse-applicative-0.14.
assistant: Don't trust OSX FSEvents's eventFlagItemModified to be called
when the last writer of a file closes it; apparently that sometimes
does not happen, which prevented files from being quickly added.
[Less]
|
|
Posted
over 8 years
ago
git-annex 6.20170519 released with these changes
Ssh password prompting improved when using -J for concurrency.
When ssh connection caching is enabled (and when GIT_ANNEX_USE_GIT_SSH
is not set), only one ssh password prompt will be made per
... [More]
host, and
only one ssh password prompt will be made at a time.
When built with concurrent-output 1.9, ssh password prompts will no
longer interfere with the -J display.
Removed dependency on MissingH, instead depending on the split library.
Progress is displayed for transfers of files of unknown size.
Work around bug in git 2.13.0 involving GIT_COMMON_DIR that broke
merging changes into adjusted branches.
[Less]
|
|
Posted
over 8 years
ago
git-annex 6.20170510 released with these changes
When a http remote does not expose an annex.uuid config, only warn
about it once, not every time git-annex is run.
multicast: New command, uses uftp to multicast annexed files, for eg
a
... [More]
classroom setting.
Added remote..annex-push and remote..annex-pull
which can be useful to make remotes that don't get fully synced with
local changes.
Disable git-annex's support for GIT_SSH and GIT_SSH_COMMAND, unless
GIT_ANNEX_USE_GIT_SSH=1 is also set in the environment. This is
necessary because as feared, the extra -n parameter that git-annex
passes breaks uses of these environment variables that expect exactly
the parameters that git passes.
enableremote: When enabling a non-special remote, param=value
parameters can't be used, so error out if any are provided.
enableremote: Fix re-enabling of special remotes that have a git
url, so that eg, encryption key changes take effect. They were silently
ignored, a reversion introduced in 6.20160527.
gcrypt: Support re-enabling to change eg, encryption parameters.
This was never supported before.
git annex add -u now supported, analagous to git add -u
version: Added "dependency versions" line.
Keys marked as dead are now skipped by --all.
annex.backend is the new name for what was annex.backends, and takes
a single key-value backend, rather than the unncessary and confusing
list. The old option still works if set.
[Less]
|