Commit Graph

91 Commits

Author SHA1 Message Date
Antoine Beaupré f13dd6e579 completely remove have_cython() hack
this was making us require mock, which is really a test component and
shouldn't be part of the runtime dependencies. furthermore, it was
making the imports and the code more brittle: it may have been
possible that, through an environment variable, backups could be
corrupted because mock libraries would be configured instead of real
once, which is a risk we shouldn't be taking.

finally, this was used only to build docs, which we will build and
commit to git by hand with a fully working borg when relevant.

see #384.
2015-11-13 10:40:53 -05:00
Antoine Beaupré f52fb410a5 Revert "use build_py to fix build on RTD", disables docs build
This reverts commit 86487d192a.

We will instead commit the generated `.rst` usage and API files
directly into git. The setup commands remain to generate them when the
usage or API changes, but as things are the hoops required to generate
those RST files are way too complicated to justify simply build docs.

See #384.

Conflicts:
	setup.py
2015-11-13 10:40:43 -05:00
Thomas Waldmann 3238b8ea76 do not try to build api / usage docs for production install
it requires "mock" (and later also sphinx) and we do not (want to) have that in setup_requires.

I removed the build.sub_commands.append(...) because that made setup.py install run build_api
and build_usage automatically for production installs. the comment said it does not work on
readthedocs anyway.

build_api and build_usage can still be run manually.
2015-11-08 16:16:43 +01:00
Thomas Waldmann 6d5cc06cf6 remove unused imports, add missing imports 2015-11-02 20:36:13 +01:00
Thomas Waldmann 908e944bdd include the help offered by borg help <topic> in the usage docs, fixes #293
it's not pretty yet, but better than nothing.
2015-10-17 21:53:09 +02:00
Jakob Schnitzer 45a96fbc8d docs: change name of API section
from 'Borg Backup API documentation' to 'API Documentation'

It is pretty clear which software the API docs are for imho.
2015-10-13 17:02:15 +02:00
Thomas Waldmann 0b9dcbf8e5 Merge branch 'master' of github.com:borgbackup/borg 2015-10-11 21:20:56 +02:00
Thomas Waldmann 8eaf460da3 setup.py: fix bug related to BORG_LZ4_PREFIX processing 2015-10-11 21:20:29 +02:00
Antoine Beaupré da2ec7995f fix homepage URL in all remaining places
we update the documentation to mention the automatic updates, and also
remove the hack in the makefile to update the github.io pages, which
are gone.
2015-10-09 15:54:04 -04:00
Antoine Beaupré 2f9bdfe96b fix API generation
properly generate the module name
2015-10-09 14:29:16 -04:00
Antoine Beaupré ff04a654ab remove trailing quote 2015-10-09 14:25:29 -04:00
Antoine Beaupré 1c61f87da3 remove debugging code and fix all have_cython calls 2015-10-08 17:20:52 -04:00
Antoine Beaupré d68451574b more debug 2015-10-08 17:14:25 -04:00
Antoine Beaupré d6109b676c re-enable cython as late as possible 2015-10-08 17:09:33 -04:00
Antoine Beaupré 2f803b6489 fix typo, split sentence 2015-10-08 15:31:46 -04:00
Antoine Beaupré 2e9bd5a883 cosmetic: s/api/doc/ 2015-10-08 14:57:32 -04:00
Antoine Beaupré 6c5a7733a2 force build-ext build
it seems that what worked in the debug branch is not working in the
main branch, even though the commit IDs are exactly the same. the RTD environment doesn't seem really reliable...

besides, we want to build extensions before the rest, so should run it
first, in order to have msgpack loaded.
2015-10-08 10:37:56 -04:00
Antoine Beaupré 86487d192a use build_py to fix build on RTD
it seems that our subcommands are ignored over there, for some mysterious reason.
2015-10-08 10:26:02 -04:00
Antoine Beaupré 824f9c72a2 cosmetic: s/cmdfile/doc/ 2015-10-08 08:56:06 -04:00
Antoine Beaupré 6f9e04bc21 generalise the cython check hack
instead of applying this only to usage generation, use it as a generic
mechanism to disable loading of Cython code.

it may be incomplete: there may be other places where Cython code is
loaded that is not checked, but that is sufficient to build the usage
docs. the environment variable used is documented as such in the
docs/usage.rst.

we also move the check to a helper function and document it
better. this has the unfortunate side effect of moving includes
around, but I can't think of a better way.
2015-10-08 08:56:02 -04:00
Antoine Beaupré 7ccf6b32a6 simplify RTD env check 2015-10-08 08:23:37 -04:00
Antoine Beaupré 8190e33a64 faster and cleaner rtd check for cython 2015-10-08 08:22:52 -04:00
Antoine Beaupré 45d9c6b3b7 fix formatting 2015-10-08 08:21:52 -04:00
Antoine Beaupré c93d975d3f remove debugging code 2015-10-08 08:20:59 -04:00
Antoine Beaupré 9cbc868764 make tests and build work again in usage using environment
this is such a crude hack it is totally embarrassing....

the proper solution would probably be to move the `build_parser()`
function out of `Archiver` completely, but this is such an undertaking
that i doubt it is worth doing since we're looking at switching to
click anyways.

