[3.9.0](https://github.com/jshwi/pyaud/releases/tag/v3.9.0) - 2022-03-20
------------------------------------------------------------------------
Added
- Adds logger to time-keeper
- Adds `pyaud.Plugin`
- Adds `pyaud.main`
- Adds `pyaud.initialize_dirs`
- Adds `pyaud.HashMapping`
- Adds `pyaud.Environ`
Changed
- Improves `pyaud.plugins.load` to search for prefixes
Fixed
- Handles `TypeError`s by returning `typing.Any` attributes
[3.8.0](https://github.com/jshwi/pyaud/releases/tag/v3.8.0) - 2022-01-09
------------------------------------------------------------------------
Added
- Logs commencement of audit
- Adds logger for coverage.xml path
Fixed
- Fixes `poetry` packaging
- Deploy runs `deploy-cov` before `deploy-docs`
[3.7.0](https://github.com/jshwi/pyaud/releases/tag/v3.7.0) - 2022-01-09
------------------------------------------------------------------------
Added
- Logs commencement of audit
- Adds logger for coverage.xml path
Fixed
- Deploy runs `deploy-cov` before `deploy-docs`
[3.6.0](https://github.com/jshwi/pyaud/releases/tag/v3.6.0) - 2022-01-04
------------------------------------------------------------------------
Added
- Adds `PYAUD_FIX` env var
- Adds `PYAUD_TIMED` env var
- Adds `pyaud.environ`
[3.5.0](https://github.com/jshwi/pyaud/releases/tag/v3.5.0) - 2021-12-31
------------------------------------------------------------------------
Changed
- Warns instead of crashes when command not found
Fixed
- `cache` set to False for `pyaud clean`
- `pyaud docs` runs properly if using MD README instead of RST
- Essentials config keys will be restored to their defaults if missing
[3.4.0](https://github.com/jshwi/pyaud/releases/tag/v3.4.0) - 2021-12-30
------------------------------------------------------------------------
Added
- Adds deepcopy functionality to `pyaud.plugin.Plugin`
Fixed
- Fixes time tracking with nested plugins
[3.3.0](https://github.com/jshwi/pyaud/releases/tag/v3.3.0) - 2021-12-28
------------------------------------------------------------------------
Added
- Adds file caching
- Adds timed feature
- Adds `pyaud.working_tree_clean`
- Adds `pyaud.get_commit_hash`
- Adds `pyaud --verison` option
- Adds cache flags to `pyaud.BasePlugin`
- Adds logger to `BasePlugin`
- Adds `pyaud.BasePlugin` class for typing
Fixed
- Fixes returncode with tests
- Allows for multiple inheritance of plugins
- Ensures audit returns exit-status
- Ensures that all files indexed are unique
- Fixes up typing
- Fixes up context classes
[3.2.10](https://github.com/jshwi/pyaud/releases/tag/v3.2.10) - 2021-11-14
------------------------------------------------------------------------
Fixed
- Fixes `pyaud generate-rcfile` when piping to file
[3.2.9](https://github.com/jshwi/pyaud/releases/tag/v3.2.9) - 2021-11-08
------------------------------------------------------------------------
Fixed
- Bypasses `TypeError` when configuring logger
[3.2.8](https://github.com/jshwi/pyaud/releases/tag/v3.2.8) - 2021-10-25
------------------------------------------------------------------------
Fixed
- `pyaud toc` only creates one file
- Renames `plugins` to `pyaud_plugins` to avoid name collisions
[3.2.7](https://github.com/jshwi/pyaud/releases/tag/v3.2.7) - 2021-09-29
------------------------------------------------------------------------
Fixed
- Pinned `black` due to beta version
[3.2.6](https://github.com/jshwi/pyaud/releases/tag/v3.2.6) - 2021-09-29
------------------------------------------------------------------------
Fixed
- Relaxes requirement versions
- Argument for `where` (`setuptools.find_packages`) is now a `str`
[3.2.5](https://github.com/jshwi/pyaud/releases/tag/v3.2.5) - 2021-08-31
------------------------------------------------------------------------
Fixed
- Fixes pattern matching when configuring file index exclusions
- Ensures all configs are loaded with `main`
[3.2.4](https://github.com/jshwi/pyaud/releases/tag/v3.2.4) - 2021-08-13
------------------------------------------------------------------------
Fixed
- Docs/toc requirement changed to docs/conf.py from docs
[3.2.3](https://github.com/jshwi/pyaud/releases/tag/v3.2.3) - 2021-08-13
------------------------------------------------------------------------
Fixed
- Fixes `pyaud whitelist`: reverts to using index with `reduce`
[3.2.2](https://github.com/jshwi/pyaud/releases/tag/v3.2.2) - 2021-08-13
------------------------------------------------------------------------
Fixed
- Prevent duplicates in index such as with unmerged trees
[3.2.1](https://github.com/jshwi/pyaud/releases/tag/v3.2.1) - 2021-08-12
------------------------------------------------------------------------
Fixed
- Prevents `get_packages` from returning dot-separated subdirectories
[3.2.0](https://github.com/jshwi/pyaud/releases/tag/v3.2.0) - 2021-08-12
------------------------------------------------------------------------
Added
- Adds option to set `packages["name"]: str` in config
- Adds `packages["exclude"]: List[str]` to config
- Adds `load_namespace` to `__all__
- Adds `__all__` to `plugins`
Changed
- Updates package resolution to allow for multiple packages
- Allows variable message for `PythonPackageNotFoundError`
- Moves `pyaud._environ.package` → `pyaud._utils.package`
- Changes default names from primary package to name of project root
Fixed
- Fixes `pyaud whitelist`: Reduces false-positives
- Updates nested config changes for global config
- Installs missing stubs automatically for `mypy==0.910`
Security
- Upgrades package requirements
[3.1.0](https://github.com/jshwi/pyaud/releases/tag/v3.1.0) - 2021-07-27
------------------------------------------------------------------------
Added
- Adds `pyaud.exceptions.CommandNotFoundError`
- Adds `pyaud.exceptions.PythonPackageNotFoundError`
- Adds `pyaud.exceptions.NotARepositoryError`
- Adds all git commands to `pyaud.git`
Changed
- `pyblake2.blake2b` → `hashlib.blake2b`
[3.0.3](https://github.com/jshwi/pyaud/releases/tag/v3.0.3) - 2021-07-26
------------------------------------------------------------------------
Fixed
- Reduces indexing time
[3.0.2](https://github.com/jshwi/pyaud/releases/tag/v3.0.2) - 2021-07-25
------------------------------------------------------------------------
Fixed
- Fixes `pyaud format-str`
[3.0.1](https://github.com/jshwi/pyaud/releases/tag/v3.0.1) - 2021-07-24
------------------------------------------------------------------------
Deprecated
- `pyaud.files.args(reduce=True)` is deprecated
Fixed
- Prevents packaged plugins from indexing unversioned files
[3.0.0](https://github.com/jshwi/pyaud/releases/tag/v3.0.0) - 2021-07-17
------------------------------------------------------------------------
Added
- Adds `pyaud.__all__`
- Adds `pyaud.plugins.FixFile` abstract base class
- Adds `pyaud.plugins.Write` abstract base class
- Adds `pyaud.plugins.Parametrize` abstract base class
- Adds `pyaud.plugins.Action` abstract base class
- Adds `pyaud.plugins.Fix` abstract base class
- Adds `pyaud.plugins.Audit` abstract base class
- Adds `pyaud.utils.files.args`
- Adds `plugins`
- Adds `pyaud.exceptions`
- Adds `pyaud.plugins`
- Adds `pyaud.objects`
- Adds `pyaud.main`
- Adds `pyaud.utils.Subprocess.args`
Changed
- `pyaud.plugins._plugins` not for external api, `register` decorator only
- `pyaud.plugins` → `pyaud.plugins._plugins` (helper functions added)
- `pyaud.utils` → `pyaud._utils`
- `pyaud.objects` → `pyaud._objects`
- `pyaud.main` → `pyaud._main`
- `pyaud.environ` → `pyaud._environ`
- `pyaud.utils.tree` → `pyaud.utils.files`
- `pyaud.main.audit` → `plugins.modules.audit`
- `pyaud.utils.tree` → `pyaud.utils.files`
- Moves plugin specific utilities to `plugins.utils`
- `pyaud.main.audit` → `plugins.modules.audit`
- `pyaud.modules` → `plugins.modules`
Fixed
- `pyaud toc` sorts modules alphabetically so `package.__init__.py` is on top
- Adds positional arguments to `check_command`
- Fixes errors raised for missing project files
- Fixes loading of `PYAUD_GH_NAME`
Removed
- Removes support for ini config
- Removes loglevel constants from `pyaud.config`
[2.0.0](https://github.com/jshwi/pyaud/releases/tag/v2.0.0) - 2021-06-28
------------------------------------------------------------------------
Added
- Adds configuration for `pyaud audit`
- Add: adds `-f/--fix` flag
- Adds `--rcfile RCFILE` flag
- Adds `indexing` key to config
- Adds `logging` key to config
- Adds `generate-rcfile` positional argument
- Adds support for Toml config
- Adds `docformatter` for docstring formatting
- Adds `flynt` for f-string formatting
- `PyAuditError` added for non-subprocess errors
Changed
- Sets static values as constants
- Updates help for commandline
- Improves `pyaud format` error handling
- Sets `Black` loglevel to debug
- Sets `Git` loglevel to debug
Deprecated
- Support for ini config is deprecated
Fixed
- Restores configfile if it becomes corrupted
- Applies exclusions to non-reduced file paths
- `pyaud imports` displays success message
- `pyaud whitelist` sorts whitelist.py
- `readmetester` produces color output when `colorama` is installed
- Excludes setup.py from indexing by default
- Adds git environment variables to `Git`
- Moves console entry point to `pyaud.__main__`
- Patches "$HOME" for setting ~/.gitconfig in tests
Removed
- Remove: removes `---path PATH` flag
- Remove: removes `PyaudEnvironmentError` for `EnvironmentError
- Removes json from `Environ.__repr__`
[1.3.0](https://github.com/jshwi/pyaud/releases/tag/v1.3.0) - 2021-03-18
------------------------------------------------------------------------
Added
- Adds ``pyaud imports`` utilising ``isort``
- Adds ``pyaud readme`` utilising ``readmetester``
[1.2.2](https://github.com/jshwi/pyaud/releases/tag/v1.2.2) - 2021-03-17
------------------------------------------------------------------------
Fixed
- Updates object-colors to the latest major release to prevent version conflicts with other packages
[1.2.1](https://github.com/jshwi/pyaud/releases/tag/v1.2.1) - 2021-02-06
------------------------------------------------------------------------
Fixed
- Updates README to include ``-v/--verbose`` option
- Fixes ``pypi`` badge in README
- Updates .bump2version.cfg to ensure only this package gets bumped in setup.py
[1.2.0](https://github.com/jshwi/pyaud/releases/tag/v1.2.0) - 2021-02-06
------------------------------------------------------------------------
Added
- Adds ``L0G_LEVEL`` environment variable to permanently set default loglevel to other from ``INFO``
- Adds ``-v/--verbose`` logging option to incrementally reduce loglevel from default
- Adds debugging logger to ``Subprocess``
- Logs failed ``Subprocess`` returncode
- Logs ``Environ.__repr__`` as ``DEBUG`` when running tests
Changed
- ``Environ.__repr__`` as json
- Lowers loglevel for internal ``git`` actions from ``INFO`` to ``DEBUG``
Fixed
- Fixes ``pylint --output-format=colorize`` when ``colorama`` is installed
- ``coverage`` only analyses directories so ``Module was never imported`` no longer sent to logs
[1.1.1](https://github.com/jshwi/pyaud/releases/tag/v1.1.1) - 2021-02-01
------------------------------------------------------------------------
Added
- Adds ``twine`` to dev-packages
Changed
- Adds REAL_REPO constant
Fixed
- Removes useless environment variables
- Prevents environment variables from being set without prefix
- Ensures dest is always last argument for ``git clone``
- Ensures ``-p/--path`` argument always returns an absolute path
- Fixes failing build
- Ensures cache and reports are saved to project root
[1.1.0](https://github.com/jshwi/pyaud/releases/tag/v1.1.0) - 2021-01-30
------------------------------------------------------------------------
Changed
- No longer analyses unversioned files
[1.0.0](https://github.com/jshwi/pyaud/releases/tag/v1.0.0) - 2021-01-26
------------------------------------------------------------------------
Added
- Initial Release
Changelog
=========
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
[Unreleased](https://github.com/jshwi/pyaud-plugins/compare/v0.22.0...HEAD)
------------------------------------------------------------------------
[0.22.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.22.0) - 2024-02-01
------------------------------------------------------------------------
Changed
- pin minimum black version which enforces new style
[0.21.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.21.0) - 2024-01-31
------------------------------------------------------------------------
Security
- bump dependencies including extra style enforcement
[0.20.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.20.0) - 2024-01-06
------------------------------------------------------------------------
Added
- plugin for copyright year
[0.19.1](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.19.1) - 2023-11-30
------------------------------------------------------------------------
Fixed
- relax version constraints for pyaud
[0.19.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.19.0) - 2023-11-30
------------------------------------------------------------------------
Changed
- remove line numbers from whitelist
[0.18.2](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.18.2) - 2023-11-29
------------------------------------------------------------------------
Security
- bump dependencies
[0.18.1](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.18.1) - 2023-11-28
------------------------------------------------------------------------
Fixed
- skip doctest check on windows which is not supported
[0.18.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.18.0) - 2023-11-28
------------------------------------------------------------------------
Added
- support for windows
- skip checks on windows for which are not supported
[0.17.2](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.17.2) - 2023-11-26
------------------------------------------------------------------------
Security
- bump dependencies
[0.17.1](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.17.1) - 2023-09-09
------------------------------------------------------------------------
Security
- bump pyaud
[0.17.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.17.0) - 2023-09-06
------------------------------------------------------------------------
Changed
- remove `pyaud.Plugin.subprocess` for `subprocess.run`
[0.16.1](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.16.1) - 2023-08-12
------------------------------------------------------------------------
Fixed
- ensure `pyaud readme-help` results are the same between versions
[0.16.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.16.0) - 2023-08-11
------------------------------------------------------------------------
Added
- add `pyaud readme-help` plugin
[0.15.3](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.15.3) - 2023-08-04
------------------------------------------------------------------------
Fixed
- only copy README.rst if it exists
[0.15.2](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.15.2) - 2023-08-04
------------------------------------------------------------------------
Fixed
- build `pyaud about-tests` in temp dir
[0.15.1](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.15.1) - 2023-07-28
------------------------------------------------------------------------
Fixed
- ensure no file leftover from `pyaud about-tests`
[0.15.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.15.0) - 2023-04-29
------------------------------------------------------------------------
Changed
- Remove unused packages
Fixed
- Remove `codecov` dependency
[0.14.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.14.0) - 2023-02-28
------------------------------------------------------------------------
Added
- Add support for Python 3.10
[0.13.3](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.13.3) - 2023-02-26
------------------------------------------------------------------------
Fixed
- Bump version constraints for `pyaud`
[0.13.2](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.13.2) - 2023-02-26
------------------------------------------------------------------------
Fixed
- Fix version constraints for `pyaud`
[0.13.1](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.13.1) - 2023-02-20
------------------------------------------------------------------------
Fixed
- Fix help for `pyaud imports`
[0.13.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.13.0) - 2023-02-20
------------------------------------------------------------------------
Changed
- Update `Imports` to `CheckFix` subclass
[0.12.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.12.0) - 2023-02-05
------------------------------------------------------------------------
Added
- Add `ChangeLogged` plugin
Removed
- Remove `Requirements` plugin
- Remove deprecated plugins
- Remove logger for `DeployCov`
[0.11.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.11.0) - 2023-01-31
------------------------------------------------------------------------
Added
- Add `CommitPolicy` plugin
- Add `AboutTests` plugin
[0.10.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.10.0) - 2023-01-04
------------------------------------------------------------------------
Added
- Add py.typed
[0.9.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.9.0) - 2022-08-05
------------------------------------------------------------------------
Security
- Removes Markdown parser which relies on `m2r` and `mistune`
[0.8.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.8.0) - 2022-08-04
------------------------------------------------------------------------
Changed
- Removes reliability on `pyaud.environ` for env
[0.7.1](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.7.1) - 2022-06-29
------------------------------------------------------------------------
Fixed
- Relaxes version constraints on some dependencies
[0.7.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.7.0) - 2022-06-24
------------------------------------------------------------------------
Added
- Adds `params` plugin
[0.6.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.6.0) - 2022-05-04
------------------------------------------------------------------------
Changed
- Migrates `pyaud_plugins._parsers` from `pyaud`
[0.5.0](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.5.0) - 2022-04-29
------------------------------------------------------------------------
Added
- Adds individual file cache
- Adds cache to `pyaud doctest-package`
[0.4.2](https://github.com/jshwi/pyaud-plugins/releases/tag/v0.4.2) - 2022-04-28
------------------------------------------------------------------------
Fixed