Commit graph

30709 commits

Author SHA1 Message Date
madalu
ffc1275827 Added a comment 2017-09-29 13:00:41 +00:00
Joey Hess
e9e5613e94
external crash fixes
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.
2017-09-28 15:44:45 -04:00
Joey Hess
e8c9a5c515
sync: Added --cleanup, which removes local and remote synced/ branches.
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.
2017-09-28 14:58:48 -04:00
Joey Hess
4d0e522b72
Warn when metadata is inherited from a previous version of a file
to avoid the user being surprised in cases where that behavior is not desired or expected

This commit was supported by the NSF-funded DataLad project.
2017-09-28 12:56:35 -04:00
Joey Hess
812d90022b
metadata: Added --remove-all.
Motivation is to remove all metadata when it gets copied from a previous
version of the file, and that is not deisrable.

This commit was supported by the NSF-funded DataLad project.
2017-09-28 12:36:10 -04:00
Joey Hess
b4d13c75a1
followup 2017-09-28 12:02:06 -04:00
Joey Hess
f4746da4ca
webdav: Improve error message for failed request to include the request method and path. 2017-09-28 12:01:58 -04:00
anarcat
b614f36873 i believe you meant -o here, not -e. -e is escape character, while -o is to change options. 2017-09-27 16:38:07 +00:00
madalu
596698e138 2017-09-27 15:28:40 +00:00
madalu
e81931f41b 2017-09-27 15:26:29 +00:00
madalu
9e0945dd87 2017-09-27 15:25:40 +00:00
madalu
9e721438fc 2017-09-27 15:24:22 +00:00
yarikoptic
664ce4363e Added a comment 2017-09-27 05:30:53 +00:00
Joey Hess
6cfbe33d88
thought 2017-09-26 15:20:18 -04:00
Joey Hess
72ccdbf91d
comment 2017-09-26 14:38:14 -04:00
Joey Hess
e3a151cf67
analysis 2017-09-26 14:32:31 -04:00
yarikoptic
f3701e659e original discovery 2017-09-26 18:03:47 +00:00
Joey Hess
839c56469d
add news item for git-annex 6.20170925 2017-09-25 11:35:25 -04:00
Joey Hess
76c9b580b3
releasing package git-annex version 6.20170925 2017-09-25 11:34:55 -04:00
Joey Hess
e136f18f14
caps 2017-09-25 11:32:44 -04:00
Joey Hess
1c08945b2b
expand 2017-09-25 11:31:08 -04:00
Joey Hess
710d6a35ed
fix build with old version of persistent 2017-09-25 09:57:41 -04:00
Joey Hess
83d063c63b
fix build with old ghc 2017-09-25 09:49:33 -04:00
Joey Hess
93d5951f11
remove redundant pattern match 2017-09-24 16:17:58 -04:00
Joey Hess
d350530091
comment 2017-09-24 15:58:56 -04:00
Gus
7c7fa6f469 Added a comment 2017-09-24 13:14:54 +00:00
chocolate.camera@ec2ecab153906be21ac5f36652c33786ad0e0b60
4e856f8f9c How to add files to direct mode git-annex repos and have them propagate to other repos? 2017-09-24 06:15:48 +00:00
http://xgm.de/oid/
6b6a5c4fe5 Added a comment 2017-09-24 04:21:12 +00:00
https://me.yahoo.com/a/kj4_2rEl2YnZENPxus3ZJlo4L31K#1b084
e2383f3ed5 Added a comment: How to fix corrupt SQLite database? 2017-09-22 10:57:20 +00:00
https://launchpad.net/~felixonmars
e1eac16e0f 2017-09-21 16:18:55 +00:00
michalrus
b2647e354d Added a comment 2017-09-21 12:56:31 +00:00
Joey Hess
82a2d19af1
assistant: update export db after mergeing git-annex branch changes
Needed so that the assistant can download from exports.
updateExportTreeFromLog is normally only run one time, but needs to be
run repeatedly during the lifetime of the assistant.

This commit was sponsored by Ethan Aubin on Patreon.
2017-09-20 16:34:29 -04:00
Joey Hess
129418615b
refactor 2017-09-20 16:22:32 -04:00
Joey Hess
ad36479b3e
devblog 2017-09-20 15:36:39 -04:00
Joey Hess
abdff127f2
split out todo for webapp export config UI; close export todo! 2017-09-20 15:32:05 -04:00
Joey Hess
d71c65ca0a
add exporter thread to assistant
This is similar to the pusher thread, but a separate thread because git
pushes can be done in parallel with exports, and updating a big export
should not prevent other git pushes going out in the meantime.

