Commit graph

2732 commits

Author SHA1 Message Date
Joey Hess
b654597c2f
urk, this is hard 2018-03-12 17:24:18 -04:00
Joey Hess
c3df5d1f10
avoid double-connect to unreachable ssh remote
When git-annex-shell p2pstdio fails with 255, it's because the ssh
server is not reachable. Avoid running the fallback action in this case,
since it would just try a second time to connect, and presumably fail.

Note that the closed P2PSshConnection will not be stored in the pool,
so the next request tries again to connect. This is just the right
behavior; when the remote becomes reachable again, the same git-annex
process will start using it.

This commit was sponsored by Ole-Morten Duesund on Patreon.
2018-03-12 16:50:21 -04:00
Joey Hess
e36ceb7448
open todo for p2p protocol flag days 2018-03-12 16:28:54 -04:00
davicastro
56bab023b9 Added a comment: What are the drawbacks of repo v6? 2018-03-12 19:00:36 +00:00
Joey Hess
c81768d425
version the P2P protocol
Unfortunately ReceiveMessage didn't handle unknown messages the way it
was documented to; client sending VERSION would cause the server to
return an ERROR and hang up. Fixed that, but old releases of git-annex
use the P2P protocol for tor and will still have that behavior.

So, version is not negotiated for Remote.P2P connections, only for
Remote.Git connections, which will support VERSION from their first
release. There will need to be a later flag day to change Remote.P2P;
left a commented out line that is the only thing that will need to be
changed then.

Version 1 of the P2P protocol is not implemented yet, but updated
the docs for the DATA change that will be allowed by that version.

This commit was sponsored by Jeff Goeke-Smith on Patreon.
2018-03-12 14:36:35 -04:00
Joey Hess
f74c970c7e
updates 2018-03-09 13:55:25 -04:00
Joey Hess
08814327ff
use P2P protocol for checkpresent, retrieve, and store
Note that, due to not using rsync to transfer files to ssh remotes
any longer, permissions and other file metadata of annexed files
will no longer be preserved when copying them to ssh remotes.
Other remotes never supported preserving that information, so
this is not considered a regression. Added NEWS item about this.

Another significant side effect of this is that, even when rsync is run to
retrieve a file, its progress display will no longer be shown, and
instead the native git-annex progress display will appear. It would be
possible to use the rsync process display when rsync is used (old
git-annex-shell and also retrieval from a local repository), but it
would have complicated the code unncessarily, and been inconsistent
behavior.

(I'd been thinking for a while about eliminating the rsync progress
display, since it's got some annoying verbosities, including display of
the key and the "(xfr#1, to-chk=0/1)" bit and was already somewhat
inconsistent.)

retrieveKeyFileCheap still uses rsync, since that ensures that it gets
the actual file content from the remote. Using the P2P protocol would
use the local content, as long as the local and remote size are the
same.

This commit was sponsored by John Pellman on Patreon.
2018-03-09 13:25:16 -04:00
Joey Hess
26febb4e58
benchmarks 2018-03-09 12:57:23 -04:00
Joey Hess
6a59bc4845
use P2P protocol for drop
Not yet used for everything else, but this is enough to
verify that it works, and do some benchmarking.

Some bugfixes included, which got it working. Also fallback to old
actions has been verified to work correctly.

Benchmarked dropping one thousand files from a ssh remote on localhost.
Using the old git-annex	40.867 seconds.
With the P2P protocol	9.905 seconds!

This commit was sponsored by Jochen Bartl on Patreon.
2018-03-08 16:56:17 -04:00
Joey Hess
0a294900b5
Merge branch 'master' of ssh://git-annex.branchable.com 2018-03-07 15:41:33 -04:00
Joey Hess
6ddfa9807b
implemented git-annex-shell p2pstdio
Not yet used by git-annex, but this will allow faster transfers etc than
using individual ssh connections and rsync.

Not called git-annex-shell p2p, because git-annex p2p does something
else and I don't want two subcommands with the same name between the two
for sanity reasons.

This commit was sponsored by Øyvind Andersen Holm.
2018-03-07 15:38:01 -04:00
yarikoptic
6023d82a43 Added a comment 2018-03-06 20:33:44 +00:00
Joey Hess
9b8f6c9cb9
followup 2018-03-06 14:51:27 -04:00
Joey Hess
f42baedd4c
designing new git-annex-shell multi
This commit was supported by the NSF-funded DataLad project.
2018-03-06 14:48:44 -04:00
Joey Hess
bf98afb91a
comment 2018-03-06 13:38:55 -04:00
Joey Hess
a4bd508643
todo 2018-02-28 16:52:13 -04:00
Joey Hess
bed6773346
Support exporttree=yes for rsync special remotes.
Renaming is not supported; it might be possible to use --fuzzy to get rsync
to notice the file is being renamed, but that is a bit ..fuzzy.

On the other hand, interrupted transfers of an exported file are resumed,
since rsync is great at that. Had to adjust the exporttree docs, which
said interrupted transfers would restart.

Note that remove no longer makes the empty directory dummy, instead
sending the top-level empty directory. This works just as well and I
noticed the dummy was unncessary when refactoring it into removeGeneric.
Verified that behavior of remove is not changed, and git annex
testremote does pass.

This commit was sponsored by Brock Spratlen on Patreon.
2018-02-28 13:36:20 -04:00
roger.herikstad@ca3b99b0263344ccfd8ec134a12261be25ef3504
7a4fe7e80c Added a comment: Not working with rsync? 2018-02-28 02:41:38 +00:00
Joey Hess
8104f2f758
done 2018-02-20 13:00:51 -04:00
Joey Hess
572754c925
update 2018-02-19 15:54:56 -04:00
yarikoptic
fb2c7d180a Added a comment 2018-02-16 18:42:28 +00:00
Joey Hess
b0633931d6
comment 2018-02-16 14:05:26 -04:00
Joey Hess
56711c310c
update 2018-02-16 13:56:05 -04:00
Joey Hess
846208b265
comment 2018-02-16 13:47:10 -04:00
Joey Hess
1758982760
comment 2018-02-16 13:28:13 -04:00
yarikoptic
36375ca060 Added a comment 2018-02-08 18:06:55 +00:00
Joey Hess
5109d406c0
comment 2018-02-08 13:31:36 -04:00
Joey Hess
68321be178
comment 2018-02-08 13:12:39 -04:00
yarikoptic
8cd0f8b28e 2018-02-06 22:35:41 +00:00
yarikoptic
638032f3aa Added a comment 2018-02-06 20:15:35 +00:00
Joey Hess
7d9f0e0fbe
Added INFO to external special remote protocol.
It's left up to the special remote to detect when git-annex is new enough
to support the message; an old git-annex will blow up.

This commit was supported by the NSF-funded DataLad project.
2018-02-06 13:03:55 -04:00
Joey Hess
5c8150c6eb
Merge branch 'master' of ssh://git-annex.branchable.com 2018-02-05 13:25:11 -04:00
Joey Hess
4cd300547d
followup 2018-02-05 13:24:44 -04:00
yarikoptic
0578ed2aaa initial report 2018-02-05 15:53:06 +00:00
lhunath@3b4ff15f4600f3276d1776a490b734fca0f5c245
60fc538790 Added a comment: Simultaneous transfers 2018-02-02 17:37:27 +00:00
yarikoptic
f3d5d80efb Added a comment: any chance to avoid necessity to config the hook(s)? 2018-02-01 18:54:18 +00:00
Joey Hess
e84d9219c4
add todo 2018-02-01 13:52:15 -04:00
yarikoptic
1ca00e61e6 initial whishlist 2018-01-25 03:44:53 +00:00
mbekkema97@66b135681014f005a3a14c4011d148fcb6655f81
4c6edbc8e6 Added a comment 2018-01-19 03:46:29 +00:00
Joey Hess
4eb70965a7
response 2018-01-15 13:31:21 -04:00
Joey Hess
97d84da875
response 2018-01-15 13:26:25 -04:00
mbekkema97@66b135681014f005a3a14c4011d148fcb6655f81
dcc4b7e954 2018-01-13 03:36:34 +00:00
yarikoptic
369b6f416f initial question about ssh urls support 2018-01-12 14:56:43 +00:00
Joey Hess
d180ae039c
fix now-dead gmane links
gmane's disk crashed, I found one thread in another archive, but could
not find my whole patch set in any archive (perhaps some of the messages
were too long), so pulled it out of my personal mail archives.

This commit was supported by the NSF-funded DataLad project.
2017-12-26 12:21:44 -04:00
Joey Hess
72469af8a9
Merge branch 'master' of ssh://git-annex.branchable.com 2017-12-13 14:36:49 -04:00
Joey Hess
3cc94c1667
.noannex file
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.
2017-12-13 14:34:32 -04:00
yarikoptic
74dedb3e43 removed 2017-12-13 18:15:10 +00:00
yarikoptic
3643fd3fec Added a comment 2017-12-13 18:12:14 +00:00
yarikoptic
55bd55fa55 Added a comment 2017-12-13 18:12:05 +00:00
Joey Hess
95ec530324
thought 2017-12-13 13:46:36 -04:00
Joey Hess
d25a9a1c64
comment 2017-12-13 12:54:54 -04:00
Joey Hess
52ec7c0204
comment 2017-12-13 12:48:28 -04:00
yarikoptic
ba511f4de9 Added a comment 2017-12-11 19:41:35 +00:00
Joey Hess
6c8c4cb7d5
todo 2017-12-11 13:49:40 -04:00
yarikoptic
cf05ebbeba Added a comment 2017-12-05 18:51:49 +00:00
Joey Hess
4e38c4f57f
Allow exporttree remotes to be marked as dead.
Union with max so that DeadTrusted wins over UnTrusted.

This commit was sponsored by Trenton Cronholm on Patreon.
2017-12-05 13:46:55 -04:00
Joey Hess
fd24034e56
fix format of comment 2017-12-05 13:01:26 -04:00
Joey Hess
15d5d0fafb
devblog 2017-11-30 17:08:18 -04:00
Joey Hess
3febb79c8f
wip 2017-11-28 17:17:40 -04:00
Joey Hess
d1d04a3c65
size checking 2017-11-28 13:37:50 -04:00
Joey Hess
8f41a1b7ce
update youtube playlist docs 2017-11-28 13:30:05 -04:00
Joey Hess
57b4c5bdff
add Utility.HtmlDetect
This will be used in youtube-dl integration, to tell when a html page has
been downloaded by addurl, in which case it is worth running youtube-dl
to see if it can extract media from it.

tagsoup is an almost free dependency, because yesod depends on it.
So, this only really adds a dep when git-annex is built without the
webapp.

I'd like this to as closely as possible match how browsers decide if a
page is html or not. Unfortunately, that is fairly heuristic, in order
to support malformed html. And, we don't want to falsely detect
something as html just because it has something that looks like a html
tag embedded somewhere in it. Probably any major video hosting site is
going to be serving html documents that at least start with a <html>
tag, so requiring that or a DOCTYPE should be good enough.

This commit was sponsored by Jeff Goeke-Smith on Patreon.
2017-11-28 13:03:11 -04:00
Joey Hess
c37838d1b7
update; filed youtube-dl bug 2017-11-27 16:29:29 -04:00
Joey Hess
005d9a897d
idea 2017-11-23 10:49:09 -04:00
Joey Hess
af2f3e8f9c
investigate using youtube-dl. not pretty.. 2017-11-22 13:15:13 -04:00
Lykos153
5a4733c5a6 2017-11-16 00:57:29 +00:00
Joey Hess
1d0bf44173
testremote: Test exporttree.
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.
2017-11-08 14:22:11 -04:00
Joey Hess
c394b3ccdc
confirm 2017-11-07 17:08:04 -04:00
Lykos153
9782cb9c14 rename todo/Test_cases_for_exportree_special_remotes.mdwn to todo/Test_cases_for_exporttree_special_remotes.mdwn 2017-11-01 14:15:50 +00:00
Lykos153
96e41466ba 2017-11-01 13:52:49 +00:00
Joey Hess
4ecc852ca0
Merge branch 'master' of ssh://git-annex.branchable.com 2017-10-31 13:14:18 -04:00
Joey Hess
fc8f1a7a1a
close bug; copy benchmarking info to new page 2017-10-31 13:13:40 -04:00
yarikoptic
d780958ee0 Added a comment: thanks 2017-10-30 20:04:48 +00:00
Joey Hess
d4429bcf00
close; export 2017-10-30 15:16:09 -04:00
Joey Hess
194c413727
followup 2017-10-30 15:12:23 -04:00
Joey Hess
1e20b0e782
followup 2017-10-30 14:53:15 -04:00
Joey Hess
1adcad345a
close 2017-10-30 14:47:19 -04:00
Joey Hess
75ec0227f8
unlock, lock: Support --json. 2017-10-30 14:44:11 -04:00
Joey Hess
c778b37e77
you requested his old closed bugs not be deleted yet 2017-10-02 11:58:31 -04:00
Joey Hess
65a76bf381
remove old closed bugs and todo items to speed up wiki updates and reduce size
Remove closed bugs and todos that were last edited or commented before 2017.

Command line used:

for f in $(grep -l '|done\]\]' -- *.mdwn); do d="$(echo "$f" | sed 's/.mdwn$//')"; if [ -z "$(git log --since=01-01-2017 --pretty=oneline -- "$f")" -a -z "$(git log --since=01-01-2017 --pretty=oneline -- "$d")" ]; then git rm -- "./$f" ; git rm -rf "./$d"; fi; done
for f in $(grep -l '\[\[done\]\]' -- *.mdwn); do d="$(echo "$f" | sed 's/.mdwn$//')"; if [ -z "$(git log --since=01-01-2017 --pretty=oneline -- "$f")" -a -z "$(git log --since=01-01-2017 --pretty=oneline -- "$d")" ]; then git rm -- "./$f" ; git rm -rf "./$d"; fi; done
2017-09-29 12:55:42 -04:00
Joey Hess
c363a774b8
limit rss/atom feeds to 10 pages to avoid enormous files
Since bug reports are often long, the rss and atom feeds were 5+ mb in
size.
2017-09-29 12:42:09 -04:00
Joey Hess
ac897a94bb
comment 2017-09-29 12:27:19 -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
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
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
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
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
Joey Hess
486902389d
lock to avoid more than one export to a remote at a time
This commit was sponsored by Jack Hill on Patreon.
2017-09-18 12:38:07 -04:00
Joey Hess
af0958dd70
move tracking exports to design 2017-09-18 12:06:01 -04:00
Joey Hess
4a45f34fe1
don't support removing content from export with removeKey
There does not seem to be a use case for supporting that, and it would
need a lot of complication to support it in a way that allows eventual
consistency when two repositories are updating the same export.

This commit was sponsored by Henrik Riomar on Patreon.
2017-09-17 17:56:33 -04:00
Joey Hess
494b4066db
clarification 2017-09-16 16:44:27 -04:00
Joey Hess
18ba1be26f
design for next steps on exports 2017-09-16 16:41:04 -04:00
Joey Hess
1223960294
empty directory removal working 2017-09-15 15:24:45 -04:00
Joey Hess
5fe803e14e
update 2017-09-15 12:22:11 -04:00
Joey Hess
268a0cc664
update 2017-09-13 15:52:19 -04:00
Joey Hess
bf48ba4ef7
work around box.com webdav rename bug
Apparently box.com renaming is just buggy. I tried a couple of fixes:

* In case the http Manager was opening multiple connections and reaching
  different backend servers, I tried limiting the number of connections
  to 1. Didn't help.
* To make sure it was not a http connection reuse problem, I tried
  rewriting how exportAction works, so that the same http connection
  is clearly open. Didn't help.

So, disable renaming of exports for box.com. It would be good to test it
with some other webdav server.

This commit was sponsored by John Peloquin on Patreon.
2017-09-13 15:26:56 -04:00
Joey Hess
f8fd66d3f8
fix compaction of export.log
It was not getting old lines removed, because the tree graft confused
the updater, so it union merged from the previous git-annex branch,
which still contained the old lines. Fixed by carefully using setIndexSha.

This commit was supported by the NSF-funded DataLad project.
2017-09-12 18:30:36 -04:00
Joey Hess
c8ed941a26
change export.log format to support multiple export remotes
This breaks backwards compatibility, but only with unreleased versions of
git-annex, which I think is acceptable.

This commit was supported by the NSF-funded DataLad project.
2017-09-12 17:45:52 -04:00
Joey Hess
63ba764923
bug 2017-09-12 17:00:15 -04:00
Joey Hess
9c3622882b
export: cache connections for S3 and webdav 2017-09-12 16:59:04 -04:00
Joey Hess
7ad8e8b889
more box.com strangeness 2017-09-12 15:45:43 -04:00
Joey Hess
7f8892f2d2
document box.com rename problem 2017-09-12 15:16:17 -04:00
Joey Hess
267f47c473
S3: Allow removing files from IA, but warn about derived versions potentially still existing there.
Removal works, only derives are a potential issue, so allow removing
with a warning. This way, unexporting a file works, and behavior is
consistent with IA remotes whether or not exporttree=yes.

Also tested exporting filenames containing unicode, spaces, underscores.
All worked, despite the IA's faq saying it doesn't.

This commit was sponsored by Trenton Cronholm on Patreon.
2017-09-12 12:35:58 -04:00
Joey Hess
650d0955a0
S3 export finalization
Fixed ACL issue, and updated some documentation.
2017-09-08 16:28:28 -04:00
Joey Hess
44cd5ae313
S3 export (untested)
It opens a http connection per file exported, but then so does git
annex copy --to s3.

Decided not to munge exported filenames for IA. Too large a chance of
the munging having confusing results. Instead, export of files not
supported by IA, eg with spaces in their name, will fail.

This commit was supported by the NSF-funded DataLad project.
2017-09-08 15:46:24 -04:00
Joey Hess
34ad1c15e8
mention git-annex export 2017-09-07 16:17:46 -04:00
Joey Hess
165725b9df
update 2017-09-07 16:07:28 -04:00
Joey Hess
a48b52c056
avoid renaming to temp files before deleting
Only rename when actually ncessary.

The diff gets buffered in memory. Probably git has to buffer a diff in
memory when generating it as well, so this memory usage should not be a
problem, even when the diff is very large. I hope.

This commit was supported by the NSF-funded DataLad project.
2017-09-07 14:32:47 -04:00
Joey Hess
16eb2f976c
prevent exporttree=yes on remotes that don't support exports
Don't allow "exporttree=yes" to be set when the special remote
does not support exports. That would be confusing since the user would
set up a special remote for exports, but `git annex export` to it would
later fail.

This commit was supported by the NSF-funded DataLad project.
2017-09-07 13:48:44 -04:00
Joey Hess
6ab14710fc
fix consistency bug reading from export database
The export database has writes made to it and then expects to read back
the same data immediately. But, the way that Database.Handle does
writes, in order to support multiple writers, makes that not work, due
to caching issues. This resulted in export re-uploading files it had
already successfully renamed into place.

Fixed by allowing databases to be opened in MultiWriter or SingleWriter
mode. The export database only needs to support a single writer; it does
not make sense for multiple exports to run at the same time to the same
special remote.

All other databases still use MultiWriter mode. And by inspection,
nothing else in git-annex seems to be relying on being able to
immediately query for changes that were just written to the database.

This commit was supported by the NSF-funded DataLad project.
2017-09-06 17:19:07 -04:00
Joey Hess
35cd329bd8
Merge branch 'master' into export 2017-09-06 15:49:30 -04:00
Joey Hess
3ccf661d7c
todo 2017-09-06 15:46:35 -04:00
Joey Hess
1ec3a9eb05
thoughts on handling renames efficiently
This gets complicated, but I think this design will work!

This commit was supported by the NSF-funded DataLad project.
2017-09-06 13:04:09 -04:00
Edward Betts
c1b9f718bc
move line break to fix broken link 2017-09-06 11:25:06 -04:00
Joey Hess
662f2a5ee7
git annex get from exports
Straightforward enough, except for the needed belt-and-suspenders sanity
checks to avoid foot shooting due to exports not being key/value stores.

* Even when annex.verify=false, always verify from exports.
* Only get files from exports that use a backend that supports
  checksum verification.
* Never trust exports, even if the user says to, because then
  `git annex drop` would drop content if the export seemed to contain
  a copy.

This commit was supported by the NSF-funded DataLad project.
2017-09-04 16:39:56 -04:00
Joey Hess
4da763439b
use export db to correctly handle duplicate files
Removed uncorrect UniqueKey key in db schema; a key can appear multiple
times with different files.

The database has to be flushed after each removal. But when adding files
to the export, lots of changes are able to be queued up w/o flushing.
So it's still fairly efficient.

If large removals of files from exports are too slow, an alternative
would be to make two passes over the diff, one pass queueing deletions
from the database, then a flush and the a second pass updating the
location log. But that would use more memory, and need to look up
exportKey twice per removed file, so I've avoided such optimisation yet.

This commit was supported by the NSF-funded DataLad project.
2017-09-04 14:39:32 -04:00
Joey Hess
28e2cad849
implement exporttree=yes configuration
* Only export to remotes that were initialized to support it.
* Prevent storing key/value on export remotes.
* Prevent enabling exporttree=yes and encryption in the same remote.

SetupStage Enable was changed to take the old RemoteConfig.
This allowed only setting exporttree when initially setting up a
remote, and not configuring it later after stuff might already be stored
in the remote.

Went with =yes rather than =true for consistency with other parts of
git-annex. Changed docs accordingly.

This commit was supported by the NSF-funded DataLad project.
2017-09-04 13:09:38 -04:00
Joey Hess
978885247e
implement export.log and resolve export conflicts
Incremental export updates work now too.

This commit was sponsored by Anthony DeRobertis on Patreon.
2017-08-31 15:47:23 -04:00
Joey Hess
7c7af82578
resuming exports
Make a pass over the whole exported tree, and upload anything that has
not yet reached the export. Update location log when exporting.

Note that the synthesized keys for non-annexed files are stored in the
location log too.

Some cases involving files in the tree with the same content are not
handled correctly yet.

This commit was sponsored by Boyd Stephen Smith Jr. on Patreon.
2017-08-31 13:33:50 -04:00
Joey Hess
943de657b8
Merge branch 'master' into export 2017-08-31 12:16:22 -04:00
Joey Hess
9f3630f4e0
initial export command
Very basic operation works, but of course this is only the beginning.

This commit was sponsored by Nick Daly on Patreon.
2017-08-29 15:10:01 -04:00
supernaught
15601f2b66 Added a comment 2017-08-28 22:01:23 +00:00
Joey Hess
5c99131b7b
comment 2017-08-28 13:49:16 -04:00
Joey Hess
35fc273218
comment 2017-08-15 13:26:23 -04:00
Joey Hess
2eb6309d3e
move, copy: Support --batch. 2017-08-15 12:39:10 -04:00
https://openid.stackexchange.com/user/26f3c692-0460-4cbc-8712-e9bfb5889fb2
4df21b511c Added a comment: "WSL adds inotify & filesystem change notification support" 2017-08-07 06:22:07 +00:00
yarikoptic
e7e665b1fa 2017-08-02 14:58:28 +00:00
https://launchpad.net/~stephane-gourichon-lpad
48c98fbe93 Added a comment: Experiment to run git-annex-repair as fast as possible. 2017-07-28 04:27:06 +00:00
https://launchpad.net/~stephane-gourichon-lpad
4eab06bf75 2017-07-28 03:39:56 +00:00
yarikoptic
6adbb5a727 initial whining 2017-07-21 16:37:03 +00:00
https://launchpad.net/~stephane-gourichon-lpad
830106de2a 2017-07-21 13:59:10 +00:00
supernaught
13e18b37a5 Feature request: invert remote selection. 2017-07-18 17:00:14 +00:00
Joey Hess
adbd0ff068
add design 2017-07-11 11:32:35 -04:00
Joey Hess
b3a53f7f04
note 2017-07-10 14:20:37 -04:00
Joey Hess
6dd3fbdb41
thoughts 2017-07-10 14:06:49 -04:00
glasserc
5b2dc78aa6 Added a comment 2017-07-02 02:56:20 +00:00
Joey Hess
e8464f106b
followup 2017-06-26 13:13:49 -04:00
glasserc
5991d5c1ab A wishlist item I would like 2017-06-14 21:26:39 +00:00
Joey Hess
99a1e6efe2
close as dup 2017-06-09 13:43:53 -04:00
Joey Hess
aff0ce86da
merge and followup window path length bugs 2017-06-06 15:57:35 -04:00
Joey Hess
3193d8258b
link to msdn article on enabling long paths 2017-06-06 15:24:37 -04:00
Joey Hess
fa50906a80
comment 2017-06-06 13:49:13 -04:00
Joey Hess
3cc30dd128
thoughts 2017-05-24 15:14:49 -04:00
Joey Hess
6dd806f1ad
stop using MissingH for MD5
Cryptonite is faster and allocates less, and I want to get rid of
MissingH use.

Note that the new dependency on memory is free; it's a dependency of
cryptonite.

This commit was supported by the NSF-funded DataLad project.
2017-05-15 21:36:03 -04:00
Joey Hess
9ddd75b99a
comment 2017-05-11 13:29:14 -04:00
Joey Hess
f5a3b14e49
comment 2017-05-09 13:47:09 -04:00
Joey Hess
6ad0b00849
comment 2017-05-09 13:38:45 -04:00
CandyAngel
aa60e9924d Added a comment 2017-05-09 14:25:50 +00:00
CandyAngel
6a6fe43da3 2017-05-09 14:20:21 +00:00
CandyAngel
2befd8acc9 Added a comment 2017-05-09 10:05:14 +00:00
Tafnzart
74e28f9b99 Added a comment: Maybe provide an option to force without name change 2017-05-07 14:05:04 +00:00
anarcat
bf47e518dd try to structure a guide 2017-04-24 14:18:21 +00:00
anarcat
804f06baa4 Added a comment: sounds like the dumb backend, except not dumb 2017-04-08 20:21:41 +00:00
Joey Hess
e3184e54c9
version: Added "dependency versions" line.
This commit was sponsored by Anthony DeRobertis on Patreon.
2017-04-07 18:16:11 -04:00
lee@7614f42c1a6cc84dbc813df25d2f75ed54948e17
2ad7a3e1ff add todo for lib versions 2017-04-07 21:35:48 +00:00
Joey Hess
6896ac06e8
git annex add -u now supported, analagous to git add -u
Unlike git add -u, git annex add -u does not update the index for files
removed from the working tree. But then, "git add ." stages removals,
and "git annex add ." does not, so that's an existing divergence.

Seems that --update --batch would need to run git ls-files once per line of
batch input, which would surely be too slow, so just throw an error for
that.

