Open vncntprvst opened 1 year ago
(Image: CC-BY license, The Turing Way Community, & Scriberia. Zenodo. http://doi.org/10.5281/zenodo.3332808) Hi there, and thank you for filing an issue. We're excited to have your input and welcome your idea! :blush:
Hi, thanks for the issue! I'll try to figure out what might be wrong, but I need a bit more information. Do I read it correctly that you're seeing this error at the step "create a dataset" from the first part of the docs, i.e., in a local DataLad dataset you created? If so, did you see anything unexpected when you ran datalad create? And is this with any file right from the start, or has it suddenly started to happen with a specific file? Or is it with a Dataset that you cloned from Gin to your local system, following the step "Retrieve data" from the last part of the docs? Or in an entirely different step?
Hi Adina,
Thanks for your reply.
This issue occurs within an existing dataset. I created it previously, and pushed updates to the GIN repo on gin.g-node.org.
I want to commit new data to the repository, so I use the command Save the state in a dataset
before pushing. The permission denied occurs almost every time, but not necessarily for the same file.
Also, this may be unrelated but just to mention it, I don't seem to have set up the connection to the repo properly in DataLad Gooey. I get this error when pushing data to the remote repo with Dataset commands → Push data/updates to a sibling
CommandError: '"git" "-c" "diff.ignoreSubmodules=none" "fetch" "origin" "git-annex"' failed with exitcode 128 [err: 'datalad sshrun: line 1: datalad: command not found
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
Instead I commit and push data with git, via a terminal, which works fine.
@vncntprvst
Instead I commit and push data with git, via a terminal, which works fine.
Does datalad push
via terminal also work fine? Because the error message you get via gooey seems strange (datalad: command not found
), suggesting there's something wrong with the environment/installation.
@christian-monch can you please have a look here? I think this is a side-effect of the encapsulated installation of the Python env that contains the datalad installation used for the GUI.
The question to me is whether we should consider this windows specific, or rather a general issue of an environment-based installation. We can only assume the CLI entrypoints to exist within that env, hence all shell commands must run within that env too. However, (currently) it is not guaranteed that a CLI setup exists for any environment that can run the GUI.
This is (likely) also causing failure of the following components:
datalad-gooey-askpass
)datalad
, archives
)XLDRA
git-annex backend, and git-remote-datalad-annex
Ok, so then that's two issue - one is the yet unclear permission error, and then there is the environment.
Does datalad push via terminal also work fine?
If you only have datalad-gooey
installed, no other DataLad installation, I would expect that you wouldn't be able to call datalad push
from a terminal, @vncntprvst. I'd expect something just like datalad: command not found
. The installation is deliberately encapsulated in %LOCALAPPDATA%
, and the installer doesn't add DataLad's binaries to the env
/PATH
. But the error message datalad: command not found
suggests that some processes fail to find it, and that we might need to add it to PATH
. Tagging @christian-monch
I confirm that DataLad cannot be called from a terminal and so datalad push
fails.
Would you recommend that I add it to the path?
I confirm that DataLad cannot be called from a terminal and so
datalad push
fails. Would you recommend that I add it to the path?
I'm unsure whether it might not simply be easier to have us fix these early gooey issues and have the next installer take care of doing things more properly. If you are using the command line anyway and have Python already on your system, an installation with a package manager of your choice (conda, pip) would give you the same or more flexibility - If you don't use Python on your system or aren't very keen on using the command line and need things to work before the next installer has taken care of the issue, the binaries are located in %LOCALAPPDATA%\datalad.org\datalad-gooey
. On my Windows 10 system this translates to C:\Users\adina\AppData\Local\datalad.org\datalad-gooey
- in there, it is part of the packages in python39
.
But other than the push, I think the permission error is also quite an interesting one. Were you able to run datalad status
or git status
in the dataset? Is the dataset only used by you, or are there several users with access to it?
Sounds good.
I'm the only one to use this dataset. From a terminal, git status
works, not datalad
, as it is not in the path.
Just one last note, this might be expected, but if I run:
%LOCALAPPDATA%\datalad.org\datalad-gooey\python39\python.exe -m datalad status
I get this error:
The DataLad AutomagicIO functionality has been moved to an extension package. Please install the Python package ``datalad_deprecated`` to be able to use it.
My apologies for the slow ping pong in this issue. Next Tuesday is a an official software demo of this, and most energy currently goes into finishing the metadata functionality until then. If you happen to have time today at 5PM CE(S)T (I think thats 11AM your time), would you mind joining our office hour to take a closer look via screen sharing?
PRs #364 and #370 fix the described issue with saving for me. They also allow to create a gin sibling and to push to it.
An issue that is left is that ssh
will interact with the terminal in order to as for trust into a new host key. This is not visible on the UI and might give the impression that datalad_gooey is frozen, while it is only waiting on console input (described here issue #371)
With both PRs merged I was able to create a GIN sibling and push to it via the GUI.
Thanks for working on these fixes! @adswa, sorry I missed your message. My apologies. I'll get back to you as soon as I got a chance to test this out.
Is it a new bug?
I did not find an existing issue about my problem
What is the problem?
When saving the contents of a dataset (
Dataset commands → Save the state in a dataset
), the operation fails most of a time after a few %. The log error shows as:git-annex: path/to/dataset/myfile: hGetBuf: permission denied (Permission denied) [err: 'add: 1 failed']
What steps will reproduce the problem?
This is on Windows 10 Enterprise. The dataset repository is a GIN sibling, created following the docs' procedure.
Reproduce the bug:
Additional context
No response
How did you install the App?
pip install datalad-gooey
)brew install datalad-gooey
)conda install -c forge datalad-gooey
)System information
Diagnostic infos
``` # WTF ## configuration