the main problem in moving build_parser() out is that it references
`self` all the time, so it *needs* an archiver context that it can
reuse. we could make the function static and pass self in there by
hand, but it seems like almost a worse hack... and besides, we would
need to load the archiver in order to do that, which would break usage
all over again...
2015-10-07 22:26:59 -04:00
Antoine Beaupré 13d3568548 move usage generation to setup.py
this is an unfortunate rewrite of the manpage creation code mentionned
in #208. ideally, this would be rewritten into a class that can
generate both man pages and .rst files.
2015-10-07 21:07:15 -04:00
Antoine Beaupré 4787424a66 move API generation to setup.py 2015-10-07 19:58:24 -04:00
Antoine Beaupré 28cbc6cbd1 fix build on RTFD
first off, this required ticking the `Install your project inside a
virtualenv using setup.py install` box in the advanced config.

then, i had to disable all the C extensions build and disable some
checks, based on whether we are running on RTD or not.

still missing: usage builds and possibly other stuff that is in our
Makefile and not in setup.py.
2015-10-07 19:29:27 -04:00
Thomas Waldmann d4de0fd019 remove remainders of versioneer, typo fix. 2015-09-19 21:44:40 +02:00
Thomas Waldmann f138d06dd5 more platform support, works on py 3.5
xattrs and ACLs on OpenBSD and NetBSD need development or adaptation of
the platform-specific code.
2015-09-16 11:44:53 +02:00
Thomas Waldmann 5eb04969f8 setup.py: add the place where we link the lz4 header/lib on the darwin vagrant VM 2015-09-13 18:03:43 +02:00
Thomas Waldmann 2b311846e0 add a argparse.py (from py 3.2.6) that is not broken
also: remove previois attempt to fix this, installing pypi argparse into virtualenv does not work.
2015-09-13 00:58:57 +02:00
Thomas Waldmann 6c619000e3 pull fixed argparse from pypi in case we have a buggy python
see argparse 1.4.0 changelog for details
2015-09-12 22:44:23 +02:00
Thomas Waldmann cff7dffc95 detect lz4.h header file location
use similar code as for openssl headers
2015-09-12 19:38:38 +02:00
Ronny Pfannschmidt 8b6ca0d912 propperly handle borg._version using setuptools_scm 2015-08-22 15:54:40 +02:00
Ronny Pfannschmidt c7023ed12a replace versioneer with setuptools_scm 2015-08-22 14:58:06 +02:00
Thomas Waldmann 27de1b0a43 add a wrapper around liblz4 2015-08-01 15:07:54 +02:00
Ronny Pfannschmidt 922a1f6bb7 never fall back to distutils, any sane install method uses setuptools 2015-07-12 15:07:24 +02:00
Ronny Pfannschmidt 45e89add52 switch to entrypoints 2015-07-12 15:00:47 +02:00
Thomas Waldmann 0580f2b4eb style and cosmetic fixes, no semantic changes
use simpler super() syntax of python 3.x

remove fixed errors/warnings' codes from setup.cfg flake8 configuration

fix file exclusion list for flake8
2015-07-11 18:31:49 +02:00
Thomas Waldmann 0ad2ab2496 a bit too much glob there in setup.py, removed 2015-05-22 22:55:35 +02:00
Thomas Waldmann 5e98400a5a fix all references to package name
use relative imports if possible
reorder imports (1. stdlib 2. dependencies 3. borg 4. borg.testsuite)
2015-05-22 19:21:41 +02:00
Thomas Waldmann 7fee5dbbbf add python version classifiers 2015-05-14 12:04:38 +02:00
Thomas Waldmann 5f4e928eff add FreeBSD to platforms list in setup.py
it already was present in the classifiers.
2015-05-14 11:44:58 +02:00
Thomas Waldmann 673fda39c1 upgrade versioneer to 0.14, makes PEP440 compliant version numbers now 2015-05-14 01:25:18 +02:00
Thomas Waldmann cb5c9b63b3 fork: s/attic/borg/g, fix URLs, add new section to AUTHORS
use borg instead attic except at the places where it was used:
- as toplevel package name, directory name, file name
- to refer to original attic

remove sphinx upload make command, will be replaced by github.io site later

remove references to binary downloads and linux packages for now

remove some software name references, fix grammar

use borgbackup rather than borg-backup (or borg) in URLs,
less name collision issues, better search results, no validity issues with "-"
2015-05-13 15:02:33 +02:00
Thomas Waldmann 354b3d34e3 Merge branch 'master' into merge 2015-04-21 21:02:42 +02:00
Thomas Waldmann 80dad2df61 use sys.platform everywhere, fixes #188
os.uname is UNIX-only, sys.platform is portable.

note:
- this doesn't implicate attic will now work on windows.
- windows is untested / unsupported and there might be a lot of other issues left.
- attic's xattr module already used sys.platform, so this is better for internal consistency also.
2015-04-19 23:54:44 +02:00
Thomas Waldmann b7cefacb69 Merge branch 'python_cleanup' into merge
Conflicts:
	attic/archiver.py
	attic/remote.py
2015-03-18 00:23:41 +01:00
Thomas Waldmann 4ef6125f45 cleanup pep8 issues found by pycharm 2015-03-17 23:47:21 +01:00