14 Commits

Author SHA1 Message Date
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
f58454452f
Increase test coverage (#2461)
RELEASE_NOTES=n/a

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

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2022-12-10 23:05:33 +01: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
7dd8ed505a
Handle from prefix correctly during move (#2110)
Fixes #2079

RELEASE_NOTES=[BUGFIX] Handle from prefix correctly on mv

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2022-01-14 23:05:07 +01: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
Moritz Johner
21ff26d73a
feat: support windows (#1295)
* feat: support windows

Signed-off-by: Moritz Johner <beller.moritz@googlemail.com>

* fix: revert unnecessary changes

Signed-off-by: Moritz Johner <beller.moritz@googlemail.com>

* fix: remove useless test

Signed-off-by: Moritz Johner <beller.moritz@googlemail.com>
2020-04-29 00:27:05 +02:00
Martin Hoefling
3ba59c0d6b
Windows tests (#1171)
* make tests run on windows and osx

* add osx and windows as test target
* add slow test factor as osx doesn't seem to be fast enough to capture the test interval
* reset buildflags on windows as no PIC code can be built
* append .exe to gopass output
* fix some tests on windows, disable others

Signed-off-by: Martin Hoefling <martin.hoefling@gmx.de>

* kill gpg and test commands on windows after test

Signed-off-by: Martin Hoefling <martin.hoefling@gmx.de>

* disable problematic clipboard and jsonapi tests under windows

Signed-off-by: Martin Hoefling <martin.hoefling@gmx.de>
2020-04-24 17:52:00 +02:00
Cornelius Weig
a615935dd1 Follow the rsync convention for the source directory in cp/mv commands (#1055)
When moving/copying folders, gopass currently enforces a trailing slash
on the source folder. This makes it impossible to rename a folder.
Rsync re-creates the source folder at the destination, if the source
folder has _no_ trailing slash. Otherwise the folder contents are
flattened at the destination location. With that convention it will be
possible to also rename folders.

Signed-off-by: Cornelius Weig <cornelius.weig@tngtech.com>
2019-02-04 22:26:28 +01:00
Dominik Schulz
00f5423c60
Make move work recursively and across stores (#821)
Fixes #633
2018-06-01 15:40:46 +02:00
Dominik Schulz
8ef89b3a59 Improve error handling and propagation (#280)
This commit makes heavy use of github.com/pkg/errors to improve
handling and propagation of errors and to provide more meaningful
error messages. It also fixes some minor issues/wording wrt. error
message. Also it introduces distinct exit codes for different types
of errors.

Fixes #150
2017-08-23 17:38:22 +02:00
Dominik Schulz
1a05147d89 Release testing for 1.2.0 (#157)
Fixes #156
Fixes #146
2017-06-20 16:18:48 +02:00
Dominik Schulz
906aa22e79 Add megacheck and fix any reported errors (#113) 2017-05-22 11:44:31 +02:00
Yolan Romailler
a6f2ac3403 Adding an option to hide the passwords on show action (#103)
* Adding unit tests for new feature

* Adding a setting to avoid showing password

By default, especially when usernames or comments in password entry are
useful, it may be dangerous to display the password on the terminal.
This commit add a setting to handle this, as well as a way to force
current behaviour.
The default behaviour is changed to this more sane and secure way.
Unit tests for the feature are passing.

* Adding config unit test

To check that the configuration is handled correctly.

* Adding QRcode Show test

* Reverting back default behaviour to pass one

And adding a readme entry in the Show section.
2017-05-17 15:39:34 +02:00
Dominik Schulz
a299b0e4e8 Add integration tests 2017-02-02 15:55:17 +01:00