Skip to content

Commit ec3fc47

Browse files
committed
Merge branch 'master' of https://github.com/rclone/rclone
2 parents 14fe721 + b029fb5 commit ec3fc47

File tree

319 files changed

+60180
-31869
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

319 files changed

+60180
-31869
lines changed

.github/workflows/build.yml

Lines changed: 25 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -19,64 +19,63 @@ jobs:
1919
strategy:
2020
fail-fast: false
2121
matrix:
22-
job_name: ['linux', 'mac', 'windows_amd64', 'windows_386', 'other_os', 'go1.11', 'go1.12', 'go1.13', 'go1.14']
22+
job_name: ['linux', 'mac_amd64', 'mac_arm64', 'windows_amd64', 'windows_386', 'other_os', 'go1.13', 'go1.14', 'go1.15']
2323

2424
include:
2525
- job_name: linux
2626
os: ubuntu-latest
27-
go: '1.15.x'
27+
go: '1.16.x'
2828
gotags: cmount
2929
build_flags: '-include "^linux/"'
3030
check: true
3131
quicktest: true
3232
racequicktest: true
3333
deploy: true
3434

35-
- job_name: mac
35+
- job_name: mac_amd64
3636
os: macOS-latest
37-
go: '1.15.x'
37+
go: '1.16.x'
3838
gotags: 'cmount'
3939
build_flags: '-include "^darwin/amd64" -cgo'
4040
quicktest: true
4141
racequicktest: true
4242
deploy: true
4343

44+
- job_name: mac_arm64
45+
os: macOS-latest
46+
go: '1.16.x'
47+
gotags: 'cmount'
48+
build_flags: '-include "^darwin/arm64" -cgo -macos-arch arm64 -macos-sdk macosx11.1 -cgo-cflags=-I/usr/local/include -cgo-ldflags=-L/usr/local/lib'
49+
deploy: true
50+
4451
- job_name: windows_amd64
4552
os: windows-latest
46-
go: '1.15.x'
53+
go: '1.16.x'
4754
gotags: cmount
4855
build_flags: '-include "^windows/amd64" -cgo'
56+
build_args: '-buildmode exe'
4957
quicktest: true
5058
racequicktest: true
5159
deploy: true
5260

5361
- job_name: windows_386
5462
os: windows-latest
55-
go: '1.15.x'
63+
go: '1.16.x'
5664
gotags: cmount
5765
goarch: '386'
5866
cgo: '1'
5967
build_flags: '-include "^windows/386" -cgo'
68+
build_args: '-buildmode exe'
6069
quicktest: true
6170
deploy: true
6271

6372
- job_name: other_os
6473
os: ubuntu-latest
65-
go: '1.15.x'
66-
build_flags: '-exclude "^(windows/|darwin/amd64|linux/)"'
74+
go: '1.16.x'
75+
build_flags: '-exclude "^(windows/|darwin/|linux/)"'
6776
compile_all: true
6877
deploy: true
6978

70-
- job_name: go1.11
71-
os: ubuntu-latest
72-
go: '1.11.x'
73-
quicktest: true
74-
75-
- job_name: go1.12
76-
os: ubuntu-latest
77-
go: '1.12.x'
78-
quicktest: true
79-
8079
- job_name: go1.13
8180
os: ubuntu-latest
8281
go: '1.13.x'
@@ -88,6 +87,12 @@ jobs:
8887
quicktest: true
8988
racequicktest: true
9089

90+
- job_name: go1.15
91+
os: ubuntu-latest
92+
go: '1.15.x'
93+
quicktest: true
94+
racequicktest: true
95+
9196
name: ${{ matrix.job_name }}
9297

9398
runs-on: ${{ matrix.os }}
@@ -109,6 +114,7 @@ jobs:
109114
run: |
110115
echo 'GOTAGS=${{ matrix.gotags }}' >> $GITHUB_ENV
111116
echo 'BUILD_FLAGS=${{ matrix.build_flags }}' >> $GITHUB_ENV
117+
echo 'BUILD_ARGS=${{ matrix.build_args }}' >> $GITHUB_ENV
112118
if [[ "${{ matrix.goarch }}" != "" ]]; then echo 'GOARCH=${{ matrix.goarch }}' >> $GITHUB_ENV ; fi
113119
if [[ "${{ matrix.cgo }}" != "" ]]; then echo 'CGO_ENABLED=${{ matrix.cgo }}' >> $GITHUB_ENV ; fi
114120
@@ -124,10 +130,8 @@ jobs:
124130
- name: Install Libraries on macOS
125131
shell: bash
126132
run: |
127-
brew untap local/homebrew-openssl # workaround for https://github.com/actions/virtual-environments/issues/1811
128-
brew untap local/homebrew-python2 # workaround for https://github.com/actions/virtual-environments/issues/1811
129133
brew update
130-
brew cask install osxfuse
134+
brew install --cask macfuse
131135
if: matrix.os == 'macOS-latest'
132136

133137
- name: Install Libraries on Windows

.github/workflows/build_publish_docker_image.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
with:
1616
fetch-depth: 0
1717
- name: Build and publish image
18-
uses: ilteoood/docker_buildx@cdfa422f87c26584dc0fa16bd52a44fb6bfa8ff6
18+
uses: ilteoood/docker_buildx@1.1.0
1919
with:
2020
tag: beta
2121
imageName: rclone/rclone

