CHANGES
=======

7.10.0
------

* zuul: Use openstack-python3-next-jobs template
* pre-commit: Bump versions
* Do not install code to build release notes
* Remove Python 3.10 support
* Import eventlet conditionally
* Deprecate version module
* tox: Use new constraints option
* Filter warning from eventlet
* Update packaging configuration
* ruff: Configure hacking as external linter
* Update master for stable/2026.1
* Add support for testtools 2.8.x

7.9.0
-----

* Find cat command externally
* Refactor test\_KillFilter
* trivial: Rework build\_filter function
* Add typing
* Remove Python 2 code
* Add ruff
* Delay string interpolations at logging calls
* Remove reference to tag framework

7.8.0
-----

* reno: Update master for unmaintained/2024.1
* Bump pyupgrade target to 3.10+
* pre-commit: Bump versions
* Migrate bandit options to pyproject.toml
* Simplify package loading
* Migrate setup configuration to pyproject.toml
* Drop Python 3.9 support
* Update master for stable/2025.2

7.7.0
-----

* add pyproject.toml to support pip 23.1

7.6.0
-----

* Fix outdated benchmark target
* Update master for stable/2025.1

7.5.1
-----

* Skip installation to speed up pep8

7.5.0
-----

* Adjust warning message for eventlet support deprecation
* deprecate eventlet monkey patching with oslo.rootwrap
* Drop workaround for Python 3.4
* reno: Update master for unmaintained/2023.1

7.4.0
-----

* Add note about requirements lower bounds
* Run pyupgrade to clean up Python 2 syntaxes
* pre-commit: Bump versions
* Remove Python 3.8 support
* Fix outdated tox minversion
* Declare Python 3.12 support
* Extend timeout before SIGKILL
* Update master for stable/2024.2
* Fix \_FunctionalBase.test\_run\_as

7.3.0
-----

* Remove unused reno from test requirements
* Remove old excludes
* Update master for stable/2024.1
* reno: Update master for unmaintained/victoria

7.2.0
-----

* Display coverage report
* Bump hacking
* Update python classifier in setup.cfg
* Add coreutils as valid value to fix KillFilter test
* Update master for stable/2023.2

7.1.0
-----

* Bump bandit
* Revert "Moves supported python runtimes from version 3.8 to 3.10"
* Drop Beta development status
* Moves supported python runtimes from version 3.8 to 3.10
* Update master for stable/2023.1

7.0.1
-----

* Fix issues related to tox4

7.0.0
-----

* Fix formatting of release list
* Drop python3.6/3.7 support in testing runtime
* Remove unnecessary unicode prefixes
* Update CI to use unversioned jobs template

6.3.1
-----

* CommandFilter should allow exec from full path

6.3.0
-----

* setup.cfg: Replace dashes with underscores
* Move flake8 as a pre-commit local target
* Remove lower-constraints remnants
* Dropping lower constraints testing
* Use TOX\_CONSTRAINTS\_FILE
* Use py3 as the default runtime for tox
* Remove six
* Remove six.PY3
* Add Python3 wallaby unit tests
* Update master for stable/victoria
* Adding pre-commit
* ignore reno generated artifacts

6.2.0
-----

* [goal] Migrate testing to ubuntu focal
* Bump bandit version
* Stop to use the \_\_future\_\_ module

6.1.0
-----

* Fix hacking min version to 3.0.1
* Switch to newer openstackdocstheme and reno versions
* Remove the unused coding style modules
* Avoid raising a RuntimeError during the shutdown
* Align contributing doc with oslo's policy
* Bump default tox env from py37 to py38
* Add py38 package metadata
* Add release notes links to doc index
* Add Python3 victoria unit tests
* Update master for stable/ussuri
* Update hacking for Python3

6.0.2
-----

* Use unittest.mock instead of third party mock

6.0.1
-----

* Implement "realpath" to retrieve the real absolute path
* remove outdated header
* Remove universal wheel configuration
* reword releasenote for py27 support dropping

6.0.0
-----

* [ussuri][goal] Drop python 2.7 support and testing
* tox: Trivial cleanup

5.17.1
------

* reap rootwrap daemon process when it is timeout
* tox: Keeping going with docs
* Switch to Ussuri jobs
* Bump the openstackdocstheme extension to 1.20
* Sync Sphinx requirement
* Update the constraints url

5.17.0
------

* Update master for stable/train

5.16.1
------

* Add Python 3 Train unit tests

5.16.0
------

* Replace git.openstack.org URLs with opendev.org URLs
* OpenDev Migration Patch
* Dropping the py35 testing
* Always close all passed in fds beyond sensible\_fd\_limit on launch
* Update master for stable/stein
* Update hacking version

5.15.2
------

* add python 3.7 unit test job
* Use template for lower-constraints

5.15.1
------

* Update mailinglist from dev to discuss
* Fix portability issue

5.15.0
------

* Add release note for file descriptor limit change
* Clean up .gitignore references to personal tools
* Don't quote {posargs} in tox.ini
* Run rootwrap with lower fd ulimit by default
* add lib-forward-testing-python3 test job
* add python 3.6 unit test job
* import zuul job settings from project-config
* Update reno for stable/rocky
* Switch to stestr
* Add release notes link to README
* fix tox python3 overrides

5.14.1
------

* Make IpNetnsExecFilter more strict to detect aliases
* Remove stale pip-missing-reqs tox test
* Trivial: Update pypi url to new url

5.14.0
------

* set default python to python3
* fix lower constraints and uncap eventlet
* Update to support running benchmark on python3
* add lower-constraints job
* Updated from global requirements
* Update links in README
* Update reno for stable/queens
* Updated from global requirements
* Updated from global requirements
* Treat doc warnings as errors

5.13.0
------

* Updated from global requirements
* Follow the new PTI for document build
* Add bandit to pep8 job

5.12.1
------


5.12.0
------

* Remove -U from pip install
* Avoid tox\_install.sh for constraints support
* Ignore syslog settings if /dev/log is not present
* Remove setting of version/release from releasenotes
* Updated from global requirements

5.11.0
------

* Protect rootwrap daemon socket against multiple threads
* Cleanup test-requirements
* Updated from global requirements

5.10.0
------

* Updated from global requirements
* Fix test\_daemon\_no\_cleanup\_for\_uninitialized\_server
* Update reno for stable/pike
* Updated from global requirements

5.9.0
-----

* Update URLs in documents according to document migration

5.8.0
-----

* rearrange existing documentation to fit the new standard layout
* Switch from oslosphinx to openstackdocstheme
* Updated from global requirements
* Remove pbr warnerrors in favor of sphinx check
* Updated from global requirements
* Updated from global requirements
* Updated from global requirements

5.7.0
-----

* Trivial: Remove testscenarios from test-requirements.txt

5.6.0
-----


5.5.0
-----

* Updated from global requirements
* [Fix gate]Update test requirement
* Allow rootwrap-daemon to timeout and exit
* Don't open subdirectories rootwrap filter directories
* Avoid importing Linux specific modules on Windows
* Always check cmd which does not exist
* Updated from global requirements
* Remove support for py34
* pbr.version.VersionInfo needs package name (oslo.xyz and not oslo\_xyz)
* [daemon] Close inherited filedescriptors after forking
* Update reno for stable/ocata

5.4.0
-----

* Relax default strict option under python3.x for configparser
* Add Constraints support
* Show team and repo badges on README

5.3.0
-----

* Updated from global requirements
* Updated from global requirements
* [TrivialFix] Replace 'assertFalse(a in b)' with 'assertNotIn(a, b)'
* Fix running unknown commands in daemon mode
* Enable release notes translation

5.2.0
-----

* Update homepage with developer documentation page
* Enhance \_program() and \_program\_path()

5.1.0
-----

* Fix parameters of assertEqual are misplaced
* Remove discover from test-requirements

5.0.0
-----

* always allow privsep-helper as a command
* Add Python 3.5 classifier and venv
* Add reno for release notes management

4.4.0
-----

* Updated from global requirements

4.3.0
-----

* Updated from global requirements

4.2.0
-----

* Updated from global requirements

4.1.0
-----

* Updated from global requirements

4.0.0
-----

* Updated from global requirements
* Remove unused use-syslog-rfc-format option

3.2.0
-----

* Updated from global requirements
* Updated from global requirements
* Removes MANIFEST.in as it is not needed explicitely by PBR

3.1.0
-----

* Drop python 2.6 support

3.0.1
-----

* Updated from global requirements
* Remove python 2.6 classifier
* Remove python 2.6 and cleanup tox.ini
* Python 3: encode or decode i/o data of Popen.communicate()

2.5.0
-----

* Fix Python 3 support for eventlet monkey-patching
* Fix Python 3 issues in tests

2.4.0
-----

* No need for Oslo Incubator Sync
* move usage instructions into main docs
* docs - Set pbr 'warnerrors' option for doc build
* Add shields.io version/downloads links/badges into README.rst
* add pbr-generated release history to the documentation
* Fix some spelling typo in manual
* Updated from global requirements
* Python 3: Don't use BaseException.message attribute

2.3.0
-----

