1. 25 Feb, 2012 1 commit
    • Éric Araujo's avatar
      Fix long-standing bugs with MANIFEST.in parsing on Windows (#6884). · 9db46d43
      Éric Araujo authored
      These regex changes fix a number of issues for distutils on Windows:
      - #6884: impossible to include a file starting with 'build'
      - #9691 and #14004: sdist includes too many files
      - #13193: test_filelist failures
      
      This commit replaces the incorrect changes done in 557a973709de,
      c566a3447ba1 and 3925081a7ca0 to fix #13193; we were too eager to fix
      the test failures and I did not study the code enough before
      greenlighting patches.  This time we have unit tests from the problems
      reported by users to be sure we have the right fix.
      
      Thanks to Nadeem Vawda for his help.
      9db46d43
  2. 23 Feb, 2012 3 commits
  3. 15 Feb, 2012 2 commits
  4. 13 Feb, 2012 1 commit
  5. 12 Feb, 2012 1 commit
    • Éric Araujo's avatar
      Fix distutils.filelist.FileList under Windows (#13193). · 2c62a97a
      Éric Araujo authored
      The code used to call os.path.join to build a regex but without escaping
      the backslash, which lead to test failures on Windows.  Antoine Pitrou
      fixed it in 557a973709de by enhancing the code to accept both / and \,
      with proper escaping, but in my opinion this goes against the distutils
      feature freeze, hence this change.
      2c62a97a
  6. 11 Feb, 2012 1 commit
    • Ned Deily's avatar
      Issue #13994: Earler partial revert of Distutils enhancements in 2.7 · e1f6c4c9
      Ned Deily authored
      has left two versions of customize_compiler, the original in
      distutils.sysconfig and another copy in distutils.ccompiler, with some
      parts of distutils calling one and others using the other.
      Complete the revert back to only having one in distutils.sysconfig as
      is the case in 3.x.
      e1f6c4c9
  7. 10 Feb, 2012 1 commit
    • Ned Deily's avatar
      Issue #13590: On OS X 10.7 and 10.6 with Xcode 4.2, building · 8108212a
      Ned Deily authored
      Distutils-based packages with C extension modules may fail because
      Apple has removed gcc-4.2, the version used to build python.org
      64-bit/32-bit Pythons.  If the user does not explicitly override
      the default C compiler by setting the CC environment variable,
      Distutils will now attempt to compile extension modules with clang
      if gcc-4.2 is required but not found. Also as a convenience, if
      the user does explicitly set CC, substitute its value as the default
      compiler in the Distutils LDSHARED configuration variable for OS X.
      (Note, the python.org 32-bit-only Pythons use gcc-4.0 and the 10.4u
      SDK, neither of which are available in Xcode 4.  This change does not
      attempt to override settings to support their use with Xcode 4.)
      8108212a
  8. 03 Feb, 2012 1 commit
  9. 18 Jan, 2012 2 commits
  10. 28 Dec, 2011 1 commit
  11. 26 Dec, 2011 1 commit
  12. 12 Nov, 2011 1 commit
  13. 17 Oct, 2011 2 commits
  14. 14 Oct, 2011 1 commit
  15. 09 Oct, 2011 1 commit
    • Éric Araujo's avatar
      Fix distutils’ check and register Unicode handling (#13114). · 7558986e
      Éric Araujo authored
      The check command was fixed by Kirill Kuzminykh.
      
      The register command was using StringIO.getvalue, which uses “''.join”
      and thus coerces to str using the default encoding (ASCII), so I changed
      the code to use one extra intermediary list and correctly encode to
      UTF-8.
      7558986e
  16. 08 Oct, 2011 1 commit
  17. 10 Sep, 2011 2 commits
  18. 09 Sep, 2011 1 commit
  19. 02 Sep, 2011 2 commits
  20. 29 Aug, 2011 1 commit
  21. 26 Aug, 2011 5 commits
  22. 25 Aug, 2011 1 commit
    • Éric Araujo's avatar
      Refactor helpers for compiling the xx module in distutils tests. · e4a8ae8b
      Éric Araujo authored
      I need to copy the xxmodule.c file in other tests, so I moved the
      support code to distutils.tests.support and improved it:
      - don’t skip when run from the Lib/distutils/tests directory
      - use proper skip machinery instead of custom print/return/test suite
        fiddling.
      
      I also took out the fixup_build_ext function, which is needed for tests
      to pass on Unix shared builds and Windows debug builds.
      
      Finally, I cleaned up a few things:
      - don’t remove directories in tearDown when the parent class’ tearDown
        has already registered the directories for removal
      - simplify restoration of sys.path
      - remove a few unused names found by pyflakes.
      e4a8ae8b
  23. 21 Aug, 2011 1 commit
  24. 02 Aug, 2011 1 commit
    • Éric Araujo's avatar
      Fix incorrect mtime comparison in distutils (#11933). · 4a58c74f
      Éric Araujo authored
      This is a regression introduced in 9211a5d7d0b4, when uses of ST_MTIME
      constants were changed to uses of st_mtime attributes.  As diagnosed in
      the bug report, this change is not merely stylistic: st_mtime is a
      float but ST_MTIME’s resolution is rounded to the seconds, so there was
      a mismatch between the values seen by file_util and dep_util which
      caused an sdist to be unnecessarily created a second time on an ext4
      filesystem.
      
      This patch has been tested by John S. Gruber, who reported the bug.
      As this is a simple code revert, I think it’s okay to commit without a
      unit test.
      4a58c74f
  25. 31 Jul, 2011 1 commit
    • Éric Araujo's avatar
      Fix regression with distutils MANIFEST handing (#11104, #8688). · 69896eb6
      Éric Araujo authored
      The changed behavior of sdist in 2.7 broke packaging for projects that
      wanted to use a manually-maintained MANIFEST file (instead of having a
      MANIFEST.in template and letting distutils generate the MANIFEST).
      
      The fixes that were committed for #8688 (d29399100973 by Tarek and
      f7639dcdffc3 by me) did not fix all issues exposed in the bug report,
      and also added one problem: the MANIFEST file format gained comments,
      but the read_manifest method was not updated to handle (i.e. ignore)
      them.  This changeset should fix everything; the tests have been
      expanded and I successfully tested with Mercurial, which suffered from
      this regression.
      
      I have grouped the versionchanged directives for these bugs in one place
      and added micro version numbers to help users know the quirks of the
      exact version they’re using.  I also removed a stanza in the docs that
      was forgotten in Tarek’s first changeset.
      
      Initial report, thorough diagnosis and patch by John Dennis, further
      work on the patch by Stephen Thorne, and a few edits and additions by
      me.
      69896eb6
  26. 29 Jun, 2011 2 commits
    • Ned Deily's avatar
      Issue #9516: Change distutils to no longer globally attempt to check and · d671b9c8
      Ned Deily authored
      set the MACOSX_DEPLOYMENT_TARGET env variable for the interpreter process
      on OS X.  This could cause failures in non-distutils subprocesses and was
      unreliable since tests or user programs could modify the interpreter
      environment after distutils set it.  Instead, have distutils set the
      the deployment target only in the environment of each build subprocess.
      
      Continue to use the previous algorithm for deriving the deployment target
      value:
          if MACOSX_DEPLOYMENT_TARGET is not set in the interpreter's env:
              use the interpreter build configure MACOSX_DEPLOYMENT_TARGET
          elif the MACOSX_DEPLOYMENT_TARGET env value >= configure value:
              use the env MACOSX_DEPLOYMENT_TARGET
          else: # env value less than interpreter build configure value
              raise exception
      This allows building extensions that can only run on newer versions of
      the OS than the version python was built for, for example with a python
      built for 10.3 or later and an extension that needs to be built for 10.5.
      d671b9c8
    • Ned Deily's avatar
      303c2b4c
  27. 28 Jun, 2011 1 commit
  28. 11 Jun, 2011 1 commit