Commit graph

2577 commits

Author SHA1 Message Date
andrew
38a658753a Added a comment 2018-12-08 17:09:27 +00:00
andrew
666db40a32 Added a comment 2018-12-08 16:46:35 +00:00
Ilya_Shlyakhter
22b487e738 asked about adding tests under concurrency 2018-12-07 17:16:56 +00:00
Joey Hess
eb0db3d230
comments 2018-12-05 12:44:09 -04:00
michael@ff03af62c7fd492c75066bda2fbf02370f5431f4
d810efe844 Added a comment: Borg vs. restic, some design considerations 2018-12-05 14:36:45 +00:00
anarcat
fbd0c57e8a updated the upgrades page, thanks for the clarification! 2018-12-04 21:07:52 +00:00
Joey Hess
14e6d7cf2d
comment 2018-12-04 16:55:36 -04:00
anarcat
5e3bb14873 another v7 catch? 2018-12-04 20:41:08 +00:00
Ilya_Shlyakhter
8f87be6622 Added a comment 2018-12-04 19:56:36 +00:00
Joey Hess
8d0d00d926
fix typo 2018-12-04 15:23:04 -04:00
Joey Hess
78879b5b36
response 2018-12-04 15:20:40 -04:00
Ilya_Shlyakhter
5c510f6937 fixed markup 2018-12-04 18:58:04 +00:00
Ilya_Shlyakhter
00ccf952e4 added suggestion for encrypting URLs 2018-12-04 18:57:04 +00:00
Ilya_Shlyakhter
ae0196df7e Added a comment 2018-12-04 18:40:02 +00:00
Joey Hess
ab7746a2ae
annex.cachecreds: New config to allow disabling of credentials caching for special remotes.
Note that it does not prevent storing p2p access tokens or multicast
encryption keys, since those are not cached; the previous commit
established the distinction.

How well this works depends on how often getRemoteCredPair is called and
how expensive it is. In some cases setting this will result in an annoying
number of gpg password prompts and/or slowdowns due to reading creds
from the git-annex branch and decrypting, which could be improved by calling
getRemoteCredPair less often.

This commit was sponsored by Ilya Shlyakhter on Patreon.
2018-12-04 14:16:56 -04:00
Joey Hess
ba0bd4f9ea
followup 2018-12-04 13:11:00 -04:00
Joey Hess
b8f9dea27d
add exportedtree to info
info: When used with an exporttree remote, includes an "exportedtree" info,
which is the tree last exported to the remote. During an export conflict,
multiple values will be listed.

This commit was sponsored by John Pellman on Patreon.
2018-12-03 14:36:00 -04:00
Joey Hess
3ad7b7927e
comment 2018-12-03 13:52:10 -04:00
Joey Hess
33085f4bfe
followup 2018-12-03 13:23:46 -04:00
Joey Hess
ae3beccd7c
comment 2018-12-03 13:07:40 -04:00
spwhitton
89abe04eb8 Added a comment 2018-12-03 16:38:12 +00:00
Joey Hess
1948af854e
fixed 2018-12-03 12:33:54 -04:00
spwhitton
62f90eed06 post bug 2018-12-02 16:40:27 +00:00
Joey Hess
4cf9daf8b9
remove obsolete warning 2018-12-01 14:04:38 -04:00
Joey Hess
12bec83f45
response 2018-12-01 12:05:20 -04:00
anarcat
e2fd1a513a feature request: LFS API support! 2018-11-30 21:30:22 +00:00
anarcat
84e0ea5ce3 Added a comment: status? 2018-11-30 19:46:20 +00:00
Ilya_Shlyakhter
0b924bc1ce added suggestion for an option to encrypt just the special remote credentials but not its contents 2018-11-29 03:49:39 +00:00
toh_corpora
d4a94a2330 Added a comment 2018-11-28 15:56:54 +00:00
Joey Hess
185287718d
followup 2018-11-28 11:40:13 -04:00
toh_corpora
9443db1d64 2018-11-27 17:24:19 +00:00
anarcat
c08dfd9a21 Added a comment: restic 2018-11-27 07:13:29 +00:00
anarcat
2c1a0af295 Added a comment: progress? 2018-11-27 06:47:26 +00:00
andrew
bb9580ba66 Added a comment 2018-11-26 15:42:36 +00:00
andrew
c429bbea4b 2018-11-20 22:29:21 +00:00
andrew
119ca99a62 Added a comment 2018-11-20 17:45:34 +00:00
Joey Hess
eb627ab98c
close 2018-11-20 12:09:01 -04:00
Joey Hess
694d0185cd
add todo item 2018-11-20 12:07:21 -04:00
Joey Hess
3c8f0d1e1b
further comment 2018-11-19 15:46:40 -04:00
Joey Hess
953856df5f
comment 2018-11-19 13:28:44 -04:00
andrew
3f0bc854fd 2018-11-18 16:16:55 +00:00
Joey Hess
f991a08d4e
comment 2018-11-15 12:29:20 -04:00
Ilya_Shlyakhter
01de48e537 added suggestion to add xxHash backend 2018-11-15 07:28:24 +00:00
Ilya_Shlyakhter
827d9c3135 added suggestion about keeping the git-annex branch permanently checked out 2018-11-14 16:42:41 +00:00
Joey Hess
6a0618f7b3
todo 2018-11-13 15:49:22 -04:00
Joey Hess
d733da87f6
Merge branch 'master' of ssh://git-annex.branchable.com 2018-11-10 12:38:27 -04:00
Joey Hess
77ea81f945
comment 2018-11-10 12:34:29 -04:00
spwhitton
b3444547a5 Added a comment 2018-11-09 21:07:32 +00:00
Joey Hess
5a25069dfd
comment 2018-11-09 13:10:00 -04:00
Joey Hess
f78f97780c
Fix build with persistent-sqlite older than 2.6.3.
This commit was sponsored by Jack Hill on Patreon.
2018-11-09 13:09:02 -04:00
Joey Hess
4623a037f5
Merge remote-tracking branch 'origin/master' 2018-11-09 13:04:14 -04:00
Joey Hess
0d1b42ef78
update 2018-11-08 15:43:02 -04:00
Joey Hess
0f5e5703e5
update 2018-11-08 11:46:23 -04:00
seantparsons
352f88226f Added a comment 2018-11-06 22:50:25 +00:00
spwhitton
4bb1a6060f report failure to build against stretch 2018-11-05 20:20:30 +00:00
Joey Hess
fd128e5a3f
code review and response 2018-11-05 14:28:02 -04:00
seantparsons
8570c07d49 2018-11-04 20:59:39 +00:00
anarcat
cb122b9d1e Added a comment: rsync can do this on its own 2018-11-04 19:29:19 +00:00
Joey Hess
b5a6dfc779
close smudge, open transition tracking item 2018-10-31 08:31:07 -04:00
CandyAngel
2e0cc99b13 Add note about caching annex fulfilling this usage 2018-10-30 13:21:23 +00:00
Joey Hess
86c316ab0f
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-30 00:46:16 -04:00
Joey Hess
5ab0f48ffb
high-res mtimes
Cache high-resolution mtimes for improved detection of modified files in v7
(and direct mode).

