1
0
Fork 0
mirror of synced 2024-12-22 14:11:07 -05:00
Commit graph

325 commits

Author SHA1 Message Date
Anish Athalye
def05688c0 Make Dispatcher have all plugins by default
This used to be the behavior, and then
b5499c7dc5 changed this, breaking some
plugins (some of which subsequently implemented workarounds). This patch
restores the behavior, so that if a Dispatcher is constructed without
explicitly passing in plugins, it has access to all plugins.

This change seems safe, in that it's unlikely that any plugins were
relying on the behavior between b5499c7dc5
and this patch, where a Dispatcher without an explicit plugin list
behaved as if there were no plugins---because such a Dispatcher is not
very useful!
2024-12-08 18:15:08 -05:00
Anish Athalye
6489f28311 Release 1.20.2 2024-12-07 18:34:56 -05:00
Anish Athalye
cef40c902e Fix issue with duplicate execution of plugins 2024-12-07 18:34:56 -05:00
Anish Athalye
8c2dc8cbc6 Make set of plugins available in context
This is useful for plugins like dotbot-if [1] that want to instantiate
their own Dispatcher. Previously, the Dispatcher found the set of
available plugins on its own, but as of
b5499c7dc5, this was changed so that
plugins are passed in.

Given that it has been over two years since this behavior has been
broken/changed, reverting to the previous behavior of having the
Dispatcher auto-load plugins might not be ideal, which is why this patch
instead makes the set of plugins available via the Context for plugins
to use.

This was reported in the Dotbot repository [2], and earlier in dotbot-if
[3]. dotbot-if is currently using a workaround [4] that was originally
implemented in dotbot-ifplatform [5].

[1]: https://github.com/wonderbeyond/dotbot-if
[2]: https://github.com/anishathalye/dotbot/issues/339
[3]: https://github.com/wonderbeyond/dotbot-if/issues/1
[4]: https://github.com/wonderbeyond/dotbot-if/pull/2
[5]: e35b5c0d71
2024-12-07 18:24:32 -05:00
Anish Athalye
4edfa82607 Improve Singleton metaclass 2024-12-07 18:24:18 -05:00
Anish Athalye
8d94c6ec1a Disable coverage status checks 2024-11-21 17:23:21 +05:30
Anish Athalye
2294ac78f8 Update actions 2024-11-21 17:13:19 +05:30
Anish Athalye
720206578a Update CI setup
macos-latest runs on arm64, and Python 3.6 / Python 3.7 are not
available for that architecture.
2024-05-11 13:08:17 -04:00
Anish Athalye
ba1c0f0e9a Rename workflow file 2024-05-11 13:05:42 -04:00
Anish Athalye
3f9e409669 Merge branch 'kurtmckee/support-python-3.12' 2023-09-10 12:08:56 -04:00
Kurt McKee
26720b8264
Add Python 3.12 to the test suite; mark it as supported 2023-09-10 10:34:20 -05:00
Kurt McKee
9bb82306f4
Configure pytest to escalate warnings to errors during testing 2023-09-10 10:28:14 -05:00
Kurt McKee
eba0b24331
Resolve a Python 3.12 DeprecationWarning 2023-09-10 10:27:54 -05:00
Anish Athalye
840cd164d2 Release 1.20.1 2023-09-10 10:37:02 -04:00
Anish Athalye
cd1ff70113 Merge branch 'bennyyip/master' 2023-09-10 10:36:49 -04:00
bennyyip
390d306284 Fix wrong pyyaml path 2023-09-10 22:29:44 +08:00
Anish Athalye
7a24ded5a6 Release 1.20.0 2023-09-09 21:03:40 -04:00
Anish Athalye
b7e54a9bb3 Add badges 2023-09-09 21:03:11 -04:00
Anish Athalye
eace76f697 Add Python 3.11 testing to CI 2023-09-09 20:57:01 -04:00
Anish Athalye
b732baf163 Upgrade PyYAML to 6.0.1
This was causing install issues with newer versions of Python /
setuptools; see https://github.com/yaml/pyyaml/issues/723.

