CHANGES
=======

2.4.0
-----

* Release 2.4.0
* Replace implicit optional typedefs
* Add Python 3.11 support
* docs: Actually configure reno to use the main branch
* docs: Configure reno to use main branch
* setup: Set content type of README, avoid aliases
* CI: Remove unnecessary verbosity from GitHub actions
* CI: Update to latest versions of various actions
* api: Replace 'git.io' links
* Update pre-commit plugins
* Add 'applyPatchDeps' config option
* tox: Install black in 'pep8' environment
* CI: Fix YAML screwup
* trivial: Re-wrap some strings

2.3.0
-----

* Release 2.3.0
* Drop Python 3.5, 3.6 support, add 3.10
* Create git-blame-ignore-revs file
* Blackify code
* requirements: Uncap docs requirements
* CI: Add missing anchors

2.2.3
-----

* Release 2.2.3
* CI: Generate release
* rpm: Add README for RPM specs
* requirements: Uncap test requirements
* rpm: Yet more spec file changes

2.2.2
-----

* Release 2.2.2
* Add missing runtime dependencies
* rpm: Modify changelog

2.2.1
-----

* Release 2.2.1
* requirements: Remove all upper constraint caps
* rpm: Add pytest as dependency

2.2.0
-----

* Release 2.2.0
* rpm: Spec updates
* Replace mock with unittest.mock
* Add missing PyYAML type stubs package
* utils: Add support for 'yaml' formatter
* trivial: Style fixes
* README: Update docs for Patchwork 3.0
* README: Use python3 variants of packages
* CI: Stop publishing to test.pypi.org

2.1.2
-----

* Release 2.1.2
* requirements: Add support for click 8.x
* tests: Unset PAGER env when testing fallback
* docs: Update doc name
* utils: Convert prints to logging calls
* utils: Log subprocess calls

2.1.1
-----

* man: Update man pages

2.1.0
-----

* Add release note for new 'bundle download' options
* Fix the setup.py warning
* Allow downloading of series patches to separate files
* utils: Remove unnecessary future import
* README: Re-add build status
* Remove references to Travis
* Switch to GitHub Actions
* tox: Add missing 'typing' stubs
* tox: Fix default Python versions
* Convert to Python 3-style type hints
* Add release note for read-only auth change
* Do not require authentication for GET requests

2.0.0
-----

* Drop support for Python 2.7
* trivial: Use names for options with multiple=True
* Add '--hash' option for 'git-pw patch list'
* rpm: Address review comments
* Add spec file
* Revert "docs: Increase support range for reno"
* travis: Add support for GitHub releases
* docs: Increase support range for reno

1.9.0
-----

* docs: Highlight the impending removal of Python 2.7
* docs: Update requirements
* man: Update man pages to reflect latest changes
* Add 'bundle add', 'bundle remove' commands
* Add 'bundle delete' command
* Add 'bundle update' command
* Add 'bundle create' command
* Improve API of 'git\_pw.api' module
* tox: Update click-man version

1.8.1
-----

* Add Python 3.8 jobs
* tests: Handle click 7.1+

1.8.0
-----

* Fix mypy
* Add auto-complete of '--state' argument
* Integrate 'pre-commit'
* tox: Run flake8 on 'docs' too
* README: Clarify how to choose an API version

1.7.0
-----

* Release version 1.7.0
* requirements: Make requirements less strict (again)
* Drop support for PyPy
* utils: Simplify the unicodification of pager input
* Handle integers too when printing CSV
* setup.cfg: Minor tweaks
* Resolves issues with CSV printing on Python 2
* utils: Wrap CSV in quotes
* Don't compare against 'sys.stdout'
* Decode received mboxes
* Store manpages in version control
* tox: Use click-man executable instead
* tox: Add code coverage
* tox: Run flake8 on tests too
* tox: Cleanup
* tox: Remove 'release' target
* tox: Remove py34, add py37

1.6.0
-----

* Drop support for Python 3.4

1.5.2
-----

* Download patches to temporary file
* Add missing module docstrings
* Decode output from 'subprocess.check\_output'
* gitignore: Add autogenerated reno files
* Print git-am output
* README: Silly fix on install instructions

1.5.1
-----

* Fix help text for --format to refer to pw.format
* travis: Update (encrypted) password

1.5.0
-----

* Remove support for 'PW\_FORMAT' environment variable
* requirements: Add support for click 7.0
* Indicate values loaded from git-config
* Extract pagination parameters to common decorator
* Add support for configurable output columns
* Add support for multiple output formats
* Handle bytestring decode in 'git\_config' helper
* requirements: Make requirements less strict
* docs: Remove unnecessary settings from 'conf.py'
* api: Rename 'put' -> 'patch'
* Revert "travis: Start testing Python 3.7, PyPy"
* travis: Use travis to publish packages
* travis: Start testing Python 3.7, PyPy

1.4.0
-----

* Don't exit if multiple matches found for a filter
* Add support for filtering by user/submitter ID
* Re-add support for filtering by submitter name, user email
* Fix a simple typo