This commit was supported by the NSF-funded DataLad project.
2017-04-07 15:55:45 -04:00
Joey Hess
c3970f6c1a
multicast: New command, uses uftp to multicast annexed files, for eg a classroom setting.
This commit was supported by the NSF-funded DataLad project.
2017-03-30 19:35:30 -04:00
Joey Hess
39e8433d46
fix format 2017-03-30 14:16:13 -04:00
Joey Hess
43d7862b44
design 2017-03-30 14:15:12 -04:00
yarikoptic
3a03665b4f 2017-03-30 16:08:07 +00:00
yarikoptic
f6d34d228e initial idea 2017-03-30 16:07:43 +00:00
Joey Hess
d6afd70e20 WSL can now run git-annex 2017-03-27 21:40:45 -04:00
Joey Hess
a2017e944f expand 2017-03-27 18:12:46 -04:00
Joey Hess
9fcd3987f2 idea 2017-03-27 18:10:36 -04:00
Cyberthal
9713258e9b 2017-03-24 15:10:10 +00:00
yarikoptic
a6430481c4 initial report 2017-03-23 04:09:44 +00:00
konubinix
f3dee9d658 removed 2017-03-21 15:42:50 +00:00
konubinix
04fb8e7896 removed 2017-03-21 15:40:16 +00:00
konubinix
9ec8466302 removed 2017-03-21 15:37:54 +00:00
konubinix
9b53859c67 removed 2017-03-21 15:37:28 +00:00
konubinix
5f7f61febb removed 2017-03-21 15:36:46 +00:00
konubinix
14b96acb60 Added a comment: Nice job! 2017-03-21 15:36:18 +00:00
konubinix
88bbb04f29 Added a comment: Nice job! 2017-03-21 15:36:07 +00:00
konubinix
2bdcdd6186 Added a comment: Nice job! 2017-03-21 15:35:56 +00:00
konubinix
2c069ee2a5 Added a comment: Nice job! 2017-03-21 15:35:45 +00:00
konubinix
9dae7e0bdd Added a comment: Nice job! 2017-03-21 15:35:37 +00:00
konubinix
b78408377e Added a comment: Nice job! 2017-03-21 15:35:27 +00:00
Joey Hess
64f924dc93
sync --content-of=path
For when you want to sync only some files' contents, not the whole working
tree.

This commit was sponsored by Anthony DeRobertis on Patreon.
2017-03-20 16:00:48 -04:00
Joey Hess
631608d55b
todo 2017-03-18 15:44:52 -04:00
jason.dixon.email@aa0e536a2ec2877d6f666108dbbc6e39bbe87ac0
83defc762f Added a comment: Oh and to be slightly helpful 2017-03-08 08:57:08 +00:00
jason.dixon.email@aa0e536a2ec2877d6f666108dbbc6e39bbe87ac0
98647f5959 Added a comment: Same issue with rclone on windows. 2017-03-08 08:55:49 +00:00
jason.dixon.email@aa0e536a2ec2877d6f666108dbbc6e39bbe87ac0
24ade8a25b Added a comment: Still seems useful 2017-03-07 10:19:41 +00:00
jason.dixon.email@aa0e536a2ec2877d6f666108dbbc6e39bbe87ac0
41b85ad1f4 Added a comment: I hope the option to show missing files remains. 2017-03-07 06:30:37 +00:00
jason.dixon.email@aa0e536a2ec2877d6f666108dbbc6e39bbe87ac0
86508537c5 Added a comment: Does this not work counter to locking / unlocking files? 2017-03-03 13:40:06 +00:00
Joey Hess
1cd5fc302c
fix format 2017-03-02 13:49:13 -04:00
git-annex@31849d241f10c295b30a9707352ae5c7d743adb7
2468e69354 Added a comment 2017-03-02 16:16:05 +00:00
git-annex@31849d241f10c295b30a9707352ae5c7d743adb7
273decc078 removed 2017-03-02 16:15:44 +00:00
git-annex@31849d241f10c295b30a9707352ae5c7d743adb7
fcdc72f807 Added a comment 2017-03-02 16:14:52 +00:00
Joey Hess
e53070c1ff
inheritable annex.securehashesonly
* init: When annex.securehashesonly has been set with git-annex config,
  copy that value to the annex.securehashesonly git config.
* config --set: As well as setting value in git-annex branch,
  set local gitconfig. This is needed especially for
  annex.securehashesonly, which is read only from local gitconfig and not
  the git-annex branch.

doc/todo/sha1_collision_embedding_in_git-annex_keys.mdwn has the
rationalle for doing it this way. There's no perfect solution; this
seems to be the least-bad one.

This commit was supported by the NSF-funded DataLad project.
2017-02-27 16:08:23 -04:00
Joey Hess
6e0e7d885c
update 2017-02-27 15:32:04 -04:00
Joey Hess
e8bf942dc4
move thoughts 2017-02-25 15:00:22 -04:00
Joey Hess
a463ba6e8a
more thoughts 2017-02-25 14:49:44 -04:00
Joey Hess
d512098cbb
further thoughts 2017-02-25 12:55:38 -04:00
Joey Hess
6b52fcbb7e
SHA1 collisions in key names was more exploitable than I thought
Yesterday's SHA1 collision attack could be used to generate eg:

SHA256-sfoo--whatever.good
SHA256-sfoo--whatever.bad

Such that they collide. A repository with the good one could have the
bad one swapped in and signed commits would still verify.

I've already mitigated this.
2017-02-24 19:54:36 -04:00
Joey Hess
634a485b50
update 2017-02-24 17:57:21 -04:00
Joey Hess
9de0767d0e
update 2017-02-24 12:31:23 -04:00
Joey Hess
35739a74c2
make file2key reject E* backend keys with a long extension
I am not happy that I had to put backend-specific code in file2key. But
it would be very difficult to avoid this layering violation.

Most of the time, when parsing a Key from a symlink target, git-annex
never looks up its Backend at all, so adding this check to a method of
the Backend object would not work.

The Key could be made to contain the appropriate
Backend, but since Backend is parameterized on an "a" that is fixed to
the Annex monad later, that would need Key to change to "Key a".

The only way to clean this up that I can see would be to have the Key
contain a LowlevelBackend, and put the validation in LowlevelBackend.
Perhaps later, but that would be an extensive change, so let's not do
it in this commit which may want to cherry-pick to backports.

This commit was sponsored by Ethan Aubin.
2017-02-24 11:22:15 -04:00
Joey Hess
63df8d8966
update 2017-02-24 02:14:36 -04:00
Joey Hess
44b9ac41a4
update 2017-02-24 01:21:54 -04:00
Joey Hess
4cad401629
updates 2017-02-24 00:28:15 -04:00
Joey Hess
969da82b5c
update 2017-02-24 00:21:58 -04:00
Joey Hess
60d99a80a6
Tighten key parser to not accept keys containing a non-numeric fields, which could be used to embed data useful for a SHA1 attack against git.
Also todo about why this is important, and with some further hardening to
add.

This commit was sponsored by Ignacio on Patreon.
2017-02-24 00:17:25 -04:00
Joey Hess
7a0d6d81a0
make curl show http errors to stderr
* Run curl with -S, so HTTP errors are displayed, even when
  it's otherwise silent.
* When downloading in --json or --quiet mode, use curl in preference
  to wget, since curl is able to display only errors to stderr, unlike
  wget.

This does mean that downloadQuiet is only silent on stdout, not necessarily
on stderr, which affects a couple other calls of it. For example,
downloading the .git/config of a http remote may show an error message now,
perhaps with slightly suboptimal formatting due to other output.
2017-02-20 16:09:32 -04:00
Joey Hess
07de7c2c76
update 2017-02-20 15:44:43 -04:00
Joey Hess
4a397b5313
Run wget with -nv instead of -q, so it will display HTTP errors.
This adds one extra line of output when a download is successful,
after the progress bar. I don't much like that, but wget does not provide a
way to show HTTP errors without it.
2017-02-20 15:25:02 -04:00
Joey Hess
6ba8b557e8
remove
I've seen this thing, whatever it is, mentioned in spam links before,
so even if it's valid for some OS (probably not the one being asked
about), it's verboten here.
2017-02-20 12:24:15 -04:00
Joey Hess
d80cf5b9e9
comment 2017-02-20 12:23:22 -04:00
Joey Hess
a700fdf5cf
documentation updates for new receive.denyCurrentBranch=updateInstead support
This commit was sponsored by andrea rota.
2017-02-17 15:43:16 -04:00
Joey Hess
de4d50e9d0
thoughts 2017-02-17 12:57:55 -04:00
yarikoptic
2f601791bf 2017-02-17 01:57:11 +00:00
Joey Hess
d0651bb567
make query commands not output extraneous messages
config group groupwanted numcopies schedule wanted required:  Avoid
displaying extraneous messages about repository auto-init, git-annex branch
merging, etc, when being used to get information.
2017-02-16 13:24:35 -04:00
yarikoptic
baa2ab2c7d Added a comment 2017-02-16 15:54:18 +00:00
CandyAngel
bb262be6f0 Added a comment 2017-02-16 14:10:56 +00:00
yarikoptic
9cdb0125c7 2017-02-16 03:49:46 +00:00
Joey Hess
de671658ee
devblog 2017-02-15 16:44:10 -04:00
Joey Hess
a73c8ce4a1
sync: Improve integration with receive.denyCurrentBranch=updateInstead
By displaying error messages from the remote then it fails to update
its checked out branch.

Error messages in the default receive.denyCurrentBranch are still
suppressed, which matches user expectations.

This commit was sponsored by Nick Daly on Patreon.
2017-02-15 16:13:30 -04:00
Joey Hess
e8b9565b6f
thoughts 2017-02-14 17:39:37 -04:00
Edward Betts
0750913136
correct spelling mistakes 2017-02-12 17:30:23 -04:00
Joey Hess
0e7cbadf25
close 2017-02-09 18:59:45 -04:00
Joey Hess
ba61229c77
update 2017-02-09 18:58:13 -04:00
Joey Hess
2e92648383
comment 2017-02-09 16:13:02 -04:00
Joey Hess
c1ece47ea0
import --reinject-duplicates
This is the same as running git annex reinject --known, followed by
git-annex import. The advantage to having it in one command is that it
only has to hash each file once; the two commands have to
hash the imported files a second time.

This commit was sponsored by Shane-o on Patreon.
2017-02-09 15:41:00 -04:00
CandyAngel
278f9f0454 Added a comment 2017-02-07 22:51:15 +00:00
Joey Hess
30ab4ecc4b
response 2017-02-07 18:07:47 -04:00
Joey Hess
a8e64d4148
response 2017-02-07 17:23:41 -04:00
Joey Hess
27e89aeffc
initremote: When a uuid= parameter is passed, use the specified UUID for the new special remote, instead of generating a UUID.
This can be useful in some situations, eg when the same data can be
accessed via two different special remote backends.
2017-02-07 15:10:41 -04:00
Joey Hess
a89d98af6d
comment 2017-02-07 13:08:33 -04:00
Joey Hess
fe6936e065
comment 2017-02-07 12:48:12 -04:00
Joey Hess
2e246cb5d6
comment 2017-02-07 12:38:31 -04:00
yarikoptic
54bae5df37 initial thoughts 2017-02-06 15:32:45 +00:00
yarikoptic
03658010c7 initial thoughts 2017-02-06 00:49:28 +00:00
CandyAngel
e075032068 Added a comment 2017-02-05 02:20:31 +00:00
Joey Hess
424c4c2911
Merge branch 'master' of ssh://git-annex.branchable.com 2017-02-04 13:01:50 -04:00
Joey Hess
ff1ba8fdc6
update 2017-02-04 13:01:20 -04:00
joshfindit
a2d8c4120f Added a comment 2017-02-04 16:24:32 +00:00
Joey Hess
dbc0b032b8
comment 2017-02-03 15:43:34 -04:00
Joey Hess
b5e6d23242
Merge branch 'master' of ssh://git-annex.branchable.com 2017-02-03 14:37:49 -04:00
Joey Hess
ed56dba868
annex.autocommit can be configured via git-annex config
... to control the default behavior in all clones of a repository.

This includes a new Configurable data type, so the GitConfig type indicates
which values can be configured this way.

The implementation should be quite efficient; the config log is only read
once, and only when a Configurable value has not already been set by
git-config.

Indeed, it would be nice in the future to extend this, so that git-config
is itself only read on demand. Some commands may not need to look at the
git configuration at all.

This commit was sponsored by Trenton Cronholm on Patreon.
2017-02-03 13:58:53 -04:00
http://schnouki.net/
a57c21a968 Added a comment 2017-02-02 22:05:23 +00:00
Joey Hess
ed60f60e9b
unused: Improved memory use significantly when there are a lot of differences between branches.
Argh, didn't need an accumulator here!

I think I use accumulators a lot more than I need to when recusively
processing lists..

This commit was sponsored by Jeff Goeke-Smith on Patreon.
2017-01-31 19:42:00 -04:00
Joey Hess
dbaea98836
fix lack of laziness streaming large diffs
A commit last year that made a partial function use Maybe unfortunately
caused the whole input to need to be consumed, breaking streaming. So,
revert it.

This commit was sponsored by Nick Daly on Patreon.
2017-01-31 17:43:11 -04:00
Joey Hess
a1842d387b
comment
This commit was sponsored by Ole-Morten on Patreon.
2017-01-31 13:01:55 -04:00
Joey Hess
5798013fb2
reproduced bug; started analysis
This commit was sponsored by Peter Hogg on Patreon.
2017-01-31 12:30:44 -04:00
Joey Hess
eeb227aeb8
Merge branch 'master' of ssh://git-annex.branchable.com 2017-01-30 17:34:48 -04:00
Joey Hess
339464e847
config: New command for storing configuration in the git-annex branch.
Any config names can be set using this; git-annex commands will only look
at specific ones that make sense and are worth the overhead of querying the
branch.

This might also be useful for storing whatever other config-type stuff the
user might want to shove into the git-annex branch.

