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

This commit is contained in:
Joey Hess 2018-04-30 16:06:01 -04:00
commit 07ba2b0b56
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
7 changed files with 447 additions and 0 deletions

View file

@ -0,0 +1,196 @@
### Please describe the problem.
Build failure with hinotify,0.3.10 / fsnotify,0.2.1.2
### What version of git-annex are you using? On what operating system?
git-annex 6.20180427 on Arch x86_64.
### Please provide any additional information below.
[[!format sh """
[124 of 594] Compiling Utility.DirWatcher.INotify ( Utility/DirWatcher/INotify.hs, dist/build/git-annex/git-annex-tmp/Utility/DirWatcher/INotify.dyn_o )
Utility/DirWatcher/INotify.hs:58:54: error:
• Couldn't match type [Char]
with Data.ByteString.Internal.ByteString
Expected type: System.Posix.ByteString.FilePath.RawFilePath
Actual type: FilePath
• In the third argument of addWatch, namely dir
In the first argument of void, namely
(addWatch i watchevents dir handler)
In the first argument of catchIO, namely
void (addWatch i watchevents dir handler)
|
58 | void (addWatch i watchevents dir handler)
| ^^^
Utility/DirWatcher/INotify.hs:97:41: error:
• Couldn't match type Data.ByteString.Internal.ByteString
with [Char]
Expected type: FilePath
Actual type: System.Posix.ByteString.FilePath.RawFilePath
• In the first argument of indir, namely f
In the second argument of ($), namely indir f
In the expression: recurse $ indir f
|
97 | | isd = recurse $ indir f
| ^
Utility/DirWatcher/INotify.hs:99:41: error:
• Couldn't match type Data.ByteString.Internal.ByteString
with [Char]
Expected type: FilePath
Actual type: System.Posix.ByteString.FilePath.RawFilePath
• In the first argument of getstatus, namely f
In a stmt of a 'do' block: ms <- getstatus f
In the expression:
do ms <- getstatus f
case ms of
Just s
| isSymbolicLink s
-> when (hashook addSymlinkHook) $ runhook addSymlinkHook f ms
| isRegularFile s -> when (hashook addHook) $ runhook addHook f ms
_ -> noop
|
99 | ms <- getstatus f
| ^
Utility/DirWatcher/INotify.hs:104:80: error:
• Couldn't match type Data.ByteString.Internal.ByteString
with [Char]
Expected type: FilePath
Actual type: System.Posix.ByteString.FilePath.RawFilePath
• In the second argument of runhook, namely f
In the second argument of ($), namely
runhook addSymlinkHook f ms
In the expression:
when (hashook addSymlinkHook) $ runhook addSymlinkHook f ms
|
104 | runhook addSymlinkHook f ms
| ^
Utility/DirWatcher/INotify.hs:107:73: error:
• Couldn't match type Data.ByteString.Internal.ByteString
with [Char]
Expected type: FilePath
Actual type: System.Posix.ByteString.FilePath.RawFilePath
• In the second argument of runhook, namely f
In the second argument of ($), namely runhook addHook f ms
In the expression: when (hashook addHook) $ runhook addHook f ms
|
107 | runhook addHook f ms
| ^
Utility/DirWatcher/INotify.hs:112:67: error:
• Couldn't match type Data.ByteString.Internal.ByteString
with [Char]
Expected type: FilePath
Actual type: System.Posix.ByteString.FilePath.RawFilePath
• In the third argument of checkfiletype, namely f
In the expression: checkfiletype isRegularFile addHook f
In an equation for go:
go (Closed {isDirectory = False, maybeFilePath = Just f})
= checkfiletype isRegularFile addHook f
|
112 | checkfiletype Files.isRegularFile addHook f
| ^
Utility/DirWatcher/INotify.hs:115:46: error:
• Couldn't match type Data.ByteString.Internal.ByteString
with [Char]
Expected type: FilePath
Actual type: System.Posix.ByteString.FilePath.RawFilePath
• In the first argument of scan, namely f
In the expression: scan f
In an equation for go: go (MovedIn {filePath = f}) = scan f
|
115 | go (MovedIn { filePath = f }) = scan f
| ^
Utility/DirWatcher/INotify.hs:117:44: error:
• Couldn't match type Data.ByteString.Internal.ByteString
with [Char]
Expected type: FilePath
Actual type: System.Posix.ByteString.FilePath.RawFilePath
• In the second argument of runhook, namely f
In the expression: runhook delDirHook f Nothing
In an equation for go:
go (MovedOut {isDirectory = isd, filePath = f})
| isd = runhook delDirHook f Nothing
| otherwise = runhook delHook f Nothing
|
117 | | isd = runhook delDirHook f Nothing
| ^
Utility/DirWatcher/INotify.hs:118:47: error:
• Couldn't match type Data.ByteString.Internal.ByteString
with [Char]
Expected type: FilePath
Actual type: System.Posix.ByteString.FilePath.RawFilePath
• In the second argument of runhook, namely f
In the expression: runhook delHook f Nothing
In an equation for go:
go (MovedOut {isDirectory = isd, filePath = f})
| isd = runhook delDirHook f Nothing
| otherwise = runhook delHook f Nothing
|
118 | | otherwise = runhook delHook f Nothing
| ^
Utility/DirWatcher/INotify.hs:124:54: error:
• Couldn't match type Data.ByteString.Internal.ByteString
with [Char]
Expected type: FilePath
Actual type: System.Posix.ByteString.FilePath.RawFilePath
• In the second argument of runhook, namely f
In the second argument of ($), namely
runhook delDirHook f Nothing
In the expression: guarded $ runhook delDirHook f Nothing
|
124 | | isd = guarded $ runhook delDirHook f Nothing
| ^
Utility/DirWatcher/INotify.hs:125:57: error:
• Couldn't match type Data.ByteString.Internal.ByteString
with [Char]
Expected type: FilePath
Actual type: System.Posix.ByteString.FilePath.RawFilePath
• In the second argument of runhook, namely f
In the second argument of ($), namely runhook delHook f Nothing
In the expression: guarded $ runhook delHook f Nothing
|
125 | | otherwise = guarded $ runhook delHook f Nothing
| ^
Utility/DirWatcher/INotify.hs:127:58: error:
• Couldn't match type Data.ByteString.Internal.ByteString
with [Char]
Expected type: FilePath
Actual type: System.Posix.ByteString.FilePath.RawFilePath
• In the second argument of filetype, namely f
In the first argument of unlessM, namely
(filetype (const True) f)
In the expression: unlessM (filetype (const True) f)
|
127 | guarded = unlessM (filetype (const True) f)
| ^
Utility/DirWatcher/INotify.hs:130:50: error:
• Couldn't match type Data.ByteString.Internal.ByteString
with [Char]
Expected type: FilePath
Actual type: System.Posix.ByteString.FilePath.RawFilePath
• In the second argument of runhook, namely f
In the expression: runhook modifyHook f Nothing
In an equation for go:
go (Modified {isDirectory = isd, maybeFilePath = Just f})
| isd = noop
| otherwise = runhook modifyHook f Nothing
|
130 | | otherwise = runhook modifyHook f Nothing
| ^
"""]]
### 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!

