What's new
- Refreshed logo
- `vcspull sync`:
- Empty command will now show help output
console
$ vcspull sync
Usage: vcspull sync [OPTIONS] [REPO_TERMS]...
Options:
-c, --config PATH Specify config
-x, --exit-on-error Exit immediately when encountering an error syncing
multiple repos
-h, --help Show this message and exit.
To achieve the equivalent behavior of syncing all repos, pass `'*'`:
console
$ vcspull sync '*'
Depending on how shell escaping works in your shell setup with [wild card / asterisk], you may not need to quote `*`.
[wild card / asterisk]: https://tldp.org/LDP/abs/html/special-chars.html#:~:text=wild%20card%20%5Basterisk%5D.
- Terms with no match in config will show a notice (394)
> No repo found in config(s) for "non_existent_repo"
- Syncing will now skip to the next repos if an error is encountered
- Learned `--exit-on-error` / `-x`
Usage:
console
$ vcspull sync --exit-on-error grako django
Print traceback for errored repos:
console
$ vcspull --log-level DEBUG sync --exit-on-error grako django
- Syncing in git repositories with untracked files has been improved (via
libvcs 0.17)
See also https://github.com/vcs-python/libvcs/pull/425
Development
- Move to `src/` directory structure (382)
- libvcs: Update to 0.17.x (373)
- mypy:
- Basic mypy annotations (373)
- [`mypy --strict`] compliant (386)
[`mypy --strict`]: https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-strict
- Remove `.pre-commit-config.yaml`: Let's not automate what the contributor could /
should do themselves.
- Add [flake8-bugbear](https://github.com/PyCQA/flake8-bugbear) (#379)
- Add [flake8-comprehensions](https://github.com/adamchainz/flake8-comprehensions) (#380)
Testing
- Add CLI tests (387)
Documentation
- Render changelog in sphinx-autoissues (378)
Bug fixes
- Fix cloning of mercurial repositories
Infrastructure
- CI speedups (383)
- Split out release to separate job so the PyPI Upload docker image isn't pulled on normal runs
- Clean up CodeQL
- Upgraded poetry 1.1.x to 1.2.x
Packaging
- Remove `MANIFEST.in`
Redundant since poetry has pyproject.toml with `include`
- Remove unused `.tmuxp-before-script.sh`, which was used as a `before_script`
in `.tmuxp.yaml`
- Move `.coveragerc` into `pyproject.toml` (384)