{"action":"created","issue":{"url":"https://api.github.com/repos/ContinuumIO/anaconda-issues/issues/199","repository_url":"https://api.github.com/repos/ContinuumIO/anaconda-issues","labels_url":"https://api.github.com/repos/ContinuumIO/anaconda-issues/issues/199/labels{/name}","comments_url":"https://api.github.com/repos/ContinuumIO/anaconda-issues/issues/199/comments","events_url":"https://api.github.com/repos/ContinuumIO/anaconda-issues/issues/199/events","html_url":"https://github.com/ContinuumIO/anaconda-issues/issues/199","id":47652931,"number":199,"title":"pythonw should be default in OS-X","user":{"login":"ChrisBarker-NOAA","id":916576,"avatar_url":"https://avatars2.githubusercontent.com/u/916576?v=4","gravatar_id":"","url":"https://api.github.com/users/ChrisBarker-NOAA","html_url":"https://github.com/ChrisBarker-NOAA","followers_url":"https://api.github.com/users/ChrisBarker-NOAA/followers","following_url":"https://api.github.com/users/ChrisBarker-NOAA/following{/other_user}","gists_url":"https://api.github.com/users/ChrisBarker-NOAA/gists{/gist_id}","starred_url":"https://api.github.com/users/ChrisBarker-NOAA/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ChrisBarker-NOAA/subscriptions","organizations_url":"https://api.github.com/users/ChrisBarker-NOAA/orgs","repos_url":"https://api.github.com/users/ChrisBarker-NOAA/repos","events_url":"https://api.github.com/users/ChrisBarker-NOAA/events{/privacy}","received_events_url":"https://api.github.com/users/ChrisBarker-NOAA/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"msarahan","id":38393,"avatar_url":"https://avatars3.githubusercontent.com/u/38393?v=4","gravatar_id":"","url":"https://api.github.com/users/msarahan","html_url":"https://github.com/msarahan","followers_url":"https://api.github.com/users/msarahan/followers","following_url":"https://api.github.com/users/msarahan/following{/other_user}","gists_url":"https://api.github.com/users/msarahan/gists{/gist_id}","starred_url":"https://api.github.com/users/msarahan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/msarahan/subscriptions","organizations_url":"https://api.github.com/users/msarahan/orgs","repos_url":"https://api.github.com/users/msarahan/repos","events_url":"https://api.github.com/users/msarahan/events{/privacy}","received_events_url":"https://api.github.com/users/msarahan/received_events","type":"User","site_admin":false},"assignees":[{"login":"msarahan","id":38393,"avatar_url":"https://avatars3.githubusercontent.com/u/38393?v=4","gravatar_id":"","url":"https://api.github.com/users/msarahan","html_url":"https://github.com/msarahan","followers_url":"https://api.github.com/users/msarahan/followers","following_url":"https://api.github.com/users/msarahan/following{/other_user}","gists_url":"https://api.github.com/users/msarahan/gists{/gist_id}","starred_url":"https://api.github.com/users/msarahan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/msarahan/subscriptions","organizations_url":"https://api.github.com/users/msarahan/orgs","repos_url":"https://api.github.com/users/msarahan/repos","events_url":"https://api.github.com/users/msarahan/events{/privacy}","received_events_url":"https://api.github.com/users/msarahan/received_events","type":"User","site_admin":false}],"milestone":null,"comments":25,"created_at":"2014-11-03T22:23:38Z","updated_at":"2017-12-10T01:54:35Z","closed_at":null,"author_association":"NONE","body":"On OS-X, for a process to access the windowing system the executable must be in a \"Framework\" or an \"Application bundle\" or somethign or other.\n\nAnaconda addresses this by providing a \"pythonw\" command that is a shell script that re-directs itself to start up a copy of python that is inside a provided *.app bundle.\n\nHowever, this can be really a pain. It's not SUCH a big deal to type pythonw when you need to run a GUI app, nor is it that bad to change the #! line on scripts (though that makes it all less system independent -- does linux even HAVE a pythonw in general?\n\nBut when this really kills me is when I'm not controlling the start-up script -- in particular, I'm using nose to run tests, some of which require wxPython to be started up. -- the whole test process fails, as nose is not being run with the right python. And going in an hacking nosetests does not seem like the way to solve this (and is less then trivial, actually, I just spent some time trying to figure it out, to no avail)\n\nThe python.org builds solved this many releases ago -- they have a small bianry executable that re-directs to a properly set up python -- and this is the default, so \"python\" and \"pythonw\" do exactly the same thing. As far as I can tell, this provides no downside of any sort for command line apps, and makes the whole GUI thing a lot easier to deal with. And the pyton.org build has been shipping that way for years, with apparently no complaints from anyone.\n\nI suggest that Anaconda do the same thing -- it would really make things easier for GUI develoment, testing, using MPL with some back-ends, etc, etc, etc....\n\nWhether you use the current shell script re-direct or python,org's executable, I have no opinion on -- whatever works is fine, but it really would make it easier to use Anaconda on OS-X.\n\nNote: if you search the Anaconda list for pythonw, you see this has created a lot of issues and confusion -- maybe most have been solved with a one-character change to a #! line, but it would have been better not to have it at all, yes?\n\nThis technical details have been discussed some on the Anaconda list:\n\nhttps://groups.google.com/a/continuum.io/forum/#!searchin/anaconda/why$20not$20make$20python$20invoke$20the$20framework/anaconda/-ZAynUQW5HQ/6g4_4v96S_cJ\n\nand the python-mac list:\n\nhttps://mail.python.org/pipermail/pythonmac-sig/2014-August/024079.html\n\nAs kludgy as it is, the bootstrap executable looks quite usable.\n\nI hope we can get his cleaned up.\n"},"comment":{"url":"https://api.github.com/repos/ContinuumIO/anaconda-issues/issues/comments/350519330","html_url":"https://github.com/ContinuumIO/anaconda-issues/issues/199#issuecomment-350519330","issue_url":"https://api.github.com/repos/ContinuumIO/anaconda-issues/issues/199","id":350519330,"user":{"login":"newville","id":304251,"avatar_url":"https://avatars0.githubusercontent.com/u/304251?v=4","gravatar_id":"","url":"https://api.github.com/users/newville","html_url":"https://github.com/newville","followers_url":"https://api.github.com/users/newville/followers","following_url":"https://api.github.com/users/newville/following{/other_user}","gists_url":"https://api.github.com/users/newville/gists{/gist_id}","starred_url":"https://api.github.com/users/newville/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/newville/subscriptions","organizations_url":"https://api.github.com/users/newville/orgs","repos_url":"https://api.github.com/users/newville/repos","events_url":"https://api.github.com/users/newville/events{/privacy}","received_events_url":"https://api.github.com/users/newville/received_events","type":"User","site_admin":false},"created_at":"2017-12-10T01:54:35Z","updated_at":"2017-12-10T01:54:35Z","author_association":"NONE","body":"@jakirkham  I think that the path manipulation to find python in `pythonwc.c` may all be to set the value of `__PYVENV_LAUNCHER__`, which appears to be related to the problems referenced for `pip` and `setuptools`.    Perhaps this is all that is really necessary?\r\n\r\n\r\nIt seems that doing \r\n\r\n```\r\n#!/bin/bash\r\nTOP=${BASH_SOURCE%/*/*}\r\nexport PYTHONEXECUTABLE=$TOP/bin/python\r\nexport __PYVENV_LAUNCHER__=$TOP/bin/python\r\n$TOP/python.app/Contents/MacOS/python \"$@\"\r\n```\r\nis not sufficient.  But maybe setting `__PYVENV_LAUNCHER__` in the version of Python built as part of Python.app would work?   I'm not sure.\r\n\r\nI wonder if one can simply add that to the Python that is built as part of python.app, without needing the shell script wrapper?   Maybe that's too simple....\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n"}}
{"actor":{"display_login":"newville"}}