This matches the behavior before 3.4.0.
Silent errors from ls-files to avoid warnings about e.g. directories that
aren't readable and also list files that would have been encrypted had they not
been tracked in git (#521).
Fix the patterns written to info/exclude so that they match the same files as
are encrypted (e.g. *.key should only match .key files in the topdir, not in
subdirs).
* Update base image to Ubuntu 24.10. This uses a python version where j2cli no
longer works when installed using pip so use the version from Ubuntu instead
which has been patched to work.
* Update shellcheck, pylint, pytest, isort, flake8, black and yamllint to the
latest versions. This closes#502.
* Use a longer expect timeout to fix tests failing when gpg is killed due to
this timeout.
* Explicitly flush gpg-agent's cached passwords to fix failing tests with
latest gnupg. Also clean up after tests to avoid having gpg-agents running
after the test (e.g. when running tests directly without docker).
The new test Docker image has a newer gnupg which does not behave the
same way, handling invalid passwords. This type of error is simulated
using an ICP error in the pinentry protocol.
This makes it possible to run e.g. "yadm -Y foo introspect repo
2>/dev/null" and get an empty output instead of getting the error
message about foo not being fully qualified.
The new test system is written with py.test. These tests are more
comprehensive, run faster by an order of magnitude, and are far more
maintainable. The tests themselves conform to PEP8.