* Handle renamed executables with KillFilter
* Updated from global requirements

2.2.0
-----

* Updated from global requirements
* Updated from global requirements
* Updated from global requirements
* Updated from global requirements
* Updated from global requirements
* Updated from global requirements
* Remove test-requirements-py3.txt
* Add tox target to find missing requirements

2.1.0
-----

* daemon: avoid raising UnboundLocalError to callers
* Updated from global requirements
* Updated from global requirements
* Log that rootwrap was spawned after check

2.0.0
-----

* Remove oslo namespace package

1.8.0
-----

* Remove run\_cross\_tests.sh
* Updated from global requirements
* Remove mentions of root "tests" package from test\_funcional\_\*
* Generate a oslo-rootwrap console script

1.7.0
-----

* Uncap library requirements for liberty
* Speed up non-daemon rootwrap command line invocation
* Correct RST syntax errors in README.rst
* Update to latest hacking
* Avoid calling sudo just to change users
* Updated from global requirements

1.6.0
-----

* Remove env changing support in daemon mode
* Updated from global requirements
* Updated from global requirements
* Add bug link to README

1.5.0
-----

* Add cross-testing script
* Updated from global requirements
* Move files out of the namespace package
* Activate pep8 check that \_ is imported
* Workflow documentation is now in infra-manual

1.4.0
-----

* Updated from global requirements
* Updated from global requirements
* Correct filters examples in README.rst
* Updated from global requirements
* Fix exit of subprocess in case it was terminated by signal
* Updated from global requirements
* Support building wheels (PEP-427)
* Updated from global requirements

1.3.0
-----

* Clean up title on main doc page
* Initial cut of documentation for oslo.rootwrap
* Add a short doc to README on how to use daemon mode
* Fix the bug tracker URL in CONTRIBUTING.rst
* warn against sorting requirements
* Updated from global requirements

1.3.0.0a2
---------

* Add daemon mode to benchmark
* Add an option to run rootwrap as a daemon
* Refactor common parts from cmd to wrapper
* Add basic benchmark
* Remove sys.path modification
* Move test requirement coverage into tox.ini
* Enabled hacking check H305
* Continue on failure of leaf filters of chaining filters

1.3.0.0a1
---------

* Let tests pass on distros where "ip" is in /bin
* Bump hacking to 0.9.x series
* Avoid usage of mutables as default args
* Simplify the flow in RegExpFilter
* Add ChainingRegExpFilter for prefix utilities
* Fix Python 3 support, add functional test
* Fix import grouping
* Remove unused variable 'command'
* Run py33 test env before others

1.2.0
-----

* Avoid matching ip -s netns exec in IpFilter
* Don't use system pip things in tox
* Add Python 3 trove classifiers
* To honor RFC5424 add use\_syslog\_rfc\_format config option
* Trivial changes from oslo-incubator

1.1.0
-----

* Discontinue usage of oslo-rootwrap
* Add missing oslo/\_\_init\_\_.py
* Fix spelling errors in comments

1.0.0
-----

* Use oslo-rootwrap in config directory names
* Ship with etc/oslo.rootwrap instead of etc/oslo
* Add a complete README.rst
* Add .gitreview for oslo.rootwrap
* Add standalone project packaging support files
* Make Rootwrap python3-compatible
* Make tests not depend on openstack.common stuff
* Move files to new locations for oslo-config
* Skip hidden files while traversion rootwrap filters
* Fix os.getlogin() problem with no tty
* Send rootwrap exit error message to stderr
* rootwrap: improve Python 3 compatibility
* Replace using tests.utils part2
* Fixes files with wrong bitmode
* Remove DnsmasqFilter and DeprecatedDnsmasqFilter
* Handle empty arglists in Filters
* Handle empty PATH environment variable
* Add IpFilter, IPNetnsExecFilter and EnvFilter
* Handle relative path arguments in Killfilter
* Enable hacking H404 test
* Enable hacking H402 test
* Update KillFilter to stop at '\0' for readlink() function
* Stylistic improvements from quantum-rootwrap
* Use print\_function \_\_future\_\_ import
* Revert common logging use in rootwrap
* Improve Python 3.x compatibility
* Replaces standard logging with common logging
* Move bin/ scripts to entrypoints
* Add PathFilter to rootwrap
* update OpenStack, LLC to OpenStack Foundation
* Fix Copyright Headers - Rename LLC to Foundation
* Replaced direct usage of stubout with BaseTestCase
* Use testtools as test base class
* Remove unused etc/openstack-common.conf.test
* Fix pep8 E125 errors
* Move rootwrap code to openstack.common