.github/workflows/build_publish_release_docker_image.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
id: actual_major_version
2424
run: echo ::set-output name=ACTUAL_MAJOR_VERSION::$(echo $GITHUB_REF | cut -d / -f 3 | sed 's/v//g' | cut -d "." -f 1)
2525
- name: Build and publish image
26-
uses: ilteoood/docker_buildx@cdfa422f87c26584dc0fa16bd52a44fb6bfa8ff6
26+
uses: ilteoood/docker_buildx@1.1.0
2727
with:
2828
tag: latest,${{ steps.actual_patch_version.outputs.ACTUAL_PATCH_VERSION }},${{ steps.actual_minor_version.outputs.ACTUAL_MINOR_VERSION }},${{ steps.actual_major_version.outputs.ACTUAL_MAJOR_VERSION }}
2929
imageName: rclone/rclone

CONTRIBUTING.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ Make sure you
7272

7373
When you are done with that
7474

75-
git push origin my-new-feature
75+
git push -u origin my-new-feature
7676

7777
Go to the GitHub website and click [Create pull
7878
request](https://help.github.com/articles/creating-a-pull-request/).
@@ -99,7 +99,7 @@ rclone's tests are run from the go testing framework, so at the top
9999
level you can run this to run all the tests.
100100

101101
go test -v ./...
102-
102+
103103
rclone contains a mixture of unit tests and integration tests.
104104
Because it is difficult (and in some respects pointless) to test cloud
105105
storage systems by mocking all their interfaces, rclone unit tests can
@@ -115,8 +115,8 @@ are skipped if `TestDrive:` isn't defined.
115115
cd backend/drive
116116
go test -v
117117

118-
You can then run the integration tests which tests all of rclone's
119-
operations. Normally these get run against the local filing system,
118+
You can then run the integration tests which test all of rclone's
119+
operations. Normally these get run against the local file system,
120120
but they can be run against any of the remotes.
121121

122122
cd fs/sync
@@ -127,7 +127,7 @@ but they can be run against any of the remotes.
127127
go test -v -remote TestDrive:
128128

129129
If you want to use the integration test framework to run these tests
130-
all together with an HTML report and test retries then from the
130+
altogether with an HTML report and test retries then from the
131131
project root:
132132

133133
go install github.com/rclone/rclone/fstest/test_all
@@ -202,7 +202,7 @@ for the flag help, the remainder is shown to the user in `rclone
202202
config` and is added to the docs with `make backenddocs`.
203203

204204
The only documentation you need to edit are the `docs/content/*.md`
205-
files. The MANUAL.*, rclone.1, web site, etc. are all auto generated
205+
files. The `MANUAL.*`, `rclone.1`, web site, etc. are all auto generated
206206
from those during the release process. See the `make doc` and `make
207207
website` targets in the Makefile if you are interested in how. You
208208
don't need to run these when adding a feature.
@@ -265,7 +265,7 @@ rclone uses the [go
265265
modules](https://tip.golang.org/cmd/go/#hdr-Modules__module_versions__and_more)
266266
support in go1.11 and later to manage its dependencies.
267267

268-
rclone can be built with modules outside of the GOPATH
268+
rclone can be built with modules outside of the `GOPATH`.
269269

270270
To add a dependency `github.com/ncw/new_dependency` see the
271271
instructions below. These will fetch the dependency and add it to
@@ -333,8 +333,8 @@ Getting going
333333
* Try to implement as many optional methods as possible as it makes the remote more usable.
334334
* Use lib/encoder to make sure we can encode any path name and `rclone info` to help determine the encodings needed
335335
* `rclone purge -v TestRemote:rclone-info`
336-
* `rclone info --remote-encoding None -vv --write-json remote.json TestRemote:rclone-info`
337-
* `go run cmd/info/internal/build_csv/main.go -o remote.csv remote.json`
336+
* `rclone test info --all --remote-encoding None -vv --write-json remote.json TestRemote:rclone-info`
337+
* `go run cmd/test/info/internal/build_csv/main.go -o remote.csv remote.json`
338338
* open `remote.csv` in a spreadsheet and examine
339339

340340
Unit tests
@@ -400,7 +400,7 @@ Usage
400400
- If this variable doesn't exist, plugin support is disabled.
401401
- Plugins must be compiled against the exact version of rclone to work.
402402
(The rclone used during building the plugin must be the same as the source of rclone)
403-
403+
404404
Building
405405

406406
To turn your existing additions into a Go plugin, move them to an external repository

Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ RUN apk --no-cache add ca-certificates fuse tzdata && \
1616

1717
COPY --from=builder /go/src/github.com/rclone/rclone/rclone /usr/local/bin/
1818

19+
RUN addgroup -g 1009 rclone && adduser -u 1009 -Ds /bin/sh -G rclone rclone
20+
1921
ENTRYPOINT [ "rclone" ]
2022

2123
WORKDIR /data

MAINTAINERS.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Current active maintainers of rclone are:
1111
| Fabian Möller | @B4dM4n | |
1212
| Alex Chen | @Cnly | onedrive backend |
1313
| Sandeep Ummadi | @sandeepkru | azureblob backend |
14-
| Sebastian Bünger | @buengese | jottacloud & yandex backends |
14+
| Sebastian Bünger | @buengese | jottacloud, yandex & compress backends |
1515
| Ivan Andreev | @ivandeex | chunker & mailru backends |
1616
| Max Sum | @Max-Sum | union backend |
1717
| Fred | @creativeprojects | seafile backend |

0 commit comments

Comments
 (0)