From 76839362e20ea055a9368557f7cb5e535fb3fa77 Mon Sep 17 00:00:00 2001 From: Thomas Waldmann Date: Thu, 5 May 2016 20:59:53 +0200 Subject: [PATCH] fix packaging/git/coverage for src/ path --- .coveragerc | 2 +- .gitignore | 2 +- MANIFEST.in | 5 +++-- setup.py | 41 ++++++++++++++++++++++------------------- tox.ini | 2 +- 5 files changed, 28 insertions(+), 24 deletions(-) diff --git a/.coveragerc b/.coveragerc index e2e8fe40..dc809775 100644 --- a/.coveragerc +++ b/.coveragerc @@ -1,6 +1,6 @@ [run] branch = True -source = borg +source = src/borg omit = */borg/__init__.py */borg/__main__.py diff --git a/.gitignore b/.gitignore index 2d77951b..c453176e 100644 --- a/.gitignore +++ b/.gitignore @@ -17,7 +17,7 @@ platform_linux.c *.so .idea/ .cache/ -borg/_version.py +src/borg/_version.py borg.build/ borg.dist/ borg.exe diff --git a/MANIFEST.in b/MANIFEST.in index 309c1f8d..f58b579a 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,9 +1,10 @@ include README.rst AUTHORS LICENSE CHANGES.rst MANIFEST.in -recursive-include borg *.pyx +graft src +recursive-exclude src *.pyc +recursive-exclude src *.pyo recursive-include docs * recursive-exclude docs *.pyc recursive-exclude docs *.pyo prune docs/_build prune .travis exclude .coveragerc .gitattributes .gitignore .travis.yml Vagrantfile -include borg/_version.py diff --git a/setup.py b/setup.py index 7223a0eb..1ae653da 100644 --- a/setup.py +++ b/setup.py @@ -32,17 +32,17 @@ extras_require = { 'fuse': ['llfuse<2.0', ], } -from setuptools import setup, Extension +from setuptools import setup, find_packages, Extension from setuptools.command.sdist import sdist -compress_source = 'borg/compress.pyx' -crypto_source = 'borg/crypto.pyx' -chunker_source = 'borg/chunker.pyx' -hashindex_source = 'borg/hashindex.pyx' -platform_linux_source = 'borg/platform_linux.pyx' -platform_darwin_source = 'borg/platform_darwin.pyx' -platform_freebsd_source = 'borg/platform_freebsd.pyx' +compress_source = 'src/borg/compress.pyx' +crypto_source = 'src/borg/crypto.pyx' +chunker_source = 'src/borg/chunker.pyx' +hashindex_source = 'src/borg/hashindex.pyx' +platform_linux_source = 'src/borg/platform_linux.pyx' +platform_darwin_source = 'src/borg/platform_darwin.pyx' +platform_freebsd_source = 'src/borg/platform_freebsd.pyx' try: from Cython.Distutils import build_ext @@ -50,19 +50,19 @@ try: class Sdist(sdist): def __init__(self, *args, **kwargs): - for src in glob('borg/*.pyx'): + for src in glob('src/borg/*.pyx'): cython_compiler.compile(src, cython_compiler.default_options) super().__init__(*args, **kwargs) def make_distribution(self): self.filelist.extend([ - 'borg/compress.c', - 'borg/crypto.c', - 'borg/chunker.c', 'borg/_chunker.c', - 'borg/hashindex.c', 'borg/_hashindex.c', - 'borg/platform_linux.c', - 'borg/platform_freebsd.c', - 'borg/platform_darwin.c', + 'src/borg/compress.c', + 'src/borg/crypto.c', + 'src/borg/chunker.c', 'src/borg/_chunker.c', + 'src/borg/hashindex.c', 'src/borg/_hashindex.c', + 'src/borg/platform_linux.c', + 'src/borg/platform_freebsd.c', + 'src/borg/platform_darwin.c', ]) super().make_distribution() @@ -258,7 +258,7 @@ class build_api(Command): API Documentation ================= """) - for mod in glob('borg/*.py') + glob('borg/*.pyx'): + for mod in glob('src/borg/*.py') + glob('src/borg/*.pyx'): print("examining module %s" % mod) mod = mod.replace('.pyx', '').replace('.py', '').replace('/', '.') if "._" not in mod: @@ -294,7 +294,7 @@ if not on_rtd: setup( name='borgbackup', use_scm_version={ - 'write_to': 'borg/_version.py', + 'write_to': 'src/borg/_version.py', }, author='The Borg Collective (see AUTHORS file)', author_email='borgbackup@python.org', @@ -320,7 +320,10 @@ setup( 'Topic :: Security :: Cryptography', 'Topic :: System :: Archiving :: Backup', ], - packages=['borg', 'borg.testsuite', ], + packages=find_packages('src'), + package_dir={'': 'src'}, + include_package_data=True, + zip_safe=False, entry_points={ 'console_scripts': [ 'borg = borg.archiver:main', diff --git a/tox.ini b/tox.ini index 0473cb27..908433e9 100644 --- a/tox.ini +++ b/tox.ini @@ -11,7 +11,7 @@ changedir = {toxworkdir} deps = -rrequirements.d/development.txt attic -commands = py.test --cov=borg --cov-config=../.coveragerc --benchmark-skip --pyargs {posargs:borg.testsuite} +commands = py.test --cov=borg --cov-config=.coveragerc --benchmark-skip --pyargs {posargs:borg.testsuite} # fakeroot -u needs some env vars: passenv = *