Including on Windows.

With back-compat support so old low-res mtimes won't break anything, and
so the new information also won't break old versions of git-annex.
2018-10-30 00:41:26 -04:00
Ilya_Shlyakhter
d1a6daf40b added a use case for alt_keys 2018-10-30 01:40:18 +00:00
Joey Hess
595fb98473
add small delay to avoid problems on systems with low-resolution mtime
I've seen intermittent failures of the test suite with v6 for a long time,
it seems to have possibly gotten worse with the changes around v7. Or just
being unlucky; all tests failed today.

Seen on amd64 and i386 builders, repeatedly but intermittently:

	unused: FAIL (4.86s)
	Test.hs:928:
	git diff did not show changes to unlocked file

And I think other such failures, all involving v7/v6 mode tests.

I managed to reproduce the unused failure with --keep-failures,
and inside the repo, git diff was indeed not showing any changes for
the modified unlocked file.

The two stats will be the same other than mtime; the old and new files have
the same size and inode, since the test case writes to the file and then
overwrites it.

Indeed, notice the identical timestamps:

	builder@orca:~/gitbuilder/build/.t/tmprepo335$ echo 1 > foo; stat foo; echo 2 > foo; stat foo
	  File: foo
	  Size: 2         	Blocks: 8          IO Block: 4096   regular file
	Device: 801h/2049d	Inode: 3546179     Links: 1
	Access: (0644/-rw-r--r--)  Uid: ( 1000/ builder)   Gid: ( 1000/ builder)
	Access: 2018-10-29 22:14:10.894942036 +0000
	Modify: 2018-10-29 22:14:10.894942036 +0000
	Change: 2018-10-29 22:14:10.894942036 +0000
	 Birth: -
	  File: foo
	  Size: 2         	Blocks: 8          IO Block: 4096   regular file
	Device: 801h/2049d	Inode: 3546179     Links: 1
	Access: (0644/-rw-r--r--)  Uid: ( 1000/ builder)   Gid: ( 1000/ builder)
	Access: 2018-10-29 22:14:10.894942036 +0000
	Modify: 2018-10-29 22:14:10.898942036 +0000
	Change: 2018-10-29 22:14:10.898942036 +0000
	 Birth: -

I'm seeing this in Linux VMs; it doesn't happen on my laptop. I've also
not experienced the intermittent test suite failures on my laptop.

So, I hope that this small delay will avoid the problem.

