Fix globbing when there is a single match
commit416f32f5fe742544ff9b1f0b7c85adc716ef3aca
authorAnish Athalye <me@anishathalye.com>
Sun, 9 Jul 2023 20:19:36 +0000 (9 16:19 -0400)
committerAnish Athalye <me@anishathalye.com>
Sun, 9 Jul 2023 20:24:13 +0000 (9 16:24 -0400)
tree462680c56fbde38172049b66b233860de01d6805
parent9f8fd76f32d10e23dfef104f5028b2ce7f024384
Fix globbing when there is a single match

See https://github.com/anishathalye/dotbot/issues/282 and
https://github.com/anishathalye/dotbot/issues/315.

This patch simplifies the implementation, removing special-case handling
for the cases of zero matches and one match. Instead, any situation
where `glob: true` is specified and the path contains a glob character
(any of "?", "*", or "[") is treated as a glob case. The reason we check
both `use_glob` and `_has_glob_chars()` is to more gracefully handle the
case where the user has enabled globs by default, but most links do not
contain glob characters and should not be treated as globs.
dotbot/plugins/link.py
tests/test_link.py