Closed jcbird closed 4 years ago
I am moving this to a new issue @mkounkel .
Could you try to pull the latest commit and reinstall via python setup install ? Then report back. Thanks!
Also, restart the kernel in the Jupyter notebook to clear everything from memory.
No change from yesterday, even after a complete uninstall to test that it wasn't doing some weird caching. Installing it back again still leaves it hanging after trying to import.
Sorry for the delay @mkounkel . OK, I just did a fresh pull and a brand new install in a new environment. No issues. Could you paste/attach the contents of your ppv_setup.ini file?
Also, please try deleting the ppv directory in site-packages (uninstalling ppv). Do a new pull of the ppv repo, reinstall, and report back. If you get the same error, could you try reading in any other fits file with astropy and make sure the problem isn't there. Thanks! I would be more inclined to think ppv is at fault but your experience is the only one I have heard like this so far, so ensuring astropy is working properly is worth a shot, too.
One thing I do not do is set up a separate environment for all the projects - I have no idea how to manage them. I'm also still running 3.7, not 3.8
As before, I uninstalled the package (via pip uninstall ppv, can confirm that afterwards it can't find the package). Installing it back again - same issue as before. The password I'm entering is correct, copypasting the same string from the password manager works fine in ssh-ing directly. I tried entering intentionally incorrect password when logging in, it didn't call me out on it, just still hanged up in exact same way. I tried changing the password, thinking that perhaps some of the special symbols might be messing it up - but, no, same issue as before.
And, no, pretty sure that the issue is just with logging in to download the files to begin with, not with astropy.
I was able to parse the files in the five_plates repo directly, I think, so it's not a be-all end-all
Contents of the ini file:
[paths]
plate_dir = /Users/mkounkel/research/cluster/targeting/ppv/plate
fiveplates_dir = /Users/mkounkel/research/cluster/targeting/ppv/plate1
# If you want your plate files in, e.g., /home/user/data/plates/0150XX
# and /home/user/data/plates/0160XX, then edit the plate_dir line to read
# plate_dir = /home/user/data/plates
# fiveplates_dir is the directory corresponsing to 'plateruns' in
# your local five_plates repo (you need to clone this repo, see ppv README)
# e.g., if the five_plates repo is located in /home/user/local, then put
# fiveplates_dir = /home/user/local/five_plates/plateruns
[username]
sdss_org = u6031723
# NO quotes
# If you do NOT have an account at Utah, please get one at
# https://wiki.sdss.org/display/DATA/Utah+Accounts
Did you use pip to install ppv or did you use python setup install (as you should). If you used python setup install, I am 99% convinced that using pip uninstall to uninstall a package that pip didn't install is the issue. I think remove the .egg file and directory from site-packages will do the trick. If that isn't clear, I will get some step by step instructions to you when time permits.
I used python setup install. Using pip to uninstall something I installed via other methods never was an issue in any other circumstances before - it just finds and deletes the egg file from site-packages.
First of all, can I be added to fiveplates?
I am having the same issue as Marina. Here's what I did:
ppv_sdss_min.yml
ppv_setup.ini
and copy that to ~/.configsource activate ppv
)python setup.py install
import ppv
It asks me for my Utah password and then hangs.
Enter password for u6031721:
Password: <enter password and push enter and nothing happens>
I played around to see where it hangs, and it is at the wait. I suspect somehow an endline isn't being sent, even though that's explicitly what sendline is supposed to do...
def _run_rsync(rsync_command_string, utah_passwd):
## shell_path = os.environ.get('SHELL')
## rsync_child = pexpect.spawn(shell_path, ['-c', rsync_command_string])
rsync_child = pexpect.spawn(rsync_command_string)
rsync_child.expect('[P/p]assword:')
rsync_child.sendline(utah_passwd)
rsync_child.wait() # <-- it gets to here and stops, regardless of what I put in for a password
rsync_child.close()
...
My version of pexpect is 4.8.0. I am on a Mac with iTerm2 but also checked with the Mac default Terminal program that also fails. I do have an older version of conda, though that shouldn't matter.
Note that I can login myself, and also if I directly call the rsync command that it prints out initially, that does work, so it's something about the rsync command.
Thanks!
Oh goodness! Thank you Alex! I was so focus on the error message from Marina I glossed over that she had to interrupt the password! That narrows things down considerably. Marina, can you check the version of pexpect you are using? Thanks ! I should be able to fix this today.
On Sun, Oct 11, 2020, 5:47 PM Alex Ji notifications@github.com wrote:
First of all, can I be added to fiveplates?
I am having the same issue as Marina. Here's what I did:
- grab the latest version of the master ppv branch
- create a new environment using ppv_sdss_min.yml
- Update the plate_dir, fiveplates_dir, and sdss_org in ppv_setup.ini and copy that to ~/.config
- Run python setup.py install
- Open ipython and import ppv
It asks me for my Utah password and then hangs.
Enter password for u6031721: Password:
I played around to see where it hangs, and it is at the wait. I suspect somehow an endline isn't being sent, even though that's explicitly what sendline is supposed to do...
def _run_rsync(rsync_command_string, utah_passwd):
shell_path = os.environ.get('SHELL')
## rsync_child = pexpect.spawn(shell_path, ['-c', rsync_command_string]) rsync_child = pexpect.spawn(rsync_command_string) rsync_child.expect('[P/p]assword:') rsync_child.sendline(utah_passwd) rsync_child.wait() # <-- it gets to here and stops, regardless of what I put in for a password rsync_child.close() ...
My version of pexpect is 4.8.0. I am on a Mac with iTerm2 but also checked with the Mac default Terminal program that also fails. I do have an older version of conda, though that shouldn't matter.
Note that I can login myself, and also if I directly call the rsync command that it prints out initially, that does work, so it's something about the rsync command.
Thanks!
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/jcbird/ppv/issues/6#issuecomment-706772719, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRADE7J3CK6XHVQB27HLNLSKIRWVANCNFSM4SGHI5CA .
I had a version 4.7, just upgraded it to 4.8 without improvement.
Thanks! I'll have a fix soon once I have a chance in the next few hours.
On Mon, Oct 12, 2020, 12:08 PM mkounkel notifications@github.com wrote:
I had a version 4.7, just upgraded it to 4.8 without improvement.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/jcbird/ppv/issues/6#issuecomment-707210790, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRADE3LO2KXR7SCBUUFI53SKMSWTANCNFSM4SGHI5CA .
Narrowing it down, Alex, Marina, what version of Mac OS do you use?
On Mon, Oct 12, 2020, 12:11 PM J. Bird jonathan.bird.io@gmail.com wrote:
Thanks! I'll have a fix soon once I have a chance in the next few hours.
On Mon, Oct 12, 2020, 12:08 PM mkounkel notifications@github.com wrote:
I had a version 4.7, just upgraded it to 4.8 without improvement.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/jcbird/ppv/issues/6#issuecomment-707210790, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRADE3LO2KXR7SCBUUFI53SKMSWTANCNFSM4SGHI5CA .
10.15.5
I have 10.12.6 (yes I know I'm a dinosaur)
OK, hopefully some progress. Can @alexji and @mkounkel do the following and report back?
git pull # get the latest commits git checkout rsync_fix # switch to the testing branch for this fix python setup install # install the latest package import ppv # import and do the first test
and follow up with whatever you want. I do think it's the pexpect.wait that is acting differently on different platforms. That has been changed.
Thanks and let me know!
Works now!
Woohoo! I'll merge this to master in a sec so you won't need to switch branches.
On Mon, Oct 12, 2020, 3:33 PM mkounkel notifications@github.com wrote:
Works now!
— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/jcbird/ppv/issues/6#issuecomment-707306536, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRADEZYW563HYHNQJW3KS3SKNKXTANCNFSM4SGHI5CA .
Great it works on master for me! @jcbird I also mentioned before about not having access to five_plates, is there someone I should contact?
Awesome! It's merged into master as @alexji saw. I am going to close this one. Thanks for your help, everyone!
@alexji : for now, I will ping Joel on getting access to five_plates for you. Luckily, you do NOT need five_plates access for the 2020.10.a.mwm-bhm platerun.
Rock on!
I guess I should post an error log - after entering the password, and then interrupting, this is what it spits out:
An error occurred. /Users/mkounkel/research/cluster/targeting/ppv/plate/platePlans_sdss5.fits does not exist
AND an error occured when trying to execute either
util.download.plate_plans OR _parse_plate_plans
FileNotFoundError Traceback (most recent call last)