Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
setuptools
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jérome Perrin
setuptools
Commits
3e72e7f7
Commit
3e72e7f7
authored
Jul 17, 2013
by
Jason R. Coombs
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add compatibility for Python 2.4 when querying the hash name. Fixes #44
parent
d00b66d5
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
103 additions
and
67 deletions
+103
-67
CHANGES.txt
CHANGES.txt
+7
-0
setuptools.egg-info/entry_points.txt
setuptools.egg-info/entry_points.txt
+62
-62
setuptools.egg-info/requires.txt
setuptools.egg-info/requires.txt
+3
-3
setuptools/package_index.py
setuptools/package_index.py
+16
-1
setuptools/tests/test_packageindex.py
setuptools/tests/test_packageindex.py
+15
-1
No files found.
CHANGES.txt
View file @
3e72e7f7
...
...
@@ -2,6 +2,13 @@
CHANGES
=======
-----
0.9.6
-----
* Issue #44: Test failure on Python 2.4 when MD5 hash doesn't have a `.name`
attribute.
-----
0.9.5
-----
...
...
setuptools.egg-info/entry_points.txt
View file @
3e72e7f7
[setuptools.installation]
eggsecutable = setuptools.command.easy_install:bootstrap
[console_scripts]
easy_install-3.3 = setuptools.command.easy_install:main
easy_install = setuptools.command.easy_install:main
[setuptools.file_finders]
svn_cvs = setuptools.command.sdist:_default_revctrl
[egg_info.writers]
PKG-INFO = setuptools.command.egg_info:write_pkg_info
top_level.txt = setuptools.command.egg_info:write_toplevel_names
entry_points.txt = setuptools.command.egg_info:write_entries
eager_resources.txt = setuptools.command.egg_info:overwrite_arg
depends.txt = setuptools.command.egg_info:warn_depends_obsolete
namespace_packages.txt = setuptools.command.egg_info:overwrite_arg
requires.txt = setuptools.command.egg_info:write_requirements
dependency_links.txt = setuptools.command.egg_info:overwrite_arg
[distutils.commands]
install_egg_info = setuptools.command.install_egg_info:install_egg_info
egg_info = setuptools.command.egg_info:egg_info
saveopts = setuptools.command.saveopts:saveopts
develop = setuptools.command.develop:develop
test = setuptools.command.test:test
rotate = setuptools.command.rotate:rotate
build_py = setuptools.command.build_py:build_py
register = setuptools.command.register:register
bdist_rpm = setuptools.command.bdist_rpm:bdist_rpm
easy_install = setuptools.command.easy_install:easy_install
install = setuptools.command.install:install
setopt = setuptools.command.setopt:setopt
build_ext = setuptools.command.build_ext:build_ext
upload_docs = setuptools.command.upload_docs:upload_docs
alias = setuptools.command.alias:alias
bdist_wininst = setuptools.command.bdist_wininst:bdist_wininst
sdist = setuptools.command.sdist:sdist
bdist_egg = setuptools.command.bdist_egg:bdist_egg
install_scripts = setuptools.command.install_scripts:install_scripts
install_lib = setuptools.command.install_lib:install_lib
[distutils.setup_keywords]
zip_safe = setuptools.dist:assert_bool
test_suite = setuptools.dist:check_test_suite
use_2to3_exclude_fixers = setuptools.dist:assert_string_list
test_loader = setuptools.dist:check_importable
entry_points = setuptools.dist:check_entry_points
tests_require = setuptools.dist:check_requirements
package_data = setuptools.dist:check_package_data
eager_resources = setuptools.dist:assert_string_list
namespace_packages = setuptools.dist:check_nsp
include_package_data = setuptools.dist:assert_bool
extras_require = setuptools.dist:check_extras
dependency_links = setuptools.dist:assert_string_list
packages = setuptools.dist:check_packages
convert_2to3_doctests = setuptools.dist:assert_string_list
use_2to3 = setuptools.dist:assert_bool
exclude_package_data = setuptools.dist:check_package_data
use_2to3_fixers = setuptools.dist:assert_string_list
install_requires = setuptools.dist:check_requirements
[setuptools.installation]
eggsecutable = setuptools.command.easy_install:bootstrap
[console_scripts]
easy_install-3.3 = setuptools.command.easy_install:main
easy_install = setuptools.command.easy_install:main
[setuptools.file_finders]
svn_cvs = setuptools.command.sdist:_default_revctrl
[egg_info.writers]
PKG-INFO = setuptools.command.egg_info:write_pkg_info
top_level.txt = setuptools.command.egg_info:write_toplevel_names
entry_points.txt = setuptools.command.egg_info:write_entries
eager_resources.txt = setuptools.command.egg_info:overwrite_arg
depends.txt = setuptools.command.egg_info:warn_depends_obsolete
namespace_packages.txt = setuptools.command.egg_info:overwrite_arg
requires.txt = setuptools.command.egg_info:write_requirements
dependency_links.txt = setuptools.command.egg_info:overwrite_arg
[distutils.commands]
install_egg_info = setuptools.command.install_egg_info:install_egg_info
egg_info = setuptools.command.egg_info:egg_info
saveopts = setuptools.command.saveopts:saveopts
develop = setuptools.command.develop:develop
test = setuptools.command.test:test
rotate = setuptools.command.rotate:rotate
build_py = setuptools.command.build_py:build_py
register = setuptools.command.register:register
bdist_rpm = setuptools.command.bdist_rpm:bdist_rpm
easy_install = setuptools.command.easy_install:easy_install
install = setuptools.command.install:install
setopt = setuptools.command.setopt:setopt
build_ext = setuptools.command.build_ext:build_ext
upload_docs = setuptools.command.upload_docs:upload_docs
alias = setuptools.command.alias:alias
bdist_wininst = setuptools.command.bdist_wininst:bdist_wininst
sdist = setuptools.command.sdist:sdist
bdist_egg = setuptools.command.bdist_egg:bdist_egg
install_scripts = setuptools.command.install_scripts:install_scripts
install_lib = setuptools.command.install_lib:install_lib
[distutils.setup_keywords]
zip_safe = setuptools.dist:assert_bool
test_suite = setuptools.dist:check_test_suite
use_2to3_exclude_fixers = setuptools.dist:assert_string_list
test_loader = setuptools.dist:check_importable
entry_points = setuptools.dist:check_entry_points
tests_require = setuptools.dist:check_requirements
package_data = setuptools.dist:check_package_data
eager_resources = setuptools.dist:assert_string_list
namespace_packages = setuptools.dist:check_nsp
include_package_data = setuptools.dist:assert_bool
extras_require = setuptools.dist:check_extras
dependency_links = setuptools.dist:assert_string_list
packages = setuptools.dist:check_packages
convert_2to3_doctests = setuptools.dist:assert_string_list
use_2to3 = setuptools.dist:assert_bool
exclude_package_data = setuptools.dist:check_package_data
use_2to3_fixers = setuptools.dist:assert_string_list
install_requires = setuptools.dist:check_requirements
setuptools.egg-info/requires.txt
View file @
3e72e7f7
[ssl:sys_platform=='win32' and python_version=='2.4']
ctypes==1.0.2
[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
[ssl:python_version in '2.4, 2.5']
ssl==1.16
\ No newline at end of file
setuptools/package_index.py
View file @
3e72e7f7
...
...
@@ -242,8 +242,23 @@ class HashChecker(ContentChecker):
def
is_valid
(
self
):
return
self
.
hash
.
hexdigest
()
==
self
.
expected
def
_get_hash_name
(
self
):
"""
Python 2.4 implementation of MD5 doesn't supply a .name attribute
so provide that name.
When Python 2.4 is no longer required, replace invocations of this
method with simply 'self.hash.name'.
"""
try
:
return
self
.
hash
.
name
except
AttributeError
:
if
'md5'
in
str
(
type
(
self
.
hash
)):
return
'md5'
raise
def
report
(
self
,
reporter
,
template
):
msg
=
template
%
self
.
hash
.
name
msg
=
template
%
self
.
_get_hash_name
()
return
reporter
(
msg
)
...
...
setuptools/tests/test_packageindex.py
View file @
3e72e7f7
...
...
@@ -147,7 +147,6 @@ class TestContentCheckers(unittest.TestCase):
def
test_md5
(
self
):
checker
=
setuptools
.
package_index
.
HashChecker
.
from_url
(
'http://foo/bar#md5=f12895fdffbd45007040d2e44df98478'
)
self
.
assertEqual
(
checker
.
hash
.
name
,
'md5'
)
checker
.
feed
(
'You should probably not be using MD5'
.
encode
(
'ascii'
))
self
.
assertEqual
(
checker
.
hash
.
hexdigest
(),
'f12895fdffbd45007040d2e44df98478'
)
...
...
@@ -166,3 +165,18 @@ class TestContentCheckers(unittest.TestCase):
'http://foo/bar#md5='
)
checker
.
feed
(
'anything'
.
encode
(
'ascii'
))
self
.
assertTrue
(
checker
.
is_valid
())
def
test_get_hash_name_md5
(
self
):
checker
=
setuptools
.
package_index
.
HashChecker
.
from_url
(
'http://foo/bar#md5=f12895fdffbd45007040d2e44df98478'
)
if
sys
.
version_info
>=
(
2
,
5
):
self
.
assertEqual
(
checker
.
hash
.
name
,
'md5'
)
else
:
# Python 2.4 compatability
self
.
assertEqual
(
checker
.
_get_hash_name
(),
'md5'
)
def
test_report
(
self
):
checker
=
setuptools
.
package_index
.
HashChecker
.
from_url
(
'http://foo/bar#md5=f12895fdffbd45007040d2e44df98478'
)
rep
=
checker
.
report
(
lambda
x
:
x
,
'My message about %s'
)
self
.
assertEqual
(
rep
,
'My message about md5'
)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment