Commit Graph

116 Commits

Author SHA1 Message Date
Thomas Waldmann 045e5a1203 Merge branch 'master' into move-to-src 2016-05-30 19:38:16 +02:00
Marian Beermann 0e3bba7b64 Don't rebuild command line parser for each invocation
Makes tests faster
2016-05-25 22:01:38 +02:00
Thomas Waldmann 3ce35f6843 Merge branch 'master' into move-to-src 2016-05-21 19:06:01 +02:00
Thomas Waldmann b8303a38bf Merge branch '1.0-maint' 2016-05-20 22:48:57 +02:00
Thomas Waldmann 21a30269c2 freebsd: use a older llfuse release that builds
llfuse >0.41.1 <=1.0.0 does not build on freebsd.
the issue is already fixed, but no new release yet.
2016-05-20 21:50:26 +02:00
Thomas Waldmann 596a276a26 setup.py: add check for platform_darwin.c
this was just forgotten...
2016-05-18 18:07:10 +02:00
Thomas Waldmann d7500a1191 create new platform_posix module
move common posix cython code there.
2016-05-18 17:40:04 +02:00
Thomas Waldmann 0fa663febe seek /opt/pkg (pkgsrc OS X) for openssl and lz4
Add /opt/pkg (used by pkgsrc on Mac OS X) to possible openssl and
lz4 header path.

    from 2015Q2 onwards the prefix has changed to /opt/pkg
    in order to be compatible with El Capitan's
    "System Integrity Protection" feature.

-- pkgsrc.joynet.com

thanks to @weakish for finding this!
2016-05-06 14:56:54 +02:00
Thomas Waldmann 76839362e2 fix packaging/git/coverage for src/ path 2016-05-05 21:42:37 +02:00
Thomas Waldmann b641d11e1b Merge branch '1.0-maint' 2016-05-01 20:28:17 +02:00
Thomas Waldmann 4b73ebc613 update readthedocs urls, fixes #991 2016-04-29 03:19:27 +02:00
Marian Beermann 0a369c0985
Better help texts and Sphinx reproduction of usage
- Group options
- Nicer list of options in Sphinx
- Deduplicate 'Common options'
  (including --help)

The latter is done by explicitly declaring --help in the common_parser,
which is then inherited by the sub-parsers; no change in observable
behaviour.
2016-04-10 01:28:19 +02:00
Daniel Reichelt e1f6a34820 provide wrapper for borg mount, fixes #743
- add archiver.main_mount()

- provide borgfs behaviour when the monolithic binary is called via a
  symlink called borgfs

- docs: update usage of mount subcommand, provide examples for borgfs and
  add symlink creation to standalone binary installation

- run build_usage

- add entry point in setup.py

- patch helpers.py:get_keys_dir() to allow mounting fstab entries with
  "user" option set

  Without this, setuid() called at some point by mount changes the HOME
  environment variable to '/root' and os.expanduser('~') would return
  '/root' as well, thus the mount would fail with
 	 PermissionError: [Errno 13] Permission denied: '/root/.config'
  After setuid(), the HOME variable stays intact, so we still can
  explicitly query USER's home.

  Also, os.path.expanduser() behaves differently for '~' and '~someuser'
  as parameters: when called with an explicit username, the possibly set
  environment variable HOME is no longer respected. So we have to check if
  it is set and only expand the user's home directory if HOME is unset.

- add myself to AUTHORS
2016-03-17 01:40:17 +01:00
Thomas Waldmann dd6a795536 update llfuse requirement, llfuse 1.0 works 2016-03-09 15:45:10 +01:00
Thomas Waldmann a4ec69c610 setup.py: add note about llfuse 0.42 2016-02-27 20:59:32 +01:00
Thomas Waldmann 44c8a4af80 fix pep8 failures 2016-02-17 01:05:04 +01:00
Nikolaus Rath dbec05ab73 Make python-llfuse 0.42 compatible.
--HG--
extra : amend_source : 6004af01c4ee6f7ddf6f4138bfc9bbdf2a785eb2
2016-02-16 10:28:16 -08:00
Thomas Waldmann 08fe16c176 allow llfuse version 0.41.x, fixes #642 2016-02-07 22:54:53 +01:00
Thomas Waldmann c2edfab237 all FUSE related version requirements in 1 place 2016-02-07 19:08:03 +01:00
Thomas Waldmann 69300e473d document and automate llfuse requirement 2016-02-07 19:03:32 +01:00
Thomas Waldmann 4b339f5d69 cosmetic source cleanup (flake8) 2016-01-30 21:32:45 +01:00
Thomas Waldmann 0be62d4233 stuff found on "Porting to Python 3.3" 2016-01-24 15:36:04 +01:00
Thomas Waldmann 8a819d4499 remove borg.support, fixes #358
we only needed it because argparse was broken on some 3.2.x and 3.3.x pythons.
2016-01-24 14:57:48 +01:00
Thomas Waldmann 7d591226d2 remove support for python 3.2.x and 3.3.x, require 3.4+, fixes #65, fixes #221 2016-01-24 14:57:48 +01:00
Thomas Waldmann 9c3b206bf7 fix mailing list address in setup.py, fixes #468 2015-12-08 10:12:15 +01:00
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