summaryrefslogtreecommitdiff
path: root/CHANGELOG
Commit message (Collapse)AuthorAge
* releasing package git-annex version 6.201712146.20171214Gravatar Joey Hess2017-12-14
|
* .noannex fileGravatar Joey Hess2017-12-13
| | | | | | | | | | | | | 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. This also affects git annex reinit and initialization via the webapp. It does not affect automatic inits, when there's a sibling git-annex branch already. This commit was supported by the NSF-funded DataLad project.
* lookupkey absolute path supportGravatar Joey Hess2017-12-08
| | | | | | | lookupkey: Support being given an absolute filename to a file within the current git repository. This commit was supported by the NSF-funded DataLad project.
* fix gpg subkey support typoGravatar Joey Hess2017-12-05
| | | | | | | | initremote, enableremote: Really support gpg subkeys suffixed with an exclamation mark, which forces gpg to use a specific subkey. (Previous try had a bug.) This commit was sponsored by Jake Vosloo on Patreon.
* Allow exporttree remotes to be marked as dead.Gravatar Joey Hess2017-12-05
| | | | | | Union with max so that DeadTrusted wins over UnTrusted. This commit was sponsored by Trenton Cronholm on Patreon.
* Removed no longer needed dependency on yesod-default.Gravatar Joey Hess2017-12-05
| | | | This commit was sponsored by Nick Daly on Patreon.
* rethought --relaxed changeGravatar Joey Hess2017-11-30
| | | | | | | | | Better to make it not be surprising and slow, than surprising and fast. --raw can be used when it needs to be really fast. Implemented adding a youtube-dl supported url to an existing file. This commit was sponsored by andrea rota.
* convert importfeed to youtube-dlGravatar Joey Hess2017-11-29
| | | | | | | | | | | | | | | | | | | | | | | | Fully working, including --fast/--relaxed. Note that, while git-annex addurl --relaxed is not going to check youtube-dl, I kept git annex importfeed --relaxed checking it. Thinking is that, let's not break people's importfeed cron jobs, and importfeed does not typically have to check a large number of new items, so it's ok if it's a little bit slower when used with youtube playlist feeds. importfeed's behavior is also improved (?) when a feed has links in it to non-media files. Before, those were skipped. Now, the content of the link is downloaded. This had to be done, because trying to use youtube-dl is slow, and if those were skipped, it would have to check every time importfeed was run. While this behavior change may not be desirable for some feeds, that intersperse links to web pages with enclosures, it will be desirable for other feeds, that have non-enclosure directy links to media files. Remove old quvi modules. This commit was sponsored by Øyvind Andersen Holm.
* wipGravatar Joey Hess2017-11-28
|
* documentation update for youtube-dlGravatar Joey Hess2017-11-28
| | | | | | Code not updated yet. This commit was sponsored by Thomas Hochstein on Patreon.
* releasing package git-annex version 6.201711246.20171124Gravatar Joey Hess2017-11-24
|
* Fix build with dns-3.0.Gravatar Joey Hess2017-11-24
| | | | This commit was sponsored by Henrik Riomar on Patreon.
* remove changelog entryGravatar Joey Hess2017-11-22
| | | | glibc already didn't support old kernels, so nothing user-visible has changed
* Linux standalone arm build no longer supports Linux kernels older than 2.6.28Gravatar Joey Hess2017-11-21
| | | | | | | | As it was getting too expensive to patch out use of the "new" syscalls We could revisit this if someone has hardware with an older kernel that's still being maintained, but I've verified that the Synology NAS that had used a too old kernel version has been updated to 2.6.32.
* Display progress meter when uploading a key without size informationGravatar Joey Hess2017-11-14
| | | | | | Getting the size by statting the content file. This commit was supported by the NSF-funded DataLad project.
* releasing package git-annex version 6.201711096.20171109Gravatar Joey Hess2017-11-09
|
* Fix directory special remote's cleanup of empty export directories.Gravatar Joey Hess2017-11-08
| | | | | | | | | | Was trying to rmdir the file, which had already been deleted, and when that failed, it skipped trying to delete the parent directories. Noticed the bug through testremote, but it can't itself detect such problems as there is no enumeration in the API. This commit was sponsored by Brock Spratlen on Patreon.
* testremote: Test exporttree.Gravatar Joey Hess2017-11-08
| | | | | | | | | | As long as the class of remotes supports exporting, it's tested whether or not the remote is configured with exporttree=yes. Also, made testremote of a remote configured with exporttree=yes disable that configuration for testing non-export storage. This commit was supported by the NSF-funded DataLad project.
* Makefile improvement for BUILDER=stack, use stack to run ghc.Gravatar Joey Hess2017-11-07
|
* Makefile improvement for sudo make install. Thanks, Eric SiegermanGravatar Joey Hess2017-11-07
|
* Web.checkKey: Fix handling of multiple urlsGravatar Joey Hess2017-11-07
| | | | | | | | | | When there are multiple urls for a file, still treat it as being present in the web when some urls don't work, as long as at least one url does work. This is consistent with the other web methods handling of multiple urls. This commit was sponsored by Ole-Morten Duesund on Patreon.
* unlock, lock: Support --json.Gravatar Joey Hess2017-10-30
|
* Fix exporting of non-annexed files to external special remotes.Gravatar Joey Hess2017-10-30
| | | | | | | | | | | | Actual problem is the keyName was set to "Ref \"sha\"", which led to this follow-on failure since it contained a space. The bad data would also get into the export database when exporting to a non-external special remote. Looking briefly at that, I don't think the bad data will lead to anything more than a re-upload of the file content now that the problem has been fixed. This commit was sponsored by Peter Hogg on Patreon.
* Fix export of subdir of a branch.Gravatar Joey Hess2017-10-30
| | | | | | | | | | | Seems I forgot to fully test that feature when documenting it. git rev-parse needs a colon after a branch to de-reference the tree it points to, rather than the commit. But that had it adding an extra colon when the user specified "branch:subdir". So, check if there is a colon before adding one. This commit was sponsored by Francois Marier on Patreon.
* releasing package git-annex version 6.201710266.20171026Gravatar Joey Hess2017-10-26
|
* fix gitAnnexLink to not be absolute on WindowsGravatar Joey Hess2017-10-25
| | | | | | | | | | | | | | | | | | Windows: Fix reversion that caused the path used to link to annexed content include the drive letter and full path, rather than being relative. (`git annex fix` will fix up after this problem). I've not identified the commit that brought the reversion (probably it happened this spring when I was removing MisingH and last touched Utility.Path). Likely commit c88dfda7e03cab4d96417518b6cfcffd54ad8f5d? The problem is that relPathDirToFile got called two paths that had the slashes different ways around. Since takeDrive includes the first slash, this made two paths on the same drive seem different and it bailed. (ifdefs around this to avoid doing extra work on non-windows) This commit was sponsored by Jack Hill on Patreon.
* Add day to metadata when annex.genmetadata is enabled.Gravatar Joey Hess2017-10-25
| | | | Thanks, Sean T Parsons
* stack.yaml: Added nix packages section.Gravatar Joey Hess2017-10-25
| | | | Thanks, Sean T Parsons
* build for windows with forked win32 package that has terminateProcessIdGravatar Joey Hess2017-10-25
| | | | | | | | | Get ugly reversion out of CHANGELOG. Also, relocated the windows stack.yaml to top, and updated windows build instructions. This commit was sponsored by Henrik Riomar on Patreon.
* Windows: Remove wget from bundle; it needs libraries that are not included, ↵Gravatar Joey Hess2017-10-25
| | | | | | | | and git for windows includes curl which git-annex will use instead. wget was broken even in the previous old release of the windows bundle, this is not new breakage. msys-idn-11.dll and probably more would be needed to use it. git for windows includes msys-idn2-0.dll instead.
* temporary hack to get windows build workingGravatar Joey Hess2017-10-24
| | | | | | | | | | | | | Code for terminating processes on Windows is not linking anymore; made a warning be displayed instead. This breaks restarting the assistant and git annex assistant --stop. I hope to see the code added to the Win32 library, where it should fit better and should avoid whatever problem is making the linker not like it when included in git-annex. I opened an issue requesting its addition, here: https://github.com/haskell/win32/issues/91 This commit was sponsored by Thomas Hochstein on Patreon.
* releasing package git-annex version 6.201710186.20171018Gravatar Joey Hess2017-10-18
|
* reorderGravatar Joey Hess2017-10-18
|
* changelogGravatar Joey Hess2017-10-18
|
* better dup key with -J fixGravatar Joey Hess2017-10-17
| | | | | | | | | | | | | | | This avoids all the complication about redundant work discussed in the previous try at fixing this. At the expense of needing each command that could have the problem to be patched to simply wrap the action in onlyActionOn once the key is known. But there do not seem to be many such commands. onlyActionOn' should not be used with a CommandStart (or CommandPerform), although the types do allow it. onlyActionOn handles running the whole CommandStart chain. I couldn't immediately see a way to avoid mistken use of onlyActionOn'. This commit was supported by the NSF-funded DataLad project.
* Improve behavior when -J transfers multiple files that point to the same keyGravatar Joey Hess2017-10-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After a false start, I found a fairly non-intrusive way to deal with it. Although it only handles transfers -- there may be issues with eg concurrent dropping of the same key, or other operations. There is no added overhead when -J is not used, other than an added inAnnex check. When -J is used, it has to maintain and check a small Set, which should be negligible overhead. It could output some message saying that the transfer is being done by another thread. Or it could even display the same progress info for both files that are being downloaded since they have the same content. But I opted to keep it simple, since this is rather an edge case, so it just doesn't say anything about the transfer of the file until the other thread finishes. Since the deferred transfer action still runs, actions that do more than transfer content will still get a chance to do their other work. (An example of something that needs to do such other work is P2P.Annex, where the download always needs to receive the content from the peer.) And, if the first thread fails to complete a transfer, the second thread can resume it. But, this unfortunately means that there's a risk of redundant work being done to transfer a key that just got transferred. That's not ideal, but should never cause breakage; the same thing can occur when running two separate git-annex processes. The get/move/copy/mirror --from commands had extra inAnnex checks added, inside the download actions. Without those checks, the first thread downloaded the content, and then the second thread woke up and downloaded the same content redundantly. move/copy/mirror --to is left doing redundant uploads for now. It would need a second checkPresent of the remote inside the upload to avoid them, which would be expensive. A better way to avoid redundant work needs to be found.. This commit was supported by the NSF-funded DataLad project.
* new ltsGravatar Joey Hess2017-10-17
|
* close bugGravatar Joey Hess2017-10-16
|
* Avoid repeated checking that files passed on the command line exist.Gravatar Joey Hess2017-10-16
| | | | | | | | | | | git annex add, git annex lock etc make multiple seek passes, and each seek pass checked that files existed. That was unncessary redundant work. Fixed by adding a new WorkTreeItem type, make seek actions use it, and check that the files exist when constructing it. This commit was supported by the NSF-funded DataLad project.
* add: Replace work tree file atomically.Gravatar Joey Hess2017-10-16
| | | | | | | Before, there was a window where interrupting an add could result in the file being moved into the annex, with no symlink yet created. This commit was supported by the NSF-funded DataLad project.
* webdav: Avoid unncessisarily creating the collection at the top of the repoGravatar Joey Hess2017-10-11
| | | | | | | | | | | | when storing files there, since that collection is created by initremote. (This seems to work around some brokenness of the box.com webdav server which was entering a redirect loop.) Note that the fix makes locationParent return Nothing instead of "." when there's no parent directory between the path and the top of the webdav repo. This commit was sponsored by André Pereira on Patreon.
* Fix build with aws-0.17.Gravatar Joey Hess2017-10-11
| | | | This commit was sponsored by Denis Dzyubenko on Patreon.
* webdav: Make --debug show all webdav operations.Gravatar Joey Hess2017-10-07
|
* releasing package git-annex version 6.201710036.20171003Gravatar Joey Hess2017-10-03
|
* info: Improve cleanup of stale transfer info files.Gravatar Joey Hess2017-10-02
| | | | | | | | | | | | | | | | | In my git-annex repos, I found some stale transfer info files without lock files. Pass a mode to tryLockExclusive, so it will create the lock file if not present, and so not fail to clean up such transfer info files. Normally, transfer info files are accompanied by a lock file. But, when alwaysRunTransfer is used, the locking can fail and it will still write the transfer info file. Perhaps there are other cases too? Note that mkProgressUpdater's meter writes to the transfer info file too, and it might be possible for that meter to fire after runTransfer has cleaned up. This commit was sponsored by andrea rota.
* fix process and FD leakGravatar Joey Hess2017-09-29
| | | | | | | | | | | | | Fix process and file descriptor leak that was exposed when git-annex was built with ghc 8.2.1. Apparently ghc has changed its behavior of GC of open file handles that are pipes to running processes. That broke git-annex test on OSX due to running out of FDs. Audited for all uses of Annex.new and made stopCoProcesses be called once it's done with the state. Fixed several places that might have leaked in other situations than running the test suite. This commit was sponsored by Ewen McNeill.
* copy, move: Behave same with --fast when sending to remotes located on a ↵Gravatar Joey Hess2017-09-29
| | | | | | local disk as when sending to other remotes. Let --fast override use of hasKey even when hasKeyCheap.
* test: Fix reversion that made it only run inside a git repository.Gravatar Joey Hess2017-09-29
| | | | | | | | Using annexeval to run probeCrippledFileSystem' caused Git.CurrentRepo.get to be run. Fixed easily since probeCrippledFileSystem' had no need to use the Annex monad. This commit was sponsored by Ethan Aubin.
* external crash fixesGravatar Joey Hess2017-09-28
| | | | | | | | | | | | When the external special remote program crashed, a newline could be output, which messed up the expected output for --batch mode. Avoid checking EXPORTSUPPORTED for special remotes that are not configured to use exports. The datalad special remote apparently is/was buggy and crashed on EXPORTSUPPORTED. Anyway, there's no need to send it when the configuration doesn't need it. This commit was supported by the NSF-funded DataLad project.
* sync: Added --cleanup, which removes local and remote synced/ branches.Gravatar Joey Hess2017-09-28
| | | | | | | Also deletes any tagged pushes that the assistant might have done, since those would also prevent resetting a branch back. This commit was sponsored by andrea rota.