This commit was sponsored by Jochen Bartl on Patreon.
2017-01-30 16:46:38 -04:00
https://anarc.at/openid/
aa24a7347b Added a comment: usability... 2017-01-30 18:06:22 +00:00
Joey Hess
6689dfae11
comment 2017-01-30 13:32:28 -04:00
Edward Betts
93cbed539f fix typo 2017-01-27 18:18:09 +00:00
git-annex@31849d241f10c295b30a9707352ae5c7d743adb7
6ce01ca9e5 2017-01-24 17:15:32 +00:00
Edward Betts
bc58a9402b fix typo 2017-01-24 10:43:33 +00:00
https://christian.amsuess.com/chrysn
a33cfd0488 add wishlist item 2017-01-20 09:49:23 +00:00
https://anarc.at/openid/
5ac99e6b5c link to the workflow page 2017-01-17 16:59:15 +00:00
https://anarc.at/openid/
bb6e123e8b Added a comment: answers 2017-01-17 16:56:39 +00:00
https://anarc.at/openid/
804e84b26e Added a comment: re dataloss and point 2017-01-17 01:34:43 +00:00
CandyAngel
85c0c22376 Added a comment 2017-01-16 10:30:55 +00:00
CandyAngel
b5cc28f56c 2017-01-16 10:26:06 +00:00
rivera15071976@36a85c6f19ac15f9202999a3e3b15b27cc8a750a
4b6226bf31 Added a comment: Long Path Tool 2017-01-16 08:02:53 +00:00
sunny256
6cbdb6b150 Added a comment: Oh yes 2017-01-16 07:56:59 +00:00
rustikus@9db90d0c115a1825e2f1e5f15257ec1298a6c7b6
b7e5856b1f Added a comment: Any update or help needed? 2017-01-12 13:40:38 +00:00
CandyAngel
f007a27d20 Added a comment 2017-01-11 22:29:55 +00:00
ghen1
5b110d5ff0 2017-01-11 01:27:24 +00:00
https://anarc.at/openid/
8197b09525 add describe step 2017-01-10 23:01:05 +00:00
https://anarc.at/openid/
278c072d6b a stumbling block i found while replacing a drive 2017-01-10 22:52:20 +00:00
Joey Hess
f04a7af39a
update 2017-01-08 17:37:56 -04:00
Joey Hess
856ca7f553
update 2017-01-08 17:27:14 -04:00
Joey Hess
ba1213c49e
add 2017-01-08 17:00:25 -04:00
db48x
93d69b1792 2017-01-01 14:41:07 +00:00
Joey Hess
0bbef83570
remove old item 2016-12-31 00:20:08 -04:00
Joey Hess
6b30079218
todo 2016-12-31 00:19:01 -04:00
Joey Hess
b2834db613
Merge branch 'master' of ssh://git-annex.branchable.com 2016-12-30 10:48:56 -04:00
Joey Hess
a03c51988f
idea 2016-12-29 14:57:13 -04:00
mhauru
c2325c2640 Added a comment 2016-12-29 18:00:10 +00:00
mhauru
a702917848 2016-12-29 17:49:14 +00:00
Joey Hess
cf6545198b
a few last changes post xmpp removal 2016-12-28 12:29:21 -04:00
Joey Hess
b21ffe62f5
update 2016-12-28 12:26:48 -04:00
Joey Hess
ab66bbfeb6
Merge branch 'master' into no-xmpp 2016-12-24 15:01:55 -04:00
Joey Hess
d6b401c458
todo 2016-12-24 13:10:51 -04:00
Joey Hess
993f30ac92
update 2016-12-24 12:53:57 -04:00
Joey Hess
e08691b393
enable-tor: When run as a regular user, test a connection back to the hidden service over tor.
This way we know that after enable-tor, the tor hidden service is fully
published and working, and so there should be no problems with it at
pairing time.

It has to start up its own temporary listener on the hidden service. It
would be nice to have it start the remotedaemon running, so that extra
step is not needed afterwards. But, there may already be a remotedaemon
running, in communication with the assistant and we don't want to start
another one. I thought about trying to HUP any running remotedaemon, but
Windows does not make it easy to do that. In any case, having the user
start the remotedaemon themselves lets them know it needs to be running
to serve the hidden service.

This commit was sponsored by Boyd Stephen Smith Jr. on Patreon.
2016-12-24 12:50:23 -04:00
Joey Hess
22252e8e4c
Revert "close"
This reverts commit 3aaabc906b.

Commit contained incomplete work.
2016-12-24 12:07:15 -04:00
Joey Hess
3aaabc906b
close 2016-12-22 13:59:21 -04:00
Joey Hess
942ea305a2
todo 2016-12-21 15:11:10 -04:00
Joey Hess
872064e4a6
comment 2016-12-21 14:21:05 -04:00
Joey Hess
f3972999ae
update 2016-12-20 15:15:01 -04:00
Joey Hess
9bdb617484
add some links to new workflow page 2016-12-20 15:13:44 -04:00
Joey Hess
ccde0932a5
p2p --pair with magic wormhole (untested)
It builds. I have not tried to run it yet. :)

This commit was sponsored by Jake Vosloo on Patreon.
2016-12-18 16:51:41 -04:00
marekj
1d7aabdda0 Added a comment: I took the liberty to do it 2016-12-14 07:49:26 +00:00
Joey Hess
a12eac060c
updates 2016-12-13 14:35:58 -04:00
Joey Hess
d87abe61f6
comment 2016-12-13 11:57:32 -04:00
Joey Hess
6f502c859b
todo 2016-12-12 17:21:32 -04:00
Joey Hess
b65780778a
update 2016-12-09 17:07:32 -04:00
Joey Hess
2c907fff51
remotedaemon: git change detection over tor hidden service 2016-12-09 16:02:43 -04:00
Joey Hess
596e1685a6
update 2016-12-09 13:38:50 -04:00
Joey Hess
71e8cd408e
content removal is supposed to succed if the content was already not present 2016-12-09 12:48:22 -04:00
Joey Hess
9c5c24aa0a
todo 2016-12-08 20:55:46 -04:00
Joey Hess
e84165dc5e
more todo 2016-12-08 20:15:12 -04:00
Joey Hess
38516b2fca
update progress logs in remotedaemon send/receive 2016-12-08 19:56:02 -04:00
Joey Hess
0f4ee4f298
fix memory leak
I'm unsure why this fixed it, but it did. Seems to suggest that the
memory leak is not due to a bug in my code, but that ghc didn't manage
to take full advantage of laziness, or was failing to gc something it
could have.
2016-12-08 18:42:52 -04:00
Joey Hess
095593a9af
correction 2016-12-08 18:25:51 -04:00
Joey Hess
3b9f6c1b2b
analysis 2016-12-08 17:50:59 -04:00
Joey Hess
5654085e7a
profiling 2016-12-08 17:34:26 -04:00
Joey Hess
b8fea9f08d
we have a memory leak 2016-12-08 16:35:33 -04:00
Joey Hess
39b7eb7350
update 2016-12-08 16:00:29 -04:00
Joey Hess
af41519126
convert P2P runners from Maybe to Either String
So we get some useful error messages when things fail.

This commit was sponsored by Peter Hogg on Patreon.
2016-12-08 15:47:49 -04:00
Joey Hess
b613ccf7a3
update 2016-12-08 13:58:11 -04:00
Joey Hess
138f618002
todo 2016-12-07 15:49:15 -04:00
Joey Hess
e5476d42ce
update 2016-12-07 15:38:37 -04:00
Joey Hess
0541f19bea
fix math error that caused resumes to always fail 2016-12-07 15:36:39 -04:00
Joey Hess
b55399e3ac
offset meters when resuming 2016-12-07 14:52:10 -04:00
Joey Hess
5ff85c8515
todo 2016-12-07 14:46:27 -04:00
Joey Hess
2fb6fd7434
Merge branch 'master' into tor 2016-12-07 14:32:25 -04:00
Joey Hess
0d9a11625c
remote uuid discovery in p2p --link
This also tests that we can connect to the peer.

This commit was sponsored by Jeff Goeke-Smith on Patreon.
2016-12-07 12:38:21 -04:00
Joey Hess
729e864ad0
add todo list for remaining tor stuff 2016-12-07 12:11:38 -04:00
lorenzo@a77fdbe826df1c175cbd30ed050312ccf7b7fc7b
67bc5c2e35 2016-12-03 09:04:45 +00:00
Joey Hess
d98f071319
todo 2016-11-21 12:30:15 -04:00
Joey Hess
61fe128bbc
no-xmpp branch 2016-11-14 15:04:16 -04:00
Joey Hess
d58148031b
remove xmpp support
I've long considered the XMPP support in git-annex a wart.
It's nice to remove it.

(This also removes the NetMessager, which was only used for XMPP, and the
daemonstatus's desynced list (likewise).)

Existing XMPP remotes should be ignored by git-annex.

This commit was sponsored by Brock Spratlen on Patreon.
2016-11-14 14:53:08 -04:00
Joey Hess
a924c99535
close 2016-11-08 14:52:29 -04:00
Euxane
04519cbe48 Added a comment 2016-11-08 10:12:05 +00:00
Joey Hess
37d6bd0658
comment 2016-11-07 10:38:25 -04:00
Euxane
a19975a42f Added a comment 2016-11-07 11:07:33 +00:00
0xloem@0bd8a79a57e4f0dcade8fc81d162c37eae4d6730
e79d1332b8 Added a comment 2016-11-06 11:42:48 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
0de64beadb Added a comment: should annex merge autoenable newly added autoenable'ed special remotes 2016-11-04 12:43:55 +00:00
Joey Hess
5aedde76ab
expand haskell section of contribute page 2016-11-02 11:04:26 -04:00
0xloem@0bd8a79a57e4f0dcade8fc81d162c37eae4d6730
6e467b3e4d 2016-11-01 11:21:55 +00:00
justin.lebar@7a36fcafc322d9a381e89f08ab6289033c6dde91
cb762820ef Added a comment 2016-11-01 04:11:20 +00:00
Joey Hess
161efbff03
fix transcript 2016-10-31 16:15:22 -04:00
Joey Hess
c5fd2775b1
comment 2016-10-31 16:06:26 -04:00
Joey Hess
5a1fd1b686
comments 2016-10-31 15:25:28 -04:00
Joey Hess
752a7e765f
comment 2016-10-31 14:14:42 -04:00
https://anarc.at/openid/
093d45878a didn't notice the similar posts in the forums, views solution is introduced, interesting... 2016-10-31 02:59:58 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
a00d16f562 2016-10-28 19:56:07 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
8a9a10a09b Added a comment: how to get ahold of the filename? 2016-10-27 10:10:25 +00:00
Joey Hess
ee6e57367d
response 2016-10-26 13:35:36 -04:00
http://christian.amsuess.com/chrysn
ce5f407b4c Added a comment 2016-10-24 13:00:56 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
bc0efcf200 initial desire 2016-10-24 10:58:04 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
54d8fbcf19 Added a comment: why option vs manual chmod 2016-10-17 23:11:10 +00:00
Joey Hess
7d6e805d28
hmm 2016-10-17 17:12:31 -04:00
Joey Hess
f07e2ce87c
comment 2016-10-17 16:30:43 -04:00
Joey Hess
0b1c061382
importfeed: Drop URL parameters from file extension.
Thanks, James MacMahon.
2016-10-17 16:02:05 -04:00
Joey Hess
c5d39e6543
followup 2016-10-17 15:45:01 -04:00
Joey Hess
9d48f2666d
comment 2016-10-17 14:17:27 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
82fac4f0b7 added meta for myself 2016-10-17 15:59:32 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
7877c8d58f initial suggestion 2016-10-17 15:58:54 +00:00
Joey Hess
0302bbff6d
comment 2016-10-13 14:02:15 -04:00
xloem
44d23db888 Added a comment: Workflow Summary 2016-10-09 13:39:38 +00:00
jwm@affa977977673476597d5d5c7bda464959a9bd9b
d50710be8b 2016-10-08 05:25:28 +00:00
http://christian.amsuess.com/chrysn
eb0f0e5327 rename forum/bittorrent__58___support_offline_operation_and_verification.mdwn to todo/bittorrent__58___support_offline_operation_and_verification.mdwn 2016-10-07 13:47:53 +00:00
Joey Hess
658b6ce835
comment 2016-10-05 16:02:29 -04:00
ztl8702
dac65af9a9 Added a comment: Bash on Windows 2016-09-30 19:14:34 +00:00
Joey Hess
5bf4623a1d
allow multiple concurrent external special remote processes
Multiple external special remote processes for the same remote will be
started as needed when using -J.

This should not beak any existing external special remotes, because running
multiple git-annex commands at the same time could already start multiple
processes for the same external special remotes.
2016-09-30 14:29:02 -04:00
Joey Hess
28c6209f55
Make --json-progress output be shown even when the size of a object is not known. 2016-09-29 16:59:48 -04:00
Joey Hess
7cd6a6a39c
Merge branch 'master' of ssh://git-annex.branchable.com 2016-09-29 16:58:09 -04:00
Joey Hess
5ed050c152
summary of progress 2016-09-29 16:52:35 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
69e41f3943 Added a comment 2016-09-29 20:45:48 +00:00
Joey Hess
161d891508
Add "total-size" field to --json-progress output. 2016-09-29 16:29:54 -04:00
Joey Hess
410b1c2b1f
todo 2016-09-26 19:06:56 -04:00
Joey Hess
f3b84f4603
Merge branch 'master' of ssh://git-annex.branchable.com 2016-09-26 16:49:21 -04:00
Joey Hess
a8734698eb
more profiling 2016-09-26 16:39:18 -04:00
Joey Hess
a197cf743d
profiling 2016-09-26 15:49:42 -04:00
erics
a11c700aea Added a comment 2016-09-25 00:33:57 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
9c651b9608 Added a comment: +may be "byte-target" field? ;) 2016-09-24 02:43:22 +00:00
https://anarc.at/openid/
184153ba98 Added a comment: thanks for considering this! 2016-09-22 12:43:12 +00:00
JasonWoof
b1bdb2b898 Added a comment: simpler use case 2016-09-22 00:40:08 +00:00
interfect@b151490178830f44348aa57b77ad58c7d18e8fe7
8510652dd4 Added a comment 2016-09-21 22:49:56 +00:00
Joey Hess
44acb145e0
comment 2016-09-21 16:23:41 -04:00
interfect@b151490178830f44348aa57b77ad58c7d18e8fe7
3ed30143a7 Added a comment 2016-09-21 19:32:07 +00:00
interfect@b151490178830f44348aa57b77ad58c7d18e8fe7
8abcc4c282 Added a comment: Pre Commit Hook 2016-09-21 19:20:05 +00:00
Joey Hess
489b9c8869
comments 2016-09-21 14:29:17 -04:00
Joey Hess
154a501b76
comment 2016-09-21 13:17:03 -04:00
Joey Hess
6c6304b2f2
comment 2016-09-21 12:53:29 -04:00
Adam000
4bdfb52f0b 2016-09-15 09:28:55 +00:00
Joey Hess
916f05e890
comment 2016-09-14 12:18:48 -04:00
anarcat
a12f1afd8e fix markup 2016-09-10 14:18:10 +00:00
anarcat
8f8800bba0 sign this so i follow its changes 2016-09-10 14:17:58 +00:00
anarcat
7a89a172b0 two more ideas 2016-09-10 14:13:42 +00:00
Joey Hess
61faf240d5
Merge branch 'master' of ssh://git-annex.branchable.com 2016-09-09 16:40:11 -04:00
Joey Hess
3e22d60549
copy, move, mirror: Support --json and --json-progress. 2016-09-09 16:24:26 -04:00
Joey Hess
c277a21ece
done 2016-09-09 16:17:28 -04:00
interfect@b151490178830f44348aa57b77ad58c7d18e8fe7
9947c8384f 2016-09-09 18:00:41 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
96ef6001ff Added a comment 2016-09-09 12:47:31 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
981987bebc Added a comment 2016-09-08 18:08:49 +00:00
Joey Hess
8e9267a1ed
Merge branch 'master' of ssh://git-annex.branchable.com 2016-09-08 13:20:22 -04:00
Joey Hess
2cb94bf026
comment 2016-09-08 12:32:10 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
b9d8c97942 Added a comment: also CPU (on git and git-annex processes) doesn't go to 100% 2016-09-08 16:32:08 +00:00
Joey Hess
079c5a03c6
comment 2016-09-08 12:24:20 -04:00
Joey Hess
442558aecf
Merge branch 'master' of ssh://git-annex.branchable.com 2016-09-08 12:19:33 -04:00
Joey Hess
dff511a2fe
update 2016-09-08 12:18:58 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
fc795e84a4 Added a comment 2016-09-08 16:12:08 +00:00
Joey Hess
673065ea05
Merge branch 'master' of ssh://git-annex.branchable.com 2016-09-08 12:06:11 -04:00
Joey Hess
41191ce9ad
designs 2016-09-08 12:04:09 -04:00
pigmonkey
8f0ba291e7 Added a comment 2016-09-07 20:38:36 +00:00
Joey Hess
e33f9f22a6
followup 2016-09-07 11:11:54 -04:00
pigmonkey
ed0a7b0ad9 Added a comment 2016-09-06 23:10:47 +00:00
Joey Hess
31289da691
get -J: Download different files from different remotes when the remotes have the same costs.
Only done in -J mode because only if there's concurrency can downloading
from two remotes be faster. Without concurrency, it's likely the case that
sequential downloads from the same remote are faster than switching back
and forth between two remotes.

There is some hairy MVar code here, but basically it just keeps
the activeremotes MVar full except when deciding which remote to assign
to a thread.

Also affects gets by sync --content -J

This commit was sponsored by Jochen Bartl.
2016-09-06 12:45:21 -04:00
anarcat
afe24c6618 copy --from --to 2016-09-05 22:05:02 +00:00
Joey Hess
73bf74ce98
devblog 2016-09-05 16:39:30 -04:00
Joey Hess
2574bb0b32
todo 2016-09-05 16:28:00 -04:00
Joey Hess
12db586469
comment 2016-09-05 14:27:15 -04:00
Joey Hess
0d04062446
comment 2016-09-05 12:49:13 -04:00
Joey Hess
b58e6b3f56
response 2016-09-05 12:27:27 -04:00
Joey Hess
f1a9c5f248
Fix formatting of git-annex-smudge man page, and improve mdwn2man. Thanks, Jim Paris. 2016-09-05 12:16:03 -04:00
Joey Hess
f292f78366
Windows: Handle shebang in external special remote program. 2016-09-05 12:09:23 -04:00
pigmonkey
f8b5fbfbda 2016-09-02 02:20:00 +00:00
branchable@7a47cbdffd210eeaf3a6de0272b9d0f9acea2c4b
3739690f42 shebang more widely 2016-09-01 22:06:04 +00:00
interfect@b151490178830f44348aa57b77ad58c7d18e8fe7
da8b06b60d Added a comment: Windows support? 2016-09-01 03:31:30 +00:00
CandyAngel
cebdbc7a9f 2016-08-17 11:17:23 +00:00
jimparis
e3c382297a 2016-08-16 16:39:02 +00:00
Joey Hess
c3dd8c8cc2
comment 2016-08-08 11:41:53 -04:00
Joey Hess
925e38f66d
comment 2016-08-08 11:40:03 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
2fa4e8460f initial desire 2016-08-05 21:35:35 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
5accb13752 2016-08-05 13:18:23 +00:00
eslgastal
e97117ece8 Added a comment 2016-08-04 00:56:30 +00:00
Joey Hess
f461bcae4b
Re-enable accumulating transfer failure log files for command-line actions
This was disabled in commit 61ccf95004,
because only the assistant used them, and they were clutter. But, now
--failed also uses them.

Remove the failure log files after successful transfers. Should avoid
most of the clutter problems.

Commit 61ccf95004 mentions a subtle behavior
change, which has now been reverted:

    There is one behavior change from this. If glacier is being used, and a
    manual git annex get --from glacier fails because the file isn't available
    yet, the assistant will no longer later see that failed transfer file and
    retry the get.
2016-08-03 13:41:07 -04:00
Joey Hess
1a0e2c9901
get, move, copy, mirror: Added --failed switch which retries failed copies/moves
Note that get --from foo --failed will get things that a previous get --from bar
tried and failed to get, etc. I considered making --failed only retry
transfers from the same remote, but it was easier, and seems more useful,
to not have the same remote requirement.

Noisy due to some refactoring into Types/
2016-08-03 12:37:12 -04:00
eslgastal
0fc85c45b5 2016-08-03 15:02:37 +00:00
Joey Hess
f0886a1bdd
info: When run on a file now includes an indication of whether the content is present locally. 2016-07-30 12:29:59 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
9a2fe62cbb added meta field for myself 2016-07-28 20:11:43 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
01898863df 2016-07-28 19:10:04 +00:00
Joey Hess
bf3327ff25
Added metadata --batch option, which allows getting, setting, deleting, and modifying metadata for multiple files/keys. 2016-07-27 10:46:25 -04:00
Joey Hess
fdd87d8e55
design 2016-07-25 13:51:03 -04:00
Joey Hess
d13194b230
--branch, stage 2
Show branch:file that is being operated on.

I had to make ActionItem a type and not a type class because
withKeyOptions' passed two different types of values when using the type
class, and I could not get the type checker to accept that.
2016-07-20 15:23:43 -04:00
Joey Hess
bf8bf14e8e
--branch, stage 1
Added --branch option to copy, drop, fsck, get, metadata, mirror, move, and
whereis commands. This option makes git-annex operate on files that are
included in a specified branch (or other treeish).

The names of the files from the branch that are being operated on are not
displayed yet; only the keys. Displaying the filenames will need changes
to every affected command.

Also, note that --branch can be specified repeatedly. This is not really
documented, but seemed worth supporting, especially since we may later want
the ability to operate on all branches matching a refspec. However, when
operating on two branches that contain the same key, that key will be
operated on twice.
2016-07-20 12:05:26 -04:00
Joey Hess
3110185092
further thoughts 2016-07-19 14:07:31 -04:00
Joey Hess
b0c805b3c2
todo 2016-07-19 13:04:56 -04:00
Joey Hess
242868eadb
comment 2016-07-19 11:06:49 -04:00
jscinoz@dc383eb6c5526eeb832a38ef5e5e626cf282ee6c
ba68310fe6 Added a comment 2016-07-18 06:32:54 +00:00
jscinoz@dc383eb6c5526eeb832a38ef5e5e626cf282ee6c
b909eba399 Added a comment 2016-07-18 06:17:57 +00:00
jscinoz@dc383eb6c5526eeb832a38ef5e5e626cf282ee6c
2332b6df9b 2016-07-18 04:20:02 +00:00
Joey Hess
c4d011bf3e
log: Added --all option. 2016-07-17 15:15:08 -04:00
Joey Hess
01f5698060
close as merged 2016-07-12 12:21:14 -04:00
Joey Hess
be2832655b
update 2016-07-12 11:52:12 -04:00
magibney@908c3d4677b9e87e203538d4d5e8c296255749a0
d0859ff1ef Added a comment 2016-07-11 18:45:11 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
622f823be0 Added a comment 2016-07-11 17:25:28 +00:00
Joey Hess
3d0399dc47
comment 2016-07-11 12:53:57 -04:00
Joey Hess
57703655b9
comment 2016-07-11 12:39:05 -04:00
magibney@908c3d4677b9e87e203538d4d5e8c296255749a0
1133564ce1 2016-07-07 13:31:44 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
d78b7d0bc6 Added a comment 2016-07-06 19:27:26 +00:00
Joey Hess
c4229be9a7
Remove unnecessary rpaths in the git-annex binary, but only when it's built using make, not cabal. This speeds up git-annex statup time by around 50%. 2016-07-06 14:40:18 -04:00
Joey Hess
f541e60f13
comment 2016-07-06 13:13:10 -04:00
Joey Hess
5171e98988
drop: Add --batch and --json options. 2016-07-06 11:56:11 -04:00
Joey Hess
abe56d4dff
comment 2016-07-05 15:55:58 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
9b125c3ee6 initial whining 2016-07-05 18:33:13 +00:00
Joey Hess
ed8ecbea0c
get: Add --batch and --json options. 2016-07-05 08:57:45 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
e5b9169d98 fixed meta tag 2016-06-28 11:50:27 +00:00
anarcat
b0951744d0 Added a comment: related issues and response to problems raised 2016-06-23 14:44:06 +00:00
anarcat
684fb8ab85 link to the special remote 2016-06-23 13:09:13 +00:00
anarcat
e233b1b58f Added a comment: dumb external remote implemented 2016-06-23 00:34:59 +00:00
baffo32
cf6fe70843 Added a comment: Use-case expansion 2016-06-17 23:55:52 +00:00
baffo32
a14ed4b2f9 2016-06-17 23:46:34 +00:00
Joey Hess
51751f68f7
link to patch 2016-06-16 16:35:58 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
31a0babb55 2016-06-16 13:23:15 +00:00
Farhan
9f1e3eb12f 2016-06-14 06:40:54 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
a34df513fc 2016-06-09 23:28:24 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
cae5542095 2016-06-09 21:10:44 +00:00
Joey Hess
0fa04f4470
followup 2016-06-09 15:49:18 -04:00
Joey Hess
02a20288ef
Pass -S to git commit-tree when commit.gpgsign is set and when making a non-automatic commit, in order to preserve current behavior when used with git 1.9, which has stopped doing this itself. 2016-06-02 15:07:20 -04:00
Joey Hess
b271a417e6
Merge branch 'master' of ssh://git-annex.branchable.com 2016-06-02 14:10:39 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
2019cc5b65 fixed up done tag 2016-06-02 15:37:15 +00:00
Joey Hess
4fd28807c1
todo 2016-06-01 23:35:08 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
e0ef8f2abb 2016-06-02 02:35:19 +00:00
Joey Hess
3426bae807
followup 2016-05-31 12:17:50 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
e92d36ddb2 just added a tag to claim my ownership 2016-05-25 12:59:57 +00:00
xloem
2040cb9a61 2016-05-25 12:25:31 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
e6bffbdf08 Added a comment 2016-05-25 01:09:56 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
8c6067d96f 2016-05-25 00:25:03 +00:00
Joey Hess
5d8cd16b27
comment 2016-05-21 09:53:44 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
58bdc5be88 2016-05-19 19:11:14 +00:00
xloem
57a7981e1b Added a comment: Freenet Special Remote 2016-05-19 03:02:19 +00:00
Joey Hess
36cf163321
found a bad memory use in git 2016-05-12 17:26:33 -04:00
Joey Hess
5cee93c4e5
link to my post "proposal for extending smudge/clean filters with raw file access" 2016-05-12 14:26:58 -04:00
Joey Hess
4c5cb82789
close; done in v6 mode 2016-05-10 17:15:27 -04:00
Joey Hess
dd2a5d8295
close 2016-05-10 17:07:59 -04:00
Joey Hess
e8121245b5
close 2016-05-10 17:06:43 -04:00
Joey Hess
e219289c83
Added new encryption=sharedpubkey mode for special remotes.
This is useful for makking a special remote that anyone with a clone of the
repo and your public keys can upload files to, but only you can decrypt the
files stored in it.
2016-05-10 16:50:31 -04:00
Joey Hess
e35ba6c1e6
update 2016-05-10 14:07:13 -04:00
Joey Hess
76522065ae
comment 2016-05-10 13:54:27 -04:00
Joey Hess
e08082ce72
followup, close 2016-05-06 12:34:50 -04:00
xloem
36137c444b Added a comment 2016-05-06 11:19:43 +00:00
jean.jordaan@4bb3bd508a9eb0a4bab5d1b587dadd2b6c4a7edc
764e816156 2016-05-06 06:00:21 +00:00
Joey Hess
1a805c1f7c
comment 2016-05-03 15:12:55 -04:00
Joey Hess
d0036b9100
todo 2016-04-27 17:15:02 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
4cece5a33e Added a comment 2016-04-25 18:28:14 +00:00
Joey Hess
7dc0b77783
Merge branch 'master' of ssh://git-annex.branchable.com 2016-04-25 13:47:46 -04:00
Joey Hess
cbb4433449
comment 2016-04-25 13:47:27 -04:00
Joey Hess
4c573815f9
close todos covered by rclone 2016-04-25 13:43:24 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
4e0316b22c initial whining 2016-04-25 17:27:25 +00:00
branchable@d31204a44f76a567b0ac1ace14680d4f2ec7750d
26d64d7355 made link a link 2016-04-23 19:14:59 +00:00
branchable@d31204a44f76a567b0ac1ace14680d4f2ec7750d
6cdd633936 mentioned git-annex-remote-rclone 2016-04-23 19:13:49 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
07ca2bb416 2016-04-22 19:05:45 +00:00
Joey Hess
7945dd3c3e
refactor 2016-04-22 14:35:48 -04:00
Joey Hess
46e3319995
assistant: Deal with upcoming git's refusal to merge unrelated histories by default
git 2.8.1 (or perhaps 2.9.0) is going to prevent git merge from merging in
unrelated branches. Since the webapp's pairing etc features often combine
together repositories with unrelated histories, work around this behavior
change by setting GIT_MERGE_ALLOW_UNRELATED_HISTORIES when the assistant
merges.