Thanks to Rui Chen <rui@chenrui.dev> for reporting this issue in
https://github.com/anishathalye/dotbot/pull/340.
2023-09-09 20:57:01 -04:00
Anish Athalye
81d4a434ef Drop support for Python 2 and Python < 3.6
This patch also deletes all of the compatibility code that we no longer
need.
2023-09-09 20:57:01 -04:00
Anish Athalye
712b30a445 Add Python 2.7 testing back to CI
This patch uses the strategy described in
https://github.com/actions/setup-python/issues/672.
2023-07-16 12:10:33 -04:00
Anish Athalye
b04a3f1844 Release 1.19.2 2023-07-09 16:28:06 -04:00
Anish Athalye
416f32f5fe 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.
2023-07-09 16:24:13 -04:00
Anish Athalye
9f8fd76f32 Add note about exclude path interpretation
See https://github.com/anishathalye/dotbot/issues/292.
2023-07-09 16:20:27 -04:00
Anish Athalye
4daa065dc9 Allow empty glob
This is convenient and more flexible. See
https://github.com/anishathalye/dotbot/issues/284.
2023-07-09 16:20:27 -04:00
Anish Athalye
ed60c62432 Improve output of '--version' 2023-07-09 15:26:46 -04:00
Anish Athalye
53b3781fbb Drop Python 2.7 from CI
The setup-python action no longer supports Python 2.7:
https://github.com/actions/setup-python/issues/672.
2023-06-25 11:16:14 -04:00
Anish Athalye
328bcb3259 Remove copyright years 2023-03-05 07:37:27 -05:00
Anish Athalye
da928a4c6b Release 1.19.1 2022-12-17 15:13:48 -05:00
Anish Athalye
1d56409bc1 Add note about Windows support 2022-12-17 15:12:43 -05:00
Anish Athalye
8468213bc6 Add code coverage for all platforms 2022-12-17 15:05:04 -05:00
Anish Athalye
e810f42ca2 Deduplicate format checking
This was being checked in both the tox tests and separately in GitHub
actions.
2022-12-17 14:10:17 -05:00
Anish Athalye
593584154d Add instructions on how to run tests in Docker 2022-12-17 14:05:39 -05:00
Anish Athalye
3965e1a390 Merge branch 'kurtmckee/test-on-windows-issue-309' 2022-12-17 14:01:22 -05:00
Kurt McKee
e0c78d9c56
Resolve merge conflicts
Note that this does NOT port the following command over:

```shell
git config --global protocol.file.allow always
```

Doing so would change the git configuration of users running
the unit tests locally, and this is not an acceptable outcome.
Instead, the git configuration is modified at the CLI using
the `-c protocol.file.allow=always` argument to accomplish
the same thing without side effects.
2022-12-16 13:52:33 -06:00
Anish Athalye
860a56580b Fix CI 2022-12-11 10:58:48 -05:00
Anish Athalye
9593510bd4 Merge branch 's1as3r/master' 2022-11-17 13:26:55 -05:00
Anish Athalye
5d34d005e8 Fix test 2022-11-17 13:26:32 -05:00
Arbaaz Shafiq
76ccc53eee Don't show command if quiet: true
Don't print the command if quiet option is set to true and no
description is given.
2022-11-17 13:23:23 -05:00
Anish Athalye
1971ae9f51 Add workaround for test broken by Git security fix
The fix for this Git security issue [1] involved disabling the local
clone optimization when the repository contains symbolic links. The
security fix broke this particular test; this patch works around the
fix.

[1]: https://github.com/git/git/security/advisories/GHSA-3wp6-j8xr-qw85
2022-11-17 10:27:21 -05:00
Kurt McKee
d12aa83673 Document how to run the unit tests locally
When verifying the steps on Windows, the `.eggs` directory suddenly appeared.
This is now ignored.
2022-05-18 07:15:59 -05:00
Kurt McKee
7a586aa4c5 Remove the Vagrant-based tests 2022-05-18 07:01:06 -05:00
Kurt McKee
d055802a66 Fix pypy3 CI issue on MacOS 2022-05-18 06:37:48 -05:00
Kurt McKee
59b1b85d07 Account for MacOS and Windows temp directory issues 2022-05-18 06:37:48 -05:00
Kurt McKee
ee3646bba3 Update CI to use tox tests 2022-05-13 10:44:29 -05:00
Kurt McKee
57a27a770c Add code coverage reports 2022-05-13 10:44:29 -05:00
Kurt McKee
5c0ddc6fc1 Migrate the bin/dotbot script test to Python 2022-05-13 10:44:29 -05:00
Kurt McKee
30f310e935 Remove Python 2 references in the Powershell shim
CPython >= 3.8 is required for proper Windows support.
2022-05-13 10:44:29 -05:00
Kurt McKee
74aca02157 Migrate the shim test to Python 2022-05-13 10:44:29 -05:00