25 Commits

Author SHA1 Message Date
Dominik Schulz
7281ca8ab4
[chore] Migrate to golangci-lint v2 (#3104)
* [chore] Migrate to golangci-lint v2

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* [chore] Fix more lint issues

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* [chore] Fix more lint issue

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* [chore] Fix more lint issues

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* [chore] Add more package comments.

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* [chore] Fix golangci-lint config and the remaining checks

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* [fix] Use Go 1.24

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* [fix] Fix container builds

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Fix more failing tests

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Fix test failure

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Fix another len assertion

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Move location tests

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* [fix] Fix most remaining lint issues

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* [fix] Only run XDG specific tests on linux

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* [fix] Attempt to address on source of flaky failures

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

---------

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2025-04-17 08:05:43 +02:00
Dominik Schulz
17b66f5ef2
[chore] Add tpl func tests and fix two small issues (#3058)
* [chore] Add tpl func tests and fix two small issues

Timestamps were not rounded correctly and the truncate function was not
trunacting correctly.

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Fix lint error

* Add missing import

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Add more truncate tests and fix handling of very short lengths

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Update internal/tpl/funcs_test.go

Co-authored-by: AnomalRoil <AnomalRoil@users.noreply.github.com>
Signed-off-by: Dominik Schulz <dominik.schulz@gmail.com>

* fix tests

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

---------

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
Signed-off-by: Dominik Schulz <dominik.schulz@gmail.com>
Co-authored-by: AnomalRoil <AnomalRoil@users.noreply.github.com>
2025-03-01 18:50:17 +01:00
Ludovic Fernandez
b8f0ff8ff2
[chore]: linting (#2840)
Signed-off-by: Fernandez Ludovic <ldez@users.noreply.github.com>
2024-03-25 19:32:57 +01:00
Dominik Schulz
263b78119b
[bugfix] Fix writes to global config from tests (#2727)
* [bugfix] Fix writes to global config from tests

Fixes #2725

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Shorten readonly config creation.

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Address review comments

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

---------

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2023-12-01 14:04:17 +01:00
Yonas Yanfa
d77be31311
Add BLAKE-3 to templates.go (#2701) 2023-11-19 10:52:09 +01:00
Dominik Schulz
e913258d7b
[enhancement] Add blake3 to the template functions (#2693)
* [enhancement] Add blake3 to the template functions

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Add CC0-1.0 to unrestricted licenses.

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

---------

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2023-11-18 07:43:40 +01:00
Yolan Romailler
d56639fcd7
[CLEANUP] Migration of options to more appropriate sections (#2681)
* [CLEANUP] Moving options to the correct config section

This adds an easy migration path to our config handling, which should
allow us to migrate option names around much more easily in the future.

Any system level config or env variables options are not migrated.

This also fixes a bug in our test code, where the root mount path was
not properly set in our config, because we used "path:" instead of
"path=" to set it.

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>

* [DOCUMENTATION] Document legacy options and their migration path

This also makes sure that legacy options aren't used in the code anymore using the docs test and its regexp

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>

* [n/a] Removing weird spaces from changelog

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>

* [DOCUMENTATION] Reformatting our Markdown tables properly

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>

* [TESTING] Patching a timezone bug in tests

This is a fun one where if your Timezone isn't UTC and you are past midnight but it's not past midnight UTC, the tests would fail because you're not using the right date to validate it.

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>

* [n/a] Fix a typo and use the correct Env variables in the doc about the custom Env variables

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>

* [BREAKING] Custom Env options moved from GOPASS_CONFIG_CONFIG_KEY_i to GOPASS_CONFIG_KEY_i

As discussed in #2617, this actually reflects the way GIT_CONFIG works.

It also fixes a potential Panic in our codebase when IsSet was called
without any Preset config on a non-existing key.

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>

* [CLEANUP] Patching all of the new linter complaints

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>

* [CLEANUP] Use Go1.21 everywhere

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>

* [n/a] Increase our Golangci timeout

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>

* [n/a] code review comment and extra regression test

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>

---------

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>
2023-11-03 18:40:58 +01:00
Dominik Schulz
58774b62e5
Improve gopass audit HTML output (#2508)
* Improve gopass audit HTML output

RELEASE_NOTES=[ENHANCEMENT] Add nicer gopass audit HTML output

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Fix output test

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2023-01-07 08:09:43 +01:00
Dominik Schulz
932d7a1d54
Rewrite gopass audit (#2506)
* Start new auditor

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Add new files

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Rewrite gopass audit

Fixes #2504

RELEASE_NOTES=[ENHANCEMENT] Rewrite gopass audit. Add HTML and CSV
exports.

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Fix tests

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Add template flag

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2023-01-03 21:03:42 +01:00
Yaroslav
a5e2392fbd
Add DirName template (#2452)
Makes templating example.com/username file structure easier

RELEASE_NOTES=[ENHANCEMENT] Add DirName template

Signed-off-by: Yaroslav Yadryshnikov <me@yay.qa>

Signed-off-by: Yaroslav Yadryshnikov <me@yay.qa>
2022-12-06 14:26:26 +01:00
Dominik Schulz
670b772350
Fix new lint issues (#2378)
RELEASE_NOTES=n/a

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2022-10-04 22:17:54 +02:00
Dominik Schulz
16c071a780
Enable golangci-lint on push and pr (#2158)
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2022-03-24 21:58:53 +01:00
Dominik Schulz
3adf8261bb
Add template example (#2122)
RELEASE_NOTES=n/a

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2022-01-24 16:50:05 +01:00
Yolan Romailler
2d18d3340f
Prevent MD5Crypt to generate invalid salts (#2128)
RELEASE_NOTES=[BUGFIX] Reject invalid salt with MD5Crypt templates

Fixes #2121

Signed-off-by: Yolan Romailler <anomalroil@users.noreply.github.com>
2022-01-24 13:55:34 +01:00
Dominik Schulz
15b56d33e6
Change saltLen to unit8 and add some tests (#2117)
* Change saltLen to unit8 and add some tests

Fixes #2116

RELEASE_NOTES=n/a

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

* Fix arguemnt order for the template funcs and add tests

RELEASE_NOTES=[BUGFIX] Fix template func arg order

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2022-01-18 11:08:00 +01:00
Dominik Schulz
0eff31a8ce
Enable additional golangci-lint godot checks (#2077) 2021-12-29 22:47:53 +01:00
Dominik Schulz
8bce2fc58b
Add pwschemes validation functions (#1956)
Implementation inspired by:
  * github.com/jsimonetti/pwscheme
  * github.com/alexedwards/argon2id

RELEASE_NOTES=n/a

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2021-07-02 10:39:29 +02:00
Dominik Schulz
d9759ffec8
Replace github.com/pkg/errors by stdlib errors (#1750)
RELEASE_NOTES=n/a

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2021-01-26 09:21:52 +01:00
Yolan Romailler
61329b3198
Adding support for multiple same keys (#1741)
RELEASE_NOTES=[ENHANCEMENT] KV secrets are now key-values, supporting multiple same key with different values

Fixes #1576

Signed-off-by: Yolan Romailler <yolan@romailler.ch>
2021-01-22 08:50:38 +01:00
Dominik Schulz
ff349772ac
Reduce dependencies on internal packages (#1707)
This PR moves some packages from internal to pkg to increase the
independence of binaries in cmd/ from internal packages further.

RELEASE_NOTES=n/a

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2021-01-13 18:21:09 +01:00
Dominik Schulz
526458c828
Add template functions for Bcrypt and Argon2 (#1706)
Fixes #1689

RELEASE_NOTES=[ENHANCEMENT] Add tpl funcs for Bcrypt and Argon2

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2021-01-13 16:36:21 +01:00
Dominik Schulz
8d227c9e38
Use 32 byte salt by default (#1690)
This changes the salted hash funcs for the template feature to
use 32 salts by default and accept a parameter to choose the
desired salt length.

Fixes #1688

RELEASE_NOTES=[ENHANCEMENT] Use 32 byte salt by default

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2021-01-12 09:01:37 +01:00
Dominik Schulz
ddc223262e
Remove MIME secrets (#1665)
RELEASE_NOTES=[CLEANUP] Remove MIME

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2021-01-02 12:47:58 +01:00
Dominik Schulz
dccfbeb011
Introduce typed MIME Secrets (#1415)
This commit introduces a new MIME-based secrets format that will
eventually replace any existing secret format.

Fixes #1310

RELEASE_NOTES=[BREAKING] New secrets format.

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2020-06-11 16:46:05 +02:00
Dominik Schulz
d0be4054ca
Unexport more internal packages (#1377)
RELEASE_NOTES=n/a

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2020-05-22 18:26:01 +02:00