The exportThread only runs at most every 30 seconds, since updating an
export is more expensive than pushing. This may need to be tuned.

Added a separate channel for export commits; the committer records a
commit in that channel.

Also, reconnectRemotes records a dummy commit, to make the exporter
thread wake up and make sure all exports are up-to-date. So,
connecting a drive with a directory special remote export will
immediately update it, and getting online will automatically
update S3 and WebDAV exports.

The transfer queue is not involved in exports. Instead, failed
exports are retried much like failed pushes.

This commit was sponsored by Ewen McNeill.
2017-09-20 15:29:13 -04:00
Joey Hess
46d19648ee
first pass at assistant knowing about export remotes
Split exportRemotes out from syncDataRemotes; the parts of the assistant
that upload keys and drop keys from remotes don't apply to exports,
because those operations are not supported.

Some parts of the assistant and webapp do operate on both
syncDataRemotes and exportRemotes. Particularly when downloading from
either of them. Added a downloadRemotes that combines both.

With this, the assistant should download from exports, but it won't yet
upload changes to them.

This commit was sponsored by Fernando Jimenez on Patreon.
2017-09-20 13:58:27 -04:00
Joey Hess
28eba8e9c6
update transfer info and notify when exporting
Same as is done for all other transfers of content, so the webapp will
display progress bars etc.

This commit was sponsored by Anthony DeRobertis on Patreon.
2017-09-20 12:58:23 -04:00
Joey Hess
c2833c955d
devblog 2017-09-19 16:24:04 -04:00
Joey Hess
a6c0ed6698
export --fast sets up but does not populate export
sync --content finishes
2017-09-19 14:26:03 -04:00
Joey Hess
2e69efea8d
git annex sync --content to exports
Assistant still todo.

This commit was sponsored by Boyd Stephen Smith Jr. on Patreon
2017-09-19 14:20:47 -04:00
Joey Hess
527f734492
configuration and docs for tracking exports
Not yet handled by sync or assistant.

This commit was sponsored by Nick Daly on Patreon.
2017-09-19 13:05:43 -04:00
Joey Hess
a6268b79b2
break out separate todo for later 2017-09-19 12:38:07 -04:00
Joey Hess
5f9eff3f32
fix bug that prevented db being written to disk in SingleWriter mode
The bug occurred when closeDb was not called, and garbage collection of
the DbHandle didn't give the workerThread time to shut down. Fixed by
exiting the runSqlite action when a commit is made.

(MultiWriter mode already forked off a runSqlite action, so avoided the
problem.)

This commit was sponsored by Brock Spratlen on Patreon.
2017-09-18 19:42:20 -04:00
Joey Hess
c35fd698aa
devblog 2017-09-18 19:22:45 -04:00
Joey Hess
f4be3c3f89
merge changes made on other repos into ExportTree
Now when one repository has exported a tree, another repository can get
files from the export, after syncing.

There's a bug: While the database update works, somehow the database on
disk does not get updated, and so the database update is run the next
time, etc. Wasn't able to figure out why yet.

This commit was sponsored by Ole-Morten Duesund on Patreon.
2017-09-18 19:21:41 -04:00
Joey Hess
6336caae3b
update 2017-09-18 14:51:32 -04:00
Joey Hess
55809081d0
update for ExportTree
Use ExportTree rather than ExportedLocation for retrieveKeyFile and
checkPresent. When another remote exported the content, ExportTree will
be populated, but ExportedLocation will not be.

It would be possible to implement storeKey to exports as well, but it
risks performing a lot of unncessary work when another repository
already stored the key on the export and the local repository doesn't
know about it.

The only way to avoid that work would be for storeKey to use checkPresentExport
before uploading. But, the other repository could have changed the
exported tree as well, so that can't be trusted, and if it were used in
storeKey, could result in bad information getting into the location log.

This commit was sponsored by Bruno BEAUFILS on Patreon.
2017-09-18 14:45:00 -04:00
Joey Hess
0ad7e36dc1
update ExportTree table efficiently
Use same diff and key lookup except when the whole tree has to be
scanned.

This commit was sponsored by Peter Hogg on Patreon.
2017-09-18 14:27:50 -04:00
Joey Hess
b03d77c211
add ExportTree table to export db
New table needed to look up what filenames are used in the currently
exported tree, for reasons explained in export.mdwn.

Also, added smart constructors for ExportLocation and ExportDirectory to
make sure they contain filepaths with the right direction slashes.

And some code refactoring.

This commit was sponsored by Francois Marier on Patreon.
2017-09-18 13:59:59 -04:00