Kurt McKee
566ba0b853
Add black as tox environment, and run it
2022-05-13 10:44:29 -05:00
Kurt McKee
b5499c7dc5
Separate module importing from plugin identification
...
This change allows the test framework to reliably specify
which plugins to load and use within the same process.
Previously, plugins were loaded by importing files and then
accessing the Plugin class' list of subclasses.
Now, it's possible to run dotbot multiple times without
plugins accruing across runs with different configurations
and CLI arguments.
In addition, this fixes some circular imports that were
previously avoided because plugins were imported in a function.
2022-05-13 10:44:29 -05:00
Kurt McKee
a8dd89f48f
Migrate CLI argument tests to Python
2022-05-13 10:44:29 -05:00
Kurt McKee
68246ba33e
Migrate shell-* tests to Python
2022-05-13 10:44:29 -05:00
Kurt McKee
b8dfbae730
Migrate config-* tests to Python
2022-05-13 10:44:29 -05:00
Kurt McKee
a2846d0a61
Resolve Windows-specific clean issues
2022-05-13 10:44:29 -05:00
Kurt McKee
5b7db08e8a
Migrate clean-* tests to Python
2022-05-13 10:44:29 -05:00
Kurt McKee
5d11c7954d
Resolve Windows-specific create issues
2022-05-13 10:44:29 -05:00
Kurt McKee
b59b3af448
Migrate create-* tests to Python
2022-05-13 10:44:29 -05:00
Kurt McKee
78bec43e33
Resolve Windows-specific link issues
2022-05-13 10:44:29 -05:00
Kurt McKee
4469b857aa
Migrate link-* tests to Python
2022-05-13 10:44:29 -05:00
Kurt McKee
c015f7bce8
Add a test framework for all supported Python versions
2022-05-13 10:44:29 -05:00
Anish Athalye
d2f76a2593
Merge branch 'kurtmckee/update-vm-os'
2022-04-11 08:05:50 -04:00
Anish Athalye
5f84611372
Merge branch 'kurtmckee/fix-vagrant-unauthenti...'
2022-04-11 08:04:45 -04:00
Kurt McKee
57c7c513b9
Update the Vagrantfile target OS to Ubuntu jammy
...
This resolves VirtualBox 5.x/6.x Guest Additions incompatibilities
that cause all of the unit tests to fail under VirtualBox 6.1.
Fixes #305
2022-04-10 22:24:19 -05:00
Kurt McKee
1931c9ac06
Update the unauthenticated git protocol to HTTPS
...
The unauthenticated git protocol is no longer supported.
https://github.blog/2021-09-01-improving-git-protocol-security-github/
Fixes #303
2022-04-10 21:11:07 -05:00
Anish Athalye
769767c129
Migrate code style to Black
2022-01-30 18:53:05 -05:00
Anish Athalye
ac5793ceb5
Merge branch 'dkm/patch-1'
2021-10-25 14:39:24 -04:00
Marc Poulhiès
b306a25e13
Update README.md
...
small typo fix
2021-10-25 20:19:41 +02:00
Anish Athalye
fb18c9b112
Merge branch 'ssbanerje/master'
2021-10-03 20:37:24 -04:00
Subho Banerjee
aaf5037725
better test case for exit-on-failure
2021-09-12 19:40:37 -05:00
Subho Banerjee
4d2e1537f4
adding a exit on failure flag
2021-09-12 19:34:44 -05:00
Anish Athalye
076939da8e
Remove stray asterisk
2021-06-02 20:23:55 -04:00
Anish Athalye
24f88c4584
Merge branch 'eengstrom/259-link-prefix'
2021-06-02 20:21:40 -04:00
Anish Athalye
74822af9f5
Merge branch 'eengstrom/270-recursive-globbing'
2021-06-02 20:11:25 -04:00
Anish Athalye
67a3527f67
Merge branch 'eengstrom/280-fix-pyenv-config'
2021-06-02 19:48:19 -04:00
Eric Engstrom
cb6718ba87
test: fix pyenv
configuration in vagrant
...
- addresses change in `pyenv init -` that no longer adjusts PATH.
- also updated testing README.md for readability.
FIXES : #280
2021-06-02 19:47:57 -04:00
Eric Engstrom
6c044208fa
feat: Add prefix: 'string'
option to linking when glob: true
.
...
Allows one to store files in a directory or git-repo without the leading
`.`, as in:
```
dotconf:
├── README.md
├── bin
│ ├── dotbot
│ ├── look
│ ├── pbfile
│ └── ...
├── dot
│ ├── bashrc
│ ├── gitconfig
│ ├── gitignore
│ ├── gorc
│ ├── login
│ ├── ...
│ ├── zshrc
│ └── zshenv
```
Can take a many-line dotbot.yml listing **each** file in `dotconf/dot`,
reducing it to five lines:
```
- link:
~/:
path: dotconf/dot/*
glob: true
prefix: '.'
```
FIXES : #259
2021-05-27 12:07:17 -05:00
Eric Engstrom
ab7cbd42dc
feat: Support recursive globbing with **
.
...
For example, will handle an entire directory tree of files, linking all
files:
```
- link:
~/.config/:
path: dotconf/config/**
glob: true
```
NOTE, this feature requires newer versions of `glob()` (Python >= 3.5),
and `dotbot` will throw an error if using an earlier version of python.
For testing purposes, added:
- ability to skip tests in test harness
- added testing for older Python(s).
FIXES : #270
2021-05-27 11:58:55 -05:00
Anish Athalye
aa9335089b
Migrate changelog from wiki into source tree
2021-04-29 18:24:51 -04:00
Anish Athalye
e0cf5f993f
Merge branch 'eengstrom/244-fix-link-glob-patterns'
2021-04-29 18:09:39 -04:00
Anish Athalye
289c724b1c
Merge branch 'Justintime50/readme-being-typo'
2021-04-29 08:07:06 -04:00
Justintime50
84a836ea33
Fixes typos in README "being" to "begin"
2021-04-28 16:30:48 -06:00
Eric Engstrom
f56e903cee
Support both []
and ?
glob patterns
2021-04-15 23:28:19 -05:00
Anish Athalye
dcb3743115
Release 1.19.0
2021-04-06 10:54:27 -04:00
Anish Athalye
0f5a5f3385
Update dates
2021-03-31 20:11:24 -04:00
Anish Athalye
472223300f
Drop CI support for Python 3.4 and add Python 3.9
2021-03-13 06:22:58 -05:00
Anish Athalye
eb7f3fb7b1
Include git hash in version when available
2021-02-27 14:34:52 -05:00
Anish Athalye
5f849ad07f
Merge branch 'sitiom/master'
2021-02-25 15:05:02 -05:00
sitiom
6de5cc6c2c
Add PowerShell install script
2021-02-25 14:43:49 -05:00
Anish Athalye
f15293b3d5
Rename 'canonicalize-path' into 'canonicalize'
...
This parallels 'relative' (it's not 'relative-path'). The old
'canonicalize-path' is still supported for backward compatibility.
2021-02-25 08:26:19 -05:00
Anish Athalye
66489f7955
Fix missing endings of heredocs
2021-02-25 08:16:27 -05:00
Anish Athalye
dac7a9bc88
Add --debug flag to test driver
...
This is easier than the old method of adding `DEBUG=true` to the top of
test files.
2021-02-25 08:14:34 -05:00
Anish Athalye
43b62ed532
Merge branch 'etkeys/feature/cli-force-shell-out-err-true'
2021-02-25 08:02:13 -05:00
E. Keys
c35382c06d
Add cli option force shell show stderr/stdout
...
Passing `--verbose` flag two times will now force shell commands to show
stderr/stdout output regardless of settings in config file.
Resolves #104
2021-02-25 08:00:07 -05:00
Anish Athalye
5f1e33ed67
Merge branch 'etkeys/feature/expose-cli-options-for-plugins'
2021-02-25 07:57:19 -05:00
E. Keys
b18ba4d392
Make parsed CLI options available to plugins
2021-02-25 07:57:12 -05:00
Anish Athalye
22ed23c7d9
Merge branch 'etkeys/feature/glob-with-exclude'
2021-02-25 06:59:22 -05:00
Anish Athalye
de8793de99
Merge branch 'etkeys/bugfix/fix-glob-dropping-leading-dot'
2021-02-25 06:44:32 -05:00
E. Keys
6c6fee697e
Improve globbing behavior with leading '.'
2021-02-25 06:44:14 -05:00