{"action":"created","issue":{"url":"https://api.github.com/repos/sot/skare/issues/86","repository_url":"https://api.github.com/repos/sot/skare","labels_url":"https://api.github.com/repos/sot/skare/issues/86/labels{/name}","comments_url":"https://api.github.com/repos/sot/skare/issues/86/comments","events_url":"https://api.github.com/repos/sot/skare/issues/86/events","html_url":"https://github.com/sot/skare/pull/86","id":154238226,"number":86,"title":"Use pip to install instead of python setup.py install","user":{"login":"taldcroft","id":348089,"avatar_url":"https://avatars.githubusercontent.com/u/348089?v=3","gravatar_id":"","url":"https://api.github.com/users/taldcroft","html_url":"https://github.com/taldcroft","followers_url":"https://api.github.com/users/taldcroft/followers","following_url":"https://api.github.com/users/taldcroft/following{/other_user}","gists_url":"https://api.github.com/users/taldcroft/gists{/gist_id}","starred_url":"https://api.github.com/users/taldcroft/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/taldcroft/subscriptions","organizations_url":"https://api.github.com/users/taldcroft/orgs","repos_url":"https://api.github.com/users/taldcroft/repos","events_url":"https://api.github.com/users/taldcroft/events{/privacy}","received_events_url":"https://api.github.com/users/taldcroft/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":7,"created_at":"2016-05-11T13:03:31Z","updated_at":"2016-05-26T19:15:25Z","closed_at":"2016-05-17T20:28:41Z","pull_request":{"url":"https://api.github.com/repos/sot/skare/pulls/86","html_url":"https://github.com/sot/skare/pull/86","diff_url":"https://github.com/sot/skare/pull/86.diff","patch_url":"https://github.com/sot/skare/pull/86.patch"},"body":"Pip is the (latest) modern way to install a package from a local source directory.  The rationale is that setuptools is the current modern way to do things in setup.py, but it has an annoying feature of insisting on installing via eggs and putting that into easy-install.pth.  That then makes it *impossible* to override the system-installed version via PYTHONPATH.  This is a long-standing feature that setuptools won't fix.\r\n\r\nEnter pip, which takes an end run around this by installing packages in the \"normal\" way but writes an appropriate info file so that conda and pip can reliably uninstall.  (You don't get this with `python setup.py install`).\r\n\r\nBut... for a namespace package you still need to do an egg install, and PYTHONPATH will never work on those, but at least the local version in the current directory will take precedence.  (No more namespace packages, ever).\r\n\r\nAs a note, I hate bash scripting and could not figure out a way to do this without calling perl.  Using grep works from the command line but in the case of not finding the regex it sets the return code to 1 which then gets interpreted by `install.py` as \"something failed\".\r\n\r\nFinally, actually using this en-masse to reinstall flight Python packages will take some care.  I think it's OK except that we need to manually remove non-namespace packages that are in easy_install.pth.  And it's probably time to do some manual cleanup of various orphaned cruft."},"comment":{"url":"https://api.github.com/repos/sot/skare/issues/comments/221966931","html_url":"https://github.com/sot/skare/pull/86#issuecomment-221966931","issue_url":"https://api.github.com/repos/sot/skare/issues/86","id":221966931,"user":{"login":"jeanconn","id":791508,"avatar_url":"https://avatars.githubusercontent.com/u/791508?v=3","gravatar_id":"","url":"https://api.github.com/users/jeanconn","html_url":"https://github.com/jeanconn","followers_url":"https://api.github.com/users/jeanconn/followers","following_url":"https://api.github.com/users/jeanconn/following{/other_user}","gists_url":"https://api.github.com/users/jeanconn/gists{/gist_id}","starred_url":"https://api.github.com/users/jeanconn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeanconn/subscriptions","organizations_url":"https://api.github.com/users/jeanconn/orgs","repos_url":"https://api.github.com/users/jeanconn/repos","events_url":"https://api.github.com/users/jeanconn/events{/privacy}","received_events_url":"https://api.github.com/users/jeanconn/received_events","type":"User","site_admin":false},"created_at":"2016-05-26T19:15:25Z","updated_at":"2016-05-26T19:15:25Z","body":"Confused.  You ignored starcheck instead of removing its egg dir, right? Whereas if it got ported to the new system this would be fixed.  In my case, ~/git/jeanconn/starcheck is in sys.path, it is just after /proj/sot/ska/arch/x86_64-linux_CentOS-5/lib/python2.7/site-packages/starcheck-11.8-py2.7.egg/ .  "}}
{"actor":{"display_login":"jeanconn"}}