summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.hgtags1
-rw-r--r--CHANGES.txt7
-rw-r--r--ez_setup.py2
-rw-r--r--setuptools.egg-info/entry_points.txt100
-rw-r--r--setuptools.egg-info/requires.txt10
-rw-r--r--setuptools/compat.py2
-rw-r--r--setuptools/tests/script-with-bom.py3
-rw-r--r--setuptools/tests/test_sandbox.py13
-rw-r--r--setuptools/version.py2
9 files changed, 82 insertions, 58 deletions
diff --git a/.hgtags b/.hgtags
index 50bb2d50..bd3b7d36 100644
--- a/.hgtags
+++ b/.hgtags
@@ -99,3 +99,4 @@ d943b67fe80dbd61326014e4acedfc488adfa1c9 1.1
ddf3561d6a54087745f4bf6ea2048b86195d6fe2 1.1.3
f94c7e4fa03077e069c1c3cef93ead735559e706 1.1.4
d9bb58331007ee3f69d31983a180f56b15c731c3 1.1.5
+5e426bdeb46b87e299422adc419f4163b6c78d13 1.1.6
diff --git a/CHANGES.txt b/CHANGES.txt
index de8285a2..1b91a2c2 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -3,6 +3,13 @@ CHANGES
=======
-----
+1.1.6
+-----
+
+* Distribute #349: ``sandbox.execfile`` now opens the target file in binary
+ mode, thus honoring a BOM in the file when compiled.
+
+-----
1.1.5
-----
diff --git a/ez_setup.py b/ez_setup.py
index 945f55d9..16b8016d 100644
--- a/ez_setup.py
+++ b/ez_setup.py
@@ -29,7 +29,7 @@ try:
except ImportError:
USER_SITE = None
-DEFAULT_VERSION = "1.1.6"
+DEFAULT_VERSION = "1.1.7"
DEFAULT_URL = "https://pypi.python.org/packages/source/s/setuptools/"
def _python_cmd(*args):
diff --git a/setuptools.egg-info/entry_points.txt b/setuptools.egg-info/entry_points.txt
index 4acc9af4..4a09dd1c 100644
--- a/setuptools.egg-info/entry_points.txt
+++ b/setuptools.egg-info/entry_points.txt
@@ -1,62 +1,62 @@
-[console_scripts]
-easy_install = setuptools.command.easy_install:main
-easy_install-3.3 = setuptools.command.easy_install:main
-
-[setuptools.installation]
-eggsecutable = setuptools.command.easy_install:bootstrap
-
-[distutils.commands]
-alias = setuptools.command.alias:alias
-build_ext = setuptools.command.build_ext:build_ext
-test = setuptools.command.test:test
-rotate = setuptools.command.rotate:rotate
-install_scripts = setuptools.command.install_scripts:install_scripts
-saveopts = setuptools.command.saveopts:saveopts
-bdist_wininst = setuptools.command.bdist_wininst:bdist_wininst
-bdist_egg = setuptools.command.bdist_egg:bdist_egg
-install_egg_info = setuptools.command.install_egg_info:install_egg_info
-egg_info = setuptools.command.egg_info:egg_info
-bdist_rpm = setuptools.command.bdist_rpm:bdist_rpm
-upload_docs = setuptools.command.upload_docs:upload_docs
-easy_install = setuptools.command.easy_install:easy_install
-install = setuptools.command.install:install
-register = setuptools.command.register:register
-develop = setuptools.command.develop:develop
-install_lib = setuptools.command.install_lib:install_lib
-build_py = setuptools.command.build_py:build_py
-setopt = setuptools.command.setopt:setopt
-sdist = setuptools.command.sdist:sdist
-
-[setuptools.file_finders]
-svn_cvs = setuptools.command.sdist:_default_revctrl
-
[distutils.setup_keywords]
+packages = setuptools.dist:check_packages
+install_requires = setuptools.dist:check_requirements
eager_resources = setuptools.dist:assert_string_list
include_package_data = setuptools.dist:assert_bool
-use_2to3_fixers = setuptools.dist:assert_string_list
-extras_require = setuptools.dist:check_extras
-namespace_packages = setuptools.dist:check_nsp
-use_2to3 = setuptools.dist:assert_bool
-zip_safe = setuptools.dist:assert_bool
-entry_points = setuptools.dist:check_entry_points
-use_2to3_exclude_fixers = setuptools.dist:assert_string_list
+convert_2to3_doctests = setuptools.dist:assert_string_list
package_data = setuptools.dist:check_package_data
+use_2to3_exclude_fixers = setuptools.dist:assert_string_list
+test_suite = setuptools.dist:check_test_suite
+tests_require = setuptools.dist:check_requirements
+use_2to3 = setuptools.dist:assert_bool
exclude_package_data = setuptools.dist:check_package_data
-install_requires = setuptools.dist:check_requirements
test_loader = setuptools.dist:check_importable
+extras_require = setuptools.dist:check_extras
+use_2to3_fixers = setuptools.dist:assert_string_list
+namespace_packages = setuptools.dist:check_nsp
+zip_safe = setuptools.dist:assert_bool
dependency_links = setuptools.dist:assert_string_list
-tests_require = setuptools.dist:check_requirements
-packages = setuptools.dist:check_packages
-convert_2to3_doctests = setuptools.dist:assert_string_list
-test_suite = setuptools.dist:check_test_suite
+entry_points = setuptools.dist:check_entry_points
+
+[setuptools.file_finders]
+svn_cvs = setuptools.command.sdist:_default_revctrl
[egg_info.writers]
-dependency_links.txt = setuptools.command.egg_info:overwrite_arg
-namespace_packages.txt = setuptools.command.egg_info:overwrite_arg
-requires.txt = setuptools.command.egg_info:write_requirements
-entry_points.txt = setuptools.command.egg_info:write_entries
+depends.txt = setuptools.command.egg_info:warn_depends_obsolete
top_level.txt = setuptools.command.egg_info:write_toplevel_names
-eager_resources.txt = setuptools.command.egg_info:overwrite_arg
+entry_points.txt = setuptools.command.egg_info:write_entries
+requires.txt = setuptools.command.egg_info:write_requirements
PKG-INFO = setuptools.command.egg_info:write_pkg_info
-depends.txt = setuptools.command.egg_info:warn_depends_obsolete
+eager_resources.txt = setuptools.command.egg_info:overwrite_arg
+dependency_links.txt = setuptools.command.egg_info:overwrite_arg
+namespace_packages.txt = setuptools.command.egg_info:overwrite_arg
+
+[distutils.commands]
+rotate = setuptools.command.rotate:rotate
+bdist_egg = setuptools.command.bdist_egg:bdist_egg
+install_scripts = setuptools.command.install_scripts:install_scripts
+install_egg_info = setuptools.command.install_egg_info:install_egg_info
+build_py = setuptools.command.build_py:build_py
+build_ext = setuptools.command.build_ext:build_ext
+install = setuptools.command.install:install
+sdist = setuptools.command.sdist:sdist
+upload_docs = setuptools.command.upload_docs:upload_docs
+saveopts = setuptools.command.saveopts:saveopts
+develop = setuptools.command.develop:develop
+alias = setuptools.command.alias:alias
+register = setuptools.command.register:register
+setopt = setuptools.command.setopt:setopt
+egg_info = setuptools.command.egg_info:egg_info
+test = setuptools.command.test:test
+easy_install = setuptools.command.easy_install:easy_install
+install_lib = setuptools.command.install_lib:install_lib
+bdist_wininst = setuptools.command.bdist_wininst:bdist_wininst
+bdist_rpm = setuptools.command.bdist_rpm:bdist_rpm
+
+[setuptools.installation]
+eggsecutable = setuptools.command.easy_install:bootstrap
+
+[console_scripts]
+easy_install = setuptools.command.easy_install:main
+easy_install-3.3 = setuptools.command.easy_install:main
diff --git a/setuptools.egg-info/requires.txt b/setuptools.egg-info/requires.txt
index e8e2105d..0b577c97 100644
--- a/setuptools.egg-info/requires.txt
+++ b/setuptools.egg-info/requires.txt
@@ -1,13 +1,13 @@
+[ssl:sys_platform=='win32' and python_version=='2.4']
+ctypes==1.0.2
+
[ssl:python_version in '2.4, 2.5']
ssl==1.16
-[ssl:sys_platform=='win32']
-wincertstore==0.1
-
[certs]
certifi==0.0.8
-[ssl:sys_platform=='win32' and python_version=='2.4']
-ctypes==1.0.2 \ No newline at end of file
+[ssl:sys_platform=='win32']
+wincertstore==0.1 \ No newline at end of file
diff --git a/setuptools/compat.py b/setuptools/compat.py
index 860c39f3..529a5fbc 100644
--- a/setuptools/compat.py
+++ b/setuptools/compat.py
@@ -84,7 +84,7 @@ else:
globs = globals()
if locs is None:
locs = globs
- f = open(fn)
+ f = open(fn, 'rb')
try:
source = f.read()
finally:
diff --git a/setuptools/tests/script-with-bom.py b/setuptools/tests/script-with-bom.py
new file mode 100644
index 00000000..22dee0d2
--- /dev/null
+++ b/setuptools/tests/script-with-bom.py
@@ -0,0 +1,3 @@
+# -*- coding: utf-8 -*-
+
+result = 'passed'
diff --git a/setuptools/tests/test_sandbox.py b/setuptools/tests/test_sandbox.py
index 1609ee86..3dad1376 100644
--- a/setuptools/tests/test_sandbox.py
+++ b/setuptools/tests/test_sandbox.py
@@ -5,7 +5,10 @@ import os
import shutil
import unittest
import tempfile
+import types
+import pkg_resources
+import setuptools.sandbox
from setuptools.sandbox import DirectorySandbox, SandboxViolation
def has_win32com():
@@ -62,5 +65,15 @@ class TestSandbox(unittest.TestCase):
finally:
if os.path.exists(target): os.remove(target)
+ def test_setup_py_with_BOM(self):
+ """
+ It should be possible to execute a setup.py with a Byte Order Mark
+ """
+ target = pkg_resources.resource_filename(__name__,
+ 'script-with-bom.py')
+ namespace = types.ModuleType('namespace')
+ setuptools.sandbox.execfile(target, vars(namespace))
+ assert namespace.result == 'passed'
+
if __name__ == '__main__':
unittest.main()
diff --git a/setuptools/version.py b/setuptools/version.py
index 6ebd335c..9910ac22 100644
--- a/setuptools/version.py
+++ b/setuptools/version.py
@@ -1 +1 @@
-__version__ = '1.1.6'
+__version__ = '1.1.7'