Pull requests

#22 Merged
Repository
Deleted repository
Branch
default (ce96e4dbc97e)
Repository
pypa/setuptools setuptools
Branch
default

Removed verbose warning from svn_utils.py

Author
  1. philip_thiem
Reviewers
Description

Correction from my earlier message, just needed to remove the warning not also the elsif

Comments (10)

  1. pombredanne

    +1 .... simple enough to go in quick and restore passing build on buildout and other projects that have tests that depend on the setuptools output .. Thanks Philip

    1. philip_thiem author

      So at the very least we have to try running svn to see if it is a repository, if svn isn't there, but if .svn does exist then fallback on some old code with a deprecation warning. If there is no .svn and no svn then it should be silent and add nothing to the file list. I wrote a little dummy package for a test case and just removed the .svn: - I'm not seeing much. Could you try out 1.3.2 (is it out yet?) There were a couple fixes for SVN including a bug in the legacy code interface. Anyway, I will add a test case for output on a not svn repo and try out sdist and egg_info to see if travis-ci turns up anything.

      sdist:

      running sdist
      running egg_info
      creating dummy.egg-info
      writing dummy.egg-info\PKG-INFO
      writing top-level names to dummy.egg-info\top_level.txt
      writing dependency_links to dummy.egg-info\dependency_links.txt
      writing manifest file 'dummy.egg-info\SOURCES.txt'
      reading manifest file 'dummy.egg-info\SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      writing manifest file 'dummy.egg-info\SOURCES.txt'
      warning: sdist: missing required meta-data: url
      warning: sdist: missing meta-data: either (author and author_email) or (maintainer and maintainer_email) must be supplied
      creating dummy-0.1.1
      creating dummy-0.1.1\dummy
      creating dummy-0.1.1\dummy.egg-info
      copying files to dummy-0.1.1...
      copying CHANGES.txt -> dummy-0.1.1
      copying CONTRIBUTORS.txt -> dummy-0.1.1
      copying HISTORY.txt -> dummy-0.1.1
      copying LICENSE -> dummy-0.1.1
      copying MANIFEST.in -> dummy-0.1.1
      copying README.txt -> dummy-0.1.1
      copying setup.py -> dummy-0.1.1
      copying dummy\__init__.py -> dummy-0.1.1\dummy
      copying dummy\test.txt -> dummy-0.1.1\dummy
      copying dummy.egg-info\PKG-INFO -> dummy-0.1.1\dummy.egg-info
      copying dummy.egg-info\SOURCES.txt -> dummy-0.1.1\dummy.egg-info
      copying dummy.egg-info\dependency_links.txt -> dummy-0.1.1\dummy.egg-info
      copying dummy.egg-info\top_level.txt -> dummy-0.1.1\dummy.egg-info
      Writing dummy-0.1.1\setup.cfg
      creating dist
      creating 'dist\dummy-0.1.1.zip' and adding 'dummy-0.1.1' to it
      adding 'dummy-0.1.1\CHANGES.txt'
      adding 'dummy-0.1.1\CONTRIBUTORS.txt'
      adding 'dummy-0.1.1\HISTORY.txt'
      adding 'dummy-0.1.1\LICENSE'
      adding 'dummy-0.1.1\MANIFEST.in'
      adding 'dummy-0.1.1\PKG-INFO'
      adding 'dummy-0.1.1\README.txt'
      adding 'dummy-0.1.1\setup.cfg'
      adding 'dummy-0.1.1\setup.py'
      adding 'dummy-0.1.1\dummy\test.txt'
      adding 'dummy-0.1.1\dummy\__init__.py'
      adding 'dummy-0.1.1\dummy.egg-info\dependency_links.txt'
      adding 'dummy-0.1.1\dummy.egg-info\PKG-INFO'
      adding 'dummy-0.1.1\dummy.egg-info\SOURCES.txt'
      adding 'dummy-0.1.1\dummy.egg-info\top_level.txt'
      creating 'dist\dummy-0.1.1.zip' and adding 'dummy-0.1.1' to it
      adding 'dummy-0.1.1\CHANGES.txt'
      adding 'dummy-0.1.1\CONTRIBUTORS.txt'
      adding 'dummy-0.1.1\HISTORY.txt'
      adding 'dummy-0.1.1\LICENSE'
      adding 'dummy-0.1.1\MANIFEST.in'
      adding 'dummy-0.1.1\PKG-INFO'
      adding 'dummy-0.1.1\README.txt'
      adding 'dummy-0.1.1\setup.cfg'
      adding 'dummy-0.1.1\setup.py'
      adding 'dummy-0.1.1\dummy\test.txt'
      adding 'dummy-0.1.1\dummy\__init__.py'
      adding 'dummy-0.1.1\dummy.egg-info\dependency_links.txt'
      adding 'dummy-0.1.1\dummy.egg-info\PKG-INFO'
      adding 'dummy-0.1.1\dummy.egg-info\SOURCES.txt'
      adding 'dummy-0.1.1\dummy.egg-info\top_level.txt'
      removing 'dummy-0.1.1' (and everything under it)
      

      bdist

      running bdist
      running bdist_dumb
      running build
      installing to build\bdist.win32\dumb
      running install
      running install_egg_info
      running egg_info
      creating dummy.egg-info
      writing dummy.egg-info\PKG-INFO
      writing top-level names to dummy.egg-info\top_level.txt
      writing dependency_links to dummy.egg-info\dependency_links.txt
      writing manifest file 'dummy.egg-info\SOURCES.txt'
      reading manifest file 'dummy.egg-info\SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      writing manifest file 'dummy.egg-info\SOURCES.txt'
      Copying dummy.egg-info to build\bdist.win32\dumb\Python26\Lib\site-packages\dummy-0.1.1-py2.6.egg-info
      running install_scripts
      creating C:\developement\dummy2\dist
      creating 'C:\developement\dummy2\dist\dummy-0.1.1.win32.zip' and adding '.' to it
      adding 'Python26\Lib\site-packages\dummy-0.1.1-py2.6.egg-info\dependency_links.txt'
      adding 'Python26\Lib\site-packages\dummy-0.1.1-py2.6.egg-info\PKG-INFO'
      adding 'Python26\Lib\site-packages\dummy-0.1.1-py2.6.egg-info\SOURCES.txt'
      adding 'Python26\Lib\site-packages\dummy-0.1.1-py2.6.egg-info\top_level.txt'
      creating 'C:\developement\dummy2\dist\dummy-0.1.1.win32.zip' and adding '.' to it
      adding 'Python26\Lib\site-packages\dummy-0.1.1-py2.6.egg-info\dependency_links.txt'
      adding 'Python26\Lib\site-packages\dummy-0.1.1-py2.6.egg-info\PKG-INFO'
      adding 'Python26\Lib\site-packages\dummy-0.1.1-py2.6.egg-info\SOURCES.txt'
      adding 'Python26\Lib\site-packages\dummy-0.1.1-py2.6.egg-info\top_level.txt'
      removing 'build\bdist.win32\dumb' (and everything under it)
      

      egginfo

      running egg_info
      creating dummy.egg-info
      writing dummy.egg-info\PKG-INFO
      writing top-level names to dummy.egg-info\top_level.txt
      writing dependency_links to dummy.egg-info\dependency_links.txt
      writing manifest file 'dummy.egg-info\SOURCES.txt'
      reading manifest file 'dummy.egg-info\SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      writing manifest file 'dummy.egg-info\SOURCES.txt'
      

      install

      running install
      running bdist_egg
      running egg_info
      creating dummy.egg-info
      writing dummy.egg-info\PKG-INFO
      writing top-level names to dummy.egg-info\top_level.txt
      writing dependency_links to dummy.egg-info\dependency_links.txt
      writing manifest file 'dummy.egg-info\SOURCES.txt'
      reading manifest file 'dummy.egg-info\SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      writing manifest file 'dummy.egg-info\SOURCES.txt'
      installing library code to build\bdist.win32\egg
      running install_lib
      warning: install_lib: 'build\lib' does not exist -- no Python modules to install
      
      creating build
      creating build\bdist.win32
      creating build\bdist.win32\egg
      creating build\bdist.win32\egg\EGG-INFO
      copying dummy.egg-info\PKG-INFO -> build\bdist.win32\egg\EGG-INFO
      copying dummy.egg-info\SOURCES.txt -> build\bdist.win32\egg\EGG-INFO
      copying dummy.egg-info\dependency_links.txt -> build\bdist.win32\egg\EGG-INFO
      copying dummy.egg-info\top_level.txt -> build\bdist.win32\egg\EGG-INFO
      zip_safe flag not set; analyzing archive contents...
      creating dist
      creating 'dist\dummy-0.1.1-py2.6.egg' and adding 'build\bdist.win32\egg' to it
      removing 'build\bdist.win32\egg' (and everything under it)
      Processing dummy-0.1.1-py2.6.egg
      Copying dummy-0.1.1-py2.6.egg to c:\python26\lib\site-packages
      Adding dummy 0.1.1 to easy-install.pth file
      
      Installed c:\python26\lib\site-packages\dummy-0.1.1-py2.6.egg
      Processing dependencies for dummy==0.1.1
      Finished processing dependencies for dummy==0.1.1
      
    2. philip_thiem author

      Ok is this what you are referring to:

      File "/home/travis/build/pombredanne/buildout/src/zc/buildout/tests.py", line 1074, in zc.buildout.tests.changes_in_svn_or_CVS_dont_affect_sig
      Failed example:
          print_(system(join(sample_buildout, 'bin', 'buildout')), end='')
      Expected:
          Develop: '/sample-buildout/recipe'
          Updating foo.
      Got:
          Develop: '/sample-buildout/recipe'
          Fallback onto .svn parsing
          Updating foo.
          /sample-buildout/eggs/setuptools.eggpyN.N.egg/setuptools/svn_utils.py:234: DeprecationWarning: No SVN 1.3+ command found: falling back on pre 1.7 .svn parsing
            "on pre 1.7 .svn parsing"), DeprecationWarning)
      

      That seems to be a test named "changes_in_svn_or_CVS_dont_affect_sig" are you sure that the test case isn't an SVN working copy? Anyway I can remove the log.warn line just before the depreciation warning which might make it easier to deal with.

        1. philip_thiem author

          Ok yes this is the trigger for determining if we need to crawl the directory. The legacy parser will operating on incomplete working copies also (only needs .svn/Enteries). I could make the initial trigger based on the existence of any of .svn/Enteries, .svn/dir-props, and .svn/dir-prop-base. I think this will work since you are only creating an (empty?) .svn. Would you agree that this would allow the test case to slip by?