diff options
-rw-r--r-- | pkg_resources.py | 7 | ||||
-rw-r--r-- | setuptools/tests/test_resources.py | 4 |
2 files changed, 6 insertions, 5 deletions
diff --git a/pkg_resources.py b/pkg_resources.py index d4b1f27b..f034be61 100644 --- a/pkg_resources.py +++ b/pkg_resources.py @@ -623,6 +623,7 @@ class Distribution(object): name,version,py_version,platform = match.group( 'name','ver','pyver','plat' ) + name = name.replace('_','-') if version and '_' in version: version = version.replace('_','-') return cls( @@ -653,7 +654,6 @@ class Distribution(object): parsed_version = property(parsed_version) - def parse_requirements(strs): """Yield ``Requirement`` objects for each specification in `strs` @@ -681,7 +681,8 @@ def parse_requirements(strs): match = VERSION(line,p) if not match: raise ValueError("Expected version spec in",line,"at",line[p:]) - specs.append(match.group(1,2)) + op,val = match.group(1,2) + specs.append((op,val.replace('_','-'))) p = match.end() match = COMMA(line,p) if match: @@ -689,7 +690,7 @@ def parse_requirements(strs): elif not LINE_END(line,p): raise ValueError("Expected ',' or EOL in",line,"at",line[p:]) - yield distname, specs + yield distname.replace('_','-'), specs diff --git a/setuptools/tests/test_resources.py b/setuptools/tests/test_resources.py index 7cde4013..5cab42da 100644 --- a/setuptools/tests/test_resources.py +++ b/setuptools/tests/test_resources.py @@ -53,8 +53,8 @@ class ParseTests(TestCase): def testSimple(self): self.assertEqual( - list(parse_requirements('Twis-Ted>=1.2')), - [('Twis_Ted',[('>=','1.2')])] + list(parse_requirements('Twis-Ted>=1.2-1')), + [('Twis-Ted',[('>=','1.2-1')])] ) self.assertEqual( list(parse_requirements('Twisted >=1.2, \ # more\n<2.0')), |