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

This commit is contained in:
Joey Hess 2022-07-05 13:07:01 -04:00
commit 40df68341e
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
7 changed files with 174 additions and 0 deletions

View file

@ -0,0 +1,57 @@
### Please describe the problem.
FTBFS for two days (this error matches only on linux, didn't check others why they are red in https://github.com/datalad/git-annex):
```
2022-06-29T03:25:00.4893455Z E: build failed
2022-06-29T03:25:00.4894450Z I: the tail of the log
2022-06-29T03:25:00.4903612Z [310 of 677] Compiling Creds ( Creds.hs, dist/build/git-annex/git-annex-tmp/Creds.o )
2022-06-29T03:25:00.4908788Z [311 of 677] Compiling Remote.Helper.AWS ( Remote/Helper/AWS.hs, dist/build/git-annex/git-annex-tmp/Remote/Helper/AWS.o )
2022-06-29T03:25:00.4910166Z [312 of 677] Compiling P2P.Address ( P2P/Address.hs, dist/build/git-annex/git-annex-tmp/P2P/Address.o )
2022-06-29T03:25:00.4911450Z [313 of 677] Compiling P2P.Auth ( P2P/Auth.hs, dist/build/git-annex/git-annex-tmp/P2P/Auth.o )
2022-06-29T03:25:00.4912850Z [314 of 677] Compiling Annex.Notification ( Annex/Notification.hs, dist/build/git-annex/git-annex-tmp/Annex/Notification.o )
2022-06-29T03:25:00.4913599Z
2022-06-29T03:25:00.4913895Z Annex/Notification.hs:37:42: error:
2022-06-29T03:25:00.4914739Z * Couldn't match type `Annex.AnnexState' with `Annex.AnnexRead'
2022-06-29T03:25:00.4915686Z Expected type: Annex.AnnexState -> DesktopNotify
2022-06-29T03:25:00.4916569Z Actual type: Annex.AnnexRead -> DesktopNotify
2022-06-29T03:25:00.4917418Z * In the first argument of `Annex.getState', namely
2022-06-29T03:25:00.4918159Z `Annex.desktopnotify'
2022-06-29T03:25:00.4918842Z In a stmt of a 'do' block:
2022-06-29T03:25:00.4919609Z wanted <- Annex.getState Annex.desktopnotify
2022-06-29T03:25:00.4920362Z In the expression:
2022-06-29T03:25:00.4921081Z do wanted <- Annex.getState Annex.desktopnotify
2022-06-29T03:25:00.4921878Z if (notifyStart wanted || notifyFinish wanted) then
2022-06-29T03:25:00.4922815Z do client <- liftIO DBus.Client.connectSession
2022-06-29T03:25:00.4923576Z ....
2022-06-29T03:25:00.4924147Z else
2022-06-29T03:25:00.4924729Z a NotifyWitness
2022-06-29T03:25:00.4925310Z |
2022-06-29T03:25:00.4926060Z 37 | wanted <- Annex.getState Annex.desktopnotify
2022-06-29T03:25:00.4926916Z | ^^^^^^^^^^^^^^^^^^^
2022-06-29T03:25:00.4927396Z
2022-06-29T03:25:00.4927702Z Annex/Notification.hs:60:34: error:
2022-06-29T03:25:00.4928555Z * Couldn't match type `Annex.AnnexState' with `Annex.AnnexRead'
2022-06-29T03:25:00.4929502Z Expected type: Annex.AnnexState -> DesktopNotify
2022-06-29T03:25:00.4930367Z Actual type: Annex.AnnexRead -> DesktopNotify
2022-06-29T03:25:00.4931212Z * In the first argument of `Annex.getState', namely
2022-06-29T03:25:00.4931962Z `Annex.desktopnotify'
2022-06-29T03:25:00.4935814Z In a stmt of a 'do' block:
2022-06-29T03:25:00.4936937Z wanted <- Annex.getState Annex.desktopnotify
2022-06-29T03:25:00.4937934Z In the expression:
2022-06-29T03:25:00.4938808Z do wanted <- Annex.getState Annex.desktopnotify
2022-06-29T03:25:00.4939703Z when (notifyFinish wanted)
2022-06-29T03:25:00.4940467Z $ liftIO
2022-06-29T03:25:00.4941336Z $ do client <- DBus.Client.connectSession
2022-06-29T03:25:00.4942492Z void $ Notify.notify client (droppedNote ok (fromRawFilePath f))
2022-06-29T03:25:00.4943446Z |
2022-06-29T03:25:00.4944547Z 60 | wanted <- Annex.getState Annex.desktopnotify
2022-06-29T03:25:00.4945576Z | ^^^^^^^^^^^^^^^^^^^
2022-06-29T03:25:00.4946531Z make[3]: *** [Makefile:58: git-annex] Error 1
```
full log at https://github.com/datalad/git-annex/runs/7124197096?check_suite_focus=true or on smaug on `/mnt/datasets/datalad/ci/git-annex/builds/2022/06/cron-20220629/build-ubuntu.yaml-744-90215d4e-failed/1_build-package (1).txt`
[[!meta author=yoh]]
[[!tag projects/datalad]]

View file

@ -0,0 +1,9 @@
[[!comment format=mdwn
username="Soxofaan"
avatar="http://cdn.libravatar.org/avatar/2083c64f7bc36bfd8809f15f0036ade1"
subject="no worries"
date="2022-06-30T16:51:50Z"
content="""
No worries, @joey, I fully understand that you sometimes have to make breaking changes. 2016 is indeed really ages ago, but my NAS is currently stuck there.
My blog post probably comes across more \"complainy\" than I intended. My point is actually that thanks to the \"open\" in open source, I eventually managed to cook up a solution.
"""]]

View file

@ -46,3 +46,4 @@ Test image used in this bug report: https://wallpapercave.com/wp/wp8215486.jpg
I'm really loving git-annex. I've been reading up and I'm more than halfway through the devlog and I'm hoping to use git-annex for a lot and a long while. Mostly, I'm expecting to use it on Linux systems, but I'd love to be able to rely on it on my (Windows) work laptop as well. Thanks for looking at my report!
[[!meta title="assistant on windows misses copy+rename of file"]]
[[done]]

View file

@ -0,0 +1,10 @@
[[!comment format=mdwn
username="contr-error"
avatar="http://cdn.libravatar.org/avatar/d79c2491dfc6947b8084796b06174cdb"
subject="comment 2"
date="2022-06-29T19:13:56Z"
content="""
Hi Joey, thanks for looking into this and your work on git-annex! You're correct on both counts. After posting the report I tried manually adding the file and, indeed, restarting the assistant also makes it notice the file. I'm still exploring, but what seemed to be inscrutable behaviour at first, now seems reasonable enough.
I've also encountered some access violations and I'm running into sqlite errors on WSL (1 & 2), both of which probably aren't worth reporting at this time, and the latter of which is probably out of scope of this bug tracker, anyway.
"""]]

View file

@ -0,0 +1,24 @@
[[!comment format=mdwn
username="yarikoptic"
avatar="http://cdn.libravatar.org/avatar/f11e9c84cb18d26a1748c33b48c924b4"
subject="mystery resolved"
date="2022-07-01T19:19:30Z"
content="""
Ok, resolved mystery for myself:
> So if you were using an url without .git before, it seems like it would have failed to detect a uuid after enabling the special remote.
yes -- if `initremote` failed to detect uuid it
- didn't exit with non-0 (i.e. initremote call succeeded, our code passed through)
- produced a \"funky\" looking remotes.log entry without UUID:
```shell
(git-annex)lena:~/.tmp/datalad_temp_test_as_common_datasourcek5ozqwqd[dl-test-branch]git-annex
$> git show git-annex:remote.log
autoenable=true location=http://127.0.0.1:41311/ name=fresh-sr type=git timestamp=1656702874.867345813s
0392395d-c1a2-4791-ba6a-e932f1392c34 autoenable=true location=http://127.0.0.1:41311/.git name=mike2 type=git timestamp=165670282
```
and our test was working before because apparently we had that type=git remote already added with the correct (with `.git`) url (as you can see above) so as long as initremote didn't crash, we were \"happy\" ;) a little more info could be found in [our datalad issue](https://github.com/datalad/datalad/issues/6779)
"""]]

View file

@ -0,0 +1,46 @@
### Please describe the problem.
originally filed/investigated in [DataLad #6778](https://github.com/datalad/datalad/issues/6778).
<details>
<summary>Following reproducer which simply git annex adds a moved to subdirectory annexed file</summary>
```bash
#!/bin/bash
cd "$(mktemp -d ${TMPDIR:-/tmp}/dl-XXXXXXX)"
set -eu
git init
git annex init
echo 123 > 123
git annex add 123
git commit -m 'commit 123'
mkdir sub
mv 123 sub
git annex add sub/123
git commit -m 'committing moved'
```
</details>
crashes with
```
[master (root-commit) 30d904b] commit 123
1 file changed, 1 insertion(+)
create mode 120000 123
add sub/123
git-annex: sub/123: rename: does not exist (No such file or directory)
failed
add: 1 failed
```
with recent (after 10.20220525+git96-gf259be7f3, full range for when bug introduced AFAIK is 10.20220525+git81-g8916c818b..10.20220525+git96-gf259be7f3) git-annex
As this is such a basic operation, I am still wondering how come it is not caught by git-annex tests and only 1 of our datalad tests managed to pick this up!
[[!meta author=yoh]]
[[!tag projects/datalad]]

View file

@ -0,0 +1,27 @@
### Please describe the problem.
Our
due to [10.20220624-27-gb223988e2](https://git.kitenet.net/index.cgi/git-annex.git/commit/?id=b223988e22931cf2243ae14289d22ef4e70e51f2) :
```
remove --backend from global options
--backend is no longer a global option, and is only accepted by commands
that actually need it.
```
well, our tests on OSX started to fail in
```shell
2022-06-30T05:53:21.6356200Z E datalad.runner.exception.CommandError: CommandError: 'git -c diff.ignoreSubmodules=none annex addurl --backend SHA1 --file=remotefile2 http://127.0.0.1:52474/remotefile --json --json-error-messages --json-progress -c annex.dotfiles=true' failed with exitcode 1 under /private/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/datalad_temp_tree_test_AnnexRepo_backend_optionhe08bgd0 [info keys: stdout_json] [err: 'Invalid option `--backend'
```
so we are not using it as a global option. This functionality was already released in DataLad and I would appreciate if support for it was returned in git-annex so we could avoid coming up with an alternative way to do the same thing.
Sample logs could be found at https://github.com/datalad/git-annex/runs/7123868190?check_suite_focus=true or `/mnt/datasets/datalad/ci/git-annex/builds/2022/06/cron-20220630/build-macos.yaml-740-90215d4e-failed/1_test-datalad (master).txt` on smaug
[[!meta author=yoh]]
[[!tag projects/datalad]]