177 Commits
Author SHA1 Message Date
Julio López fdf0159a17 refactor(general): cleanup various nits (#5618)
- use struct field initialization idiom
- clarify error message
- directly use s.rootctx in server request processing
- refactor: use require in e2e ACL test
- inline constant definition
- modernize with `strings.Cut`
- modernize with slices.Backward
- simplify timeFormat initialization
- refactor testing: check `Scanner.Err()` in testenv
- remove spurious parenthesis
- trueStr and falseStr consts
- use inheritPolicyString
- use const in cache info
- "bytes" const in ui task counters
- use common consts in gettool
2026-09-06 15:08:49 -07:00
Julio López 9473eef9d1 build(deps-dev): upgrade golangci-lint to v2.11.4 (#5247)
Fixes for new linter warnings:
- fix: add //nolint annotations where it makes sense
- fix: remove no-longer necessary linter annotations
- fix linter: add or remove new lines
- fix linter: use Fprintf instead of WriteString
- fix: check for overflow in conversion to uint8 / byte
2026-09-03 12:12:20 -07:00
7141524148 build(deps): bump the kopia-ui-npm-dependencies group in /app with 3 updates (#5600)
* build(deps): bump the kopia-ui-npm-dependencies group

Bumps the kopia-ui-npm-dependencies group in /app with 3 updates: [uuid](https://github.com/uuidjs/uuid), [concurrently](https://github.com/open-cli-tools/concurrently) and [electron](https://github.com/electron/electron).


Updates `uuid` from 14.0.1 to 14.0.2
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v14.0.1...v14.0.2)

Updates `concurrently` from 10.0.4 to 10.0.5
- [Release notes](https://github.com/open-cli-tools/concurrently/releases)
- [Commits](https://github.com/open-cli-tools/concurrently/compare/v10.0.4...v10.0.5)

Updates `electron` from 43.3.0 to 44.0.0
- [Release notes](https://github.com/electron/electron/releases)
- [Commits](https://github.com/electron/electron/compare/v43.3.0...v44.0.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-version: 14.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: concurrently
  dependency-version: 10.0.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: electron
  dependency-version: 44.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: kopia-ui-npm-dependencies
...

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

* fix(ci): retain Electron armv7 build support

Co-authored-by: julio-lopez <1953782+julio-lopez@users.noreply.github.com>

* build: drop Linux ARMv7 support

Co-authored-by: julio-lopez <1953782+julio-lopez@users.noreply.github.com>

* revert: allow installing node for armv7l

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: julio-lopez <1953782+julio-lopez@users.noreply.github.com>
2026-09-02 04:49:05 +00:00
Julio López d241345c8d build(deps-dev): upgrade checklocks to release-20260105.0 (#5557)
Builds with Go 1.25.x

Nit: update .gitattributes
2026-08-11 22:42:45 -07:00
Jarek Kowalski bf3e5a9186 chore(ci): more secure npm install flags (#5434) 2026-06-18 18:26:41 -07:00
Julio López 78407b1d5f refactor(general): string nits (#5265)
Minor improvements:

Refactor the construction of a test string with many control characters in `TestJSONWriter_StringEscapingPerformanceWithManyControlChars` by using a `strings.Builder`.
Rationale: address a future `modernize` linter warning. While this is also "more" efficient, it does not make any practical difference in this context.

Simplify the conversion of a short flag to a string in `emitFlags` by removing an unnecessary byte slice conversion (`tools/cli2md/cli2md.go`).
Rationale: simplify the expression for clarity and address a future linter warning.

- Ref: #5247
2026-04-01 20:50:10 -07:00
Julio López ee9ad38efe build(deps-dev): gotestsum to v1.13.0 (#5246) 2026-03-24 21:53:42 -07:00
dependabot[bot]andJ 7598f74098 build(deps): bump the kopia-ui-npm-dependencies group across 1 directory with 14 updates (#5126)
* build(deps): bump the kopia-ui-npm-dependencies group across 1 directory with 14 updates

Bumps the kopia-ui-npm-dependencies group with 11 updates in the /app directory:

| Package | From | To |
| --- | --- | --- |
| [electron-log](https://github.com/megahertz/electron-log) | `5.4.0` | `5.4.3` |
| [electron-store](https://github.com/sindresorhus/electron-store) | `10.0.1` | `11.0.2` |
| [electron-updater](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater) | `6.6.2` | `6.7.3` |
| [uuid](https://github.com/uuidjs/uuid) | `11.1.0` | `13.0.0` |
| [@electron/notarize](https://github.com/electron/notarize) | `3.0.1` | `3.1.1` |
| [@playwright/test](https://github.com/microsoft/playwright) | `1.52.0` | `1.58.1` |
| [concurrently](https://github.com/open-cli-tools/concurrently) | `9.1.2` | `9.2.1` |
| [dotenv](https://github.com/motdotla/dotenv) | `16.5.0` | `17.2.3` |
| [electron](https://github.com/electron/electron) | `36.8.1` | `40.1.0` |
| [electron-builder](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-builder) | `26.0.12` | `26.7.0` |
| [prettier](https://github.com/prettier/prettier) | `3.5.3` | `3.8.1` |



Updates `electron-log` from 5.4.0 to 5.4.3
- [Changelog](https://github.com/megahertz/electron-log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/megahertz/electron-log/compare/v5.4.0...v5.4.3)

Updates `electron-store` from 10.0.1 to 11.0.2
- [Release notes](https://github.com/sindresorhus/electron-store/releases)
- [Commits](https://github.com/sindresorhus/electron-store/compare/v10.0.1...v11.0.2)

Updates `electron-updater` from 6.6.2 to 6.7.3
- [Release notes](https://github.com/electron-userland/electron-builder/releases)
- [Changelog](https://github.com/electron-userland/electron-builder/blob/master/packages/electron-updater/CHANGELOG.md)
- [Commits](https://github.com/electron-userland/electron-builder/commits/electron-updater@6.7.3/packages/electron-updater)

Updates `semver` from 7.7.2 to 7.7.3
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v7.7.2...v7.7.3)

Updates `uuid` from 11.1.0 to 13.0.0
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v11.1.0...v13.0.0)

Updates `@electron/notarize` from 3.0.1 to 3.1.1
- [Release notes](https://github.com/electron/notarize/releases)
- [Commits](https://github.com/electron/notarize/compare/v3.0.1...v3.1.1)

Updates `@playwright/test` from 1.52.0 to 1.58.1
- [Release notes](https://github.com/microsoft/playwright/releases)
- [Commits](https://github.com/microsoft/playwright/compare/v1.52.0...v1.58.1)

Updates `concurrently` from 9.1.2 to 9.2.1
- [Release notes](https://github.com/open-cli-tools/concurrently/releases)
- [Commits](https://github.com/open-cli-tools/concurrently/compare/v9.1.2...v9.2.1)

Updates `dotenv` from 16.5.0 to 17.2.3
- [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md)
- [Commits](https://github.com/motdotla/dotenv/compare/v16.5.0...v17.2.3)

Updates `electron` from 36.8.1 to 40.1.0
- [Release notes](https://github.com/electron/electron/releases)
- [Commits](https://github.com/electron/electron/compare/v36.8.1...v40.1.0)

Updates `electron-builder` from 26.0.12 to 26.7.0
- [Release notes](https://github.com/electron-userland/electron-builder/releases)
- [Changelog](https://github.com/electron-userland/electron-builder/blob/master/packages/electron-builder/CHANGELOG.md)
- [Commits](https://github.com/electron-userland/electron-builder/commits/electron-builder@26.7.0/packages/electron-builder)

Updates `playwright` from 1.52.0 to 1.58.1
- [Release notes](https://github.com/microsoft/playwright/releases)
- [Commits](https://github.com/microsoft/playwright/compare/v1.52.0...v1.58.1)

Updates `playwright-core` from 1.52.0 to 1.58.1
- [Release notes](https://github.com/microsoft/playwright/releases)
- [Commits](https://github.com/microsoft/playwright/compare/v1.52.0...v1.58.1)

Updates `prettier` from 3.5.3 to 3.8.1
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.5.3...3.8.1)

---
updated-dependencies:
- dependency-name: electron-log
  dependency-version: 5.4.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: electron-store
  dependency-version: 11.0.2
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: electron-updater
  dependency-version: 6.7.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: semver
  dependency-version: 7.7.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: uuid
  dependency-version: 13.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: "@electron/notarize"
  dependency-version: 3.1.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: "@playwright/test"
  dependency-version: 1.58.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: concurrently
  dependency-version: 9.2.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: dotenv
  dependency-version: 17.2.3
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: electron
  dependency-version: 40.1.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: electron-builder
  dependency-version: 26.7.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: playwright
  dependency-version: 1.58.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: playwright-core
  dependency-version: 1.58.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: kopia-ui-npm-dependencies
- dependency-name: prettier
  dependency-version: 3.8.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: kopia-ui-npm-dependencies
...

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

* chore(infra): add --always to git describe

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: J <1953782+julio-lopez@users.noreply.github.com>
2026-02-19 23:48:46 +00:00
Julio López 33d2bb3f74 chore(ci): add install-checklocks convenience target (#5152) 2026-02-10 21:04:29 -08:00
Julio Lopez 67ba03ac46 fix(general): prevent writing outside of installation target directory (#5003) 2025-11-17 21:22:58 -08:00
Julio Lopez 70f8d678d0 fix(general): handle errors closing writable descriptors (#4998) 2025-11-16 23:07:51 -08:00
Julio Lopez b7f811cfc9 chore(ci): build kopia with -trimpath (#4983)
Rationale: move towards reproducible (hermetic) builds.

The `-trimpath` flag removes absolute file system paths
from the resulting executables.

- add `-trimpath` to `KOPIA_BUILD_FLAGS`
- add `-trimpath` to `goreleaser` config
- move `KOPIA_BUILD_*` var defs to `Makefile`
2025-11-13 10:31:28 -08:00
Julio Lopez 9c1aec59e4 docs(site): fix CLI command docs (#4979)
Also, minor updates for contrib docs
2025-11-12 17:19:34 -08:00
Nathan Baulch 657fda216a chore(ci): upgrade to golangci-lint 2.6.1 (#4973)
- upgrade to golangci-lint 2.6.1
- updates for gosec
- updates for govet
- updates for perfsprint
- updates modernize

Leaves out modernize:omitempty due to conflicts with tests
2025-11-11 21:27:10 -08:00
Nathan BaulchandJulio Lopez 557940c524 chore(ci): upgrade to golangci-lint v2.5.0 (#4931)
Upgrades golangci-lint to v2.5.0

Enables:
- wsl_v5

Disables:
- embeddedstructfieldcheck
- noinlineerr (not used in this codebase)
- noctx (temporarily)
- godot
- wsl (deprecated)

Co-authored-by: Julio Lopez <1953782+julio-lopez@users.noreply.github.com>
2025-11-11 12:37:07 -08:00
Julio Lopez 995e7fd893 refactor(general): modernize (#4903)
Applies the modernize changes for the following categories:

- mapsloop
- stringsseq
- stringscutprefix
- sortslice
2025-10-23 17:11:38 -07:00
Nathan Baulch 19d92613a6 chore(general): typos (#4659) 2025-06-10 17:24:14 -07:00
jlssmt ccbdaf8d05 add sshfs to enable pull based backups (#4392) 2025-06-01 18:29:21 -07:00
Julio Lopez dc1be13d85 chore(general): convenience make targets to install tools (#4616)
Convenience targets:
- install-gotestsum
- install-linter
2025-05-29 00:57:15 -07:00
Jarek Kowalski 2e16917518 chore(ci): enforce consistent formatting of KopiaUI code (#4586)
* chore(ci): enforce consistent formatting of KopiaUI code

* fix htmlui_changelog.sh

* fix
2025-05-20 22:33:54 -07:00
Jarek Kowalski 496f2d5d96 build(deps): updated all dependencies of KopiaUI app (#4580) 2025-05-18 18:56:17 -07:00
Jarek Kowalski ba29f2cb00 fix(ci): fix HTMLUI changelog (#4579) 2025-05-17 18:53:50 -07:00
Jarek Kowalski c4f38ea728 chore(ci): auto-generate clean htmlui changelog (#4578) 2025-05-17 18:17:34 -07:00
blenderfreakyandJulio Lopez 6cd728394d fix(site): escape flags with backticks (#4479)
* fix(site): escape flags with backticks

In the generated markdown docs, flags like `--foo` inside
help texts currently get pretty-printed as `–foo` with an em-dash.

This change applies backticks via a regex replacement, so that
they appear as `--foo` in the docs but remain as --foo in the
CLI output.

---------

Co-authored-by: Julio Lopez <1953782+julio-lopez@users.noreply.github.com>
2025-04-23 23:42:29 -07:00
Julio López 5150b92334 fix(build): correct command to get commit date (#4508)
Fixes issue introduced in #4506
2025-04-16 23:14:25 -07:00
Julio López eb2e301b73 chore(ci): utc commit date (#4506) 2025-04-16 23:06:30 -07:00
Matthieu MOREL 675e958877 chore(ci): bump golangci-lint to v2.1.2 (#4500)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2025-04-15 22:49:13 -07:00
Jarek KowalskiandJulio López 83c8d0b99c chore(ci): upgrade Go to 1.23 (#4248)
* chore(ci): upgrade Go to 1.23.3
* also upgrade checklocks
* specify Go toolchain version in go.mod

---------

Co-authored-by: Julio López <1953782+julio-lopez@users.noreply.github.com>
2025-01-23 21:21:30 -08:00
Jarek Kowalski b60cac4860 fix(cli): fixed v0.18.0 failures using v0.17.0-generated config (#4255)
This was caused by the client using key derivation algorithm
from a config file (which did not have it when it was generated
using old version of Kopia).

Fixes #4254
2024-11-17 10:15:00 -08:00
Jarek Kowalski 68c5308e4e chore(ci): use 'npm ci' when building on CI (#4253) 2024-11-16 14:09:48 -08:00
Jarek Kowalski eb1cf64c27 chore(ci): upgraded linter to 1.62.0 (#4250) 2024-11-16 07:16:50 -08:00
Jarek Kowalski 91d00e8256 feat(providers): upgraded rclone to 1.68.2, fixed Google Drive rclone compatibility (#4249)
* chore(ci): upgrade rclone to 1.68.2

* fix(providers): fixed Google Drive rclone compatibility
2024-11-15 20:02:08 -08:00
Julio López 961a39039b refactor(general): use errors.New where appropriate (#4160)
Replaces 'errors.Errorf\("([^"]+)"\)' => 'errors.New("\1")'
2024-10-05 19:05:00 -07:00
Jarek Kowalski ac446a2d16 chore(ci): upgraded linter to 1.60.3 (#4086)
* silenced several 'gosec' findings
2024-09-03 21:29:56 -07:00
Jarek Kowalski ed3268b469 feat(general): upgraded rclone to 1.67 in the Docker image (#3995) 2024-07-22 08:37:39 -07:00
Jarek Kowalski d9fd912c8d chore(ci): upgrade NodeJS to 20.15.1 LTS (#3993) 2024-07-21 11:27:21 -07:00
Jarek Kowalski c7206800ab chore(ci): fix RPM publishing (#3971) 2024-07-11 07:13:39 -07:00
Jarek Kowalski fcb8197f3f chore(ci): upgraded linter to 1.59.0 (#3883) 2024-05-29 20:31:57 -07:00
Jarek KowalskiandJulio López 09415e0c7d chore(ci): upgraded to go 1.22 (#3746)
Upgrades go to 1.22 and switches to new-style for loops

---------

Co-authored-by: Julio López <1953782+julio-lopez@users.noreply.github.com>
2024-04-08 09:52:47 -07:00
Jarek Kowalski 7278f570e2 chore(ci): upgraded linter to 1.57.1 (#3753) 2024-03-25 22:20:38 -07:00
Jarek Kowalski 29cd545c33 chore(ci): upgrade linter to 1.56.2 (#3714) 2024-03-09 10:39:11 -08:00
Jarek Kowalski a8e4d50600 build(deps): upgraded linter to v1.55.2, fixed warnings (#3611)
* build(deps): upgraded linter to v1.55.2, fixed warnings

* removed unsafe hacks with better equivalents

* test fixes
2024-02-02 23:34:34 -08:00
Christoph AndersonandlupusA 7b89fe173c Removed summary in command section (#3590)
Co-authored-by: lupusA <lupuapps@gmail.com>
2024-01-26 11:06:24 -08:00
Julio Lopez 7a0a68ecc1 chore(ci): upgrade gotestsum to 1.11.0 (#3534)
It seems that version 1.10.0 is no longer available for some platforms,
such as Windows.

Release notes:

https://github.com/gotestyourself/gotestsum/releases/tag/v1.11.0
2023-12-21 16:27:44 -08:00
Jarek Kowalski 916daf0a4f chore(ci): auto-delete old RPM and DEB packages (#3310)
This was previously done in `unstable` track, now doing it everywhere.
At the same time bumped the count 2=>3.
2023-09-16 12:16:50 -07:00
Jarek Kowalski 64a0df6f4e fix(ui): changed default tab to Snapshots (#3308) 2023-09-16 10:01:13 -07:00
Jarek Kowalski abb5922085 chore(ci): switched back to LTS version of Ubuntu for Docker image (#3295) 2023-09-12 22:32:27 -07:00
Jarek Kowalski 20f2900eee chore(ci): upgrade rclone to 1.63.1 (#3278) 2023-09-06 20:14:39 -07:00
Jarek Kowalski af7b97f70a chore(ci): added exponential back-off to gettool (#3267) 2023-09-04 09:07:48 -07:00
Jarek Kowalski 1120e4f629 chore(ci): reenable check-locks after the fix was merged upstream (#3245) 2023-08-22 19:41:03 -07:00