Nick Craig-Wood
b6058e0106
docs/install.sh: don't create root owned .config/rclone directory #2127
2018-03-10 11:09:13 +00:00
Nick Craig-Wood
66c69fe620
mount: wait longer for consistency after rm in tests
2018-03-09 23:15:38 +00:00
Nick Craig-Wood
a2336ad774
vfs: fix deadlock in mount tests
...
This was caused by this sequence of calls
1> file.Release
1> file.close -> takes the file lock
2> vfs.waitforWriters
2> dir.walk -> takes the dir lock
1> file.setObject
1> dir.addObject -> attempts to take the dir lock - BLOCKS
2> file.activeWriters -> tries to take file lock - BLOCKS - DEADLOCK
The fix is to make activeWriters not take the file lock and use atomic
operations to read the number of writers instead.
2018-03-09 23:15:38 +00:00
Nick Craig-Wood
7713acf23d
mount: skip failing test TestFileModTimeWithOpenWriters on Windows
2018-03-09 23:15:38 +00:00
Nick Craig-Wood
473a388f6d
mount: disable failing test TestWriteFileDoubleClose on OSX
2018-03-09 23:15:37 +00:00
Nick Craig-Wood
c8a4d437a0
Make travis test mount and cmount - fixes #2100
...
Previously FUSE wasn't found in the container so these tests weren't
run. Move to VM based testing and install FUSE dependencies.
2018-03-09 23:15:37 +00:00
Nick Craig-Wood
09c14af6d1
cmd: Fix go routines at exit message to make it less confusing
2018-03-09 17:15:48 +00:00
Jakub Tasiemski
acae10cd6f
lsjson: add --encrypted to show encrypted name #1765
2018-03-09 08:44:02 +00:00
Nick Craig-Wood
0861207ace
fstest/test_all: set cache backend wait time to 30m to fix integration tests
2018-03-08 21:14:09 +00:00
Nick Craig-Wood
a7dbf32c53
cache: Implement --cache-db-wait-time flag
...
This can be used to make the cache wait for other running cache
backends to finish rather than erroring after 1 second.
2018-03-08 21:14:09 +00:00
Nick Craig-Wood
6025bb6ad1
local: fix race conditions updating the hashes
...
This was causing occasional test failures for the -race test of mount
and cmount.
2018-03-08 21:08:41 +00:00
Remus Bunduc
70f07fd3ac
fs: add ChangeNotify and backend support for it ( #2094 )
...
* fs: rename DirChangeNotify to ChangeNotify
* cache: switch to ChangeNotify
* ChangeNotify: keep order of notifications
2018-03-08 22:03:34 +02:00
Nick Craig-Wood
b3f55d6bda
vendor: Update github.com/Unknwon/goconfig to fix section listing
...
This fixes listing sections just after creation which means the rclone
config list will have all the keys in now.
2018-03-08 13:18:27 +00:00
Nick Craig-Wood
d9094f1a45
vendor: Gopkg.lock file format changes only after go dep update
2018-03-08 13:16:59 +00:00
Nick Craig-Wood
572ee5ec96
Sign the tags as part of the release process #1449
2018-03-07 15:18:13 +00:00
Nick Craig-Wood
316dac25c2
travis: add encrypted GITHUB_USER and GITHUB_TOKEN for using the API
2018-03-07 10:18:10 +00:00
Nick Craig-Wood
ee3c45676f
bin/get-github-release.go: use GITHUB_USER/GITHUB_TOKEN when available
...
This should help with rate limiting problems when running under
travis.
2018-03-07 10:18:09 +00:00
Nick Craig-Wood
2e7e15461b
bin/get-github-release.go: report body of HTTP responses with errors
2018-03-07 10:18:06 +00:00
Nick Craig-Wood
0175332987
vfs: fix applying modtime for an open Write Handle
...
The symptom of this was that the time set when the file was open was
lost. This was causing one of the mount tests to fail too.
2018-03-06 21:58:11 +00:00
Nick Craig-Wood
85e0b87c99
build: add .deb and .rpm output for the build
...
This uses https://github.com/goreleaser/nfpm to create the .deb and
.rpm packages from the standard build output.
2018-03-06 12:37:44 +00:00
Nick Craig-Wood
d41017a277
A script to download and install the latest release of a github package
2018-03-06 12:37:44 +00:00
Nick Craig-Wood
fc32fee4ad
mount, cmount: add --attr-timeout to control attribute caching in kernel
...
This flag allows the attribute caching in the kernel to be controlled.
The default is 0s - no caching - which is recommended for filesystems
which can change outside the control of the kernel.
Previously this was at the default meaning it was 60s for mount and 1s
for cmount. This showed strange effects when files changed on the
remote not via the kernel. For instance Caddy would serve corrupted
files for a while when serving from an rclone mount when a file
changed on the remote.
2018-03-04 11:20:22 +00:00
Nick Craig-Wood
5795bd7db6
vfs: update cached copy if we know it has changed even if pending opens
...
This fixes a problem with Caddy serving corrupted files out of the VFS
cache when the file on the remote changed.
2018-03-04 11:20:22 +00:00
Nick Craig-Wood
9b011ce7e4
vfs: keep track of number of open RWHandles
2018-03-04 11:20:22 +00:00
Nick Craig-Wood
5e334eedd2
vfs: re-use the File objects when re-reading the directory
...
Make it so that d.items is never nil to simplify the code
This should help with inconsistent reads when the source object changes.
2018-03-04 11:20:22 +00:00
Nick Craig-Wood
7fb53a031c
vfs: don't cache the object in read and read/write handles
...
This should help with inconsistent reads when the source object changes.
2018-03-04 11:20:22 +00:00
ishuah
ebfeec9fb4
mount: run rclone mount in the background - fixes #723
2018-03-04 14:06:07 +03:00
ishuah
90af7af9a3
added dependency github.com/sevlyar/go-daemon
2018-03-04 14:06:07 +03:00
Nick Craig-Wood
fe8eeec5b5
cache: improve efficiency with RangeOption and RangeSeek #1825
...
* All remotes now support RangeOption so remove SeekOption
* Correct off by one error as RangeOption arguments are inclusive.
* Use RangeSeek in preference to Seek if available
2018-03-02 17:10:56 +00:00
Nick Craig-Wood
e0eb666dbf
fs/walk: fix new golint warning about unused variables in range
2018-03-02 17:01:58 +00:00
Nick Craig-Wood
7d4da1c66a
local: fix crash on Stat error while reading a file
2018-03-01 13:17:40 +00:00
Nick Craig-Wood
f3e982d3bf
azureblob,b2,gcs,qingstor,s3,swift: Don't check for bucket/container presense if listing was OK
...
In a typical rclone copy to a bucket/container based remote, before
this change we were doing a list, followed by a HEAD of the bucket to
check it existed before doing the copy. The fact the list succeeded
means the bucket exists so mark it OK at that point.
Issue #1421
2018-03-01 12:11:34 +00:00
Nick Craig-Wood
3f9d0d3baf
docs: improve --files-from documentation
2018-03-01 09:59:50 +00:00
Nick Craig-Wood
e9fd2250eb
Make titles smaller in issue template
2018-02-28 22:05:49 +00:00
Nick Craig-Wood
769aa860f2
Rewrite greeting message for issue template inside HTML quoting
2018-02-28 21:58:41 +00:00
Nick Craig-Wood
fdebf9da31
local: Downgrade "invalid cross-device link: trying copy" to debug - Fixes #1875
2018-02-28 21:27:34 +00:00
Nick Craig-Wood
77f344a69d
pacer: attempt to fix occasional "beginSleep didn't fire" test failures
2018-02-27 11:06:59 +00:00
Nick Craig-Wood
62540b4007
docs: clarify beta docs and add link to tip.rclone.org
2018-02-27 10:58:48 +00:00
Fabian Möller
21faac6e6c
Add David0rk to contributors
2018-02-27 10:06:56 +01:00
Fabian Möller
167a4396c7
drive: remove debug binary
2018-02-27 09:59:06 +01:00
David0rk
1585aa61c1
docs: update install.sh shebang ( #2097 )
...
change shebang to bash to avoid syntax errors
2018-02-27 09:32:01 +01:00
Nick Craig-Wood
b91bd32489
vfs: Fix TestWriteFileDoubleClose with --vfs-cache-mode >= writes
...
This was causing the file to be closed on Flush() instead of Release()
when the file was opened with O_TRUNC.
2018-02-26 21:26:32 +00:00
Nick Craig-Wood
c3d0f68923
vfs: fix truncation work-around on Windows
...
This no longer needs to deal with O_RDONLY and O_TRUNC since we
disallow this earlier. This also fixes the code to just do it for
O_APPEND, not for everything.
2018-02-26 19:46:38 +00:00
Nick Craig-Wood
f57e92b9a5
vfs: fix creation of files when truncating #2083
...
As spotted by @B4dM4n
2018-02-26 19:37:58 +00:00
Nick Craig-Wood
baf9ee5cf7
vfs: update cached copy if we know it has changed before using it
...
Before this change we would have to wait for the --vfs-cache-max-age
to expire before getting an update.
2018-02-26 18:00:51 +00:00
Nick Craig-Wood
354f1ad722
vfs: Use operations.Copy instead of CopyFile for efficiency
2018-02-26 17:54:18 +00:00
Nick Craig-Wood
54deb01f00
vfs: Make OpenFile and friends return EINVAL if O_RDONLY and O_TRUNC
...
Before this change Open("name", os.O_RDONLY|os.O_TRUNC) would have
truncated the file. This is what Linux does, but is counterintuitive.
POSIX states this is undefined, so return an error in this case
instead. This preserves the invariant O_RDONLY => file is not
changed.
2018-02-26 17:04:27 +00:00
Nick Craig-Wood
3282fd26af
vfs: clean path names before using them in the cache
...
This avoids inconsistent cache behaviour on open("potato/")
close("potato").
The tests were also adjusted to make them more comprehensive.
2018-02-26 16:59:14 +00:00
Nick Craig-Wood
88d830c7b7
vfs: create cache.opens and use it in place of cache.get to avoid potential race
2018-02-26 16:58:02 +00:00
Nick Craig-Wood
724120d2f3
local: make DirMove return fs.ErrorCantDirMove to allow fallback
...
Before this change `rclone move localdir /mnt/different-fs` would
error. Now it falls back to moving individual files, which in turn
falls back to copying individual files across the filesystem boundary.
2018-02-26 12:55:05 +00:00