diff options
| author | Jason R. Coombs <jaraco@jaraco.com> | 2016-08-20 17:48:43 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-08-20 17:48:43 -0400 |
| commit | ac325f34b73c534fd19204400afa598bf63ea301 (patch) | |
| tree | b33c5c7a828ac13673bda69605d3ce5520a99192 | |
| parent | b9baa94e18e91671f9acde4e0e033be1391a7fde (diff) | |
| parent | 735a66a5588aadcf02a10b58338d476803916b99 (diff) | |
| download | python-setuptools-git-ac325f34b73c534fd19204400afa598bf63ea301.tar.gz | |
Merge pull request #736 from Ofekmeister/master
Fix issue #459
| -rw-r--r-- | CHANGES.rst | 3 | ||||
| -rwxr-xr-x | setuptools/command/easy_install.py | 2 | ||||
| -rw-r--r-- | setuptools/tests/test_easy_install.py | 2 |
3 files changed, 7 insertions, 0 deletions
diff --git a/CHANGES.rst b/CHANGES.rst index c6839a0d..065c77ba 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -12,6 +12,9 @@ v26.0.0 v25.4.0 ------- +* #459 via #736: On Windows systems, sys.argv[0] now correctly becomes the + name of entry point. + * Add Extension(py_limited_api=True). When set to a truthy value, that extension gets a filename apropriate for code using Py_LIMITED_API. When used correctly this allows a single compiled extension to work on diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py index ae9079d8..5065661f 100755 --- a/setuptools/command/easy_install.py +++ b/setuptools/command/easy_install.py @@ -2018,10 +2018,12 @@ class ScriptWriter(object): template = textwrap.dedent(""" # EASY-INSTALL-ENTRY-SCRIPT: %(spec)r,%(group)r,%(name)r __requires__ = %(spec)r + import re import sys from pkg_resources import load_entry_point if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) sys.exit( load_entry_point(%(spec)r, %(group)r, %(name)r)() ) diff --git a/setuptools/tests/test_easy_install.py b/setuptools/tests/test_easy_install.py index da0a355c..82e1d7e8 100644 --- a/setuptools/tests/test_easy_install.py +++ b/setuptools/tests/test_easy_install.py @@ -74,10 +74,12 @@ class TestEasyInstallTest: expected = header + DALS(""" # EASY-INSTALL-ENTRY-SCRIPT: 'spec','console_scripts','name' __requires__ = 'spec' + import re import sys from pkg_resources import load_entry_point if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) sys.exit( load_entry_point('spec', 'console_scripts', 'name')() ) |