View file

@ -0,0 +1,172 @@
### Please describe the problem.
I cannot reproduce the archive behaviour explained in the screencast: git annex assistant archiving.
### What steps will reproduce the problem?
Install the OSX dmg. Open the webapp. Make a client repo `~/annex` on the laptop and a full archive repo `/Volumes/Seagate/annex` on an external hard drive. Disregard the errors in the webapp. Restart daemon. Finish configuration of the archive repo as full archive.
Put a test file in `~/annex`, watch it copy over in the webapp. Verify copies with `git-annex whereis`.
**Use the GUI to move the test file to `~/annex/archive`. The file does not turn into a symlink as expected.**
Run the command `git-annex drop --auto`. the archived file is now replaced by a symlink. `git annex whereis` verifies that the only copy is in the archive repo.
Now move the symlink back to `~/annex`. The symlink is not replaced by the file.
Restart the assistant using the webapp. The symlink is replaced by the file.
Repeat above steps with the same effect.
### What version of git-annex are you using? On what operating system?
OSX 10.11.6 El Capitan
git-annex version: 6.20180409-gfb0780266
build flags: Assistant Webapp Pairing S3(multipartupload)(storageclasses) WebDAV FsEvents ConcurrentOutput TorrentParser MagicMime Feeds Testsuite
dependency versions: aws-0.17.1 bloomfilter-2.0.1.0 cryptonite-0.23 DAV-1.3.1 feed-0.3.12.0 ghc-8.0.2 http-client-0.5.7.0 persistent-sqlite-2.6.2 torrent-10000.1.1 uuid-1.3.13 yesod-1.4.5
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 BLAKE2B256E BLAKE2B256 BLAKE2B512E BLAKE2B512 BLAKE2B160E BLAKE2B160 BLAKE2B224E BLAKE2B224 BLAKE2B384E BLAKE2B384 BLAKE2S256E BLAKE2S256 BLAKE2S160E BLAKE2S160 BLAKE2S224E BLAKE2S224 BLAKE2SP256E BLAKE2SP256 BLAKE2SP224E BLAKE2SP224 SHA1E SHA1 MD5E MD5 WORM URL
remote types: git gcrypt p2p S3 bup directory rsync web bittorrent webdav adb tahoe glacier ddar hook external
Version 6.20180426 also produces the same result, however the webapp does not launch a browser window.
### 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
[2018-04-29 22:12:25.754703] main: starting assistant version 6.20180409-gfb0780266
[2018-04-29 22:12:25.780218] Cronner: You should enable consistency checking to protect your data.
(scanning...) [2018-04-29 22:12:25.901493] Watcher: Performing startup scan
(started...)
gpg: assuming signed data in '/var/folders/vt/jdjpydy51cb4c9743nvk2s7m0000gp/T/git-annex.tmpvDEpq7/info'
gpg: Signature made Fri Apr 27 20:03:18 2018 EAT using DSA key ID 89C809CB
gpg: /var/folders/vt/jdjpydy51cb4c9743nvk2s7m0000gp/T/git-annex-gpg.tmpBe1DxC/trustdb.gpg: trustdb created
gpg: Good signature from "git-annex distribution signing key (for Joey Hess) <id@joeyh.name>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 4005 5C6A FD2D 526B 2961 E78F 5EE1 DBA7 89C8 09CB
[2018-04-29 22:12:28.884998] Upgrader: An upgrade of git-annex is available. (version 6.20180426)
(recording state in git...)
29/Apr/2018:22:13:13 +0300 [Error#yesod-core] there is no available git remote named "SeagateBlack" @(yesod-core-1.4.37-GCI7RasEcSMIU2vku0fHJ1:Yesod.Core.Class.Yesod ./Yesod/Core/Class/Yesod.hs:693:5)
fatal: remote SeagateBlack already exists.
29/Apr/2018:22:13:21 +0300 [Error#yesod-core] there is no available git remote named "SeagateBlack" @(yesod-core-1.4.37-GCI7RasEcSMIU2vku0fHJ1:Yesod.Core.Class.Yesod ./Yesod/Core/Class/Yesod.hs:693:5)
fatal: remote SeagateBlack already exists.
29/Apr/2018:22:13:24 +0300 [Error#yesod-core] there is no available git remote named "SeagateBlack" @(yesod-core-1.4.37-GCI7RasEcSMIU2vku0fHJ1:Yesod.Core.Class.Yesod ./Yesod/Core/Class/Yesod.hs:693:5)
##restarted daemon via webapp##
[2018-04-29 22:13:33.426914] main: starting assistant version 6.20180409-gfb0780266
[2018-04-29 22:13:33.474857] Cronner: You should enable consistency checking to protect your data.
[2018-04-29 22:13:33.494878] TransferScanner: Syncing with SeagateBlack
(scanning...) [2018-04-29 22:13:33.646686] Watcher: Performing startup scan
(started...)
warning: no common commits
From /Volumes/SeagateBlack/annex
* [new branch] git-annex -> SeagateBlack/git-annex
(merging SeagateBlack/git-annex into git-annex...)
(recording state in git...)
To /Volumes/SeagateBlack/annex
* [new branch] git-annex -> synced/git-annex
* [new branch] annex/direct/master -> synced/master
gpg: assuming signed data in '/var/folders/vt/jdjpydy51cb4c9743nvk2s7m0000gp/T/git-annex.tmpIrPVZb/info'
gpg: Signature made Fri Apr 27 20:03:18 2018 EAT using DSA key ID 89C809CB
gpg: /var/folders/vt/jdjpydy51cb4c9743nvk2s7m0000gp/T/git-annex-gpg.tmptALBpe/trustdb.gpg: trustdb created
gpg: Good signature from "git-annex distribution signing key (for Joey Hess) <id@joeyh.name>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 4005 5C6A FD2D 526B 2961 E78F 5EE1 DBA7 89C8 09CB
[2018-04-29 22:13:38.218204] Upgrader: An upgrade of git-annex is available. (version 6.20180426)
[2018-04-29 22:14:33.641316] Pusher: Syncing with SeagateBlack
Everything up-to-date
##restarted daemon via webapp##
[2018-04-29 22:14:04.840648] main: starting assistant version 6.20180409-gfb0780266
[2018-04-29 22:14:04.914622] Cronner: You should enable consistency checking to protect your data.
[2018-04-29 22:14:04.938372] TransferScanner: Syncing with SeagateBlack
(scanning...) [2018-04-29 22:14:05.129225] Watcher: Performing startup scan
(recording state in git...)
(started...)
To /Volumes/SeagateBlack/annex
96eb102..56b72d6 git-annex -> synced/git-annex
gpg: assuming signed data in '/var/folders/vt/jdjpydy51cb4c9743nvk2s7m0000gp/T/git-annex.tmp6iw9TV/info'
gpg: Signature made Fri Apr 27 20:03:18 2018 EAT using DSA key ID 89C809CB
gpg: /var/folders/vt/jdjpydy51cb4c9743nvk2s7m0000gp/T/git-annex-gpg.tmpFugMM8/trustdb.gpg: trustdb created
gpg: Good signature from "git-annex distribution signing key (for Joey Hess) <id@joeyh.name>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 4005 5C6A FD2D 526B 2961 E78F 5EE1 DBA7 89C8 09CB
[2018-04-29 22:14:13.443848] Upgrader: An upgrade of git-annex is available. (version 6.20180426)
[2018-04-29 22:14:29.453797] Committer: Adding testing.txt
add /Users/jhnichol/Desktop/annex/testing.txt ok
[2018-04-29 22:14:29.458807] Committer: Committing changes to git
(recording state in git...)
[2018-04-29 22:14:29.508458] Pusher: Syncing with SeagateBlack
(recording state in git...)
testing.txt
13 100% 0.00kB/s 0:00:00
13 100% 0.00kB/s 0:00:0(checksum...) 0 (xfer#1, to-check=0/1)
sent 105 bytes received 42 bytes 294.00 bytes/sec
total size is 13 speedup is 0.09
[2018-04-29 22:14:29.908335] Transferrer: Uploaded testing.txt
To /Volumes/SeagateBlack/annex
56b72d6..97076de git-annex -> synced/git-annex
f981f0e..903f744 annex/direct/master -> synced/master
[2018-04-29 22:14:31.993469] Pusher: Syncing with SeagateBlack
(recording state in git...)
To /Volumes/SeagateBlack/annex
97076de..351ae72 git-annex -> synced/git-annex
[2018-04-29 22:14:37.442779] Committer: Adding testing.txt
add /Users/jhnichol/Desktop/annex/archive/testing.txt ok
[2018-04-29 22:14:37.451934] Committer: Committing changes to git
(recording state in git...)
[2018-04-29 22:14:37.506885] Pusher: Syncing with SeagateBlack
To /Volumes/SeagateBlack/annex
903f744..0ace0a4 annex/direct/master -> synced/master
[2018-04-29 22:15:05.080814] Pusher: Syncing with SeagateBlack
To /Volumes/SeagateBlack/annex
351ae72..acc6f66 git-annex -> synced/git-annex
[2018-04-29 22:15:07.643433] Committer: Committing changes to git
(recording state in git...)
[2018-04-29 22:15:07.716942] Pusher: Syncing with SeagateBlack
To /Volumes/SeagateBlack/annex
0ace0a4..216adc1 annex/direct/master -> synced/master
##restarted daemon via webapp##
[2018-04-29 22:15:12.721042] main: starting assistant version 6.20180409-gfb0780266
[2018-04-29 22:15:12.780184] Cronner: You should enable consistency checking to protect your data.
[2018-04-29 22:15:12.802662] TransferScanner: Syncing with SeagateBlack
(scanning...) [2018-04-29 22:15:12.995192] Watcher: Performing startup scan
Everything up-to-date
(started...)
[2018-04-29 22:15:13.807031] Committer: Committing changes to git
(recording state in git...)
SHA256E-s13--091dfb50686a31a1137099832271eb582fbb745aeca5c0c8153ffc9acc7cd0fe.txt
13 100% 0.00kB/s 0:00:00
13 100% 0.00kB/s 0:00:00 (xfer#1, to-check=0/1)
sent 175 bytes received 42 bytes 434.00 bytes/sec
total size is 13 speedup is 0.06
(checksum...) [2018-04-29 22:15:13.980745] Transferrer: Downloaded testing.txt
[2018-04-29 22:15:14.805402] Pusher: Syncing with SeagateBlack
(recording state in git...)
To /Volumes/SeagateBlack/annex
acc6f66..f62818b git-annex -> synced/git-annex
216adc1..bebd3d1 annex/direct/master -> synced/master
[2018-04-29 22:15:15.384765] Committer: Adding testing.txt
add /Users/jhnichol/Desktop/annex/testing.txt ok
[2018-04-29 22:15:15.447495] Committer: Committing changes to git
(recording state in git...)
gpg: assuming signed data in '/var/folders/vt/jdjpydy51cb4c9743nvk2s7m0000gp/T/git-annex.tmpxY52C5/info'
gpg: Signature made Fri Apr 27 20:03:18 2018 EAT using DSA key ID 89C809CB
gpg: /var/folders/vt/jdjpydy51cb4c9743nvk2s7m0000gp/T/git-annex-gpg.tmpqPe64c/trustdb.gpg: trustdb created
gpg: Good signature from "git-annex distribution signing key (for Joey Hess) <id@joeyh.name>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 4005 5C6A FD2D 526B 2961 E78F 5EE1 DBA7 89C8 09CB
[2018-04-29 22:15:15.908187] Upgrader: An upgrade of git-annex is available. (version 6.20180426)
[2018-04-29 22:15:16.983499] Pusher: Syncing with SeagateBlack
Everything up-to-date
# 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)
I have not used it before, but I'm determined to make it work! I'm nomadic and archive my pictures/videos/files and therefore this software must be perfect for me!

View file

@ -0,0 +1,17 @@
[[!comment format=mdwn
username="allforabit"
avatar="http://cdn.libravatar.org/avatar/32e0c529af793688f16aa23cb462d9da"
subject="Error in High Sierra"
date="2018-04-29T18:28:07Z"
content="""
I'm getting an error when attempting to launch the webapp using the brew build of the app. The error is as follows:
```
uname: illegal option -- o
usage: uname [-amnprsv]
...
git-annex: user error (uname [\"-o\"] exited 1)
```
Is anyone else getting this error? I have tried the autobuilt dmg as well but that doesn't launch the webapp.
Thanks!
"""]]

View file

@ -0,0 +1,9 @@
[[!comment format=mdwn
username="lhunath@3b4ff15f4600f3276d1776a490b734fca0f5c245"
nickname="lhunath"
avatar="http://cdn.libravatar.org/avatar/6388e539b56b3875cc9aceb9f404b3ad"
subject="comment 21"
date="2018-04-29T18:37:16Z"
content="""
I don't get this, but I should note uname on macOS doesn't have -o, this should probably be changed to -s
"""]]

View file

@ -0,0 +1,26 @@
[[!comment format=mdwn
username="hobbes@b2cacef69071743c3a831e60511062f7e014e52f"
nickname="hobbes"
avatar="http://cdn.libravatar.org/avatar/44b70169c4d862b3619812c360aa8f1e"
subject="Bad system call fix"
date="2018-04-30T15:01:09Z"
content="""
Found this issue thread:
https://github.com/termux/termux-packages/issues/420
which had the solution to this particular issue! Yay \o/! Needed to call
```
unset LD_PRELOAD
```
I'm noticing that the arm builds are missing now (current 403s, autobuild 404s), but maybe that's intentional for now? Either way, I have gotten past the bad system call issue with `runshell`, but now when I try to run `git annex webapp` I get...
```
fatal: 'annex' appears to be a git command, but we were not able to execute it. Maybe you need to 'pkg install perl'?
```
I ran `pkg install perl`, but I get the same message :(. Either way, I'm glad this seems to be moving forward, and very excited that I might finally be able to put git-annex back on my phone after all these years!
"""]]

View file

@ -7,3 +7,5 @@ I had an idea the other night that there could be a `git annex open` command. Wh
This would need some [[metadata]] support partly to guess if the file can be streamed, but also to find the content. It would also assume some more intelligence in `git annex get` where git annex would have progress information (maybe through [[chunking]]?).
How does that idea sound? --[[anarcat]]
I think this idea can be considered obsoleted by the [[git-annex-inprogress]] command. --[[anarcat]]

View file

@ -0,0 +1,25 @@
Recent git-annex started to handle http connections internally (instead of relying on `wget` and `curl`) which is great in general. But I wondered if it is relatively easy to retain support for authentication via "standard" `~/.netrc` which `wget` supports nicely. But ATM (e.g. with 6.20180416) it wouldn't work
Example:
[[!format sh """
$> git annex addurl --debug http://onerussian.com/tmp/secret/index.html --file testDemo.mnc
[2018-04-27 21:10:52.699047352] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","show-ref","git-annex"]
[2018-04-27 21:10:52.707407583] process done ExitSuccess
[2018-04-27 21:10:52.707650197] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","show-ref","--hash","refs/heads/git-annex"]
[2018-04-27 21:10:52.711677639] process done ExitSuccess
[2018-04-27 21:10:52.711863237] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","log","refs/heads/git-annex..1aef0c7917a50ea5a23702f04c6e7778ea5c8843","--pretty=%H","-n1"]
[2018-04-27 21:10:52.719171987] process done ExitSuccess
[2018-04-27 21:10:52.719903748] chat: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","cat-file","--batch"]
[2018-04-27 21:10:52.721168737] chat: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","cat-file","--batch-check=%(objectname) %(objecttype) %(objectsize)"]
addurl http://onerussian.com/tmp/secret/index.html
failed
[2018-04-27 21:10:53.010687336] process done ExitSuccess
[2018-04-27 21:10:53.011302754] process done ExitSuccess
"""]]
whenever works with e.g. 6.20180316 if corresponding settings are setup in `~/.netrc`
Or may be there is some other alternative support for such cases now?
[[!meta author=yoh]]