Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PermissionError when Spyder is started #6319

Closed
mzeeqazi opened this issue Jan 28, 2018 · 10 comments
Closed

PermissionError when Spyder is started #6319

mzeeqazi opened this issue Jan 28, 2018 · 10 comments

Comments

@mzeeqazi
Copy link

Error encountered when i open spyder

File "D:\ProgramData\Anaconda3\lib\site-packages\spyder\utils\external\lockfile.py", line 88, in symlink
rename(newlinkname, filename)
PermissionError: [WinError 5] Access is denied: 'C:\Users\mzeeqazi\.spyder-py3\spyder.lock.1517167725983.newlink' -> 'C:\Users\mzeeqazi\.spyder-py3\spyder.lock'

Traceback (most recent call last):
File "D:\ProgramData\Anaconda3\lib\site-packages\spyder\app\start.py", line 118, in main
lock_created = lock.lock()
File "D:\ProgramData\Anaconda3\lib\site-packages\spyder\utils\external\lockfile.py", line 150, in lock
symlink(str(os.getpid()), self.name)
File "D:\ProgramData\Anaconda3\lib\site-packages\spyder\utils\external\lockfile.py", line 91, in symlink
os.rmdir(newlinkname)
OSError: [WinError 145] The directory is not empty: 'C:\Users\mzeeqazi\.spyder-py3\spyder.lock.1517167725983.newlink'

Traceback (most recent call last):
File "D:\ProgramData\Anaconda3\lib\site-packages\spyder\plugins_init_.py", line 511, in
toggled=lambda checked: self.toggle_view(checked),
File "D:\ProgramData\Anaconda3\lib\site-packages\spyder\plugins\ipythonconsole.py", line 713, in toggle_view
self.create_new_client(give_focus=False)
File "D:\ProgramData\Anaconda3\lib\site-packages\spyder\plugins\ipythonconsole.py", line 1009, in create_new_client
self.connect_client_to_kernel(client)
File "D:\ProgramData\Anaconda3\lib\site-packages\spyder\plugins\ipythonconsole.py", line 1035, in connect_client_to_kernel
stderr_file)
File "D:\ProgramData\Anaconda3\lib\site-packages\spyder\plugins\ipythonconsole.py", line 1440, in create_kernel_manager_and_kernel_client
kernel_manager.start_kernel(stderr=stderr)
File "D:\ProgramData\Anaconda3\lib\site-packages\jupyter_client\manager.py", line 257, in start_kernel
**kw)
File "D:\ProgramData\Anaconda3\lib\site-packages\jupyter_client\manager.py", line 203, in _launch_kernel
return launch_kernel(kernel_cmd, **kw)
File "D:\ProgramData\Anaconda3\lib\site-packages\jupyter_client\launcher.py", line 128, in launch_kernel
proc = Popen(cmd, **kwargs)
File "D:\ProgramData\Anaconda3\lib\subprocess.py", line 709, in init
restore_signals, start_new_session)
File "D:\ProgramData\Anaconda3\lib\subprocess.py", line 997, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified

Version and main components

  • Spyder Version: 3.2.4
  • Python Version: 3.6.3
  • Qt Versions: 5.6.2, PyQt5 5.6 on Windows

Dependencies

pyflakes >=0.6.0 :  1.6.0 (OK)
pycodestyle >=2.3:  2.3.1 (OK)
pygments >=2.0   :  2.2.0 (OK)
pandas >=0.13.1  :  0.20.3 (OK)
numpy >=1.7      :  1.13.3 (OK)
sphinx >=0.6.6   :  1.6.3 (OK)
rope >=0.9.4     :  0.10.5 (OK)
jedi >=0.9.0     :  0.10.2 (OK)
nbconvert >=4.0  :  5.3.1 (OK)
sympy >=0.7.3    :  1.1.1 (OK)
cython >=0.21    :  0.26.1 (OK)
qtconsole >=4.2.0:  4.3.1 (OK)
IPython >=4.0    :  6.1.0 (OK)
pylint >=0.25    :  1.7.4 (OK)

@ccordoba12 ccordoba12 changed the title ERROR SPYDER using Anaconda PermissionError when Spyder is started Jan 28, 2018
@ccordoba12 ccordoba12 added this to the v3.2.8 milestone Jan 28, 2018
This was referenced Jan 28, 2018
@ccordoba12
Copy link
Member

Thanks for reporting. This happens because you have Spyder installed in your D:\ drive, but you're trying to run it in with your user, whose files are located in your C:\ drive.

To fix this, you need to uninstall Anaconda and install it again for your user and in your C\: drive.

@ccordoba12
Copy link
Member

@CAM-Gerlach, this shows quite clearly that this recurrent problem is due to a permissions error.

@ccordoba12 ccordoba12 modified the milestones: v3.2.8, v3.2.7 Jan 28, 2018
@ccordoba12
Copy link
Member

I'll fix the first part:

File "D:\ProgramData\Anaconda3\lib\site-packages\spyder\utils\external\lockfile.py", line 88, in symlink
rename(newlinkname, filename)
PermissionError: [WinError 5] Access is denied: 'C:\Users\mzeeqazi.spyder-py3\spyder.lock.1517167725983.newlink' -> 'C:\Users\mzeeqazi.spyder-py3\spyder.lock'

The second part was already fixed by @dalthviz in #6305.

@CAM-Gerlach
Copy link
Member

CAM-Gerlach commented Jan 28, 2018

@ccordoba12 Okay, thanks! I'll make sure to inform users thus when it inevitably gets reported again, and refer them to this issue as you have. Just to be clear, is that the reason you tagged me on this, or is there something else you'd like me to do? Thanks.

@ccordoba12
Copy link
Member

@mzeeqazi, could you help us to debug this? The problem is we are unable to reproduce it.

@ccordoba12
Copy link
Member

@CAM-Gerlach, I was wrong. @dalthviz work didn't fix this. I still don't understand why it happens.

@mzeeqazi
Copy link
Author

@ccordoba12 How can i help you??

@ccordoba12 ccordoba12 removed this from the v3.2.7 milestone Jan 29, 2018
@ccordoba12
Copy link
Member

ccordoba12 commented Jan 29, 2018

Thanks for reporting the full error @mzeeqazi! That was what made me finally realize the source of this problem: the removal of the conda environment used to start our kernels. So the second part of your problem is a duplicate of issue #4958.

You have two options to fix it until we do:

  1. Run in a system terminal (cmd.exe) spdyer --reset.
  2. Go to Preferences > Python interpreter and select either the Default interpreter or a new custom one.

@ccordoba12
Copy link
Member

I forgot that we still have to fix the first part of your problem.

@ccordoba12
Copy link
Member

@dalthviz, please work on this one. The idea is to address this problem

File "D:\ProgramData\Anaconda3\lib\site-packages\spyder\utils\external\lockfile.py", line 88, in symlink
rename(newlinkname, filename)
PermissionError: [WinError 5] Access is denied: 'C:\Users\mzeeqazi.spyder-py3\spyder.lock.1517167725983.newlink' -> 'C:\Users\mzeeqazi.spyder-py3\spyder.lock'

To solve it, we need to catch IOError and OSError around these lines

https://github.com/spyder-ide/spyder/blob/3.x/spyder/utils/external/lockfile.py#L91-L92

and pass in the except part.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants
@ccordoba12 @mzeeqazi @dalthviz @CAM-Gerlach and others