]> granicus.if.org Git - python/commitdiff
Merged revisions 76686 via svnmerge from
authorTarek Ziadé <ziade.tarek@gmail.com>
Sun, 6 Dec 2009 09:30:47 +0000 (09:30 +0000)
committerTarek Ziadé <ziade.tarek@gmail.com>
Sun, 6 Dec 2009 09:30:47 +0000 (09:30 +0000)
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r76686 | tarek.ziade | 2009-12-06 10:28:17 +0100 (Sun, 06 Dec 2009) | 9 lines

  Merged revisions 76684 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r76684 | tarek.ziade | 2009-12-06 10:22:40 +0100 (Sun, 06 Dec 2009) | 1 line

    Fixed #1923: make sure we don't strip meaningful whitespace in PKG-INFO Description field
  ........
................

Lib/distutils/tests/test_dist.py
Lib/distutils/util.py
Misc/NEWS

index 5f96b97f9e6303eb0305b5bc2bbf8a893396a6c6..3b7637f3af2a0970f1ad52e246882ca56bb0a410 100644 (file)
@@ -5,6 +5,7 @@ import io
 import sys
 import unittest
 import warnings
+import textwrap
 
 from distutils.dist import Distribution, fix_help_options
 from distutils.cmd import Command
@@ -301,6 +302,21 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard,
                   if line.strip() != '']
         self.assertTrue(len(output) > 0)
 
+    def test_long_description(self):
+        long_desc = textwrap.dedent("""\
+        example::
+              We start here
+            and continue here
+          and end here.""")
+        attrs = {"name": "package",
+                 "version": "1.0",
+                 "long_description": long_desc}
+
+        dist = Distribution(attrs)
+        meta = self.format_metadata(dist)
+        meta = meta.replace('\n' + 8 * ' ', '\n')
+        self.assertTrue(long_desc in meta)
+
 def test_suite():
     suite = unittest.TestSuite()
     suite.addTest(unittest.makeSuite(DistributionTestCase))
index 4bc4c984136b7fd4da1bfad50445ef4382ea5b9f..50ad8fef98d3c02f76a445d85b24476a84d44a51 100644 (file)
@@ -557,8 +557,8 @@ def rfc822_escape (header):
     """Return a version of the string escaped for inclusion in an
     RFC-822 header, by ensuring there are 8 spaces space after each newline.
     """
-    lines = [x.strip() for x in header.split('\n')]
-    sep = '\n' + 8*' '
+    lines = header.split('\n')
+    sep = '\n' + 8 * ' '
     return sep.join(lines)
 
 # 2to3 support
index 00a9add531844f7a4dbe247b85cb95b7a9908047..39ed84bb54321ac1c3fc4b45cc86015cad5e3100 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -55,6 +55,9 @@ Core and Builtins
 Library
 -------
 
+- Issue #1923: Fixed the removal of meaningful spaces when PKG-INFO is 
+  generated in Distutils. Patch by Stephen Emslie.
+
 - Issue #4120: Drop reference to CRT from manifest when building extensions with
   msvc9compiler.