Note though that this is not done for git annex sync's merges, so
it will follow git's default or configured behavior.
2016-04-22 14:26:44 -04:00
Joey Hess
8ab27235ea
reinject: Added new mode which can reinject known files into the annex.
For example: git-annex reinject --known /mnt/backup/*
2016-04-22 13:49:32 -04:00
Joey Hess
b4cb1093bb
todo 2016-04-21 14:24:06 -04:00
CandyAngel
53c7c246a6 Added a comment 2016-04-21 11:41:09 +00:00
grawity@2ea26be48562f66fcb9b66307da72b1e2e37453f
caba449869 Added a comment 2016-04-20 19:21:33 +00:00
Joey Hess
da4ff16805
comment 2016-04-20 14:36:46 -04:00
Joey Hess
1bfea9b3e5
calckey: New plumbing command, calculates the key that would be used to refer to a file 2016-04-20 13:50:26 -04:00
Joey Hess
9d952fe9d1
reinject: When src file's content cannot be verified, leave it alone, instead of deleting it. 2016-04-20 13:21:56 -04:00
Joey Hess
b949e85045
remove old closed bugs and todo items to speed up wiki updates and reduce size
Remove closed bugs and todos that were last edited or commented before Q3 2015.

Command line used:

for f in $(grep -l '\[\[done\]\]' -- *.mdwn); do d="$(echo "$f" | sed 's/.mdwn$//')"; if [ -z "$(git log --since=09-09-2015 --pretty=oneline -- "$f")" -a -z "$(git log --since=09-09-2015 --pretty=oneline -- "$d")" ]; then git rm -- "$f"; git rm -rf "$d"; fi; done
for f in $(grep -l '|done\]\]' -- *.mdwn); do d="$(echo "$f" | sed 's/.mdwn$//')"; if [ -z "$(git log --since=09-09-2015 --pretty=oneline -- "$f")" -a -z "$(git log --since=09-09-2015 --pretty=oneline -- "$d")" ]; then git rm -- "$f"; git rm -rf "$d"; fi; done
2016-04-19 13:55:29 -04:00
0xloem@0bd8a79a57e4f0dcade8fc81d162c37eae4d6730
8140aa58ea removed 2016-04-16 11:53:24 +00:00
0xloem@0bd8a79a57e4f0dcade8fc81d162c37eae4d6730
6403964cb6 Added a comment: Assistant support 2016-04-16 11:52:34 +00:00
0xloem@0bd8a79a57e4f0dcade8fc81d162c37eae4d6730
ab2ba2f37f Added a comment: Assistant support 2016-04-16 11:52:14 +00:00
Joey Hess
b19511822a
update 2016-04-13 13:39:16 -04:00
Joey Hess
bbe994295f
Fix build with ghc v7.11. Thanks, Gabor Greif. 2016-04-12 15:27:51 -04:00
Joey Hess
7815f227d2
update 2016-04-12 14:31:37 -04:00
Joey Hess
630fe90bf3
update 2016-04-12 14:24:48 -04:00
Joey Hess
7d0a078e5c
todo 2016-04-11 11:40:19 -04:00
Antoine Beaupré
c043bd9faf another thing i forgot 2016-04-10 19:20:37 -04:00
Antoine Beaupré
751abdd51f fix for manpage generation without hacks 2016-04-10 19:13:01 -04:00
Joey Hess
f0ddc0a75c
comment 2016-04-09 13:22:27 -04:00
Joey Hess
b3b1d72d57
Merge branch 'master' of ssh://git-annex.branchable.com 2016-04-09 12:31:27 -04:00
Antoine Beaupré
a5158baa89 possible fix for markdown generation with pandoc 2016-04-09 11:04:42 -04:00
Antoine Beaupré
c363bea652 attack the manpage problem 2016-04-09 10:40:53 -04:00
0xloem@0bd8a79a57e4f0dcade8fc81d162c37eae4d6730
d89161e13f Added a comment: freenet special remote 2016-04-09 10:37:23 +00:00
Antoine Beaupré
d1dd9b5a4b respond 2016-04-09 00:41:41 -04:00
Joey Hess
c2ce3dfed3
windows does not like filenames starting with a dot, rename 2016-04-08 17:08:07 -04:00
Joey Hess
c4be17d159
Merge branch 'master' of ssh://git-annex.branchable.com 2016-04-08 15:35:55 -04:00
Joey Hess
973d66bb67
update 2016-04-08 15:31:53 -04:00
ggreif@8132a868199b4ffec14150c87f538dc06a538220
441dfba4c3 pull request for Bup.hs 2016-04-08 16:17:53 +00:00
Joey Hess
68ef108cb7
another reason 2016-04-05 14:29:33 -04:00
ExGen
6b2425d7bf Added a comment: Harlinks 2016-04-03 11:21:02 +00:00
ExGen
730e1aee68 Added a comment: Harlinks 2016-04-02 23:32:24 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
6509834f3d Added a comment: cache? 2016-04-01 19:56:44 +00:00
Joey Hess
11d76f0c8e
Merge branch 'master' of ssh://git-annex.branchable.com 2016-03-31 19:07:03 -04:00
Joey Hess
ed3e8e1886
Merge branch 'adjustedbranch' 2016-03-31 19:05:47 -04:00
anarcat
02cdd59bb6 another batch? 2016-03-31 14:08:03 +00:00
Joey Hess
93f5ccc808
update 2016-03-30 16:01:59 -04:00
Joey Hess
d72b85d437
update 2016-03-30 15:55:18 -04:00
Joey Hess
fb656b9048
log --raw-date: Use to display seconds from unix epoch. 2016-03-29 14:39:16 -04:00
Joey Hess
8a69298bf2
init: Automatically enter the adjusted unlocked branch when in a v6 repo on a filesystem not supporting symlinks. 2016-03-29 13:54:42 -04:00
http://svario.it/gioele
891fdf7eaa 2016-03-28 09:58:25 +00:00
Joey Hess
31480a54e2
close 2016-03-14 16:47:32 -04:00
karl
48b2357963 2016-03-13 16:01:03 +00:00
Joey Hess
7125a1fb27
rename files containing :
This is mostly to let the repo check out on windows w/o using cygwin's git.

But, bash completion is also crap with : , so ..
2016-03-12 12:57:18 -04:00
Joey Hess
d201e6c359
add todo from comment 2016-03-09 13:21:55 -04:00
Joey Hess
0cdd4f9f58
Merge branch 'master' of ssh://git-annex.branchable.com 2016-03-09 13:13:28 -04:00
Joey Hess
c6f81e8ef5
done 2016-03-09 12:54:22 -04:00
grawity@2ea26be48562f66fcb9b66307da72b1e2e37453f
1f2e7fea6a Added a comment 2016-03-01 07:10:56 +00:00
divergentdave@5c17d06f6d67c6f157b76a4cc95ca764b7d2f899
e815b5c23c Added a comment 2016-02-26 03:56:42 +00:00
Joey Hess
53ad65612e
todo 2016-02-23 16:54:31 -04:00
Joey Hess
67dc0d238f
disable new build flags for android build 2016-02-23 10:59:59 -04:00
CandyAngel
749ec95061 Added a comment 2016-02-23 12:24:48 +00:00
grawity@2ea26be48562f66fcb9b66307da72b1e2e37453f
3d1895ef95 2016-02-21 16:55:40 +00:00
divergentdave@5c17d06f6d67c6f157b76a4cc95ca764b7d2f899
1c3d93eec4 Added a comment 2016-02-21 05:15:57 +00:00
divergentdave@5c17d06f6d67c6f157b76a4cc95ca764b7d2f899
c65502e7cc 2016-02-21 03:49:40 +00:00
Joey Hess
3f47b8ae36
close 2016-02-19 16:59:57 -04:00
Joey Hess
7752f1bd24
comment 2016-02-19 16:50:33 -04:00
Joey Hess
e038c36e3e
tag bugs that will be fixed when direct mode is removed 2016-02-19 16:46:03 -04:00
Joey Hess
a56b17daaa
Merge branch 'master' of ssh://git-annex.branchable.com 2016-02-19 16:19:36 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
e0314a9dcb Added a comment 2016-02-19 20:06:20 +00:00
Joey Hess
f1cebd1bf9
comment 2016-02-19 15:56:48 -04:00
Joey Hess
ed01410354
close 2016-02-19 15:54:55 -04:00
Joey Hess
9b021c1e90
comment 2016-02-19 15:28:55 -04:00
Joey Hess
c7fd2ac32c
comment 2016-02-19 14:50:54 -04:00
Joey Hess
09234eb42d
comment 2016-02-19 14:47:08 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
ef557d7cac Added a comment 2016-02-15 17:05:08 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
2301c7c134 Added a comment 2016-02-15 17:02:59 +00:00
Joey Hess
dfbb5db3a8
add spacer to menu 2016-02-15 13:02:14 -04:00
Joey Hess
4eeb25d9c9
comment 2016-02-15 12:52:56 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
ad15d778e3 added [[!meta author=yoh]] 2016-02-15 15:29:22 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
eb879367a7 Added a comment 2016-02-15 15:28:41 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
8ed1e1bc66 2016-02-15 15:26:36 +00:00
jonan
60d9cb69ea 2016-02-15 09:37:52 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
1e772a62b4 2016-02-12 22:39:04 +00:00
Joey Hess
cc4d3e3d45
checkpresentkey: Allow to be run without an explicit remote and add --batch
* checkpresentkey: Allow to be run without an explicit remote.
* checkpresentkey: Added --batch.
2016-02-12 16:43:51 -04:00
Joey Hess
84d657312e
comment 2016-02-12 14:36:00 -04:00
Joey Hess
9df13e73ae
if keys database cannot be opened due to permissions, ignore
This lets readonly repos be used. If a repo is readonly, we can ignore the
keys database, because nothing that we can do will change the state of the
repo anyway.
2016-02-12 14:16:35 -04:00
Joey Hess
1ec91f0c44
close 2016-02-12 13:41:50 -04:00
Joey Hess
4c2fb5569b
close 2016-02-10 12:42:48 -04:00
konubinix
2790840848 Added a comment: fuser and unison? 2016-02-10 09:12:52 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
e46843054b 2016-02-10 00:01:10 +00:00
magibney@908c3d4677b9e87e203538d4d5e8c296255749a0
56889d07cd Added a comment 2016-02-09 21:51:17 +00:00
Joey Hess
73cca6e8c1
update 2016-02-09 16:26:55 -04:00
Joey Hess
5d05aad74c
S3: Allow configuring with requeststyle=path to use path-style bucket access instead of the default DNS-style access.
untested
2016-02-09 15:36:36 -04:00
magibney@908c3d4677b9e87e203538d4d5e8c296255749a0
dcea2f8d9f rename todo/allow_path-style_syntax_for_S3_bucket_specification.mdwn to todo/support_path-style_syntax_for_S3_bucket_specification.mdwn 2016-02-09 19:21:15 +00:00
magibney@908c3d4677b9e87e203538d4d5e8c296255749a0
1d432c677e rename todo/allow_path-style_semantics_for_S3_bucket_specification.mdwn to todo/allow_path-style_syntax_for_S3_bucket_specification.mdwn 2016-02-09 19:19:58 +00:00
magibney@908c3d4677b9e87e203538d4d5e8c296255749a0
a246ea41fe 2016-02-09 18:58:38 +00:00
Joey Hess
aeb6b4d2c0
comment 2016-02-09 12:39:57 -04:00
Joey Hess
4b1afda6c5
pointer 2016-02-09 12:36:22 -04:00
Joey Hess
edc5829785
added adjusted_branches design doc, meets at least 2 different needs 2016-02-09 12:30:29 -04:00
Joey Hess
09b369ba7e
Merge branch 'master' of ssh://git-annex.branchable.com 2016-02-03 16:59:04 -04:00
Joey Hess
5127cb59cc
annex.largefiles: Add support for mimetype=text/* etc, when git-annex is linked with libmagic. 2016-02-03 16:29:34 -04:00
Joey Hess
86444fe507
comment 2016-02-03 15:45:54 -04:00
atrent
a5d89a8b4d Added a comment: adding a simple counter? 2016-02-03 07:48:10 +00:00
anarcat
4135c6d5d9 2016-02-01 19:54:39 +00:00
anarcat
8b2ada9f1a another idea 2016-02-01 19:53:04 +00:00
anarcat
81b9d7564c 2016-02-01 19:51:44 +00:00
Joey Hess
8db477b2ac
done 2016-01-29 13:27:06 -04:00
ggreif@8132a868199b4ffec14150c87f538dc06a538220
b1d3137ac2 pull request 2016-01-28 08:51:38 +00:00
tomekwi
23361077a1 Added a comment: Linux-Windows repo 2016-01-26 20:46:59 +00:00
Joey Hess
d1879df0ba
response 2016-01-22 15:39:27 -04:00
db
26b76a6b06 Added a comment 2016-01-22 19:00:58 +00:00
Joey Hess
fc9a02d600
comment 2016-01-20 15:00:13 -04:00
Joey Hess
6d79f9e755
find --batch 2016-01-20 13:04:07 -04:00
Joey Hess
9b9b5a30e1
whereis --batch 2016-01-20 12:46:00 -04:00
Joey Hess
7d0ece86f6
add --batch 2016-01-19 17:48:42 -04:00
Joey Hess
c06999df42
already done this earlier 2016-01-19 15:57:37 -04:00
fiatjaf
4dffddb343 small formatting fix. 2016-01-19 19:40:39 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
6a2a4aaba1 2016-01-19 19:26:32 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
77fc00a68f Added a comment 2016-01-19 19:24:11 +00:00
Joey Hess
432151f966
comment 2016-01-19 13:15:35 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
e35fa26c55 Added a comment 2016-01-19 16:39:49 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
9054f58e17 initial request 2016-01-19 16:31:03 +00:00
Joey Hess
aae77b1856
comment 2016-01-19 11:35:14 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
aa2e815954 marked as mine 2016-01-18 22:08:35 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
ee94708bd7 2016-01-18 22:01:41 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
ee58e4601e 2016-01-18 21:59:04 +00:00
tribut
37ef508def Added a comment 2016-01-18 16:22:54 +00:00
CandyAngel
165e5da2df Added a comment 2016-01-18 13:17:00 +00:00
tribut
ca19a2dbb6 Reformat irc log to add linebreaks (is there a better way to do this in markdown?) 2016-01-18 13:11:08 +00:00
tribut
d677bfea98 2016-01-18 13:07:23 +00:00
db
94af2cd44d 2016-01-17 17:14:30 +00:00
Joey Hess
aa35f5cdf7
info: Support --batch mode. 2016-01-15 15:56:47 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
78721c9afd Added a comment: "done" but only for non --fast/--relaxed 2016-01-13 23:49:30 +00:00
Joey Hess
af457d73a4
followup 2016-01-13 15:12:48 -04:00
Joey Hess
ecd0684bfc
avoid hard linking object from other repository when annex.thin is set
This is simpler and less expensive than checking if the src file has a
link count >= 2, and also is unlocked.
2016-01-13 14:19:31 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
50fad302a1 Added a comment: another side-effect of largefiles not being supported for my usecase 2016-01-12 17:20:08 +00:00
Joey Hess
f9c5aa84e0
add database benchmark
The benchmark shows that the database access is quite fast indeed!
And, it scales linearly to the number of keys, with one exception,
getAssociatedKey.

Based on this benchmark, I don't think I need worry about optimising
for cases where all files are locked and the database is mostly empty.
In those cases, database access will be misses, and according to this
benchmark, should add only 50 milliseconds to runtime.

(NB: There may be some overhead to getting the database opened and locking
the handle that this benchmark doesn't see.)

joey@darkstar:~/src/git-annex>./git-annex benchmark
setting up database with 1000
setting up database with 10000
benchmarking keys database/getAssociatedFiles from 1000 (hit)
time                 62.77 μs   (62.70 μs .. 62.85 μs)
                     1.000 R²   (1.000 R² .. 1.000 R²)
mean                 62.81 μs   (62.76 μs .. 62.88 μs)
std dev              201.6 ns   (157.5 ns .. 259.5 ns)

benchmarking keys database/getAssociatedFiles from 1000 (miss)
time                 50.02 μs   (49.97 μs .. 50.07 μs)
                     1.000 R²   (1.000 R² .. 1.000 R²)
mean                 50.09 μs   (50.04 μs .. 50.17 μs)
std dev              206.7 ns   (133.8 ns .. 295.3 ns)

benchmarking keys database/getAssociatedKey from 1000 (hit)
time                 211.2 μs   (210.5 μs .. 212.3 μs)
                     1.000 R²   (0.999 R² .. 1.000 R²)
mean                 211.0 μs   (210.7 μs .. 212.0 μs)
std dev              1.685 μs   (334.4 ns .. 3.517 μs)

benchmarking keys database/getAssociatedKey from 1000 (miss)
time                 173.5 μs   (172.7 μs .. 174.2 μs)
                     1.000 R²   (0.999 R² .. 1.000 R²)
mean                 173.7 μs   (173.0 μs .. 175.5 μs)
std dev              3.833 μs   (1.858 μs .. 6.617 μs)
variance introduced by outliers: 16% (moderately inflated)

benchmarking keys database/getAssociatedFiles from 10000 (hit)
time                 64.01 μs   (63.84 μs .. 64.18 μs)
                     1.000 R²   (1.000 R² .. 1.000 R²)
mean                 64.85 μs   (64.34 μs .. 66.02 μs)
std dev              2.433 μs   (547.6 ns .. 4.652 μs)
variance introduced by outliers: 40% (moderately inflated)

benchmarking keys database/getAssociatedFiles from 10000 (miss)
time                 50.33 μs   (50.28 μs .. 50.39 μs)
                     1.000 R²   (1.000 R² .. 1.000 R²)
mean                 50.32 μs   (50.26 μs .. 50.38 μs)
std dev              202.7 ns   (167.6 ns .. 252.0 ns)

benchmarking keys database/getAssociatedKey from 10000 (hit)
time                 1.142 ms   (1.139 ms .. 1.146 ms)
                     1.000 R²   (1.000 R² .. 1.000 R²)
mean                 1.142 ms   (1.140 ms .. 1.144 ms)
std dev              7.142 μs   (4.994 μs .. 10.98 μs)

benchmarking keys database/getAssociatedKey from 10000 (miss)
time                 1.094 ms   (1.092 ms .. 1.096 ms)
                     1.000 R²   (1.000 R² .. 1.000 R²)
mean                 1.095 ms   (1.095 ms .. 1.097 ms)
std dev              4.277 μs   (2.591 μs .. 7.228 μs)
2016-01-12 13:07:03 -04:00
Joey Hess
55ad30d1d9
update 2016-01-08 16:30:31 -04:00
Joey Hess
c96fb11a96
devblog 2016-01-07 18:03:06 -04:00
Joey Hess
722f56a99d
update 2016-01-07 15:47:19 -04:00
Joey Hess
d667a68b7e
test: Added --keep-failures option. 2016-01-06 13:44:12 -04:00
Joey Hess
50d25c186d
update 2016-01-05 17:41:46 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
1d6d7a6e16 2016-01-05 02:20:14 +00:00
Joey Hess
b1373f0d15
update 2016-01-01 16:02:11 -04:00
Joey Hess
f36f24197a
scan for unlocked files on init/upgrade of v6 repo 2016-01-01 15:09:42 -04:00
Joey Hess
b03a24dc10
update 2016-01-01 14:26:09 -04:00
Joey Hess
4be2b57606
add test: conflict resolution (mixed locked and unlocked file) 2015-12-30 16:36:39 -04:00
Joey Hess
0b8bba8031
test suite 100% pass in v6, finally!
Set annex.largefiles when adding the conflicting non-annexed file,
otherwise it would be added as an annexed file.
2015-12-30 15:12:45 -04:00
Joey Hess
7fd9fa3d72
update 2015-12-29 17:47:49 -04:00
Joey Hess
6aa19b7184
Merge branch 'master' of ssh://git-annex.branchable.com 2015-12-29 17:40:49 -04:00
umeboshi
813262448c Added a comment: Link to TH 2015-12-29 20:36:42 +00:00
Joey Hess
b6b34f4916
automatic conflict resolution for v6 unlocked files
Several tricky parts:

* When the conflict is just between the same key being locked and unlocked,
  the unlocked version wins, and the file is not renamed in this case.

* Need to update associated file map when conflict resolution renames
  an unlocked file.

* git merge runs the smudge filter on the conflicting file, and actually
  overwrites the file with the same content it had before, and so
  invalidates its inode cache. This makes it difficult to know when it's
  safe to remove such files as conflict cruft, without going so far as to
  compare their entire contents.

  Dealt with this by preventing the smudge filter from populating the file
  when a merge is run. However, that also prevents the smudge filter being
  run for non-conflicting files, so eg moving a file won't put its new
  content into place.

* Ideally, if a merge or a merge conflict resolution renames an unlocked
  file, the file in the work tree can just be moved, rather than copying
  the content to a new worktree file.

  This is attempted to be done in merge conflict resolution, but
  due to git merge's behavior of running smudge filters, what actually
  seems to happen is the old worktree file with the content is deleted and
  rewritten as a pointer file, so doesn't get reused.

So, this is probably not as efficient as it optimally could be.
If that becomes a problem, could look into running the merge in a separate
worktree and updating the real worktree more efficiently, similarly to the
direct mode merge. However, the direct mode merge had a lot of bugs, and
I'd rather not use that more error-prone method unless really needed.
2015-12-29 15:41:09 -04:00
Joey Hess
121f5d5b0c
annex.thin
Decided it's too scary to make v6 unlocked files have 1 copy by default,
but that should be available to those who need it. This is consistent with
git-annex not dropping unused content without --force, etc.

* Added annex.thin setting, which makes unlocked files in v6 repositories
  be hard linked to their content, instead of a copy. This saves disk
  space but means any modification of an unlocked file will lose the local
  (and possibly only) copy of the old version.
* Enable annex.thin by default on upgrade from direct mode to v6, since
  direct mode made the same tradeoff.
* fix: Adjusts unlocked files as configured by annex.thin.
2015-12-27 15:59:59 -04:00
Joey Hess
025f284ac1
reorg 2015-12-26 15:15:02 -04:00
Joey Hess
fcb013044b
update 2015-12-26 15:13:05 -04:00
Joey Hess
4224fae71f
optimise read and write for Keys database (untested)
Writes are optimised by queueing up multiple writes when possible.
The queue is flushed after the Annex monad action finishes. That makes it
happen on program termination, and also whenever a nested Annex monad action
finishes.

Reads are optimised by checking once (per AnnexState) if the database
exists. If the database doesn't exist yet, all reads return mempty.

Reads also cause queued writes to be flushed, so reads will always be
consistent with writes (as long as they're made inside the same Annex monad).
A future optimisation path would be to determine when that's not necessary,
which is probably most of the time, and avoid flushing unncessarily.

Design notes for this commit:

- separate reads from writes
- reuse a handle which is left open until program
  exit or until the MVar goes out of scope (and autoclosed then)
- writes are queued
  - queue is flushed periodically
  - immediate queue flush before any read
  - auto-flush queue when database handle is garbage collected
  - flush queue on exit from Annex monad
    (Note that this may happen repeatedly for a single database connection;
    or a connection may be reused for multiple Annex monad actions,
    possibly even concurrent ones.)
- if database does not exist (or is empty) the handle
  is not opened by reads; reads instead return empty results
- writes open the handle if it was not open previously
2015-12-23 19:18:52 -04:00
Joey Hess
b3690c4499
update 2015-12-22 18:19:32 -04:00
Joey Hess
ca2c977704
wip v6 support for assistant
Files are not yet added to v6 repos in unlocked mode.
2015-12-21 18:41:15 -04:00
Joey Hess
fbf6c25de5
interaction with shared clones 2015-12-17 18:46:52 -04:00
Joey Hess
e55ac3d383
update 2015-12-16 17:04:31 -04:00
Joey Hess
e61f3d1752
update todo list 2015-12-16 16:02:21 -04:00
Joey Hess
7800125783
starting to work on test suite for v6 2015-12-15 17:19:26 -04:00
Joey Hess
db8b32254c
update todo list 2015-12-15 16:07:02 -04:00
Joey Hess
f9d077186a
implemented upgrade of direct mode repo to v6 2015-12-15 16:00:26 -04:00
Joey Hess
71e2050f8f
have clean filter check if the filename was already in use by an old key
The annex object for it may have been modified due to hard link, and
that should be cleaned up when the new version is added. If another
associated file has the old key's content, that's linked into the annex
object. Otherwise, update location log to reflect that content has been
lost.
2015-12-15 13:06:52 -04:00
Joey Hess
9fcc5046b3
todo 2015-12-15 12:38:32 -04:00
Joey Hess
cc2d78870c
update 2015-12-11 16:22:40 -04:00
Joey Hess
1dad3af3fc
checked getKeysPresent; it's ok for v6 unlocked files
When a v6 unlocked files is removed from the work tree,
unused doesn't show it. When it gets removed from the index,
unused does show it. This is the same as a locked file.
2015-12-11 16:12:42 -04:00
Joey Hess
e7183d83d3
fsck for v6 unlocked files
This only adds 1 stat to each file fscked for locked files, so
added overhead is minimal.

For unlocked files it has to access the database to see if a file
is modified.
2015-12-11 16:07:54 -04:00
Joey Hess
7790e059b2
finish v6 git-annex lock
This was a doozy!
2015-12-11 15:28:34 -04:00
Joey Hess
50e83b606c
only make 1 hardlink max between pointer file and annex object
If multiple files point to the same annex object, the user may want to
modify them independently, so don't use a hard link.

Also, check diskreserve when copying.
2015-12-11 14:00:21 -04:00
Joey Hess
c910b4e255
wip 2015-12-11 10:42:18 -04:00
Joey Hess
e2c8dc6778
v6 git-annex unlock
Note that the implementation uses replaceFile, so that the actual
replacement of the work tree file is atomic. This seems a good property to
have!

It would be possible for unlock in v6 mode to be run on files that do not
have their content present. However, that would be a behavior change from
before, and I don't see any immediate need to support it, so I didn't
implement it.
2015-12-10 16:12:48 -04:00
Joey Hess
9dffd3d255
add generalized linkAnnex' 2015-12-10 16:08:19 -04:00
Joey Hess
108f711d37
todo 2015-12-10 14:54:03 -04:00
Joey Hess
f80a3d8cd0
check InodeCache in inAnnex et al
This avoids querying the database when the content file doen't exist
(or otherwise fails the provided check). However, it does add overhead of
querying the database, and will certianly impact performance.
2015-12-10 14:51:04 -04:00
Joey Hess
2b8f6b8b2f
check inode cache in prepSendAnnex
This does mean one query of the database every time an object is sent.
May impact performance.
2015-12-10 14:50:52 -04:00
Joey Hess
ce73a96e4e
use InodeCache when dropping a key to see if a pointer file can be safely reset
The Keys database can hold multiple inode caches for a given key. One for
the annex object, and one for each pointer file, which may not be hard
linked to it.

Inode caches for a key are recorded when its content is added to the annex,
but only if it has known pointer files. This is to avoid the overhead of
maintaining the database when not needed.

When the smudge filter outputs a file's content, the inode cache is not
updated, because git's smudge interface doesn't let us write the file. So,
dropping will fall back to doing an expensive verification then. Ideally,
git's interface would be improved, and then the inode cache could be
updated then too.
2015-12-09 17:54:54 -04:00
Joey Hess
3311c48631
move InodeSentinal from direct mode code to its own module
Will be used outside of direct mode for v6 unlocked files, and is already
used outside of direct mode when adding files to annex.
2015-12-09 15:52:11 -04:00
Joey Hess
8a818088a3
link/copy pointer files to object content when it's added 2015-12-09 15:27:29 -04:00
Joey Hess
37c9026c6e
todo 2015-12-08 13:07:45 -04:00
Joey Hess
9923b8dc77
long walk led to long list of things to do 2015-12-07 17:24:16 -04:00
Joey Hess
712c9fc590
require "annex/objects/" before key in pointer files
This removes ambiguity, because while someone might have "WORM--foo" in a
file that's not intended to be a git-annex pointer file,
"annex/objects/WORM--foo" is less likely.

Also, 664cc987e8 had a caveat about symlink
targets being parsed as pointer files, and now the same parser is used for
both.

I did not include any hash directories before the key in the pointer file,
as they're not needed. However, if they were included, the parser would
still work ok.
2015-12-07 15:45:08 -04:00
Joey Hess
2cbcb4f1a8
update associated files database on smudge and clean 2015-12-07 14:41:22 -04:00
Joey Hess
2fe21d47c5
init: Configure .git/info/attributes to use git-annex as a smudge filter.
Note that this changes the default behavior of git add in a newly
initialized repository; it will add files to the annex.

Don't like that this could break workflows, but it's necessary in order for
any pointer files in the repo to be handled by git-annex.
2015-12-04 17:57:15 -04:00
Joey Hess
e7f75b079d
don't let git-annex direct be run in a v6 repo 2015-12-04 16:33:09 -04:00
Joey Hess
ccc49861ca
add v6; keep v5 working for now and manual upgrade
Since all places where a repo is used in direct mode need to have git-annex
upgraded before the repo can safely be converted to v6, the upgrade needs
to be manual for now.

I suppose that at some point I'll want to drop all the direct mode support
code. At that point, will stop supporting v5, and will need to auto-upgrade
any remaining v5 repos. If possible, I'd like to carry the direct mode
support for say, a year or so, to give people plenty of time to upgrade and
avoid disruption.
2015-12-04 16:14:48 -04:00
Joey Hess
20ca89dfa3
skeleton smudge/clean filters 2015-12-04 13:03:39 -04:00
Joey Hess
f16e235983
addurl, importfeed: Changed to honor annex.largefiles settings, when the content of the url is downloaded. (Not when using --fast or --relaxed.)
importfeed just calls addurl functions, so inherits this from it.

Note that addurl still generates a temp file, and uses that key to download
the file. It just adds it to the work tree at the end when the file is small.
2015-12-02 15:12:33 -04:00
Joey Hess
382f8a790a
fix name of comment 2015-12-02 12:06:04 -04:00
Joey Hess
6cd222fbe8
remove redundant and unnecessary todo
Mostly because of the --
2015-12-02 12:00:41 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
7b7a9e2468 2015-11-30 18:49:49 +00:00
Joey Hess
3f63666727
file map analysis 2015-11-24 11:39:47 -04:00
Joey Hess
cf0130894e
notes on merge 2015-11-23 18:10:50 -04:00
Joey Hess
fe55caa2ae
upgrading 2015-11-23 17:57:47 -04:00
Joey Hess
33fb0de1a3
smudge design 2015-11-23 16:53:05 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
472df9c9b5 added [[!meta author=yoh]] 2015-11-10 19:25:28 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
ee69735b7f Added a comment 2015-11-10 19:24:59 +00:00
Joey Hess
952d9e42dc
hmm 2015-11-10 15:12:12 -04:00
Joey Hess
78b63888a6
close 2015-11-06 13:52:47 -04:00
Joey Hess
c6fc0945f3
update 2015-11-04 17:03:32 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
bf0b84a86d 2015-11-02 20:59:38 +00:00
Joey Hess
e806e62fa3
document default --autostart --startdelay=5 and comment 2015-11-02 11:18:44 -04:00
https://id.koumbit.net/anarcat
3d0d832b6c add three more alternatives... 2015-10-30 15:42:35 +00:00
https://id.koumbit.net/anarcat
ad87b9c708 Added a comment: re tox 2015-10-30 15:37:09 +00:00
Gastlag
c07dd514e0 Added a comment: Is xmpp the problem ? 2015-10-30 10:42:06 +00:00
parhuzamos
0ec35e8b45 User "bence" was using Google OpenID which is not supported anymore. Found this moved page, edited it to get notified if anything happens. 2015-10-28 21:01:29 +00:00
Jonan
cf3d3037b6 2015-10-28 11:10:44 +00:00
Jonan
c38b28f874 2015-10-28 11:06:30 +00:00
Joey Hess
6e7eddb5d6
comment 2015-10-26 15:33:32 -04:00
anarcat
48c78c9b2a trick question 2015-10-20 04:44:39 +00:00
Joey Hess
f9adb905fc
Avoid unncessary write to the location log when a file is unlocked and then added back with unchanged content.
Implemented with no additional overhead of compares etc.

This is safe to do for presence logs because of their locality of change;
a given repo's presence logs are only ever changed in that repo, or in a
repo that has just been actively changing the content of that repo.

So, we don't need to worry about a split-brain situation where there'd
be disagreement about the location of a key in a repo. And so, it's ok to
not update the timestamp when that's the only change that would be made
due to logging presence info.
2015-10-12 14:46:47 -04:00
Joey Hess
82ba8c9a6a
comment 2015-10-12 13:29:00 -04:00
tribut
53d3b5a197 2015-10-11 17:33:20 +00:00
Joey Hess
9bcc32de3b Merge branch 'master' of ssh://git-annex.branchable.com 2015-10-01 16:17:52 -04:00
Joey Hess
2fb3722ce9 Do verification of checksums of annex objects downloaded from remotes.
* When annex objects are received into git repositories, their checksums are
  verified then too.
* To get the old, faster, behavior of not verifying checksums, set
  annex.verify=false, or remote.<name>.annex-verify=false.
* setkey, rekey: These commands also now verify that the provided file
  matches the key, unless annex.verify=false.
* reinject: Already verified content; this can now be disabled by
  setting annex.verify=false.

recvkey and reinject already did verification, so removed now duplicate
code from them. fsck still does its own verification, which is ok since it
does not use getViaTmp, so verification doesn't happen twice when using fsck
--from.
2015-10-01 15:56:39 -04:00
dxld@02c834b220f9ffc0410d37263aa29d9373cc455b
9825b4cb15 Added a comment: Fully p2p alternative to XMPP 2015-10-01 17:22:44 +00:00
Joey Hess
0c3a3c5187 comment 2015-10-01 11:57:59 -04:00
Joey Hess
4aa055cb39 Merge branch 'master' of ssh://git-annex.branchable.com 2015-09-29 11:20:00 -04:00
kalle@bdf75651b439b088e51f28f10f5a46ffcd2a704d
2ed24b88ae Added a comment: importfeed template 2015-09-28 19:52:16 +00:00
graboluk@f6de53961ab0f884e203f602f65eb5cdc0fb7513
31597d6676 Added a comment: timestamps are wrong as of 5.20150731 2015-09-26 18:31:46 +00:00
Joey Hess
209b8bbfbb Merge branch 'master' of ssh://git-annex.branchable.com 2015-09-26 08:57:53 -04:00
Joey Hess
7f102cf43d add 2015-09-26 07:23:08 -04:00
fastguy
8156862566 Added a comment: Any updates? 2015-09-25 19:35:18 +00:00
Joey Hess
f2b6ebd502 status: Show added but not yet committed files.
Seems easy, but git ls-files can't list the right subset of files.
So, I wrote a whole new parser for git status output, and converted the
status command to use that.

There are a few other small behavior changes. The order changed. Unlocked
files show as T. In indirect mode, deleted files were not shown before, and
that's fixed. Regular files checked directly into git and modified
were not shown before, and are now.
2015-09-22 17:32:28 -04:00
Joey Hess
6885fe3c38 close, already implemented via a different todo 2015-09-22 15:46:42 -04:00
Joey Hess
c9acb6b89d new todo 2015-09-22 15:31:08 -04:00
Joey Hess
9fa60b676c close 2015-09-22 15:23:23 -04:00
Joey Hess
89238e9595 juggle dup bugs 2015-09-17 17:08:39 -04:00
Joey Hess
9cfb96c53d Special remotes configured with autoenable=true will be automatically enabled when git-annex init is run. 2015-09-14 14:49:48 -04:00
Joey Hess
ffa8221517 annex.hardlink extended to also try to use hard links when copying from the repository to a remote.
Also, it used to only check that one of the repos was not in direct mode;
now when either repo is direct mode, annex.hardlink won't have an effect.
2015-09-14 12:13:38 -04:00
https://id.koumbit.net/anarcat
8e30053d5b toc 2015-09-12 22:18:40 +00:00
Joey Hess
eab8c512d8 cleanup 2015-09-11 13:21:58 -04:00
Joey Hess
29187648e1 comment 2015-09-09 14:45:57 -04:00
Joey Hess
97fb358437 new todo 2015-09-09 14:44:43 -04:00
Joey Hess
c60181bd82 unused: Fix reversion in 5.20150727 that broke parsing of the --unused-refspec option. Thanks, Øyvind A. Holm. 2015-09-09 14:33:35 -04:00
sunny256
762ff6d584 Add patch to change --unused-refspec back to --used-refspec 2015-09-08 12:47:40 +00:00
lealanko
499719d660 2015-09-06 14:00:39 +00:00
lealanko
8733bd603d Added a comment 2015-09-06 13:26:49 +00:00
Joey Hess
b5c0fb1c48 possible optimisation idea 2015-09-03 13:52:43 -07:00
http://joeyh.name/
cb5756bfc5 Added a comment 2015-08-25 18:25:44 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
a768ee7128 2015-08-25 18:08:50 +00:00
vincent.mcintyre@1318ebde5cb96fc17e59dfa86f399f5634b1facc
fc7bfc27e1 2015-08-24 13:11:24 +00:00
anarcat
1f359ab899 Added a comment: great! 2015-08-17 04:07:28 +00:00
Joey Hess
87b4229b23 sync: Support --jobs
* sync: Support --jobs
* sync --content: Avoid unnecessary second pull from remotes when
  no file transfers are made.
2015-08-14 13:49:55 -04:00
jonathan.stott+gitannex@7c5a9cff8c7c8f69680d0723dda182fa3ba78d43
d4bda84386 2015-08-14 13:40:45 +00:00
Joey Hess
4ab4417292 move item to todo list from bugs and followup 2015-08-13 16:43:58 -04:00
Joey Hess
00fd5b67bf more measuring 2015-08-13 16:15:22 -04:00
Joey Hess
983a95f021 Sped up downloads of files from ssh remotes, reducing the non-data-transfer overhead 6x. 2015-08-13 14:20:28 -04:00
Joey Hess
7584e47ba3 --debug log messages are now timestamped with fractional seconds. 2015-08-12 14:42:49 -04:00
Joey Hess
756551cfcc amazonka 2015-08-11 14:14:53 -04:00
Joey Hess
8ee295e446 comment 2015-08-11 13:52:54 -04:00
Joey Hess
21dc3ab49e response 2015-08-11 13:36:22 -04:00
tomekwi
d4ce800219 Added a comment: Linux-Windows repo 2015-08-10 18:22:22 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
7434cc0d72 Added a comment 2015-08-09 03:04:31 +00:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
3cb9c0dd93 2015-08-09 02:51:41 +00:00
https://id.koumbit.net/anarcat
63aec0eba0 no haskell? 2015-08-06 21:14:47 +00:00
Joey Hess
6ded6fd19a promote comment to todo 2015-08-06 13:33:25 -04:00
Joey Hess
49947be595 done 2015-08-05 14:11:55 -04:00
Joey Hess
de9a35f64d Merge branch 'master' of ssh://git-annex.branchable.com 2015-08-05 09:45:26 -04:00
Joey Hess
a6fbf20671 longterm goal 2015-08-04 22:49:39 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
d9647df58d Added a comment: my bad 2015-08-05 02:33:46 +00:00
Joey Hess
1d51542cd4 comment 2015-08-04 16:23:21 -04:00
Joey Hess
89bb7d1244 cmment 2015-08-04 15:33:51 -04:00
Joey Hess
82c0fd7ed8 response 2015-08-04 12:21:22 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
b4182f5a97 Added a comment 2015-08-04 15:28:29 +00:00