1.3.0
-----

* docs: Split into multiple pages
* tests: Validate unescaped arguments
* tox: Start running unit tests in Travis
* Display warning when using multiple filters with API v1.0
* tests: Move to top-level directory
* Add swp files to .gitignore
* tests: Add 'bundle' tests
* tests: Add 'patch' tests
* tests: Add 'series' tests
* bundle: 'api.download' returns a string
* patch: Remove duplication
* tests: Don't reuse the same name
* Specify what ARGS argument for 'apply' commands means
* Don't require escaping arguments
* Add missing argument for \_echo\_via\_pager call
* tests: Add tests for 'utils.git\_config'
* Abide by git's pager settings

1.2.0
-----

* Add initial unit tests
* README: Replace backticks with asterisks
* Resolve TODO
* Take advantage of features from API v1.1
* Prepare for required server version
* Handle additional error codes
* Allow users to show, download and apply bundles by name
* docs: Modernize build process
* docs: Use RTD theme locally
* Save to file by default
* Lower logging levels for some messages
* Allow bulk updating
* Fix type signatures

1.1.2
-----

* Add missing release notes for last few bugfixes
* api: Print out entire response on error
* Don't mix dicts and lists
* Fix write API error

1.1.1
-----

* patch: Fix filtering by state

1.1.0
-----

* Save patches to files before applying
* utils: Add 'git\_am' helper
* api: Centralize error management
* README: Use 'pip install --user'
* travis: Don't support Python 3.2, 3.3
* Require project configuration
* README: Fix minor formatting issues

1.0.0
-----

* Add first release note
* doc: Integrate reno
* README: Cleanup additional references to 'stephenfin'
* Stop reference clash on ReadTheDocs
* Include a 'User-Agent' header
* Integrate support for token auth
* setup.py: Don't lock on pbr
* docs: Combine into a single page
* README: Remove final TODO
* requirements: Fix Sphinx < 1.6
* Use rST formatting in help texts
* Integrate mypy
* Remove invalid line
* Revamp logging
* Improve error messages
* api: Ensure 'server' is actually set
* Handle Python 3 issues
* README: Remove a TODO
* README: correct url
* help: add some command-line help
* README: Add missing dependency
* Use linkname for project filtering
* Require authentication
* config: Add authentication parameters
* bundle: Expose patches in 'show'
* patch: Download mboxes by default
* patch: Expose series in 'show'
* series: Expose cover letter, patches in 'show'
* series: Expose additional information
* Handle embedded elements
* tox: Add 'publish' target
* setup.cfg: Update trove classifiers
* README: Style URLs as literals
* Add '--version' support
* README: Italicize all references to git-pw
* README: Add note about Patchwork support
* docs: Use default theme
* docs: Remove crud from index page
* doc: Move to 'docs' folder
* Add support for filtering
* Include requirements.txt in test-requirements.txt
* requirements: Remove 'pbr'
* doc: Add 'usage' document
* doc: Add introduction document
* README: Remove resolved TODOs
* Bump pbr to 2.0, Sphinx to 1.5
* doc: Cleanup of conf.py settings
* Make use of series wildcarding
* Add '.mailmap' file
* Allow passthrough of git-am options
* shell: Improve group help text
* Add 'bundle' group
* Add 'series' group
* Move all commands to a 'patch' group
* api: Use 'detail' and 'index' terminology
* README: Add travis.io build status
* travis: Don't build py26
* travis: Only test pep8
* README: Remove unused config options
* travis: Add .travis.yml config
* tox: Fix 'docs' target
* tox: Add 'man' target
* Move REST interactions to 'api' module
* Use 'series' parameter instead of 'include\_deps'
* Cleanup 'list' output
* Add sorting support to 'list' command
* Add pagination support to 'list' command
* README: Document installation without pip
* .gitignore: Ignore SublimeText files
* Typo fix in README
* doc: Add initial docs
* trivial: Resolve PEP8 issues
* Implement 'git-pw list'
* Implement 'git-pw list'
* Implement 'git-pw show'
* Add logging
* Reboot!

0.2.0
-----

* Add 'run\_command\_w\_exception' method
* Checkout master and assign a branch name
* List only 'Action Required' patches
* tox: Add 'tox.ini' file
* pep8: Resolve 'E501 line too long' error
* doc: Add documentation for new config options
* Retrieve configuration from git-config files
* Raise exception for out-of-date instances
* Graceful degradation of patchwork commands
* Add AUTHORS and ChangeLog to gitignore
* Fix 'No module named git\_pw.cli' error

0.1.0
-----

* Add a .gitignore file to hide PyPi files
* Rename 'setup.conf' to 'setup.cfg'
* Implement 'list\_patches' function
* Fix issue with versioning
* Raise NotImplementedError for series-based calls
* Implement 'cherrypick' functionality
* Extract and use package's version for '--version'
* Make first pass at CLI
* Initial commit
