summaryrefslogtreecommitdiff
path: root/Assistant
Commit message (Collapse)AuthorAge
* streamline deletion process and improve UIGravatar Joey Hess2013-04-03
|
* check for unused keys on an unwanted remote, and move them off, before ↵Gravatar Joey Hess2013-04-03
| | | | deleting it
* clean up urlrenderer handling when the webapp is not builtGravatar Joey Hess2013-04-03
|
* detect when unwanted remote is empty and remove itGravatar Joey Hess2013-04-03
| | | | Needs fixes to build when the webapp is disabled.
* hlintGravatar Joey Hess2013-04-03
|
* more efficient uuid to remote lookupGravatar Joey Hess2013-04-02
|
* convert "./file" from inotify to just "file"Gravatar Joey Hess2013-04-02
| | | | This just prettifies some display.
* avoid queuing transfers that are currently runningGravatar Joey Hess2013-04-02
|
* avoid queuing transfer that is already queued, with a different associated fileGravatar Joey Hess2013-04-02
|
* avoid queueing uploads to remotes that already have the contentGravatar Joey Hess2013-04-02
|
* Update working tree files fully atomicallyGravatar Joey Hess2013-04-02
| | | | | | | | | | | This avoids commit churn by the assistant when eg, replacing a file with a symlink. But, just as importantly, it prevents the working tree being left with a deleted file if git-annex, or perhaps the whole system, crashes at the wrong time. (It also probably avoids confusing displays in file managers.)
* optimise last commitGravatar Joey Hess2013-04-02
| | | | | Rather than re-adding a direct mode file unnecessarily when it's not changed, just re-stage the symlink.
* assistant: Fix bug that could cause direct mode files to be unstaged from git.Gravatar Joey Hess2013-04-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | My test case for this bug is to have the assistant running and syncing to a remote, and create a file in the annex. Then at the command line run git annex drop. The assistant sees that the file is gone, sees it's a wanted file, and downloads it from the remote. With a directory special remote and a small file, I was seeing around 1 time in 3, a race where the file got unstaged from git after it got downloaded. Looking at what direct mode content managing code does in this case, it deletes the symlink, and then adds the file content back. It would be possible, sometimes, to avoid removing the symlink and do this atomically. And I probably should.. but in some cases, particularly where the file needs to be run through `cp` (multiple direct mode files with same content), there's no way to atomically replace the symlink with the content. Anyway, the bug turns out to be something that the watcher does right for indirect mode, but not for direct mode. When it got an add event, it checked to see if this was a new file, or one we've already added. In the latter case, no add event was queued. But that means that only the rm event is queued, and so it unstages the file. Fixed by queueing an add event even when the file is already in git. Tested by running hundreds of drops in a loop; file remained staged.
* fix dropping files from untrusted repositoriesGravatar Joey Hess2013-03-31
| | | | | An off-by-one prevented the assistant ever dropping files from untrusted repositories.
* webapp: Added UI to delete repositories. Closes: #689847Gravatar Joey Hess2013-03-31
|
* assistant: Check small files into git directly.Gravatar Joey Hess2013-03-29
|
* New annex.largefiles setting, which configures which files `git annex add` ↵Gravatar Joey Hess2013-03-29
| | | | | | | | | | | | | and the assistant add to the annex. I would have sort of liked to put this in .gitattributes, but it seems it does not support multi-word attribute values. Also, making this a single config setting makes it easy to only parse the expression once. A natural next step would be to make the assistant `git add` files that are not annex.largefiles. OTOH, I don't think `git annex add` should `git add` such files, because git-annex command line tools are not in the business of wrapping git command line tools.
* typoGravatar Joey Hess2013-03-28
|
* avoid removing a transfer being made by another processGravatar Joey Hess2013-03-28
| | | | | When another process is running a transfer, if we try to run a dup it'll fail, and we should not remove the transfer from the transfer display.
* avoid showing web special remote in sync alertGravatar Joey Hess2013-03-28
|
* webapp: Fix a race that sometimes caused alerts or other notifications to be ↵Gravatar Joey Hess2013-03-27
| | | | | | | | | | | | | | | | | | | missed if they occurred while a page was loading. When a page is loaded, the javascript requests an notification url, and does long polling on the url to be informed of changes. But if a change occured before the notification url was requested, it would not be notified of that change, and so the page display would not update. I fixed this by *always* updating the page display after it gets the notification url. This is extra work, but the overhead is not noticable in the other overhead of loading a page. (A nicer way would be to somehow record the version of a page initially loaded, and then compare it with the current version when getting the notification url, and only force an update if it's changed. But getting the "version" of the different parts of the page that use long polling is difficult.)
* avoid displaying alert when syncing only to removable drives and all not ↵Gravatar Joey Hess2013-03-27
| | | | attached
* fix inverted logic in filtering failed remotesGravatar Joey Hess2013-03-27
|
* fix build with xmpp and w/o webappGravatar Joey Hess2013-03-24
|
* 2 minor fixes to transferkeys, otherwise it was perfect 1st time!Gravatar Joey Hess2013-03-20
| | | | | | | | Needed to send a trailing NUL to end a request, and set the read handle non-blocking. Also, set fileSystemEncoding on all handles, since there's a filename in there.
* maintain pools of running transferkeys processes (untested)Gravatar Joey Hess2013-03-19
|
* move display of transfer scan in progress to transfers section of dashboardGravatar Joey Hess2013-03-19
| | | | | This way it's only visible when transfers are not running, which is about what a user would expect.
* new alert while scanningGravatar Joey Hess2013-03-18
| | | | | | | Like the old one, but does not mention which remotes are scanned. I think this is less confusing, as it does not imply the remotes were somehow accessed (which they are not; inaccessible remotes can be scanned.)
* deal with transferkey crashingGravatar Joey Hess2013-03-18
| | | | | | | | | | If transferkey crashes or even fails to run, the TransferWatcher will not see the transfer info file be created, so will not remove the transfer from the list of active transfers. This causes the list to grow continually, and all active transfers are displayed in the webapp. So, put in a guard. I assume that transferkey will not exit 0 while neglecting to clean up.
* ensureGravatar Joey Hess2013-03-18
|
* optimisation for transfers to drives that are not plugged inGravatar Joey Hess2013-03-18
| | | | | | Rather than forking a git-annex transferkey only to have it fail, just immediately record the failed transfer (so when the drive is plugged in, the scan will retry it).
* don't show sync failure for drive that's not plugged inGravatar Joey Hess2013-03-18
|
* add commas to remote listGravatar Joey Hess2013-03-18
|
* webapp: Improved alerts displayed when syncing with remotes, and when ↵Gravatar Joey Hess2013-03-18
| | | | syncing with a remote fails.
* unify two similar alertsGravatar Joey Hess2013-03-18
|
* assistant: Fix OSX bug that prevented committing changed files to a ↵Gravatar Joey Hess2013-03-17
| | | | repository when in indirect mode.
* assistant: Avoid syncing with annex-ignored remotes when reconnecting to the ↵Gravatar Joey Hess2013-03-17
| | | | network, or connecting a drive.
* remove debug printGravatar Joey Hess2013-03-17
|
* xmpp: Re-enable XA flag, since disabling it did not turn out to help with ↵Gravatar Joey Hess2013-03-16
| | | | the problems Google Talk has with not always sending presence messages to clients.
* xmpp: send a presence query when there's an important message to sendGravatar Joey Hess2013-03-16
| | | | | | | This may work around google talk's horrible presence handling, in which clients often don't learn about other clients, at least when using the same account. This way, every time we start a git push over xmpp, we'll waste bandwidth asking clients to please try again to identify themselves.
* xmpp: --debug now enables a sanitized dump of the XMPP protocolGravatar Joey Hess2013-03-16
| | | | So I can debug these damn google talk presence issues.
* make liftAnnex and liftAssistant polymorphic, like liftIOGravatar Joey Hess2013-03-16
|
* add globallyAvailable to remotesGravatar Joey Hess2013-03-15
|
* clear cloud repo nudge when one is createdGravatar Joey Hess2013-03-15
|
* webapp: Display an alert when there are XMPP remotes, and a cloud transfer ↵Gravatar Joey Hess2013-03-15
| | | | repository needs to be configured.
* webapp: Improved UI for pairing your own devices together using XMPP.Gravatar Joey Hess2013-03-15
|
* no longer need webapp state storage! excellentGravatar Joey Hess2013-03-15
|
* show paused remotes in cost order, not at end of repo listGravatar Joey Hess2013-03-14
|
* proof of concept remote reordering UI (needs to be changed to use drag and drop)Gravatar Joey Hess2013-03-13
|
* split cost out into its own moduleGravatar Joey Hess2013-03-13
| | | | | Added a function to insert a new cost into a list, which could be used to asjust costs after a drag and drop.