Merge branch 'master' of ssh://git-annex.branchable.com

This commit is contained in:
Joey Hess 2016-05-24 15:59:22 -04:00
commit 1183205838
Failed to extract signature
5 changed files with 148 additions and 1 deletions

View file

@ -1,7 +1,7 @@
### What version of git-annex are you using? On what operating system?
6.20160425+gitgffe2ea2-1~ndall+1
I am building now a brand new snapshot to see if replicates
(reconfirmed with 6.20160523+gitg33c00ab-1~ndall+1)
### Please provide any additional information below.
Here is a debug output from datalad which shows the interaction

View file

@ -0,0 +1,9 @@
[[!comment format=mdwn
username="https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4"
subject="what would be the "best" command to run?"
date="2016-05-24T00:10:23Z"
content="""
Something was nagging back in my mind that issue was indeed similar to previously observed but I, as you, couldn't quickly locate it. Now that you reminded that it was about whois -- [found it](http://git-annex.branchable.com/todo/add_option_to_whereis_to_avoid_network_interactions/) .
What would be the best annex command to run to accomplish just that -- to \"register\" that given remote with annex (without bothering with sync/merge/...)?
I guess I could run 'annex info' but that might want to deal with every remote.
"""]]

View file

@ -0,0 +1,73 @@
### Please describe the problem.
I'm trying to setup a ssh special remote with gcrypt as an always-on sync point for 2 other machines. However, when syncing, only the first machine that was setup seems to do the encryption properly, the other machine that clones from the gcrypt remote sync the file content without encryption. I followed the instruction on https://git-annex.branchable.com/tips/fully_encrypted_git_repositories_with_gcrypt/
### What steps will reproduce the problem?
On the first machine:
```
cd MyStuffs
git init
git annex init "Macbook"
cat "First file" > first.txt
git annex add .
git commit -a -m added
git annex initremote personal-server type=gcrypt gitrepo=ssh://user@foo.bar.com/home/user/MyStuffs keyid=XXXXXXXXX
git annex sync
git annex sync--content
```
On second machine
```
git clone gcrypt::ssh://user@foo.bar.com/home/user/MyStuffs test
git annex enableremote personal-server gitrepo=ssh://user@foo.bar.com/home/user/MyStuffs
cd test
cat "BananaTest" > test
git annex add .
git commit -a -m added
git annex sync --content
```
On the remote server
```
cd ~/MyStuffs
grep -r "First" . #There is no result, which is good
grep -r "Banana" . #On the other hand, this has a result
> ./annex/objects/ee1/042/SHA256E-s5--11861eaa2e70e8ac73d9d20cd172b6a5396cb0116fed5bfe432ca075144b2d48.org/SHA256E-s5--11861eaa2e70e8ac73d9d20cd172b6a5396cb0116fed5bfe432ca075144b2d48.org:BananaTest
```
If the first machine do `git annex sync --content`, it can get and view the new file normally, trying to add new file afterward from the first machine works fine as well. Adding file from the 2nd machine results in the same behaviour (unencrypted file content).
When using gcrypt special remote on local machine , it does not seem to be an issue. Additionally, on machine 2 if I clone from the first machine then enableremote to the gcrypt server, it is also not a problem. Seems like the issue only happens when cloning the bare repo. On inspection of the annex/objects folder, the issue seems to be that beside the "GPGHMACSHA1*" files (which I assume is encrypted data), a bunch of "SHA256E*" files are also added which contains the raw unencrypted data.
### What version of git-annex are you using? On what operating system?
The first and second machine was in fact the same machine ,running OS X El Capitan
```
git-annex version: 6.20160511
build flags: Assistant Webapp Pairing Testsuite S3(multipartupload)(storageclasses) WebDAV FsEvents XMPP ConcurrentOutput TorrentParser MagicMime Feeds Quvi
key/value backends: SHA256E SHA256 SHA512E SHA512 SHA224E SHA224 SHA384E SHA384 SHA3_256E SHA3_256 SHA3_512E SHA3_512 SHA3_224E SHA3_224 SHA3_384E SHA3_384 SKEIN256E SKEIN256 SKEIN512E SKEIN512 SHA1E SHA1 MD5E MD5 WORM URL
remote types: git gcrypt S3 bup directory rsync web bittorrent webdav tahoe glacier ddar hook external
local repository version: 5
supported repository versions: 5 6
upgrade supported from repository versions: 0 1 2 4 5
operating system: darwin x86_64
```
The remote server that use ssh is Debian Jessie, without git-annex installed (I tried it with git-annex installed on the server, it has the same behaviour)
### Please provide any additional information below.
[[!format sh """
# If you can, paste a complete transcript of the problem occurring here.
# If the problem is with the git-annex assistant, paste in .git/annex/daemon.log
# End of transcript or log.
"""]]
### Have you had any luck using git-annex before? (Sometimes we get tired of reading bug reports all day and a lil' positive end note does wonders)
Yes, everything works very nicely except this issue.