Update: I didn't, indeed I then reproduced the same failure on my
laptop, so it must be due to something else. But keeping this change anyway
since not needing to worry about lowish-resolution mtime in the test suite seems
worthwhile.
2018-10-29 19:31:26 -04:00
Joey Hess
87d770e3fd
rethink 2018-10-29 17:09:55 -04:00
Joey Hess
4431b82bce
migrate: Fix failure to migrate from URL keys. (Reversion introduced in version 6.20180926) 2018-10-29 16:36:36 -04:00
Joey Hess
d73f92d8bc
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-29 16:01:46 -04:00
Ilya_Shlyakhter
50d99e19a3 added suggestion about supporting alternate keys for same content 2018-10-29 19:43:25 +00:00
Joey Hess
0b52f95c05
followup 2018-10-29 15:28:58 -04:00
Joey Hess
a622488758
remove CHECKURL-MULTI single url response special case
Removed undocumented special case in handling of a CHECKURL-MULTI response
with only a single file listed. Rather than ignoring the url that was in
the response, use it. This allows external special remotes that want to
provide some better url to do so, although I don't entirely agree with
using CHECKURL-MULTI to accomplish that. I'm more of the feeling that an
undocumented special case that throws data away is just not a good idea.

This could in theory break some external special remote program that relied
on the current behavior, but its seems unlikely that it would because such
a program must already handle the multiple url case, unless it only ever
provides a single url response to CHECKURL-MULTI.

Make addurl --file work with a single item CHECKURL-MULTI response.
It already did for external special remotes due to the special case,
but now it also will for builtin ones like the BitTorrent special remote.

This commit was sponsored by Ilya Shlyakhter on Patron.
2018-10-29 14:52:12 -04:00
Joey Hess
3248319ca1
close todo item about bug report 2018-10-29 13:47:55 -04:00
Ilya_Shlyakhter
d69ebc62a2 reformatted listing 2018-10-28 20:34:52 +00:00
Ilya_Shlyakhter
f4d22a4586 added addurl suggestions 2018-10-28 20:32:25 +00:00
lykos@d125a37d89b1cfac20829f12911656c40cb70018
32477c0446 2018-10-28 15:05:16 +00:00
Joey Hess
361740a112
close bug report, open todo item 2018-10-26 13:03:18 -04:00
Joey Hess
3db20b39f2
update 2018-10-26 12:28:43 -04:00
Joey Hess
fd56b83bb3
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-25 16:52:16 -04:00
Joey Hess
dd5611b737
devblog 2018-10-25 16:51:52 -04:00
anarcat
73bcd7fdd4 add workaround 2018-10-25 17:48:07 +00:00
anarcat
2243d62d05 issues with reinject comparable with import 2018-10-25 17:36:40 +00:00
Joey Hess
6bd67d4d46
cherry-pick too 2018-10-22 16:24:14 -04:00
Joey Hess
d6b2468b4c
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-22 13:01:06 -04:00
Joey Hess
4ba9c6608e
add for later 2018-10-22 13:00:42 -04:00
Joey Hess
fc26fd059b
ugh 2018-10-22 12:39:36 -04:00
Ilya_Shlyakhter
4527b475ce added notes on supporting external 2018-10-22 15:45:04 +00:00
Joey Hess
8a7fb2e2d8
plans 2018-10-22 06:16:01 -04:00
anarcat
7a3650fac7 a possible new and faster hash backend 2018-10-22 01:56:22 +00:00
Joey Hess
a85193f600
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-20 14:23:17 -04:00
Joey Hess
4a6ebb1034
make sync update adjusted branch to hide/unhide
This completes initial support for --hide-missing, although the
assistant still needs to be updated and it perhaps needs to be sped up,
and maybe there needs to be a way for git-annex get to operate on
missing files. Opened some more todos for those things.

This commit was sponsored by Henrik Riomar.
2018-10-20 14:22:28 -04:00
Chris
d27b8f0b89 Added a comment 2018-10-20 08:09:41 +00:00
Joey Hess
3180fa6fd6
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-19 17:57:30 -04:00
Joey Hess
4a788fbb3b
sync --content now supports --hide-missing adjusted branches
This relies on git ls-files --with-tree, which I'm using in a way that
its man page does not document. Hm. I emailed the git list to try to get
the docs improved, but at least the git test suite does test the same
kind of use case I'm using here.

Performance impact when not in an adjusted branch is limited to some
additional MVar accesses, and a single git call to determine the name of
the current branch. So very minimal.

When in an adjusted branch, the performance impact is
in Annex.WorkTree.lookupFile, which starts doing an equal amount of work
for files that didn't exist as it already did for files that were
unlocked.

This commit was sponsored by Jochen Bartl on Patreon.
2018-10-19 17:51:25 -04:00
Ilya_Shlyakhter
c742cc41d1 quoted markdown asterisks 2018-10-19 20:41:52 +00:00
Ilya_Shlyakhter
01f7721d56 added suggestion to preserve file extensions in WORM and URL keys 2018-10-19 20:28:12 +00:00
Ilya_Shlyakhter
43a8c564a0 Added a comment 2018-10-19 17:54:49 +00:00
Joey Hess
24838547e2
adjust --hide-missing
* At long last there's a way to hide annexed files whose content
  is missing from the working tree: git-annex adjust --hide-missing
