git-annex 4.20130314 released with [[!toggle text="these changes"]] [[!toggleable text=""" * Bugfix: git annex add, when ran without any file or directory specified, should add files in the current directory, but not act on unlocked files elsewhere in the tree. * Bugfix: drop --from an unavailable remote no longer updates the location log, incorrectly, to say the remote does not have the key. * Bugfix: If the UUID of a remote is not known, prevent --from, --to, and other ways of specifying remotes by name from selecting it, since it is not possible to sanely use it. * Bugfix: Fix bug in inode cache sentinal check, which broke copying to local repos if the repo being copied from had moved to a different filesystem or otherwise changed all its inodes * Switch from using regex-compat to regex-tdfa, as the C regex library is rather buggy. * status: Can now be run with a directory path to show only the status of that directory, rather than the whole annex. * Added remote.<name>.annex-gnupg-options setting. Thanks, guilhem for the patch. * addurl: Add --relaxed option. * addurl: Escape invalid characters in urls, rather than failing to use an invalid url. * addurl: Properly handle url-escaped characters in file:// urls. * assistant: Fix dropping content when a file is moved to an archive directory, and getting contennt when a file is moved back out. * assistant: Fix bug in direct mode that could occur when a symlink is moved out of an archive directory, and resulted in the file not being set to direct mode when it was transferred. * assistant: Generate better commits for renames. * assistant: Logs are rotated to avoid them using too much disk space. * assistant: Avoid noise in logs from git commit about typechanged files in direct mode repositories. * assistant: Set gc.auto=0 when creating repositories to prevent automatic commits from causing git-gc runs. * assistant: If gc.auto=0, run git-gc once a day, packing loose objects very non-aggressively. * assistant: XMPP git pull and push requests are cached and sent when presence of a new client is detected. * assistant: Sync with all git remotes on startup. * assistant: Get back in sync with XMPP remotes after network reconnection, and on startup. * assistant: Fix syncing after XMPP pairing. * assistant: Optimised handling of renamed files in direct mode, avoiding re-checksumming. * assistant: Detects most renames, including directory renames, and combines all their changes into a single commit. * assistant: Fix ~/.ssh/git-annex-shell wrapper to work when the ssh key does not force a command. * assistant: Be smarter about avoiding unncessary transfers. * webapp: Work around bug in Warp's slowloris attack prevention code, that caused regular browsers to stall when they reuse a connection after leaving it idle for 30 seconds. (See https://github.com/yesodweb/wai/issues/146) * webapp: New preferences page allows enabling/disabling debug logging at runtime, as well as configuring numcopies and diskreserve. * webapp: Repository costs can be configured by dragging repositories around in the repository list. * webapp: Proceed automatically on from "Configure jabber account" to pairing. * webapp: Only show up to 10 queued transfers. * webapp: DTRT when told to create a git repo that already exists. * webapp: Set locally paired repositories to a lower cost than other network remotes. * Run ssh with -T to avoid tty allocation and any login scripts that may do undesired things with it. * Several improvements to Makefile and cabal file. Thanks, Peter Simmons * Stop depending on testpack. * Android: Enable test suite."""]]