Commit Graph

1896 Commits

Author SHA1 Message Date
Charpy
87dbf44dd8 Fix link in _index.md (#1134) 2021-09-08 12:56:07 -07:00
Jarek Kowalski
2721fba2e2 Upgraded remaining UI deps (#1283)
* htmlui: more upgrades

* app: more upgrades
2021-09-06 17:32:37 -07:00
Jarek Kowalski
6c83cc6a21 ui: upgraded all NPM dependencies for htmlui/ and app/ (#1278) 2021-09-06 17:04:30 -07:00
dependabot[bot]
296a51987b build(deps): bump github.com/aws/aws-sdk-go from 1.40.34 to 1.40.37 (#1277)
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.40.34 to 1.40.37.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.40.34...v1.40.37)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-05 00:00:11 -07:00
dependabot[bot]
562c596c67 build(deps): bump gocloud.dev from 0.23.0 to 0.24.0 (#1273)
Bumps [gocloud.dev](https://github.com/google/go-cloud) from 0.23.0 to 0.24.0.
- [Release notes](https://github.com/google/go-cloud/releases)
- [Commits](https://github.com/google/go-cloud/compare/v0.23.0...v0.24.0)

---
updated-dependencies:
- dependency-name: gocloud.dev
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-03 17:21:15 -07:00
Julio Lopez
1077cc24d3 blob/s3: point-in-time support for s3 versioned stores (#1259)
Adds a `--point-in-time' flag for `repo connect`
2021-09-02 21:38:08 -07:00
Jarek Kowalski
cc692c40af ci: delete golang installation on armhf before installing a new one (#1276)
Per https://github.com/golang/go/issues/48134#issuecomment-911431265
2021-09-02 19:52:49 -07:00
dependabot[bot]
0eedca837e build(deps-dev): bump electron-notarize from 1.0.1 to 1.1.0 in /app (#1262)
Bumps [electron-notarize](https://github.com/electron/electron-notarize) from 1.0.1 to 1.1.0.
- [Release notes](https://github.com/electron/electron-notarize/releases)
- [Changelog](https://github.com/electron/electron-notarize/blob/master/.releaserc.json)
- [Commits](https://github.com/electron/electron-notarize/compare/v1.0.1...v1.1.0)

---
updated-dependencies:
- dependency-name: electron-notarize
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-02 05:59:40 -07:00
Jarek Kowalski
56edb042ae content: switched defaults to use v2 index format and epoch-based indexes (#1275) 2021-09-02 05:53:01 -07:00
Jarek Kowalski
59b5a44ca6 Makefile: refactored build tools installation (#1274)
Instead of using hardcore Makefile scripts and external tools, created a
specialized Go tool that combines curl, sha256sum, gunzip, tar, unzip
and automatically figures out the correct URL to download based on
the current GOOS/GOARCH combination.
2021-09-01 20:50:14 -07:00
Jarek Kowalski
06451aa7c2 upgrade golang to 1.17 + various dependencies (#1256) 2021-09-01 17:08:09 -07:00
Julio Lopez
082785af06 ci: run stress test on kopia/kopia repo (#1257) 2021-09-01 17:01:37 -07:00
Julio Lopez
310f45101f ci: avoid double workflow executions on PRs (#1258) 2021-09-01 06:06:10 -07:00
Jarek Kowalski
9cebffc628 Fix endurance test (#1254) 2021-08-27 04:22:18 -07:00
Jarek Kowalski
740741921b maintenance: check for clock skew at the beginning of maintenance (#1253)
* testing: use in-memory blob.Storage for repotesting

* maintenance: check for clock skew at the beginning of maintenance
2021-08-26 18:29:34 -07:00
Pawit Pornkitprasan
0578e2e5a0 splitter: optimize performance (#1251) 2021-08-25 09:36:07 -07:00
Jarek Kowalski
16aeb84361 Fixed for rare stress test failure caused by use-after-free (#1250) 2021-08-25 08:24:52 -07:00
Jarek Kowalski
a203fa414d gather: MakeContiguous support for arbitrary chunk sizes (#1247) 2021-08-22 12:33:36 -07:00
Jarek Kowalski
9e182f131a linter: upgraded to 1.42.0 (#1246) 2021-08-20 18:26:45 -07:00
Jarek Kowalski
35d0f31c0d huge: replaced the use of allocated byte slices with populating gather.WriteBuffer in the repository (#1244)
This helps recycle buffers more efficiently during snapshots.
Also, improved memory tracking, enabled profiling flags and added pprof
by default.
2021-08-20 08:45:10 -07:00
Jarek Kowalski
4676e9e40e content: automatically refresh indexes on read instead of relying on RefreshPeriodically() loop (#1243)
also force refresh indexes before running maintenance
2021-08-13 00:06:46 -07:00
Jarek Kowalski
bece46d5f6 logging: switched file log timestamps to be UTC by default, otherwise it's hard to correlate logs (#1240) 2021-08-07 20:18:03 -07:00
Jarek Kowalski
1e10e85225 content: ensure that we always consistently pick content.Info amongst entries with identical time and deleted flag (#1239)
This was reported by Stephan Budach on Slack (thanks!) who provided
the log where two separate write sessions created identical content
at exactly the same time.

2021-07-11T06:49:30.056211Z DEBUG [writer-4:Source Manager Uploader] write-content e5a857d1505308e94a4d495833a278da new
2021-07-11T06:49:30.222525Z DEBUG [writer-4:Source Manager Uploader] add-to-pack pe5873427a445f07f92f66837bfbb5752-sfa2a7c24c8d31100106 e5a857d1505308e94a4d495833a278da p:pe5873427a445f07f92f66837bfbb5752-sfa2a7c24c8d31100106 3461377 d:false
2021-07-11T06:49:30.857310Z DEBUG [writer-2:Source Manager Uploader] write-content e5a857d1505308e94a4d495833a278da new
2021-07-11T06:49:31.982930Z DEBUG [writer-2:Source Manager Uploader] add-to-pack p24b9a682047d63b19614827b653e54eb-s583f9f99a3312721106 e5a857d1505308e94a4d495833a278da p:p24b9a682047d63b19614827b653e54eb-s583f9f99a3312721106 3461377 d:false

Because we made different decision w.r.t which one is active at two
separate times, maintenance ended up deleting the wrong blob.

Introduced contentInfoGreaterThan(a, b) which is used in all 3 places
where we do content ID merges.
2021-08-07 16:10:29 -07:00
dependabot[bot]
0830de9c16 build(deps): bump github.com/klauspost/compress from 1.12.2 to 1.13.3 (#1237)
Bumps [github.com/klauspost/compress](https://github.com/klauspost/compress) from 1.12.2 to 1.13.3.
- [Release notes](https://github.com/klauspost/compress/releases)
- [Changelog](https://github.com/klauspost/compress/blob/master/.goreleaser.yml)
- [Commits](https://github.com/klauspost/compress/compare/v1.12.2...v1.13.3)

---
updated-dependencies:
- dependency-name: github.com/klauspost/compress
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-07 14:33:50 -07:00
dependabot[bot]
ff19caab95 build(deps): bump github.com/aws/aws-sdk-go from 1.40.12 to 1.40.17 (#1236)
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.40.12 to 1.40.17.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.40.12...v1.40.17)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-07 11:30:33 -07:00
Jarek Kowalski
4aacad25f5 server: switched to github.com/golang-jwt/jwt/v4 to fix upstream security issue (#1235) 2021-08-07 09:18:29 -07:00
Jarek Kowalski
e3e7cae4fe content: removed EpochMarkerIndexBlobPrefix from allIndexBlobPrefixes (#1232) 2021-08-06 23:13:48 -07:00
Jarek Kowalski
1238a0db60 cli: additional 'index inspect' flags (#1231)
* cli: fixed output of 'index inspect' to go to stdout

* cli: additional flags for 'index inspect'
2021-08-06 21:54:38 -07:00
Jarek Kowalski
b96623f8a7 epoch: simplified TestIndexEpochManager_DeletionFailing test (#1230) 2021-08-02 22:24:33 -07:00
dependabot[bot]
fcd79b40af build(deps): bump electron-log from 4.3.5 to 4.4.1 in /app (#1220)
Bumps [electron-log](https://github.com/megahertz/electron-log) from 4.3.5 to 4.4.1.
- [Release notes](https://github.com/megahertz/electron-log/releases)
- [Changelog](https://github.com/megahertz/electron-log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/megahertz/electron-log/compare/v4.3.5...v4.4.1)

---
updated-dependencies:
- dependency-name: electron-log
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-02 21:38:46 -07:00
dependabot[bot]
eae75218bd build(deps): bump google.golang.org/api from 0.50.0 to 0.52.0 (#1229)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.50.0 to 0.52.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/master/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.50.0...v0.52.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-02 21:38:13 -07:00
Jarek Kowalski
67165cae5f build(deps): bump github.com/prometheus/client_golang (#1226)
Includes manual change to fix linter deprecation warning.

Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.10.0 to 1.11.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.10.0...v1.11.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-02 21:36:15 -07:00
dependabot[bot]
17b430603d build(deps): bump postcss from 8.3.5 to 8.3.6 in /htmlui (#1217)
Bumps [postcss](https://github.com/postcss/postcss) from 8.3.5 to 8.3.6.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.3.5...8.3.6)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-02 21:12:21 -07:00
dependabot[bot]
c04e3be510 build(deps-dev): bump electron-notarize from 1.0.0 to 1.0.1 in /app (#1219)
Bumps [electron-notarize](https://github.com/electron/electron-notarize) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/electron/electron-notarize/releases)
- [Changelog](https://github.com/electron/electron-notarize/blob/master/.releaserc.json)
- [Commits](https://github.com/electron/electron-notarize/compare/v1.0.0...v1.0.1)

---
updated-dependencies:
- dependency-name: electron-notarize
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-02 21:11:52 -07:00
dependabot[bot]
ecd9b0214e build(deps): bump github.com/zeebo/blake3 from 0.1.1 to 0.2.0 (#1223)
Bumps [github.com/zeebo/blake3](https://github.com/zeebo/blake3) from 0.1.1 to 0.2.0.
- [Release notes](https://github.com/zeebo/blake3/releases)
- [Commits](https://github.com/zeebo/blake3/compare/v0.1.1...v0.2.0)

---
updated-dependencies:
- dependency-name: github.com/zeebo/blake3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-02 21:10:55 -07:00
dependabot[bot]
140a86ba72 build(deps): bump github.com/google/uuid from 1.2.0 to 1.3.0 (#1222)
Bumps [github.com/google/uuid](https://github.com/google/uuid) from 1.2.0 to 1.3.0.
- [Release notes](https://github.com/google/uuid/releases)
- [Commits](https://github.com/google/uuid/compare/v1.2.0...v1.3.0)

---
updated-dependencies:
- dependency-name: github.com/google/uuid
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-02 21:10:37 -07:00
dependabot[bot]
5b8485b8ee build(deps): bump github.com/aws/aws-sdk-go from 1.39.4 to 1.40.12 (#1224)
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.39.4 to 1.40.12.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.39.4...v1.40.12)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-02 21:09:37 -07:00
Jarek Kowalski
d6d9a1fb5f Maintenance improvements for epoch-based index structures (#1225)
* testing: KOPIA_TEST_LOG_OUTPUT logs subcommand outputs

* cli: additional flags for 'blob list'

* Makefile: run all tests against epoch-based index manager

* epoch: added support for deletion watermark, which keeps track of latest maintenance which dropped index entries

* content: added deletion watermark to content manager

* maintenance: improved maintenance without safety to force rewrites

* maintenance: skip quick maintenance when epoch manager is enabled

* maintenance: do not enable quick maintenance when epoch manager is used

* testing: skip TestIndexOptimize when running against epoch manager-backed index strutures
2021-08-02 21:08:54 -07:00
Jarek Kowalski
d77e771df7 provider test: fixed typo 2021-07-29 06:26:06 -07:00
Jarek Kowalski
cfdbc40756 cli: Fixed ETA estimation of 'snapshot verify' (#1213) 2021-07-26 18:57:58 -07:00
abba23
6205b55601 Fix weekly retention labels not being assigned correctly (#1211)
* Fix weekly retention labels not being assigned correctly

This should resolve #814.

* Add test for weekly retention label assignment
2021-07-26 07:19:59 -07:00
Jarek Kowalski
6c5bf42d23 cli: changed 'kopia snapshot verify --verify-files-percent' to float (#1210)
* cli: changed 'kopia snapshot verify --verify-files-percent' to float

* cli: added 'kopia content verify --download-percent'
2021-07-24 13:04:50 -07:00
Benedikt McMullin
317d5c3419 force-hash: Allow fractional percentages (#1209)
* force-hash: Allow fractional percentages

Co-authored-by: Jarek Kowalski <jaak@jkowalski.net>
2021-07-24 09:45:46 -07:00
Jarek Kowalski
4f93a17782 WebDAV and Rclone atomic writes (#1206)
* webdav: added --atomic-writes (defaults to false) to assume WebDAV supports atomic writes

* rclone: added --atomic-writes (defaults to true)

This allows the provider to assume rclone backend supports atomic writes (most of them do).
2021-07-19 21:55:56 -07:00
Jarek Kowalski
e42cc6ccce Added 'kopia repository validate-provider` (#1205)
* cli: added 'repository validate-provider' which runs a set of tests against blob storage provider to validate it

This implements a provider tests which exercises subtle behaviors which are not always correctly implemented by providers claiming compatibility with S3, for example.

The test checks:

- not found behavior
- prefix scans
- timestamps
- write atomicity

* retry: improved error message on failure

* rclone: fixed stats reporting and awaiting for completion

* webdav: prevent panic when attempting to mkdir with empty name

* testing: run providervalidation.ValidateProvider as part of regular provider tests

* cli: print a recommendation to validate provider after repository creation
2021-07-19 21:42:24 -07:00
Jarek Kowalski
7dd9e332ad ci: fixed syntax 2021-07-18 09:33:38 -07:00
Jarek Kowalski
e2e0cb37d7 ci: changed continue-on-error: true to if: succeeded() || failed() 2021-07-18 09:31:23 -07:00
Jarek Kowalski
bdd53f05d5 ci: install provider test dependencies separately 2021-07-18 09:18:14 -07:00
Jarek Kowalski
49d8a32783 testing: split provider tests into separate steps 2021-07-18 09:15:40 -07:00
Jarek Kowalski
33cf322941 ci: run provider test more often to get better stability signal 2021-07-18 09:09:43 -07:00