* When already in an adjusted branch, running git-annex adjust
  again will update the branch as needed. This is mostly
  useful with --hide-missing to hide/unhide files after their content
  has been dropped or received.

Still needs integration with sync and the assistant, and not as fast as it
could be, but already usable.

This commit was sponsored by Ethan Aubin.
2018-10-18 15:32:42 -04:00
Joey Hess
fc7fe2b19d
more thoughts 2018-10-17 13:26:54 -04:00
Joey Hess
b2bafdb2fc
v6: Fix database inconsistency
That could cause git-annex to get confused about whether a locked file's
content was present, when the object file got touched.

Unfortunately this means more work sometimes when annex.thin is set,
since it has to checksum the file to tell if it's still got the right
content.

Had to suppress output when inAnnex calls isUnmodified, otherwise
"(checksum...)" would be printed in places it ought not to be,
eg "git annex get" could turn out not need to get anything, and
so only display that.

This commit was sponsored by Ole-Morten Duesund on Patreon.
2018-10-16 13:51:37 -04:00
Joey Hess
6498643caf
bug report 2018-10-16 11:41:12 -04:00
Joey Hess
3181533fbc
idea 2018-10-14 01:30:36 -04:00
Ilya_Shlyakhter
256ac89bb6 Added a comment 2018-10-12 13:58:05 +00:00
yarikoptic
c9870c0812 Added a comment 2018-10-12 13:42:07 +00:00
Ilya_Shlyakhter
070ad18921 Added a comment 2018-10-12 01:05:30 +00:00
Ilya_Shlyakhter
bfab48efa4 removed 2018-10-12 01:04:43 +00:00
Ilya_Shlyakhter
7acfe6186a Added a comment 2018-10-12 00:30:06 +00:00
yarikoptic
5f5d90e6f7 Added a comment: arm64 possible CIs etc 2018-10-11 22:22:50 +00:00
Joey Hess
c5b6c55afc
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-11 13:33:14 -04:00
Joey Hess
0240775f32
adding arm64 build, and improved termux installation process
* Added arm64 Linux standalone build. (No autobuilder yet.)
* Improved termux installation process.

Added git-annex-install.sh script to avoid user needing to type as much in
termux. The scope of this script is limited; runshell handles the rest.

Runshell runs termux-fix-shebang on the shell scripts. The problem is
the bundled bin/sh script, deleting that script also works, but then the
others probably use the system Android /bin/sh, which could be old or
broken or not posix or whatever. Using termux sh to run the scripts is
better.

This commit was sponsored by Eric Drechsel on Patreon.
2018-10-11 13:32:00 -04:00
Ilya_Shlyakhter
451f391c7d Added a comment 2018-10-11 12:03:13 +00:00
Joey Hess
3b8ce5a89a
update 2018-10-10 18:16:07 -04:00
Ilya_Shlyakhter
60c652c733 Added a comment 2018-10-10 16:04:39 +00:00
yarikoptic
b18ee06518 Added a comment 2018-10-10 14:05:53 +00:00
Ilya_Shlyakhter
b8148fefa0 Added a comment 2018-10-09 18:53:30 +00:00
Ilya_Shlyakhter
e86cf08981 Added a comment 2018-10-09 15:34:00 +00:00
Ilya_Shlyakhter
3c94f83cbf Added a comment 2018-10-08 21:48:27 +00:00
Joey Hess
61b7101949
response 2018-10-08 12:23:49 -04:00
Joey Hess
f391885373
followup 2018-10-08 12:21:58 -04:00
Joey Hess
611c60089d
response 2018-10-08 12:13:23 -04:00
Joey Hess
9ada622067
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-08 12:01:03 -04:00
anarcat
964e3f52a6 notes 2018-10-07 18:16:13 +00:00
Joey Hess
e7ff1c6762
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-06 19:53:06 -04:00
yarikoptic
cb91466057 Added a comment 2018-10-05 21:41:45 +00:00
Ilya_Shlyakhter
6a1cebe88a Added a comment 2018-10-05 21:31:33 +00:00
yarikoptic
ac1122618d Added a comment 2018-10-05 20:20:42 +00:00
Ilya_Shlyakhter
bab8370447 Added a comment 2018-10-05 19:56:24 +00:00
Ilya_Shlyakhter
b749b9b25c Added a comment 2018-10-05 18:24:18 +00:00
Joey Hess
5df65af933
followup 2018-10-05 11:33:34 -04:00
Joey Hess
79aa57d37e
response 2018-10-04 14:45:06 -04:00
Joey Hess
108e63007d
response 2018-10-04 13:01:28 -04:00
Joey Hess
6ba3dea566
annex.jobs
Added annex.jobs setting, which is like using the -J option.

Of course, -J overrides annex.jobs.

