Nick Craig-Wood
311a962011
s3: Look in S3 named profile files for credentials - fixes #2243
2018-04-21 09:00:20 +01:00
Nick Craig-Wood
da7a77ef2e
ftp: Fix no error on listing non-existent directory
2018-04-20 23:22:46 +01:00
Nick Craig-Wood
9fbc40c5b9
fstests: List missing dir must return ErrorDirNotFound for non bucket based remotes
...
List or ListR of an non existent directory must return
ErrorDirNotFound for non bucket based remotes. For bucket based
remotes it may return ErrorDirNotFound or it may return no error and
no entries.
2018-04-20 23:22:46 +01:00
Nick Craig-Wood
56ce784301
Add hensur to contributors
2018-04-20 21:44:12 +01:00
Nick Craig-Wood
dc59836021
webdav: strip leading and trailing / off root - fixes #2257
2018-04-20 21:43:54 +01:00
Nick Craig-Wood
1a3fb21a77
onedrive: add QuickXorHash support for OneDrive for business - fixes #2262
2018-04-20 21:03:03 +01:00
Nick Craig-Wood
bcdb7719c6
fs/hash: install QuickXorHash as a supported rclone hash type #2262
2018-04-20 21:02:57 +01:00
Nick Craig-Wood
c51d97c752
hashsum: make generic tool for any hash to produce md5sum like output
2018-04-20 21:02:37 +01:00
Nick Craig-Wood
57a5b72d60
onedrive: implement quickXorHash algorithm #2262
2018-04-20 21:02:37 +01:00
Nick Craig-Wood
34ba17deec
Add Chris Redekop second email to contributors
2018-04-20 20:53:15 +01:00
Nick Craig-Wood
e3a1bc9cd3
Add Michael G. Noll to contributors
2018-04-20 20:51:31 +01:00
Nick Craig-Wood
a0c65deca8
box: Parse file/directory size as a floating point number
...
Very large directories can have their sizes returned as floating point
numbers, eg `1.0034576985781e+14` from the box API.
Before this change this would fail to parse as an int64.
This change parses the size as a float64 instead which will be
perfectly accurate for sizes up to 2**56 which is about 9 PB.
It is unknown whether box themselves use a float64 as an intermediate
representation in the API or not - it seems likely.
Fixes #2261
2018-04-19 21:04:52 +01:00
Nick Craig-Wood
1f255a8567
Add a mega.nz remote #163
...
Not supported yet:
* Hash
* ModTime
* Server Side Copy
Otherwise fully functional and passing all the tests.
2018-04-18 21:09:54 +01:00
Nick Craig-Wood
f50b85278a
vendor: github.com/t3rm1n4l for backend/mega
2018-04-18 21:09:54 +01:00
Nick Craig-Wood
9948b39dba
about: don't attempt retries
2018-04-18 21:09:54 +01:00
Nick Craig-Wood
2b855751fc
vfs,mount,cmount: use About to return the correct disk total/used/free
...
Disks total, used, free now shows correctly for mount and cmount (eg
`df` for Unix or in the Windows explorer).
2018-04-18 18:27:34 +01:00
Nick Craig-Wood
ef3bcec76c
fs: Extend SizeSuffix to include TB and PB for rclone about
2018-04-17 21:53:42 +01:00
Nick Craig-Wood
1ac6dacf0f
about: complete other providers and re-work internals
...
* Implement about for:
* local, crypt, cache, drive, swift, hubic, onedrive, pcloud, dropbox
* Implement `--json` and `---full` flag for `rclone about`
* change About interface to return a Usage structure
* Remove operations.About as it is too thin an interface
* Implement Integration test
Relates to #1138 and #1564
2018-04-17 21:53:27 +01:00
Nick Craig-Wood
b83814082b
backend/http: if HEAD didn't return Content-Length use -1 as size
...
This means that the files will be treated as an unknown length and
will download properly.
Fixes #2247
2018-04-16 19:40:02 +01:00
Nick Craig-Wood
2b7957cc74
vfs: Only make the VFS cache if --vfs-cache-mode > Off
...
This stops the cache cleaner running unnecessarily and saves
resources.
This also helps with issue #2227 which was caused by a second mount
deleting objects in the first mounts cache.
2018-04-16 17:06:41 +01:00
Nick Craig-Wood
3d5106e52b
drive: fix DirMove leaving a hardlinked directory behind #2245
...
This bug was introduced by the v3 API conversion in 07f20dd1fd .
The problem was that dircache.FindPath doesn't work for the root directory.
This adds an internal error for dircache.FindPath being called with
the root directory. This makes a failing test, which the fix to the
drive backend fixes.
This also improves the DirCache integration test.
2018-04-15 10:12:21 +01:00
Nick Craig-Wood
29ce1c2747
fstest: fix CheckListingWithPrecision with non Windows safe chars
...
* Factor WinPath from fstest to fstests
* Use it to normalize the directory names while checking them
2018-04-15 10:12:20 +01:00
Nick Craig-Wood
dc247d21ff
s3: add in config for all the supported S3 providers #2140
...
These are AWS, Ceph, Dreamhost, IBM COS S3, Minio, Wasabi and Other.
This configures endpoints where known and makes sure config doesn't
appear where it isn't valid where possible.
2018-04-13 16:33:26 +01:00
Nick Craig-Wood
8c3740c2c5
config: Improve the Provider matching to have a negated match #2140
...
This makes it easier to make classes of provider in the config.
2018-04-13 16:06:37 +01:00
Nick Craig-Wood
2015f98f0c
Add Craig Rachel to contributors
2018-04-13 13:36:46 +01:00
Nick Craig-Wood
905e40b3e6
Add Peter Baumgartner to contributors
2018-04-13 13:33:22 +01:00
Nick Craig-Wood
6b67489133
Add Animosity022 to contributors
2018-04-13 13:26:41 +01:00
Nick Craig-Wood
e6d9720d7b
Add Mateusz Piotrowski to contributors
2018-04-13 13:25:16 +01:00
Nick Craig-Wood
18317a2747
vendor: update github.com/pkg/sftp because dep insisted
2018-04-13 13:23:55 +01:00
Nick Craig-Wood
ef412c1985
drive: fix misplaced log in dedupe MergeDirs
2018-04-13 13:23:55 +01:00
Nick Craig-Wood
d97fe3b824
fs/operations: make dedupe work with mega
...
* factor into its own files
* remove assumptions about having a given hash type
* make tests work if the remote has no hash
2018-04-13 13:23:55 +01:00
Nick Craig-Wood
792c9e185e
Add Antoine GIRARD to contributors
2018-04-13 13:23:55 +01:00
Nick Craig-Wood
e82452ce9a
drive: check Open calls for google error messages
...
This should also enable Open calls to retry properly
2018-04-11 20:55:58 +01:00
Nick Craig-Wood
dcf8334673
fs: add --dump goroutines and --dump openfiles
...
These are developer flags useful for tracking down resource leaks.
2018-04-11 20:55:58 +01:00
Nick Craig-Wood
37be78705d
fs/fshttp: limit MaxIdleConns and MaxIdleConnsPerHost
...
Before this change mega (which uses a different host per download)
would open too many sockets.
2018-04-11 20:51:28 +01:00
Nick Craig-Wood
4b5ff33125
fstest: retry cleaning the integration test directory if necessary
2018-04-11 20:51:13 +01:00
Nick Craig-Wood
d5b2ec32f1
local: add --local-no-check-updated to disable update checks #2206
...
This disables the `can't copy - source file is being updated` checks.
2018-04-09 15:27:58 +01:00
Nick Craig-Wood
aeedacfb50
Add Michael P. Dubner to contributors
2018-04-09 13:33:27 +01:00
Nick Craig-Wood
05e32cfcf9
dropbox: Fix crypt+obfuscate on dropbox - fixes #2191
...
Before this change we lowercased the dropbox root directory. This was
likely a leftover from when we used to build a dictionary to translate
the cases of dropbox files. Now with the v2 API we can rely on
dropbox to do that for us, so we no longer need to lowercase the root.
This fixes issues using crypt with name obfuscation on dropbox.
2018-04-09 11:53:41 +01:00
Nick Craig-Wood
cbec59146a
lsf: make sure we use localtime in tests - fixes Box integration tests
...
This problem was introduced with eca99b33c0 . It seems Box is the only
remote which converts time zones, so if you give it a GMT time zone,
it returns a PST time zone which represents the same instant.
2018-04-09 11:46:49 +01:00
Nick Craig-Wood
06e3fa3aba
mounttest: reduce duplicated code and improve test output #2154
...
The written out list of tests was replaced with a nested test for
mount and cmount. The tests for each VFS cache mode were also replaced
with nested tests which makes the output and the code much cleaner.
2018-04-08 15:04:14 +01:00
Nick Craig-Wood
0fa700b3cf
Make integration tests use go1.7+ nested tests #2154
...
* Removed generated code and code generator
* Updated docs on how to write integration tests
* Tidied up the actual integration tests
2018-04-08 15:04:14 +01:00
Nick Craig-Wood
42f0963bf9
local: retry remove on Windows sharing violation error #2202
...
Before this change asynchronous closes in cmount could cause sharing
violations under Windows on Remove which manifest themselves
frequently as test failures.
This change lets the Remove be retried on a sharing violation under
Windows.
2018-04-07 17:36:26 +01:00
Nick Craig-Wood
be54fd8f70
Remove builds conditional on go1.7 since that is now guaranteed #2154
...
Old fallback code was deleted and the go1.7 style code inlined where
appropriate.
2018-04-07 11:42:55 +01:00
Nick Craig-Wood
e5be471ce0
Use io.SeekStart/End/Current constants now for go1.7+ #2154
2018-04-07 11:42:36 +01:00
Nick Craig-Wood
80588a5a6b
Replace "golang.org/x/net/context" with "context" for go1.7+ #2154
2018-04-07 11:42:08 +01:00
Nick Craig-Wood
67023f0040
Require go1.7 for compilation #2154
...
* Update the travis tests to exclude go1.6
* Update the compile check to require go1.7+
* Update misc go1.6 workarounds marked in the source
2018-04-06 20:18:14 +01:00
Nick Craig-Wood
32e02bd367
fstests: Fix TestObjectRemove failures
...
This was failing because TestPublicLink was causing the file to be
modified with Google drive.
2018-04-06 16:27:19 +01:00
Nick Craig-Wood
c749cf8d99
dropbox: fix repeatedly uploading the same files - fixes #2218
...
In #2134 and dfd0f4c5a4 some testing
changes got committed by accident which caused this regression.
This patch reverts it to how it was before.
2018-04-06 15:34:56 +01:00
Nick Craig-Wood
92cfb57fbd
fstest/test_all: make -clean work better with google cloud storage
2018-04-06 14:54:33 +01:00
Nick Craig-Wood
0cb5c4aa73
gcs: detect bucket presence by listing it - fixes #2193
...
Doing it like this enables the use of a service account that only has
the "Storage Object Admin" role.
2018-04-06 12:45:15 +01:00
Nick Craig-Wood
0358e9e724
Add Eri Bastos to contributors
2018-04-05 20:20:53 +01:00
Nick Craig-Wood
92c5aa3786
s3: add --s3-chunk-size option - fixes #2203
2018-04-05 15:40:08 +01:00
Nick Craig-Wood
fbe1c7f1ea
dropbox: remove unused code
2018-04-05 15:23:23 +01:00
Nick Craig-Wood
c4531daa43
local: work on spurious "can't copy - source file is being updated" errors #2206
...
Update all the time comparisons to use time.Time.Equal instead of ==
Improve the logging for that error so we can see exactly what has changed
2018-04-05 14:57:30 +01:00
Nick Craig-Wood
0865e38917
Add Matt Holt to contributors
2018-04-04 14:56:50 +01:00
Nick Craig-Wood
ab2fa59fc4
Add Alexander Neumann to contributors
2018-04-04 14:56:50 +01:00
Nick Craig-Wood
06a8d3011d
Add Chih-Hsuan Yen to contributors
2018-04-02 11:43:22 +01:00
Nick Craig-Wood
eca99b33c0
lsd,lsf: make sure all times we output are in local time - fixes #2183
...
Previous to this change times from lsd/lsf were output in whatever
timezone they were in whereas times from lsl were converted to
localtime.
2018-04-01 15:40:04 +01:00
Nick Craig-Wood
d45c750f76
Add Steve Kriss to contributors
2018-03-30 19:55:49 +01:00
Nick Craig-Wood
9df266a6b4
onedrive: Fix socket leak in multipart session upload
...
This had gone unnoticed until recently when we changed to uploading
all files with a multipart session.
2018-03-28 21:03:19 +01:00
Nick Craig-Wood
1ba3ffdc59
Add Keith Goldfarb to contributors
2018-03-26 21:03:18 +01:00
Nick Craig-Wood
72f1b097a7
Add gbadanahatti to contributors
2018-03-26 21:03:18 +01:00
Nick Craig-Wood
885044d0a5
Add seuffert to contributors
2018-03-26 21:03:18 +01:00
Nick Craig-Wood
9b140b42c9
docs: fix current download link
2018-03-26 17:45:45 +01:00
Nick Craig-Wood
0bfbde8856
fstest: make ChangeNotify test clean up after itself and be more reliable
...
Previous to this fix old notifications could creep in and cause the
test to fail. It also left files around which upset the TestObjectRemove test.
Fixes #2177
2018-03-24 19:57:44 +00:00
Nick Craig-Wood
98a924602f
mount, cmount: set --attr-timeout default to 1s - fixes #2157
...
This works around these 3 problems:
* rclone using too much memory #2157
* rclone not serving files to samba
* https://forum.rclone.org/t/rclone-1-39-vs-1-40-mount-issue/5112
* excessive time listing directories #2095
2018-03-23 22:42:51 +00:00
Nick Craig-Wood
7e80e609e8
docs: install.sh add macOS fallback for mktemp - fixes #2173
2018-03-23 22:24:28 +00:00
Nick Craig-Wood
32e6eee341
release: add another step to update the release dependencies #2172
2018-03-23 12:43:18 +00:00
Nick Craig-Wood
c5f1d501ed
docs: fix download links for .deb and .rpm
2018-03-23 12:43:18 +00:00
Nick Craig-Wood
5ba5be9b37
gcs: ignore zero length directory markers at the root too
2018-03-21 20:10:00 +00:00
Nick Craig-Wood
e9a2cbec37
s3: ignore zero length directory markers at the root too
2018-03-21 20:09:37 +00:00
Nick Craig-Wood
4f6f07c074
cmount: fix error handling for Open/OpenDir
2018-03-21 19:44:30 +00:00
Nick Craig-Wood
f6020f1308
gcs: ignore zero length directory markers
2018-03-19 17:42:27 +00:00
Nick Craig-Wood
a46f2a9eb7
s3: ignore zero length directory markers - fixes #1621
2018-03-19 17:41:46 +00:00
Nick Craig-Wood
911a78ce6d
sftp: require go1.8+ after github.com/pkg/sftp update
2018-03-19 16:37:40 +00:00
Nick Craig-Wood
d64789528d
vendor: update all dependencies
2018-03-19 15:51:38 +00:00
Nick Craig-Wood
940df88eb2
Start v1.40-DEV development
2018-03-19 14:20:48 +00:00
Nick Craig-Wood
19ca9fb939
release: Put the releases into a v1.XX subdirectory
2018-03-19 14:20:09 +00:00
Nick Craig-Wood
26f1c55987
Version v1.40
2018-03-19 10:06:13 +00:00
Nick Craig-Wood
1afac32d80
serve restic: script for running integration test against all remotes
2018-03-18 19:15:39 +00:00
Nick Craig-Wood
26fbd00b4f
serve restic: don't buffer the JSON output in memory for the list command
2018-03-18 16:26:58 +00:00
Nick Craig-Wood
1313b529ff
serve restic: use ListR (--fast-list) if available
...
For Restic's use case, --fast-list will use less transactions and
calling ListR directly means we can avoid the usual memory overhead.
2018-03-18 16:22:05 +00:00
Nick Craig-Wood
82e835d6fc
serve restic: make it easy to run integration tests against any remote
...
Just `cd cmd/serve/restic` then `go test -v -remote TestRemote:`
2018-03-18 14:23:56 +00:00
Nick Craig-Wood
fa867a9a4c
serve restic: implement accounting for uploads and downloads
...
This means the bandwidth stats will be correct and the bandwidth
throttling will work correctly. This was forgotten as a previous
iteration of the code was using the higher level operations.Rcat which
took care of this.
2018-03-18 14:19:43 +00:00
Nick Craig-Wood
38d9475a34
release: include a source tarball and sign everything #1449
2018-03-17 15:06:04 +00:00
Nick Craig-Wood
c21c7e75b0
Add Stefan Lindblom to contributors
2018-03-17 12:12:23 +00:00
Nick Craig-Wood
012d4a1235
docs: fix download icon
2018-03-17 12:00:14 +00:00
Nick Craig-Wood
854d3c3025
Add Dave Pedu to contributors
2018-03-17 12:00:14 +00:00
Nick Craig-Wood
e62fe06763
s3: document --ignore-checksum workaround for KMS #1824
2018-03-17 10:51:45 +00:00
Nick Craig-Wood
4295428a0f
fs/accounting: add remote control of bwlimit
2018-03-17 10:34:02 +00:00
Nick Craig-Wood
2db0c4dd95
vfs: add remote control for directory cache flushing
2018-03-17 10:34:02 +00:00
Nick Craig-Wood
5bf639048f
sync: log an error that --track-renames doesn't work with sync or move
...
Fixes #2008
2018-03-17 10:34:02 +00:00
Nick Craig-Wood
d4cca8d9f9
onedrive: fix upload of zero length files #1716
...
Unfortunately multi part upload can't upload zero length files so
bring back the single part upload for zero length files only.
This was broken when we made all uploads multipart uploads.
2018-03-17 09:48:28 +00:00
Nick Craig-Wood
a9e386b153
Add wolfv to contributors
2018-03-17 09:06:51 +00:00
Nick Craig-Wood
d1bb8efb88
sftp: follow symlinks correctly - fixes #2145
...
The sftp library delivers the attributes of the symlink rather than
the object pointed to in directory listings, however when we use Stat
from the library it points to the objects.
Previous to this fix this caused items pointed to by symlinks to be
unusable.
After the fix both symlinked files and directories work as expected.
2018-03-16 15:36:47 +00:00
Nick Craig-Wood
c19e675ca6
vfs: unify locking for RWFileHandle.openPending,.close and File.Delete #2141
...
Without this fix the cached file can be removed as the file is being
uploaded or downloaded. This can cause the directory listings to
become inconsistent (this issue) or data loss (if a retry was needed
in the Copy).
Remove file needs to be excluded from running at the same time as both
openPending and close so it makes sense to unify the locking between
all 3.
2018-03-15 20:49:07 +00:00
Nick Craig-Wood
34c45a7c04
mount, cmount: remove addition of O_CREATE to flags on file open #2141
...
Previously this was adding it in to all file opens which was causing
inefficiencies under Windows where it stats the file using
open/fstat/close.
This change will make stat operations run much quicker under Windows
as they won't have to open the underlying file
This problem was introduced in61b6159a05336bd7ba105766de2d2ff171f7fb81
where we added O_CREATE to all file opens and creates.
2018-03-15 20:48:56 +00:00
Nick Craig-Wood
0a0318df20
Add Leo R. Lundgren to contributors
2018-03-15 20:24:42 +00:00
Nick Craig-Wood
d551137635
Add Giri Badanahatti to contributors
2018-03-15 20:21:12 +00:00