Commit Graph

2799 Commits

Author SHA1 Message Date
Thomas Waldmann 5a39d5c4f8 make LoggedIO.close_segment reentrant
if anything blows up in the middle of a (first) invocation of close_segment()
and an exception gets raised, it could happen that close_segment() gets called
again (e.g. in Repository.__del__ or elsewhere).

As the self._write_fd was set to None rather late, it would re-enter the if-block
then.

The new code gets the value of self._write_fd and also sets it to None in one tuple
assignment, so re-entrance does not happen.

Also, it uses try/finally to make sure the important parts (fd.close()) gets executed,
even if there are exceptions in the other parts.
2017-01-28 22:38:25 +01:00
TW 213e7b7364 Merge pull request #2109 from ThomasWaldmann/vagrantfile-improvements
vagrant: improve darwin64 VM settings
2017-01-28 16:57:08 +01:00
Thomas Waldmann f74b533d6d vagrant: improve darwin64 VM settings
somehow without these cpuid settings it does not work for everybody.
also nice if we can get away without the extensions pack, which is proprietary.
do not update iTunes, we just want the OS security / bugfix updates
2017-01-28 16:56:14 +01:00
TW 127250c400 Merge pull request #2102 from enkore/issue/2082
mount: umount on SIGINT/^C when in foreground
2017-01-28 15:14:22 +01:00
Marian Beermann 2cfaf03f84 mount: umount on SIGINT/^C when in foreground 2017-01-28 14:54:56 +01:00
TW 528891aee9 Merge pull request #2100 from ThomasWaldmann/fix-double-magic
creating a new segment: use "xb" mode, fixes #2099
2017-01-28 14:17:57 +01:00
TW 4e2171548e Merge pull request #2107 from enkore/issue/2106
docs: add CVE numbers for issues fixed in 1.0.9
2017-01-27 18:37:06 +01:00
Marian Beermann fbaefc98c9 docs: add CVE numbers for issues fixed in 1.0.9
https://www.cvedetails.com/product/35461/Borg-Borg.html?vendor_id=16008
2017-01-27 11:58:08 +01:00
Thomas Waldmann 6996fa6dc0 creating a new segment: use "xb" mode, fixes #2099
"ab" seems to make no sense here (if there is already a (crap, but non-empty) segment file,
we would write a MAGIC right into the middle of the resulting file) and cause #2099.
2017-01-24 23:06:40 +01:00
TW cf0192cdd3 Merge pull request #2094 from enkore/issue/2092
Fix invalid hard links
2017-01-24 22:54:18 +01:00
Marian Beermann 8fe047ec8d mount: handle invalid hard link refs 2017-01-24 14:33:07 +01:00
TW b6191ececc Merge pull request #2096 from ThomasWaldmann/fix-use-after-close
SyncFile: fix use of fd object after close
2017-01-24 14:02:20 +01:00
Thomas Waldmann fc8be58b63 SyncFile: fix use of fd object after close 2017-01-22 16:54:06 +01:00
Marian Beermann d350e3a2e1 create: don't create hard link refs to failed files 2017-01-22 02:21:26 +01:00
enkore 739578ebba Merge pull request #2091 from enkore/issue/2073
detect mingw byte order
2017-01-22 02:09:06 +01:00
enkore 5f5b1b2ef6 Merge pull request #2089 from ThomasWaldmann/fix-manifest
Manifest.in: simplify, also exclude *.so *.dll *.orig
2017-01-22 00:54:10 +01:00
Marian Beermann fafd5e0399 hashindex: separate endian-dependent defs from endian detection
also make macro style consistent with other macros in the codebase.
2017-01-21 17:25:38 +01:00
Marian Beermann 90ae9076a4 hashindex: detect mingw byte order 2017-01-21 15:04:07 +01:00
TW ca0c1dab11 Merge pull request #2015 from ThomasWaldmann/fix-location-regex
fix bad parsing of wrong syntax
2017-01-21 05:46:58 +01:00
Thomas Waldmann ddd9d77e5d Manifest.in: simplify, exclude *.{so,dll,orig}, fixes #2066 2017-01-21 05:41:58 +01:00
TW 0b2321a13d Merge pull request #2085 from ThomasWaldmann/use-freebsd-release
vagrant freebsd: some fixes, fixes #2067
2017-01-20 05:00:08 +01:00
Thomas Waldmann 74c33463dc vagrant freebsd: some fixes, fixes #2067
- use -RELEASE, it can be updated via binaries
- more RAM, otherwise the 4 workers run out of memory.
- do not install / use fakeroot, it seems broken.
- set a hostname, this VM has none
2017-01-20 02:59:36 +01:00
TW bdab5deb2f Merge pull request #2084 from ThomasWaldmann/binaries-with-py353
Binaries with py353
2017-01-19 21:25:37 +01:00
Thomas Waldmann 7b9ff75960 use osxfuse 3.5.4 for tests / to build binaries 2017-01-19 19:02:13 +01:00
Thomas Waldmann 2b6e8a19e3 use python 3.5.3 to build binaries, fixes #2078 2017-01-19 18:58:14 +01:00
TW c44d9ad3c2 Merge pull request #2076 from ThomasWaldmann/fix-pyinstaller-bootloader
pyinstaller: use fixed AND freshly compiled bootloader, fixes #2002
2017-01-19 18:38:01 +01:00
Thomas Waldmann cdffd93139 pyinstaller: use fixed AND freshly compiled bootloader, fixes #2002 2017-01-17 02:09:28 +01:00
TW e022cf117c Merge pull request #2064 from ThomasWaldmann/update-1.0-changes
update CHANGES (1.0-maint)
2017-01-15 01:06:28 +01:00
Thomas Waldmann 9e8af73d7f update CHANGES (1.0-maint) 2017-01-15 01:05:40 +01:00
TW f266299e5f Merge pull request #2063 from ThomasWaldmann/travis-osx-pythons
travis: use latest pythons for OS X based testing
2017-01-15 00:49:52 +01:00
TW 3b8beb98f0 Merge pull request #2061 from ThomasWaldmann/fix-vagrant-freebsd
fix the freebsd64 vagrant machine, fixes #2037
2017-01-15 00:25:04 +01:00
Thomas Waldmann 94e35fc52b travis: use latest pythons for OS X based testing
we test on old pythons (3.x.0) on Linux, so we can test on 3.x.latest on OS X.
2017-01-15 00:23:09 +01:00
TW cc69d40848 Merge pull request #2062 from ThomasWaldmann/xdist-parallelism
pytest -n 4 as default (4 parallel workers)
2017-01-15 00:18:41 +01:00
Thomas Waldmann 0e1f050440 pytest -n 4 as default (4 parallel workers)
auto does not produce enough load, e.g. on freebsd64 vagrant VM,
cpu is 80-90% idle (1 core == 1 parallel tox worker).
2017-01-15 00:18:00 +01:00
TW c716df4ce6 Merge pull request #2060 from ThomasWaldmann/require-current-pip-setuptools
add pip and setuptools to requirements file, fixes #2030
2017-01-15 00:14:25 +01:00
TW 52c27846ef Merge pull request #2059 from ThomasWaldmann/fix-xattr-test-race
fix xattr test race condition, fixes #2047
2017-01-15 00:12:20 +01:00
Thomas Waldmann a9cd6a09cb fix the freebsd64 vagrant machine, fixes #2037
The previous 10.2 got unusable due to missing backwards compatibility of 10.3 binaries it installed.
The 10.3 box from freebsd project has some issues:
- it needs "vagrant up" twice to start (first start with MAC warning)
- it needs shell set to sh
2017-01-14 23:42:38 +01:00
Thomas Waldmann 555c6a95e4 add pip and setuptools to requirements file, fixes #2030
sometimes the system pip/setuptools is rather old and causes
warnings or malfunctions in the primary virtual env.
2017-01-14 23:23:36 +01:00
Thomas Waldmann c0fb8da595 fix xattr test race condition, fixes #2047 2017-01-14 23:19:40 +01:00
TW e0094f78a1 Merge pull request #2057 from ThomasWaldmann/fix-pytest-deprecation
setup.cfg: fix pytest deprecation warning, fixes #2050
2017-01-14 23:13:28 +01:00
TW c3e4d7a273 Merge pull request #2056 from ThomasWaldmann/remove-dot-github
remove .github from pypi package, fixes #2051
2017-01-14 23:11:23 +01:00
TW 8e9cf5dcca Merge pull request #2058 from ThomasWaldmann/adjust-xdist-parallelism
pytest-xdist: adjust parallelism, fixes #2053
2017-01-14 23:10:59 +01:00
Thomas Waldmann 0a15530f9a pytest-xdist: adjust parallelism, fixes #2053
it's either auto or env var XDISTN value.
2017-01-14 23:10:12 +01:00
Thomas Waldmann dedc4c0695 setup.cfg: fix pytest deprecation warning, fixes #2050 2017-01-14 23:06:16 +01:00
Thomas Waldmann b4bb21bf6e remove .github from pypi package, fixes #2051 2017-01-14 23:02:52 +01:00
TW 32e58e88e6 Merge pull request #2038 from ThomasWaldmann/update-1.0-changes
update CHANGES (1.0-maint)
2017-01-14 16:52:20 +01:00
Thomas Waldmann 85b3625bca update CHANGES (1.0-maint) 2017-01-14 16:51:08 +01:00
enkore aea1305b0b Merge pull request #2044 from ThomasWaldmann/fix-openbsd-repo
vagrant: fix openbsd repo, fixes #2042
2017-01-14 15:14:48 +01:00
Thomas Waldmann 00c7a4f886 vagrant: fix openbsd repo, fixes #2042
original repo is 404.
2017-01-14 14:12:39 +01:00
enkore 82fd84e865 Merge pull request #2035 from ThomasWaldmann/docs-backup-from-stdin
borg create: document how to backup stdin, fixes #2013
2017-01-14 00:27:18 +01:00