This commit was sponsored by Trenton Cronholm on Patreon.
2018-10-04 12:47:27 -04:00
Joey Hess
585e6b39aa
comment 2018-10-04 12:45:48 -04:00
Ilya_Shlyakhter
b0b69f1819 suggestion - dockerized external special remotes 2018-10-04 01:23:53 +00:00
Ilya_Shlyakhter
0783f0afcf Added a comment 2018-10-04 01:11:11 +00:00
Joey Hess
9d0e274b07
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-03 14:04:39 -04:00
Joey Hess
aa69796121
simplify 2018-10-03 14:04:19 -04:00
Joey Hess
acc1dc37b0
followup 2018-10-03 14:04:14 -04:00
yarikoptic
273a9053cd Added a comment 2018-10-03 18:03:56 +00:00
yarikoptic
807884f3d1 Added a comment 2018-10-03 17:55:04 +00:00
Ilya_Shlyakhter
441a018e3a suggested config flag to use all available cores 2018-10-03 17:50:08 +00:00
Joey Hess
50b885ffd6
close, implemented already 2018-10-03 13:42:56 -04:00
yarikoptic
fe8cbc447b Added a comment 2018-10-03 17:39:48 +00:00
Joey Hess
4ea33ecadd
close, probably git annex inprogress was it 2018-10-03 13:26:49 -04:00
Joey Hess
a62c94e811
retitle 2018-10-03 13:25:00 -04:00
Joey Hess
233a45994b
retitle 2018-10-03 13:22:52 -04:00
Joey Hess
8ac762414c
close, fixed long ago 2018-10-03 13:15:36 -04:00
Joey Hess
acbb21f89b
close 2018-10-03 13:12:12 -04:00
Joey Hess
0fe258b6e1
close 2018-10-03 13:10:00 -04:00
Joey Hess
7d1d233ba9
close 2018-10-03 13:08:08 -04:00
Joey Hess
3693d11d7d
close obsolete request 2018-10-03 12:55:20 -04:00
Joey Hess
746db2e276
close old todo and add freenet special remote to list 2018-10-03 12:54:34 -04:00
Joey Hess
ebde4bd94b
close, fixed by p2p for ssh 2018-10-03 12:52:01 -04:00
Joey Hess
590f67461a
close, git annex inprogress does this 2018-10-03 12:48:09 -04:00
Joey Hess
c007d53978
followup 2018-10-03 12:40:27 -04:00
Joey Hess
a8c133b20e
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-03 12:36:29 -04:00
Joey Hess
43dc8ed703
followup 2018-10-03 12:36:11 -04:00
Joey Hess
303d10cee6
Improve display when git config download from a http remote fails.
The error message displayed used to only come from curl/wget and perhaps
was clearer than the one displayed now that http-client is used. In any
case, it does make sense to hide it because git-annex prints its own
warning message.

This commit was sponsored by Jake Vosloo on Patreon.
2018-10-03 12:31:09 -04:00
Joey Hess
9aeffde4cb
followup 2018-10-03 12:29:21 -04:00
Ilya_Shlyakhter
e32b54f490 Added a comment 2018-10-02 17:38:11 +00:00
Joey Hess
2797bf851a
thoughts 2018-10-02 10:16:57 -04:00
Joey Hess
95aafbfdc2
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-01 16:17:55 -04:00
Joey Hess
cd7a31069a
thought 2018-10-01 16:15:42 -04:00
Joey Hess
2a5e60d9fe
status update
(cherry picked from commit 480bc61fcf)
2018-10-01 16:11:53 -04:00
yarikoptic
366f7f81ef Added a comment 2018-10-01 16:29:19 +00:00
Joey Hess
47707608b1
followup 2018-10-01 12:21:34 -04:00
Joey Hess
a7309549ad
response 2018-10-01 11:59:05 -04:00
yarikoptic
53c8e3e0f8 initial report on download failed msg 2018-09-28 16:57:59 +00:00
yarikoptic
43d777f0ab initial idea on --progress for git calls 2018-09-28 16:14:57 +00:00
Joey Hess
5798786205
Merge branch 'master' of ssh://git-annex.branchable.com 2018-09-28 10:49:28 -04:00
yarikoptic
c487d46a36 initial recommendation about config for mode on crippled systems 2018-09-27 20:00:01 +00:00
Joey Hess
9adee3f2fb
sync: Warn when a remote's export is not updated to the current tree because export tracking is not configured.
Only display the warning when the current branch has a tree that is not
the same as the tree in the export.

Note that it doesn't check to see if the current tree is
in incompleteExportedTreeish; it might be worth checking that and reminding
the user about an incomplete export, but when export tracking is not
configured, they are probably not in the right clone of the repository to
resolve the incomplete export.

