CHANGES
=======

0.50.0
------

* refactor: InvalidRDOPackage -> InvalidPackage
* actions: allow action override for modularity
* CLI: allow passing tool name to arg parser
* conf: introduce DISTRO option
* Refactor to create search\_bug\_references function
* info: refactor for generic distroinfo support

0.49.0
------

* Require distroinfo >= 0.3.0 for speed
* lint: add colors for better readability
* spec: use new linting interface for sanity checks
* refactor: use r'' notation for regular expressions
* lint: add new action to check for errors in spec
* tests: allow passing posargs to py.test

0.48.0
------

* Require distroinfo >= 0.2.0
* tests: introduce coverage reports using pytest-cov
* tests: use common nodesets and remove os version number
* tests: make integration environment python version aware
* tests: use the zuul-jobs tox
* Add support for \*info in clone command
* spec: fix detection on short %macros
* Fix deprecation warnings

0.47.3
------

* Use six to check if type is string
* specfile: add comments to recognized\_release()
* specfile: document release\_parts() return value
* tests: use pytest.parametrize in spec tests
* doc: fix spelling of rdopkg
* tests: create DLRN master gate job
* meta: update setup.cfg summary

0.47.2
------

* info: fix \`rdopkg info -l LOCAL\` and add tests

0.47.1
------

* Start using reno to manage release notes
* log: use root logger directly, prevent duplication
* info: use distroinfo to access rdoinfo
* tests: add \`rdopkg clone\` integration tests
* Supply formatting arguments for git format-patch
* doctor: now with rainbows
* codestyle: disable invalid pycodestyle checks
* Make use of basestring compatible with python 3.x
* update-patches: only log relevant commands
* distgit: allow '|' in patches\_ignore regex
* fix version to tag translations with patches\_base\_ref

0.46.3
------

* spec: don't get confused by %changelog mentions in the %changelog

0.46.2
------

* spec: better detection of multiple changelog entries

0.46.1
------

* new-version: enable \`fedpkg new-sources\` for Fedora by default
* new-version: don't display redundant message on -b
* new-version: fix \`fedpkg new-sources\` getting wrong tarball

0.46.0
------

* reqcheck: normalize python2/python3 package names
* patch: return 0 on no new patches
* Fix error on info-tags-diff for packages without buildsys-tags
* Use "project" as package primary key to compare tags
* Support DLRN 0.date.hash and 0.1.date.hash Release formats
* Add -R/--release-bump-index argument
* Add Zuul v3 jobs
* Preserve Change-Id when amending a commit
* refactor: unify patch and update-patches
* core: action alias support
* core: fix new action check for old state
* doc: update bug tracker information in the manual
* doc: include feature scenarios in the documentation
* doc: make file naming consistent
* Fix git module import path
* Small fixes on the documentation
* spec: don't duplicate %{?dist}
* Split utils.cmd, create separate utils.git module
* tests: add topy to whitelist\_externals
* refactor: nice error messages on invalid Version/patches\_base
* pkgenv: show patches base and base git ref information
* new-verison: ensure -H and -B work together
* tests: improved reporting and test names
* normalize commit messages
* Add topy to tox as a linting check
* expand fix.feature scenarios
* Typo fixes from topy
* Trailing whitespace cleanup in doc files
* Extend newversion.feature for coverage of -H
* Add newversion.feature scenario using --bug
* doc: update README.md with current information
* doc: update README.md with Fedora/EPEL install instructions
* doc: remove obsolete building doc
* Allow include\_fns parameter in RdoinfoRepo
* distgitmagic run guard for default log\_run
* make spec file Then assert more descriptive
* Remove legacy coprbuild action
* Remove rdopkg.spec that moved to Fedora distgit
* Improve packaging as suggested in Fedora review
* Correct Source URL

0.45.0
------

* rdopkg-0.45.0-1
* spec: add Python 3 package
* Fix rdo\_projects.py example to work with latest rdoinfo
* Update MANIFEST.in
* Remove obsolete run\_tests.sh
* doc: update HACKING.md for new test setup
* Use absolute path for base\_path when not using local\_repo\_path
* cbsbuild: fix compatibility with Koji 1.13
* specfile: add docstrings to some methods
* fix: show nice message on no distgit changes and unbreak gate
* Additional test for --abort clears rdopkg state file
* add rdopkg fix revert everything scenario
* Add a rdopkg fix scenario - no changelog update
* fix: restore proper --continue functionality
* tests: enable python 3 testing
* tests: speed up findpkg integration test
* tests: use tox to setup and run tests
* spec: properly expand macros defined in .spec file
* core: only load state file on --continue
* spec: improve unicode support
* tests: fix whitespace to make pycodestyle happy
* patch: format-patches with a standard abbrev setting

0.44.2
------

* Release rdopkg-0.44.2
* Use absolute path for repo\_path

0.44.1
------

* Release rdopkg-0.44.1
* Add pbr to requirements.txt
* setup.py: remove versioned requires

0.44.0
------

* Fix 0.44 -> 0.44.0 as pbr dictates
* Release rdopkg-0.44
* Update yum references to dnf
* Add BDD feature tests using python-behave
* spec: Require python-pbr
* Improve patches\_ignore detection
* Avoid test failure due to git hooks
* Adopt pbr for version and setup.py management
* Improve %changelog handling
* fixed linting
* tests: include pep8 in test-requirements.txt
* guess: return RH osdist for eng- dist-git branches
* Migrate to softwarefactory-project.io
* Avoid prompt on non interactive console
* refactor: merge legacy rdopkg.utils.exception
* Add options to specify user and mail in changelog entry
* More python 3 compatibility fixes
* Add some Python 3 compatibility fixes
* allow patches remote and branch to be set in git config
* core: refactor unreasonable default atomic=False
* make git.config\_get behave more like dict.get
* patch: new -B/--no-bump option to only sync patches
* distgit: new -H/--commit-header-file option
* distgit: Use NVR for commit title for multiple changelog lines
* specfile: fix improper naming: get\_nvr, get\_vr
* pkgenv: display color coded hashes for branches
* new-version: handle RHCEPH and RHSCON products
* Add support for buildsys-tags in info-tags-diff
* tests: enable nice py.test diffs for common test code
* tests: fix gerrit query related unit tests
* Use always parse\_info\_file in get\_info
* document new-version's --bug argument
* Update doc to reflect output change in info-tags-diff
* Fix output of info-tags-diff for new packages
* Update to 0.43
* patch: improve new/old patches detection
* Bugfix: fix cbsbuild command failure
* update-patches: deprecate in favor of \`rdopkg patch\`
* shell: allow passing action description
* add documentation on how patches\_base is calculated
* Adding pytest to test-requirements.txt
* linting cleanup - F401 imported but not used
* linting - F401 imported but not used in kojibuild
* pylint cleanup for unused variable in specfile.py
* more pep8 whitespace cleanups in tests/common.py
* pep8 whitespace cleanup in test\_utils.py
* linting cleanup - F841 local variable is assigned but never used
* pep8 whitespace cleanup in specfile.py
* pep8 whitespace cleanup in cmd.py
* linting cleanup in kojibuild.py - F841
* lint - F401 imported but unused in guess.py
* python linting cleanup in rdopkg/exception.py
* Add NOQA to import in actions/util/actions
* linting cleanup in cbsbuild.py
* pass stderr through in cmd.run() which we setup
* pep8 cleanup of unused variable in cmd.py
* Cleanup helpers.edit() Exception
* pep8 whitespace cleanup in test\_new\_version.py
* extracted get\_magic\_comment + unittests
* better handling for patches\_base and ignore
* fix bug in spec set\_patches\_base around extra whitespace
* new-version: add -B/--bug option to reference bugs in changelog
* distgit: correctly use -f/--force option
* doc: Add virtualenv howto to HACKING and README
* Allow fully unattended runs of rdopkg new-version
* exception: support exit\_code
* added another mock for test\_spec.py for macro\_expand
* added pytest.mark.skip for tests failing if you don't have rpm
* Add test coverage for rdopkg.guess version2tag and tag2version
* Fix issue #97 patches\_base/ignore mangling
* pkgenv: don't query rdoinfo for obsolete information
* Split koji client session setup into cbs.setup\_kojiclient
* Drop KojiOpts class to prepare refactoring
* tests: remove old test assets
* new-version: don't write patches\_base for prefixed tags
* Cleaned up fallback behavior in RdopkgException class
* Add missing RPM\_AVAILALE guard in set\_macro()
* tests: improve findpkg test output
* patch: only create one commit
* man: give example for patches\_ignore
* run\_tests.sh: actually fail on test failure
* helpers: safer is\_same\_hash()
* new-version: improve docs for new-sources
* patch: refactor to properly handle all cases
* new-version: re-enable reqdiff
* specfile: raise when missing rpm lib in expand\_macro()
* guess: handle "VX.Y.Z" Git tags
* Add findpkg integration tests to run\_tests.sh
* Update to 0.42
* specfile: add a sanity check for double # patches\_base
* pkgenv: show patches apply method
* findpkg: new command to easily find single package
* reqcheck: add --spec/-s output for pasting
* get-source: unbreak after defaults change
* specfile: extend BuildArch sanity check to %autosetup
* Counter past %{?milestone} bug
* tag-patches: ignore RPM Epoch
* specfile: add epoch parameter to Spec.get\_nvr
* Update to 0.41.4
* Evade pyton 2.7.5 regex bug
* Fixed -c argument parsing
* Fix .spec typo
* Update to 0.41.3
* Make --version work again
* info: reintroduce lost info and info-diff-tags actions
* tag-patches: fix recommended "push" action
* Update to 0.41.2
* setup.py: update packages list with new layout
* Update to 0.41.1
* Add rdopkg.actions to setup.py
* Update to 0.41
* patch: fix milestone handling and cover with unit tests
* doc: update HACKING.md
* refactor: split actions.py into action modules
* Nuke python-parsley requirement
* Fix macro expansion when redefining macros
* HACKING: fix doc file suffixes
* doc: rename asciidoc files from ".txt" to ".adoc"
* actions: add "tag-patches" command
* Update to 0.40
* info-tags-diff: new utility action to show rdoinfo tag changes
* patch: fix traceback with no new patches
* pkgenv: fix traceback on unknown gerrit chain
* Fix new-version release tag management
* cbsbuild: make rpm module optional
* Update to 0.39
* new-version: support X.Y.Z.0MILESTONE releases
* pkgenv: show NVR detected from .spec
* cbsbuild: make koji module optional
* Update to 0.38
* patches: drop legacy patches branch rule for clients
* Remove unused gerrit module
* guess: only consider open patch reviews
* doc: describe clone action
* Add new cbsbuild command to build against CBS
* Remove rdoupdate
* Bugfix: sometimes rdopkg insists on pushing branches already pushed
* Remove now useless update files options from kojibuild/coprbuild
* Release 0.37
* HACKING.md: correct tests command
* patch: add rhbz numbers from commits
* patchlog: print rhbz numbers
* patch: Improve parsing of .spec Source attribute
* README: update links and more
* Reintroduce new-sources autodetection for RHOSP
* actions: Do not reset branch if local\_patches is set
* check\_new\_patches: Do not count commits using the patches\_ignore keyword
* Release 0.36
* new-version: fix --bump-only option
* new-version: support review workflow
* pkgenv: show patches style and review URL
* Normalize review-patch and review-spec
* Integrate new review patches style
* Update repo address
* Warn user if a patch has at least one negative review
* new-version: run \`fedpkg new-sources\` on-demand
* clone: add -u/--review-user to select gerrit username
* review-spec, review-patch: don't use -i/--newchangeid
* actions: remove unwanted parameters
* show output of \`git review\`
* reqcheck: fix delorean branches support with repositories cloned with rdopkg
* Bugfix in Git class
* run\_tests: add pep8 check
* pep8: fix more warning of latest pep8
* pep8: make pep8 happy
* Prevent unverified patches from being used
* Add review-spec command, Add review-patch command
* fix fetching at the right time
* Add prepare-patch-chain command
* Remove confusing code
* Fix tests
* Add gitreview
* Create review remotes automatically with the clone action
* Update to 0.35.1
* repoman: fix regression on local rdoinfo repo
* Update to 0.35
* Add an example of rdoinfo frontend usage
* Add support for git repos using the ssh protocol, review related functions
* Add clone "-g" option that creates needed Gerrit remotes
* Enable patches stored as unmerged Gerrit reviews
* README: update installation for dnf
* Update to 0.34
* info: add -t/--apply-tag option to apply new rdoinfo tags
* info: add -l/--local-info option to use local rdoinfo repo
* Reqcheck: small display improvement
* doctor: new action stub with basic lolz
* Update to 0.33
* actions/update-patches - Consider the patches\_ignore magic comment
* utils/spec - Add a method to parse patch regex from the spec file
* trivial-test: remove unused argument from prep\_patches\_branch
* Fix typo in log message
* Update to 0.32.1
* new-version: cosmetic string change
* new-version: fix patches branch detection
* Update to 0.32
* clone: new action to setup RDO package git remotes
* update-patches: add tests for .spec with comments between patches
* tests: add missing test assets
* Simplify .gitignore
* update-patches: Smarter .spec patch management
* Update to upstream 0.31
* new-version: auto --bump-only on missing patches branch
* README: Update and mention pwnpkg
* patchlog: nitpicking
* patchlog: new action to show patches branch log
* add .gitignore
* new-version: only run \`fedpkg new-sources\` with non-empty sources file
* update-patches: update the "%commit" macro
* remove unused 'rebase' action
* rdopkg.spec: quote macro in %changelog
* Update to 0.30
* spec: require latest pymod2pkg >= 0.2.1
* log: improve stdout vs stderr logging
* helpers.edit: Clear message about unset $EDITOR
* update-patches: ignore git submodule changes
* Use standalone pymod2pkg module
* Update to 0.29.1
* Handle version\_tag\_style in check\_new\_patches()
* spec: update package description
* Update to 0.29
* new-version: support vX.Y.Z version tags
* doc: rm gerrit instructions from HACKING.md
* doc: update for \`rdopkg status\` and \`rdopkg --abort\`
* core: improve state file handling
* kojibuild: proper error on failed build guess
* Release 0.28.1
* doc: improve new-version manual
* doc: Do you even whitespace, bro?
* doc: damn you, whitespace!
* doc: rdopkg adventures: requirements management
* pkgenv: show detected upstream branch and version
* pymod2pkg: add rule for oslosphinx
* doc: explain new reqs mgmt actions is the manual
* doc: add "info" action and rdoinfo explanation
* doc: add "conf" action to man page
* Release 0.28
* reqquery: new action to query RDO requirements
* mockbuild: remove obsolete special case
* autocomplete: Support bash/zsh TAB completion
* Update to upstream 0.27.1
* update-patches: create commit even with only removed patches
* Release 0.27
* reqcheck: new action to check for correct Requires
* new-version: improve -b/-n behavior
* Release 0.26
* query: new action to query RDO package versions
* tests: update moving parts
* update: use SSH for update repo
* make README useful
* doc: add RDO stylesheet to HTML docs
* reqdiff: fix stupid regexp
* info: remove redundant code
* new-version: ignore missing requirements.txt diff
* info: package.project is now required
* Release 0.25
* Provide set\_colors function to control color output
* update: parsable update summary in gerrit topic
* Release 0.24
* update-patches: support %autosetup patch apply method
* Packaging fixes
* Release 0.23
* kojibuild: offer push when needed
* reqdiff: new action & integrated into new-version
* core: fix state file handling and atomic actions
* Initial open source import
* Initial commit
