Commit Graph

1272 Commits

Author SHA1 Message Date
Thomas Waldmann 9dccc809a9 create a separate requirements file for travis - without pytest-benchmark
pytest-benchmark (and its dependency "statistics") needs py 3.3+.

we do not want to run benchmarks on travis anyway, but even its presence
makes trouble due to this, so we just remove it from there again.

as --benchmark-skip is also removed from tox configuration, this means benchmarks
are run by default when pytest-benchmark is installed.
2015-10-11 17:06:12 +02:00
Thomas Waldmann a9b1e591ab upgrade pytest-benchmark to a4 2015-10-11 16:25:43 +02:00
Thomas Waldmann a5a6ba0d77 integrate pytest-benchmark, test create, extract, list, delete, info, check, help, fixes #146
Instead of "realistic data", I chose the test data to be either all-zero (all-ascii-zero to be precise)
or all-random and benchmark them separately.
So we can better determine the cause (deduplication or storage) in case we see some performance regression.

"help" is benchmarked to see the minimum runtime when it basically does nothing.

also:
- refactor archiver execution core functionality into exec_cmd() so it can be used more flexibly
- tox: usually we want to skip benchmarks, only run them if requested manually
- install pytest-benchmark - run tox with "-r" to have it installed into your .tox envs
2015-10-11 16:07:11 +02:00
Antoine Beaupré 1c61f87da3 remove debugging code and fix all have_cython calls 2015-10-08 17:20:52 -04:00
Antoine Beaupré 80e53fb66d it's a function, call it as such 2015-10-08 17:16:11 -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é a1dad8c9da try to mock msgpack altogether to fix RTD again
it seems that msgpack is a hard depends in archive...
2015-10-08 17:06:48 -04:00
Antoine Beaupré a869ab0702 try to fix RTD build *again* *again* 2015-10-08 17:03:35 -04:00
Antoine Beaupré e8ae96b54e try to fix RTD build *again* 2015-10-08 17:01:42 -04:00
Antoine Beaupré f2c56fb890 try to fix build on RTD *again* 2015-10-08 16:57:36 -04:00
anarcat 80f82efcdf Merge pull request #262 from anarcat/rtfd-fixup
fix build on readthedocs.org
2015-10-08 16:54:44 -04:00
Antoine Beaupré 423ff45d81 rename cython detection function
"have" has clearer semantics than "detect"
2015-10-08 15:34:44 -04:00
Antoine Beaupré 7ba4d47f6e clarify the class name part 2015-10-08 15:31:46 -04:00
Antoine Beaupré 2f803b6489 fix typo, split sentence 2015-10-08 15:31:46 -04:00
Antoine Beaupré ff483fe485 fix logical inversion in the semantics of detect_cython() 2015-10-08 15:31:46 -04:00
Antoine Beaupré f98998f042 fix logical inversion in the semantics of detect_cython() 2015-10-08 15:26:40 -04:00
TW 03b6b24730 Merge pull request #263 from anarcat/venv-docs
fix virtualenv path in .gitignore
2015-10-08 20:59:35 +02: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
anarcat 1c997ea169 Merge pull request #261 from anarcat/docs-readme
bunch of docs reshuffling
2015-10-08 09:00:10 -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é da02f373c7 Revert "main website becomes RTD, main website link is pointless"
Instead, we put the readthedocs.org site as main website.

This reverts commit 8fe56f001c.
2015-10-08 08:24:57 -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é 712170c71a fix virtualenv path in .gitignore
the current instructions create a dirty tree that `git add .` would
commit into git. this is error prone and somewhat unclean.

i found it preferable to change the `.gitignore` than to change the instructions, since there are probably `borg-env` environments lying around everywhere already.
2015-10-07 22:42:33 -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é 8fe56f001c main website becomes RTD, main website link is pointless 2015-10-07 21:10:09 -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
Antoine Beaupré 6cd6e286af clarify which systems have binaries 2015-10-07 18:37:35 -04:00
Antoine Beaupré 5f4db6487a fix README links so they work in github 2015-10-07 18:33:43 -04:00
Antoine Beaupré 60afc03d33 move authors to a stub, include LICENSE 2015-10-07 18:33:31 -04:00
Antoine Beaupré e2f3527353 don't duplicate OS list
we merge the "easy installation" and "platforms" paragraphs together in a neater phrasing
2015-10-07 18:32:21 -04:00
Antoine Beaupré ef5d8d0879 fix link to install docs 2015-10-07 18:04:36 -04:00
Antoine Beaupré 0b8e835eb8 api.rst is autogenerated, ignore it 2015-10-07 17:59:00 -04:00
Antoine Beaupré 60d04b05a0 show the README on the homepage
instead of a boring table of contents, try to show our more exciting README file

it's still a wall of text, but at least all the buzzwords and highlights are there

ideally, the table of contents would be in the sidebar, but i don't know how to do that
2015-10-07 17:56:24 -04:00
Antoine Beaupré 715a25802e fix syntax errors in changelog 2015-10-07 17:54:43 -04:00
Antoine Beaupré 1579be33df fix links to changelog and authors 2015-10-07 17:54:43 -04:00
Antoine Beaupré b87be856f9 include authors, and move to docs
also keep a symlink for backwards compatibility
2015-10-07 17:54:43 -04:00
Antoine Beaupré 3f2d3a8c93 remove unneeded rst boilerplate
include CHANGES.rst directly, use a symlink to keep backwards compat
2015-10-07 17:54:43 -04:00
Antoine Beaupré 6629772760 make readme a little more readable
link to source documents for people that are reading just the README without a web browser
hyperlink to the changes document as well
2015-10-07 17:54:43 -04:00
Thomas Waldmann 047e003099 docs: more details about release process, reordered sections 2015-10-07 16:55:42 +02:00
TW df20e512a0 Merge pull request #260 from anarcat/releng-docs
some fixes to the release engineering docs
2015-10-07 16:29:26 +02:00
Antoine Beaupré cec8e18d2b gpg can't sign multiple files at once, use a loop 2015-10-07 10:17:35 -04:00