This commit was sponsored by Ethan Aubin.
2018-09-27 15:41:18 -04:00
Ilya_Shlyakhter
f35ba87ea6 Added a comment 2018-09-27 11:09:04 +00:00
CandyAngel
0b6123bbec Added a comment 2018-09-27 07:39:58 +00:00
Ilya_Shlyakhter
acfc49ae6e fixed suggested encoding 2018-09-26 18:11:35 +00:00
Ilya_Shlyakhter
b15747978d added todo re: shorter keys through better encoding 2018-09-26 16:58:53 +00:00
Ilya_Shlyakhter
97ef9e1c4a added todo re: creating option to add user-specified string to key 2018-09-26 03:02:23 +00:00
Ilya_Shlyakhter
3e84a055ea Added a comment 2018-09-26 00:51:30 +00:00
Ilya_Shlyakhter
a51c819868 removed 2018-09-26 00:15:23 +00:00
Ilya_Shlyakhter
7440560361 Added a comment 2018-09-26 00:15:04 +00:00
Ilya_Shlyakhter
0bb0bb3c39 Added a comment 2018-09-26 00:14:53 +00:00
Joey Hess
5ce9080d41
forgot to add this comment 2018-09-25 16:51:54 -04:00
Joey Hess
2ebf4c3ec2
close another report of same bug 2018-09-25 15:36:20 -04:00
Joey Hess
bc31b93c77
remote.name.annex-security-allow-unverified-downloads
Added remote.name.annex-security-allow-unverified-downloads, a per-remote
setting for annex.security.allow-unverified-downloads.

This commit was sponsored by Brock Spratlen on Patreon.
2018-09-25 15:34:47 -04:00
Joey Hess
d95f682d87
todo 2018-09-24 15:46:49 -04:00
Ilya_Shlyakhter
e28ae667a4 Added a comment 2018-09-24 18:50:46 +00:00
Joey Hess
4ecba916a1
annex.maxextensionlength
Added annex.maxextensionlength for use cases where extensions longer than 4
characters are needed.

This commit was sponsored by Henrik Riomar on Patreon.
2018-09-24 12:10:18 -04:00
Joey Hess
0f9eafc157
comment 2018-09-24 11:50:40 -04:00
Joey Hess
8873cf0789
Merge branch 'master' of ssh://git-annex.branchable.com 2018-09-22 11:29:29 -04:00
Joey Hess
09ce2cf012
new ghc fixes windows filename length issue 2018-09-22 11:28:59 -04:00
Ilya_Shlyakhter
1cc0de995c added a todo suggestion about supporting longer file extensions and full filenames in symlink targets 2018-09-21 00:36:08 +00:00
Ilya_Shlyakhter
ea51ac3f59 better exceptions to annex.security.allow-unverified-downloads 2018-09-19 15:49:57 +00:00
yarikoptic
4528bbab43 initial idea on s3 2018-09-19 13:17:41 +00:00
spwhitton
c98e383ffd intentional->unintentional 2018-09-18 22:13:09 +00:00
spwhitton
c517b3132d report bug 2018-09-18 22:12:47 +00:00
https://christian.amsuess.com/chrysn
8f0d61ed9f Added a comment: symlinks into git-annex 2018-09-18 19:15:11 +00:00
Ilya_Shlyakhter
295be65c3e Added a comment 2018-09-18 18:48:06 +00:00
Ilya_Shlyakhter
1f1d1a6c6e Added a comment 2018-09-18 18:41:02 +00:00
Joey Hess
cd3f231d21
retitle 2018-09-12 14:21:39 -04:00
Joey Hess
e01903efc5
response 2018-09-11 13:13:27 -04:00
https://me.yahoo.com/a/iOGTltEpmOTQ.xZ99NFP5c7Zdcc-#6a7ba
cf2cc6f7fc Added a comment 2018-09-07 18:04:51 +00:00
https://me.yahoo.com/a/iOGTltEpmOTQ.xZ99NFP5c7Zdcc-#6a7ba
1f0ab538fc 2018-09-07 17:01:04 +00:00
Joey Hess
19e91d5ee3
Merge branch 'master' of ssh://git-annex.branchable.com 2018-09-06 14:37:42 -04:00
Joey Hess
b7daf2685f
support public versioned S3 access
Makes git annex whereis display the versionId urls.

And, when a s3 remote is enabled without creds, git-annex will use the
versionId urls to access its contents.

This commit was sponsored by Fernando Jimenez on Patreon.
2018-09-06 14:31:41 -04:00
Joey Hess
0630ef166b
thought 2018-09-06 13:21:46 -04:00
Joey Hess
256669a85d
close as I don't want to do this 2018-09-06 13:16:13 -04:00
Joey Hess
1c86ba8ee8
close, these seem done already 2018-09-06 13:15:21 -04:00
Joey Hess
50fb6a86f9
thoughts 2018-09-06 13:09:18 -04:00
anarcat
694f612fba Added a comment: added as a special remote 2018-09-06 00:58:52 +00:00
Joey Hess
0a7c5a9982
dropdead per-remote metadata
Had to refactor pure code into separate modules so it is accessible
inside Annex.Branch.Transitions.

