CHANGES¶
2.6.1¶
- Make debug option of wsgi server configurable 
- Fix BackOffLoopingCall error so it is not misleading 
- Fix fo() backdoor command for non-class objects 
- Update TOX_CONSTRAINTS_FILE for stable/xena 
- Update .gitreview for stable/xena 
2.6.0¶
- setup.cfg: Replace dashes with underscores 
- Remove references to ‘sys.version_info’ 
- Move flake8 as a pre-commit local target 
- Add Python3 xena unit tests 
- Update master for stable/wallaby 
- Remove lower-constraints remnants 
2.5.0¶
- remove unicode from code 
- Use TOX_CONSTRAINTS_FILE 
- Dropping lower constraints testing 
- Drop custom implementation of EVENTLET_HUB 
- Use TOX_CONSTRAINTS_FILE 
- Use py3 as the default runtime for tox 
- Use TOX_CONSTRAINTS_FILE 
- Add Python3 wallaby unit tests 
- Update master for stable/victoria 
- Adding pre-commit 
2.4.0¶
- [goal] Migrate testing to ubuntu focal 
- Bump bandit version 
2.3.2¶
- Do not import “oslo.log” in the main module 
2.3.1¶
2.3.0¶
- Fix wsgi SSL tests for wsgi module under python 3 
- Reactivate wsgi test related to socket option under python 3 
- Fix wsgi/SSL/ipv6 tests for wsgi module under python 3 
- Fix some SSL tests for wsgi module under python 3 
- Raise minimum version of eventlet to 0.25.2 
- Fix pygments style 
- Stop to use the __future__ module 
2.2.0¶
- Drop six usages 
- Fix hacking min version to 3.0.1 
- Switch to newer openstackdocstheme and reno versions 
- Remove the unused coding style modules 
- Remove translation sections from setup.cfg 
- Align tests with monkey patch original current_thread _active 
- Remove monotonic usage 
- Align contributing doc with oslo’s policy 
- Monkey patch original current_thread _active 
- Bump default tox env from py37 to py38 
- Add py38 package metadata 
- Use unittest.mock instead of third party mock 
- Add release notes links to doc index 
- Add Python3 victoria unit tests 
- Update master for stable/ussuri 
- Cleanup py27 support 
2.1.1¶
- Update hacking for Python3 
2.1.0¶
- Update eventlet 
- Update the minversion parameter 
- remove outdated header 
- reword releasenote for py27 support dropping 
2.0.0¶
- [ussuri][goal] Drop python 2.7 support and testing 
- tox: Trivial cleanup 
1.41.1¶
- Add ‘is_available’ function 
- tox: Keeping going with docs 
- Switch to official Ussuri jobs 
- Extend test cert validity to 2049 
- Update the constraints url 
1.41.0¶
- Update master for stable/train 
1.40.2¶
- Reno for SIGHUP fix 
1.40.1¶
- Polish usage.rst 
- restart: don’t stop process on sighup when mutating 
- Move doc related modules to doc/requirements.txt 
- Add Python 3 Train unit tests 
1.40.0¶
- Stop using pbr to build docs 
- Make PID availabe as formatstring in backdoor path 
1.39.0¶
- Cap Bandit below 1.6.0 and update Sphinx requirement 
- Add workers’ type check before launching the services 
- Replace git.openstack.org URLs with opendev.org URLs 
- OpenDev Migration Patch 
- Dropping the py35 testing 
- Update master for stable/stein 
1.38.0¶
- Update oslo.service to require yappi 1.0 or newer 
- add python 3.7 unit test job 
- Update hacking version 
1.37.0¶
- Bump oslo.utils lower constraint to 3.40.2 
1.36.0¶
- Profile Oslo Service processes 
- Use eventletutils Event class 
- Avoid eventlet_backdoor listing on same port 
1.35.0¶
- Use template for lower-constraints 
- Deprecate the ThreadGroup.cancel() API 
- Document the threadgroup module 
- Actually test child SIGHUP signal 
- Restore correct signal handling in Python3 
- Add stop_on_exception to TG timers 
- Add better timer APIs to ThreadGroup 
- Update mailinglist from dev to discuss 
- Use SleepFixture in looping call test suite 
1.33.0¶
- Fixture to mock loopingcall wait() 
- Limit monotonic to py2 
1.32.1¶
- Fix stop of loopingcall 
- Use eventlet Event for loopingcall events 
- Clean up .gitignore references to personal tools 
- Always build universal wheels 
1.32.0¶
- Ensure connection is active in graceful shutdown tests 
- Stop asserting on Eventlet internals 
- Skips signal handling on Windows 
- 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 
1.31.3¶
- Remove unnecessary pyNN testenv 
- Convert oslo.service to using stestr 
- Add release notes link to README 
- Fix oslo.service ProcessLauncher fails to call stop 
- fix tox python3 overrides 
- Add test dependency on requests 
- Remove moxstubout 
1.31.2¶
- [ThreadGroup] Don’t remove timer when stop timers 
- Make lower-constraints job voting 
- tox.ini: Use python3.5 in py35 environment 
- Python 3: Fix eventlet wakeup after signal 
- Python 3: Fix non-deterministic test 
- Remove stale pip-missing-reqs tox test 
- Trivial: Update pypi url to new url 
- add lower-constraints job 
- move doc8 test to pep8 job 
- set default python to python3 
1.31.1¶
- Revert “Revert “Permit aborting loopingcall while sleeping”” 
1.31.0¶
- Remove eventlet cap 
- Fixup certificates and skip failing test 
1.30.0¶
- Imported Translations from Zanata 
- Imported Translations from Zanata 
- Update links in README 
- Imported Translations from Zanata 
- Updated from global requirements 
- Update reno for stable/queens 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
1.29.0¶
- Maintain shared memory after fork in Python >=3.7 
- Updated from global requirements 
- Revert “Permit aborting loopingcall while sleeping” 
1.28.1¶
1.28.0¶
- Remove -U from pip install 
- Avoid tox_install.sh for constraints support 
- Updated from global requirements 
- Remove setting of version/release from releasenotes 
- Updated from global requirements 
1.27.0¶
- Updated from global requirements 
- change periodic_task to catch all exceptions including BaseException 
- Fix bandit scan and make it voting 
- Imported Translations from Zanata 
1.26.0¶
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Imported Translations from Zanata 
- Updated from global requirements 
- Updated from global requirements 
- Update reno for stable/pike 
- Updated from global requirements 
1.25.0¶
- Update URLs in documents according to document migration 
1.24.1¶
- rearrange existing documentation to fit the new standard layout 
- switch from oslosphinx to openstackdocstheme 
1.24.0¶
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Permit aborting loopingcall while sleeping 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
1.23.0¶
- Add min_interval to BackOffLoopingCall 
1.22.0¶
- Updated from global requirements 
- Updated from global requirements 
1.21.0¶
- Remove log translations 
- Use Sphinx 1.5 warning-is-error 
- Fix some reST field lists in docstrings 
- Updated from global requirements 
1.20.0¶
- Updated from global requirements 
- [Fix gate]Update test requirement 
- Updated from global requirements 
- Updated from global requirements 
- Fix race condition with fast threads 
- pbr.version.VersionInfo needs package name (oslo.xyz and not oslo_xyz) 
- Remove duplicated register_opts call 
- Update reno for stable/ocata 
- Remove references to Python 3.4 
1.19.0¶
- Add FixedIntervalWithTimeoutLoopingCall 
- Add Constraints support 
- Show team and repo badges on README 
1.18.0¶
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Imported Translations from Zanata 
- Update .coveragerc after the removal of respective directory 
- Delete python bytecode file 
1.17.0¶
- Changed the home-page link 
- Updated from global requirements 
- Replace ‘MagicMock’ with ‘Mock’ 
- Enable release notes translation 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
1.16.0¶
- Updated from global requirements 
- Stay alive on double SIGHUP 
1.15.0¶
- Updated from global requirements 
1.14.0¶
- Updated from global requirements 
- Fix parameters of assertEqual are misplaced 
1.13.0¶
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Add reno for release notes management 
- Updated from global requirements 
1.12.0¶
- Imported Translations from Zanata 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
1.11.0¶
- Trivial: ignore openstack/common in flake8 exclude list 
1.10.0¶
- [Trivial] Remove executable privilege of doc/source/conf.py 
1.9.0¶
- Updated from global requirements 
- Offer mutate_config_files 
- Make _spawn_service more flexible 
- Remove direct dependency on babel 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Fix argument type for _sd_notify() on python3 
- Use a timeutils.StopWatch for cancel timing 
- Add ability to cancel Threads and ThreadGroups 
- Exception: message need ‘_’ function 
- Fix Heartbeats stop when time is changed 
- Updated from global requirements 
1.7.0¶
- Updated from global requirements 
- Correct some help text 
- Fix typo in help text 
- wsgi: decrease the default number of greenthreads in pool 
- Updated from global requirements 
1.6.0¶
- Updated from global requirements 
- Allow the backdoor to serve from a local unix domain socket 
- Updated from global requirements 
1.5.0¶
- Use requests in TestWSGIServerWithSSL instead of raw socket client 
1.4.0¶
- Updated from global requirements 
- Updated from global requirements 
- Fix misspelling and rewrite sentence 
- Add a more useful/detailed frame dumping function 
- Updated from global requirements 
- Update translation setup 
- Fix race condition on handling signals 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Fix artificial service.wait() 
1.3.0¶
- Graceful shutdown added to ServiceLauncher 
- Fix test execution on CentOS 7 
- Updated from global requirements 
- Fix some inconsistency in docstrings 
- Refactoring of tests/eventlet_service.py 
- Updated from global requirements 
- Remove argument ServiceLauncher.wait() method 
- fix a couple of assert issues 
- Run sslutils and wsgi tests for python3 
- Updated from global requirements 
1.2.0¶
- Updated from global requirements 
- Fix a race condition in signal handlers 
- Enable py3 mock.patch of RuntimeError 
- Delete python bytecode before every test run 
- Trival: Remove ‘MANIFEST.in’ 
1.1.0¶
- Avoid warning when time taken is close to zero 
- Update the _i18n.py file and fix the domain value 
- Add Bandit to tox for security static analysis 
- Code refactoring of ThreadGroup::stop_timers() 
1.0.0¶
- Updated from global requirements 
- Updated from global requirements 
- Add functionality for creating Unix domain WSGI servers 
- Use reflection.get_class_name() from oslo.utils 
- Remove Python 2.6 classifier 
- Remove openstack-common.conf 
- cleanup tox.ini 
- Change “started child” messages to DEBUG 
- Support for SSL protocol and cipher controls 
0.13.0¶
- Default value of graceful_shutdown_timeout is set to 60sec 
- Updated from global requirements 
- Logger name argument was added into wsgi.Server constructor 
- Avoid the dual-naming confusion 
- Forbid launching services with 0 or negative number of workers 
0.12.0¶
- Document graceful_shutdown_timeout config option 
- Remove py26 env from test list 
- Added config option graceful_shutdown_timeout 
- Updated from global requirements 
- Add docstring for LoopingCallBase._start() 
- Updated from global requirements 
0.11.0¶
- Updated from global requirements 
- Add doc8 to py27 tox env and fix raised issues 
- Document termination of children on SIGHUP 
- Updated from global requirements 
- Updated from global requirements 
0.10.0¶
- RetryDecorator should not log warnings/errors for expected exceptions 
- Termination children on SIGHUP added 
- Fix coverage configuration and execution 
- Add register_opts function to sslutils 
- Move the common thread manipulating routine to a shared routine 
- Update log string to correctly denote what it waits on 
- Avoid removing entries for timers that didn’t stop 
- Cleanup thread on thread done callback 
- Move ‘history’ -> release notes section 
- Add unit tests for sslutils 
- Expand README and clean up intro to sphinx docs 
- Add shields.io version/downloads links/badges into README.rst 
- add auto-generated docs for config options 
- Move backoff looping call from IPA to oslo.service 
- Change ignore-errors to ignore_errors 
- Fix the home-page value in setup.cfg 
- WSGI module was corrected 
- Updated from global requirements 
- ThreadGroup’s stop didn’t recognise the current thread correctly 
- doing monkey_patch for unittest 
0.9.0¶
- Handling corner cases in dynamic looping call 
- Change DEBUG log in loopingcall to TRACE level log 
- Updated from global requirements 
0.8.0¶
- Added wsgi functionality 
0.7.0¶
- Updated from global requirements 
- Update “Signal handling” section of usage docs 
- Use oslo_utils reflection to get ‘f’ callable name 
- Updated from global requirements 
- Prefix the ‘safe_wrapper’ function to be ‘_safe_wrapper’ 
- Setup translations 
- Check that sighup is supported before accessing signal.SIGHUP 
- Use contextlib.closing instead of try … finally: sock.close 
- Avoid using the global lockutils semaphore collection 
- Updated from global requirements 
0.6.0¶
- Added newline at end of file 
- Added class SignalHandler 
- Updated from global requirements 
- Activate pep8 check that _ is imported 
- Denote what happens when no exceptions are passed in 
- Allow LoopingCall to continue on exception in callee 
0.5.0¶
- Updated from global requirements 
- Updated from global requirements 
- Updated from global requirements 
- Add oslo_debug_helper to tox.ini 
- Add usage documentation for oslo_service.service module 
0.4.0¶
- Updated from global requirements 
- save docstring, name etc using six.wraps 
- Move backdoor-related tests from test_service 
- Add mock to test_requirements 
- Remove usage of mox in test_eventlet_backdoor 
0.3.0¶
- Copy RetryDecorator from oslo.vmware 
- Increase test coverage of systemd 
- Ensure we set the event and wait on the timer in the test 
- Make it easier to use the eventlet backdoor locally 
- Track created thread and disallow more than one start being active 
0.2.0¶
- Documentation on the use of the oslo-config-generator 
- Add greenlet to requirements 
- Add tox target to find missing requirements 
- Enforce H405 check 
- Enforce H301 check 
- Return timer after adding it to internal list 
- Updated from global requirements 
- Have all the looping calls share a common run loop 
- Move service abstract base class check to launch_service methods 
- Fix a typo in a comment 
- Updated from global requirements 
- Use a signal name->sigval and sigval->signal name mapping 
0.1.0¶
- Test for instantaneous shutdown fixed 
- Graceful shutdown WSGI/RPC server 
- Use monotonic.monotonic and stopwatches instead of time.time 
- Updated from global requirements 
- Eventlet service fixed 
- Add documentation for the service module 
- Improve test coverage for loopingcall module 
- Add oslo.service documentation 
- Remove usage of global CONF 
- Make logging option values configurable 
- Introduce abstract base class for services 
- Add entrypoints for option discovery 
- Updated from global requirements 
- Move the option definitions into a private file 
- Fix unit tests 
- Fix pep8 
- exported from oslo-incubator by graduate.sh 
- Clean up logging to conform to guidelines 
- Port service to Python 3 
- Test for shutting down eventlet server on signal 
- service child process normal SIGTERM exit 
- Revert “Revert “Revert “Optimization of waiting subprocesses in ProcessLauncher””” 
- Revert “Revert “Optimization of waiting subprocesses in ProcessLauncher”” 
- Revert “Optimization of waiting subprocesses in ProcessLauncher” 
- ProcessLauncher: reload config file in parent process on SIGHUP 
- Add check to test__signal_handlers_set 
- Store ProcessLauncher signal handlers on class level 
- Remove unused validate_ssl_version 
- Update tests for optional sslv3 
- Fixed ssl.PROTOCOL_SSLv3 not supported by Python 2.7.9 
- Optimization of waiting subprocesses in ProcessLauncher 
- Switch from oslo.config to oslo_config 
- Change oslo.config to oslo_config 
- Remove oslo.log code and clean up versionutils API 
- Replace mox by mox3 
- Allow overriding name for periodic tasks 
- Separate add_periodic_task from the metaclass __init__ 
- Upgrade to hacking 0.10 
- Remove unnecessary import of eventlet 
- Added graceful argument on Service.stop method 
- Remove extra white space in log message 
- Prefer delayed %r formatting over explicit repr use 
- ServiceRestartTest: make it more resilient 
- threadgroup: don’t log GreenletExit 
- add list_opts to all modules with configuration options 
- Remove code that moved to oslo.i18n 
- Remove graduated test and fixtures libraries 
- rpc, notifier: remove deprecated modules 
- Let oslotest manage the six.move setting for mox 
- Remove usage of readlines() 
- Allow test_service to run in isolation 
- Changes calcuation of variable delay 
- Use timestamp in loopingcall 
- Remove unnecessary setUp function 
- Log the function name of looping call 
- pep8: fixed multiple violations 
- Make periodic tasks run on regular spacing interval 
- Use moxstubout and mockpatch from oslotest 
- Implement stop method in ProcessLauncher 
- Fix parenthesis typo misunderstanding in periodic_task 
- Fix docstring indentation in systemd 
- Remove redundant default=None for config options 
- Make unspecified periodic spaced tasks run on default interval 
- Make stop_timers() method public 
- Remove deprecated LoopingCall 
- Fixed several typos 
- Add graceful stop function to ThreadGroup.stop 
- Use oslotest instead of common test module 
- Remove duplicated “caught” message 
- Move notification point to a better place 
- Remove rendundant parentheses of cfg help strings 
- Adds test condition in test_periodic 
- Fixed spelling error - occured to occurred 
- Add missing _LI for LOG.info in service module 
- notify calling process we are ready to serve 
- Reap child processes gracefully if greenlet thread gets killed 
- Improve help strings for sslutils module 
- Remove unnecessary usage of noqa 
- Removes use of timeutils.set_time_override 
- Update oslo log messages with translation domains 
- Refactor unnecessary arithmetic ops in periodic_task 
- Refactor if logic in periodic_task 
- Use timestamp in periodic tasks 
- Add basic Python 3 tests 
- Clear time override in test_periodic 
- Don’t share periodic_task instance data in a class attr 
- Revert “service: replace eventlet event by threading” 
- Simplify launch method 
- Simple typo correction 
- Cleanup unused log related code 
- Utilizes assertIsNone and assertIsNotNone 
- Fix filter() usage due to python 3 compability 
- Use hacking import_exceptions for gettextutils._ 
- threadgroup: use threading rather than greenthread 
- disable SIGHUP restart behavior in foreground 
- service: replace eventlet event by threading 
- Allow configurable ProcessLauncher liveness check 
- Make wait & stop methods work on all threads 
- Typos fix in db and periodic_task module 
- Remove vim header 
- os._exit in _start_child may cause unexpected exception 
- Adjust import order according to PEP8 imports rule 
- Add a link method to Thread 
- Use multiprocessing.Event to ensure services have started 
- Apply six for metaclass 
- Removed calls to locals() 
- Move comment in service.py to correct location 
- Fixes issue with SUGHUP in services on Windows 
- Replace using tests.utils part2 
- Bump hacking to 0.7.0 
- Replace using tests.utils with openstack.common.test 
- Refactors boolean returns 
- Add service restart function in oslo-incubator 
- Fix stylistic problems with help text 
- Enable H302 hacking check 
- Convert kombu SSL version string into integer 
- Allow launchers to be stopped multiple times 
- Ignore any exceptions from rpc.cleanup() 
- Add graceful service shutdown support to Launcher 
- Improve usability when backdoor_port is nonzero 
- Enable hacking H404 test 
- Enable hacking H402 test 
- Enable hacking H401 test 
- Fixes import order nits 
- Add DynamicLoopCall timers to ThreadGroups 
- Pass backdoor_port to services being launched 
- Improve python3 compatibility 
- Use print_function __future__ import 
- Improve Python 3.x compatibility 
- Import nova’s looping call 
- Copy recent changes in periodic tasks from nova 
- Fix IBM copyright strings 
- Removes unused imports in the tests module 
- update OpenStack, LLC to OpenStack Foundation 
- Add function for listing native threads to eventlet backdoor 
- Use oslo-config-2013.1b3 
- Support for SSL in wsgi.Service 
- Replace direct use of testtools BaseTestCase 
- Use testtools as test base class 
- ThreadGroup remove unused name parameters 
- Implement importutils.try_import 
- Fix test cases in tests.unit.test_service 
- Don’t rely on os.wait() blocking 
- Use Service thread group for WSGI request handling 
- Make project pyflakes clean 
- Replace try: import with extras.try_import 
- raise_on_error parameter shouldn’t be passed to task function 
- Account for tasks duration in LoopingCall delay 
- updating sphinx documentation 
- Enable eventlet_backdoor to return port 
- Use the ThreadGroup for the Launcher 
- Change RPC cleanup ordering 
- threadgroup : greethread.cancel() should be kill() 
- Use spawn_n when not capturing return value 
- Make ThreadGroup derived from object to make mocking possible 
- Don’t log exceptions for GreenletExit and thread_done 
- Log CONF from ProcessLauncher.wait, like ServiceLauncher 
- Import order clean-up 
- Added a missing `cfg` import in service.py 
- Log config on startup 
- Integrate eventlet backdoor 
- Add the rpc service and delete manager 
- Use pep8 v1.3.3 
- Add threadgroup to manage timers and greenthreads 
- Add basic periodic task infrastructure 
- Add multiprocess service launcher 
- Add signal handling to service launcher 
- Basic service launching infrastructure 
- Move manager.py and service.py into common 
- Copy eventlet_backdoor into common from nova 
- Copy LoopingCall from nova for service.py 
- initial commit 
- Initial skeleton project 