View file

@ -0,0 +1,60 @@
[[!comment format=mdwn
username="ilovezfs"
subject="comment 3"
date="2016-05-24T09:32:31Z"
content="""
> I've relaxed the bounds on base. AFAICS there are no bounds on time and transformers, so what were you suggesting I change there?
The following assumes passing --flags=\"webapp s3\" and --max-backjumps=-1.
Adding allow-newer for just base hangs.
Adding allow-newer for just base and transformers leads to solver failure due to
\"rejecting: aws-0.13.0 (conflict: unix => time==1.6.0.1/installed-1.6..., aws => time>=1.1.4 && <1.6)\"
This has already been fixed by aws https://github.com/aristidb/aws/commit/512d4f7aa908b4fd2a2b72be79733d865d36652e but that commit is not in the released version of aws yet, so one option would be to patch aws directly with that commit. The other option is to set allow-newer for time.
Adding allow-newer for just base and time leads to a failed build due to a transformers-0.4.3.0 issue, which doesn't affect newer versions of transformers. However, the current aws restricts transformers to <0.5, and the last version before 0.5 is 0.4.3.0. The error message is
[[!format text \"\"\"
[11 of 27] Compiling Control.Monad.Trans.Error ( Control/Monad/Trans/Error.hs, dist/dist-sandbox-81571458/build/Control/Monad/Trans/Error.o )
Control/Monad/Trans/Error.hs:69:10: error:
Duplicate instance declarations:
instance MonadPlus IO
-- Defined at Control/Monad/Trans/Error.hs:69:10
instance MonadPlus IO -- Defined in GHC.Base
Control/Monad/Trans/Error.hs:73:10: error:
Duplicate instance declarations:
instance Alternative IO
-- Defined at Control/Monad/Trans/Error.hs:73:10
instance Alternative IO -- Defined in GHC.Base
\"\"\"]]
>Would -XNoMonomorphismRestriction fix it?
Setting that option leads to
[[!format text \"\"\"
[ 89 of 538] Compiling Utility.Url ( Utility/Url.hs, dist/dist-sandbox-516bc87d/build/git-annex/git-annex-tmp/Utility/Url.o )
Utility/Url.hs:160:85: error:
• Ambiguous type variable a0 arising from a use of len
prevents the constraint (Read a0) from being solved.
Probable fix: use a type annotation to specify what a0 should be.
These potential instances exist:
instance Read a => Read (ZipList a)
-- Defined in Control.Applicative
instance (Read a, Read b) => Read (Either a b)
-- Defined in Data.Either
instance forall k a (b :: k). Read a => Read (Const a b)
-- Defined in Data.Functor.Const
...plus 47 others
...plus 177 instances involving out-of-scope types
(use -fprint-potential-instances to see them all)
• In the first argument of isJust, namely len
In the second argument of (&&), namely isJust len
In the expression: \"ftp\" `isInfixOf` uriScheme u && isJust len
\"\"\"]]
"""]]

View file

@ -0,0 +1,5 @@
git-annex add . fails with:
git-annex: unknown response from git cat-file ("HEAD:./MYDIRECTORYNAME/Icon missing","HEAD:./MYDIRECTORYNAME/Icon\r")
There's a file in the directory called Icon^M or Icon? (there's some kind of control character or unicode or other weirdness at the end)