This commit was sponsored by Peter on Patreon.
2018-09-05 13:52:46 -04:00
Joey Hess
f1e5dfb7c7
close 2018-09-05 12:21:52 -04:00
Joey Hess
8eb944ea11
close todo, open todo 2018-08-31 14:01:24 -04:00
Joey Hess
308f49e9ae
update 2018-08-31 13:56:32 -04:00
Joey Hess
b3d42283ad
use per-remote metadata storage for S3 version ID
Since the same key can be stored in a versioned S3 bucket multiple times
with different version IDs, this allows tracking them all. Not currently
needed, but if we ever want to drop from a versioned S3 bucket, we'll
need to know them all.

This commit was supported by the NSF-funded DataLad project.
2018-08-31 13:27:29 -04:00
Joey Hess
5c99f6247e
per-remote metadata storage
Actually very straightforward reuse of the metadata log file code.
Although I had to add a todo item as git-annex forget won't clean up
dead remote's metadata yet.

This would be worth adding to the external special remote interface
sometime. Have not opened a todo though, guess I'll wait until something
needs it.

This commit was supported by the NSF-funded DataLad project.
2018-08-31 12:23:22 -04:00
Joey Hess
9d78a4387f
update 2018-08-31 12:23:04 -04:00
Joey Hess
3a5d0402ba
update 2018-08-30 15:49:21 -04:00
Joey Hess
19dcff2b71
use S3 version ID for retrieval
Have to store the S3 object along with the version ID, so retrieval can
use the same object.

This commit was supported by the NSF-funded DataLad project.
2018-08-30 15:37:08 -04:00
Joey Hess
794e9a7a44
store S3 version IDs
Only done when versioning=yes is configured. It could always do it when
S3 sends back a version id, but there may be buckets that have
versioning enabled by accident, so it seemed better to honor the
configuration.

S3's docs say version IDs are "randomly generated", so presumably
storing the same content twice gets two different ones not the same one.
So I considered storing a list of version IDs for a key. That would
allow removing the key completely. But.. The way Logs.RemoteState works,
when there are multiple writers, the last writer wins. So storing a list
would need a different log format that merges, which seemed overkill to support
removing a key from an append-only remote.

Note that Logs.RemoteState for S3 is now dedicated to version IDs.
If something else needs to be stored, a new log will be needed to do it.

This commit was supported by the NSF-funded DataLad project.
2018-08-30 14:30:56 -04:00
Joey Hess
0ff5a41311
S3 versioning=yes config
Not yet used.

This commit was supported by the NSF-funded DataLad project.
2018-08-30 13:45:28 -04:00
Joey Hess
358178fbfb
don't untrust appendonly exports
Make exporttree=yes remotes that are appendonly not be untrusted, and not force
verification of content, since the usual concerns about losing data when an
export is updated by someone else don't apply.

Note that all the remote operations on keys are left as usual for
appendonly export remotes, except for storing content.

This commit was supported by the NSF-funded DataLad project.
2018-08-30 11:48:04 -04:00
Joey Hess
8b39db20b5
export appendonly support
Make `git annex export` check appendonly when removing a file from an
export, and not update the location log, since the remote still contains
the content.

This commit was supported by the NSF-funded DataLad project.
2018-08-30 11:18:20 -04:00
Joey Hess
dad627fa9e
remove false starts, simplify 2018-08-29 14:12:18 -04:00
Joey Hess
5b78952f78
misunderstood some code; simplify 2018-08-29 14:09:18 -04:00
Joey Hess
e216c18318
new much improved plan 2018-08-29 13:59:52 -04:00
Joey Hess
3874c5c88d
further thoughts 2018-08-29 10:56:02 -04:00
Joey Hess
b1280eb252
new todo (requested by yoh) 2018-08-28 12:14:06 -04:00
Joey Hess
6adc0d2b3f
bug triage 2018-08-27 15:10:05 -04:00
Joey Hess
2c9f21e987
todo 2018-08-26 20:59:20 -04:00
anarcat
af727108b0 update status to mention tor 2018-08-24 21:35:11 +00:00
anarcat
bfab1da5a7 mention that dat thing 2018-08-24 21:30:20 +00:00
Joey Hess
98fd7ec6c9
recover from race between git mv+commit and git-annex get
Last of the known v6 races.

This also makes git add of a pointer file populate it when its content
is present in the annex. Which makes sense to do, I think.

This commit was supported by the NSF-funded DataLad project.
2018-08-22 16:01:50 -04:00
Joey Hess
50fa17aee6
v6: recover from race between git mv and git-annex get/drop
Update pointer file next time reconcileStaged is run to recover from the
race.

Note that restagePointerFile causes git to run the clean filter,
and that will run reconcileStaged. So, normally by the time the git
annex get/drop command finishes, the race has already been dealt with.
It may be that, in some case, that won't happen and the race will be
dealt with at a later point. git-annex could run reconcileStaged at
shutdown if that becomes a problem.

This does not handle the situation where the git mv is committed before
git-annex gets a chance to run again. git commit does run the clean
filter, and that happens to re-inject the content if it was supposed to
be dropped but is still populated. But, the case where the file was
supposed to be gotten but is not populated is not handled yet.

