* [feat] Add verbosity levels to the debug package
Use debug.V(N).Log instead of debug.Log to indicate message
verbosity (higher numbers indicate more verbose messages).
Use GOPASS_DEBUG_VERBOSE=N to control the desired level
of verbosity in the log output.
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
* Document the verbosity env vars.
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
* Allow negative verbosity values
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
---------
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
* [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>
This PR removes some unnecessary logic in the recipients removal and
adds a shortcut to remove recipients based on the Key ID instead of
looking up key fingerprints over and over again. Also it fixes an
issue where subkeys of the same key wouldn't be displayed in gopass
recipients even if they were actually present in the .gpg-id files.
Fixes#2416
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
* Do not omit shadowed entries in ls output
Fixes#2338
RELEASE_NOTES=[BUGFIX] Do not shadow entries behind folders.
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
* Add shadow marker
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
* Adjust tests to match the new shadow behaviour
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
* Update list docs wrt. shadowing
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
* Do not mark mounts as shadowed. That's already implicit.
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
* Add more comments and some other cleanup
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
This commit adds a new subcommand to support symlinks within the same
mount. The command is intentionally still hidden since the support
isn't fully fleshed out, yet. Neither audit nor list know of links
and cross mount symlinks aren't supported either (and maybe never will).
RELEASE_NOTES=[ENHANCEMENT] Add gopass ln
Fixes#1820
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
Fixes#1558
RELEASE_NOTES=[BUGFIX] Apply limit in list correctly
RELEASE_NOTES=[ENHANCEMENT] Adding a trailing separator to the listed folders
This is also including a refactoring of the action/list.go in
order to avoid code duplication.
It is important to notice that now one must set MaxDepth to -1 in order
to list all the items in a subtree instead of 0. The 0 is now only
listing the direct parents of the subtree, 1 is listing the subitems,
and so on as explained in docs/commands/list.md
Signed-off-by: Yolan Romailler <yolan@romailler.ch>
Fixes#1460Fixes#1462
This commit fixes broken shadowing in the new tree implementation
as well as removing the broken init flag to mounts add.
RELEASE_NOTES=[BUGFIX] Fix tree shadowing.
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
This commit slightly rewrites the tree implementation and removes
another unnecessary indirection.
RELEASE_NOTES=[ENHANCEMENT] Rewrite tree implementation.
Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>