This is where announcements of new releases, features, and other news is posted. git-annex users are recommended to subscribe to this page's RSS feed.
git-annex 5.20150617 released with these changes
- Now supports git annex sync --all --content to sync all versions of all files with all repos that want them.
- Added new "anything" preferred content expression, which matches all versions of all files.
- Standard preferred content for client, backup, incremental backup, and unwanted groups have been adjusted to work better when used with git annex sync --all --content.
- fromkey, registerurl: Improve handling of urls that happen to also be parsable as strange keys.
- sync, remotedaemon: Pass configured ssh-options even when annex.sshcaching is disabled.
- assistant: Consume systemd-networkd dbus events to learn about changes to network connections, as was already done with network-manager and wicd. Thanks to Sebastian Reuße for the patches.
- get --incomplete: New option to resume any interrupted downloads.
- dead --key: Can be used to mark a key as dead.
- fsck: Ignore keys that are known to be dead when running in --all/--unused/--key mode or a in a bare repo. Closes: #753888 Otherwise, still reports files with lost contents, even if the content is dead.
- S3: Special remotes can be configured with public=yes to allow the public to access the bucket's content.
- S3: Publically accessible buckets can be used without creds.
- import --clean-duplicates: Fix bug that didn't count local or trusted repo's copy of a file as one of the necessary copies to allow removing it from the import location.
- tahoe: Use ~/.tahoe-git-annex/ rather than ~/.tahoe/git-annex/ when setting up a tahoe special remote to avoid old versions of tahoe create-client choking.
- Fix bug that prevented enumerating locally present objects in repos tuned with annex.tune.objecthash1=true. Fixes: unused, object count in info, unannex.
- Improve url parsing to handle some urls containing illegal  characters in their paths.
- info: Added json output for "backend usage", "numcopies stats", "repositories containing these files", and "transfers in progress".
- Fix incremental backup standard preferred content expression to match its documentation, which says it does not want files that have reached a backup repository.
- Increased the default annex.bloomaccuracy from 1000 to 10000000. This makes git annex unused use up to 16 mb more memory than it did before, but the massive increase in accuracy makes this worthwhile for all but the smallest systems.
- Build documentation with deterministic=1 for reproducible builds. (A new ikiwiki feature.) Closes: #785736
- Re-remove dependency on obsolete hamlet package. Closes: #786659
- debian/cabal-wrapper: Removed this hack which should not be needed anymore.
git-annex 5.20150528 released with these changes
- fromkey, registerurl: Allow urls to be specified instead of keys, and generate URL keys.
- Linux standalone, OSX app: Improve runshell script to always quote shell vars, so that it will work when eg, untarred into a directory path with spaces in its name.
- Revert removal dependency on obsolete hamlet package, since the autobuilders are not ready for this change yet and it prevented them from building the webapp. Reopens: #786659
- fsck: When checksumming a file fails due to a hardware fault, the file is now moved to the bad directory, and the fsck proceeds. Before, the fsck immediately failed.
- Linux standalone: The webapp was not built in the previous release, this release fixes that oversight.
git-annex 5.20150522 released with these changes
- import: Refuse to import files that are within the work tree, as that does not make sense and could cause data loss.
- drop: Now supports --all, --unused, and --key.
- drop: Now defaults to --all when run in a bare repository. (Previously, did nothing when run in a bare repository.)
- get, move, copy, mirror: Concurrent transfers are now supported! For example: git-annex get -J10 However, progress bars are not yet displayed for concurrent transfers, pending an updated version of the ascii-progress library.
- --quiet now makes progress output by rsync, wget, etc be quiet too.
- Take space that will be used by other running downloads into account when checking annex.diskreserve.
- Avoid accumulating transfer failure log files unless the assistant is being used.
- Fix an unlikely race that could result in two transfers of the same key running at once.
- Stale transfer lock and info files will be cleaned up automatically when get/unused/info commands are run.
- unused: Add --used-refspec option and annex.used-refspec, which can specify a set of refs to consider used, rather than the default of considering all refs used.
- webapp: Fix zombie xdg-open process left when opening file browser. Closes: #785498
- Safer posix fctnl locking implementation, using lock pools and STM.
- Build documentation with TZ=UTC for reproducible builds. See #785736.
- OSX: Corrected the location of trustedkeys.gpg, so the built-in upgrade code will find it. Fixes OSX upgrade going forward, but older versions won't upgrade themselves due to this problem.
git-annex 5.20150508 released with these changes
- Improve behavior when a git-annex command is told to operate on a file that doesn't exist. It will now continue to other files specified after that on the command line, and only error out at the end.
- S3: Enable debug logging when annex.debug or --debug is set.
- S3: git annex info will show additional information about a S3 remote (endpoint, port, storage class)
- S3: Let git annex enableremote be used, without trying to recreate a bucket that should already exist.
- S3: Fix incompatability with bucket names used by hS3; the aws library cannot handle upper-case bucket names. git-annex now converts them to lower case automatically.
- import: Check for gitignored files before moving them into the tree. (Needs git 1.8.4 or newer.)
- import: Don't stop entire import when one file fails due to being gitignored or conflicting with something in the work tree.
- import: Before removing a duplicate file in --deduplicate or --clean-duplicates mode, verify that enough copies of its content still exist.
- Improve integration with KDE's file manager to work with dolphin version 14.12.3 while still being compatable with 4.14.2. Thanks, silvio.
- assistant: Added --autostop to complement --autostart.
- Work around wget bug #784348 which could cause it to clobber git-annex symlinks when downloading from ftp.
- Support checking ftp urls for file presence.
- Fix bogus failure of fsck --fast.
- fsck: Ignore error recording the fsck in the activity log, which can happen when running fsck in a read-only repository. Closes: #698559 (fsck can still need to write to the repository if it find problems, but a successful fsck can be done read-only)
- Improve quvi 0.4 output parsing to handle cases wher there is no known filename extension. This is currently the case when using quvi with youtube. In this case, the extension ".m" will be used.
- Dropped support for older versions of yesod, warp, and dbus than the ones in Debian Jessie.
- Switch from the obsolete dataenc library for base64 encoding to sandi. (Thanks, Magnus Therning)
- Debian's ghc now supports TH on arm! Adjust build dependencies to build the webapp on arm, and enable DAV support on arm. \o/
- Adjust some other arch specific build dependencies that are now available on more architectures in Devian unstable.
- Windows: Remove cygwin ssh, the newer version of which has stopped honoring the setting of HOME. Instead, copy msysgit's ssh into PATH. Note that setting up a remote ssh server using password authentication is known to be broken in this release on Windows.
- Windows: Roll back to an older version of rsync from cygwin. The newer version has some dependency on a newer ssh from cygwin.
Similar to the yearly git user survey, I am doing a 2013 git-annex user survey.
If you use git-annex, please take a few minutes to answer my questions!
Thanks to my recent successful git-annex crowdfunding campaign, $1000 has been set aside to award others for their contributions to git-annex by the end of 2013. This is not a lot of money, but I hope that the reward and recognition will encourage some more people to work on git-annex.
You don't need to know Haskell! You could contribute some interesting and useful special remote hooks, or write better documentation.
On the other hand, if you have learned Haskell, this might be your first chance to make some money with it! Some ideas for things to work on that would be particularly award-worthy:
- Port git-annex to IOS, using ghc-ios. I don't plan to ever do this myself, but you could make it happen.
- Get the git-annex assistant working in Windows, building on the existing port to Windows. Otherwise, this is on my roadmap for February.
- Solve existing bugs or todo items. There are more than I can keep up with.
The amount of the awards will vary depending on the size of the contribution. Since this is getting started later than is ideal, I reserve the right to extend it past the end of the year if I don't get enough participants.
git-annex will be briefly presented at FOSDEM, on Sunday February 4th at 15:40. Details.
Thanks to Richard Hartmann for making this presentation.
Christophe-Marie Duquesne has just announced Sharebox, a FUSE filesystem relying on git-annex:
What are your goals? Seamless synchronization "à la dropbox". Ability to use with big binary files such as mp3/movies. Entirely decentralized. Don't use unnecessary space Keep it simple: avoid special VCS commands and keep a filesystem interface as much as possible.
While still alpha, this is promising. --Joey