This commit was supported by the NSF-funded DataLad project.
2018-08-22 15:56:43 -04:00
Joey Hess
e9b2674281
plan 2018-08-22 13:58:32 -04:00
Joey Hess
38a934cf07
correction 2018-08-22 13:34:15 -04:00
Joey Hess
18ecf41917
avoid running reconcileStaged when the index has not changed
This commit was supported by the NSF-funded DataLad project.
2018-08-22 13:04:12 -04:00
Joey Hess
5e56d9b620
v6: Update associated files database when git has staged changes to pointer files
This commit was supported by the NSF-funded DataLad project.
2018-08-21 17:02:20 -04:00
Joey Hess
b8cd5fde17
idea 2018-08-20 16:13:46 -04:00
Joey Hess
54d49eeac8
avoid update-index race
This commit was supported by the NSF-funded DataLad project.
2018-08-17 16:03:40 -04:00
Joey Hess
ec91b6e4b2
plan to fix race 2018-08-17 11:18:53 -04:00
Joey Hess
5799d325f0
update todo categories 2018-08-16 16:36:47 -04:00
Joey Hess
82a239675f
narrow the race where a file gets modified before update-index
Check just before running update-index if the worktree file's content is
still the same, don't update it when it's been modified. This narrows
the race window a lot, from possibly minutes or hours, to seconds or
less.

(Use replaceFile so that the worktree update happens atomically,
allowing the InodeCache of the new worktree file to itself be gathered
w/o any other race.)

This doesn't eliminate the race; it can still occur in the window before
update-index runs. When annex.queue is large, a lot of files will be
statted by the checks, and so the window may still be large enough to be a
problem.

When only a few files are being processed, the window is as small as it
is in the race where a modification gets overwritten by git-annex when
it updates the worktree. Or maybe as small as whatever race git
checkout/pull/merge may have when the worktree gets modified during it.
Still, I've kept a todo about this race.

This commit was supported by the NSF-funded DataLad project.
2018-08-16 15:56:43 -04:00
Joey Hess
82cfcfc838
better index file refresh method
Use git update-index --refresh, since it's a little bit more
efficient and the user can be told to run it if a locked index prevents
git-annex from running it.

This also fixes the problem where an annexed file was deleted in the index
and a get of another file that uses the same key caused the index update to
add back the deleted file. update-index will not add back the deleted file.

Documented in tips/unlocked_files.mdwn the gotcha that the index update
may conflict with other operations. I can't see any way to possibly avoid
that conflict.

One new todo about a race that causes a modification to be accidentially
staged.

Note that the assistant only flushes the git command queue when it
commits a modification. I have not tested the assistant with v6 unlocked
files, but assume most users of the assistant won't care if the index
shows a file as modified for a while.

This commit was supported by the NSF-funded DataLad project.
2018-08-16 14:16:24 -04:00
Joey Hess
4c5a9965c1
remove invalid todo item
I tested it, and it's ok. I think I was adding it under a filename that
produced a different key.
2018-08-15 13:34:48 -04:00
Joey Hess
48e9e12961
finally fixed v6 get/drop git status
After updating the worktree for an add/drop, update git's index, so git
status will not show the files as modified.

What actually happens is that the index update removes the inode
information from the index. The next git status (or similar) run
then has to do some work. It runs the clean filter.

So, this depends on the clean filter being reasonably fast and on git
not leaking memory when running it. Both problems were fixed in
a96972015d, but only for git 2.5. Anyone
using an older git will see very expensive git status after an add/drop.

This uses the same git update-index queue as other parts of git-annex, so
the actual index update is fairly efficient. Of course, updating the index
does still have some overhead. The annex.queuesize config will control how
often the index gets updated when working on a lot of files.

This is an imperfect workaround... Added several todos about new
problems this workaround causes. Still, this seems a lot better than the
old behavior.

This commit was supported by the NSF-funded DataLad project.
2018-08-14 16:23:58 -04:00
Joey Hess
66a4483dfa
response 2018-08-14 11:02:55 -04:00
Joey Hess
d8a8f2df70
full plan 2018-08-13 17:51:02 -04:00
Joey Hess
86df0d6e1b
even better idea 2018-08-13 17:43:16 -04:00
Joey Hess
df5823cea0
update 2018-08-13 17:29:33 -04:00
Joey Hess
bc7d431a6a
status 2018-08-13 16:37:23 -04:00
Joey Hess
147a793f4b
one way to use this 2018-08-09 18:22:21 -04:00
Joey Hess
a96972015d
massive v6 add speed/memory improvement
v6 add: Take advantage of improved SIGPIPE handler in git 2.5 to speed up
the clean filter by not reading the file content from the pipe. This also
avoids git buffering the whole file content in memory.

When built with an older git, still consumes stdin. If built with a newer
git and used with an older one, it breaks, but that's acceptable --
checking the git version every time would make repeated smudge runs slow.

This commit was supported by the NSF-funded DataLad project.
2018-08-09 18:17:46 -04:00