fix the import cycle between log and versionutils
There is a circular dependency between versionutils and the logging code. To break it, we have a few options:
We could move the LogAdapter.
We could also change the implementation of the deprecated() decorator in versionutils to not call LOG.deprecated(). That might mean duplicating the logic from LOG.deprecated().
We could also move most of the body of LOG.deprecated() to versionutils but keep the method. This limits the number of changes we have to make in the callers, but means that oslo.log depends on oslo.versionutils. We can eliminate the circular dependency by having the function in versionutils use python's standard logger instead of oslo.log.
I like option 3. - dhellmann
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Medium
- Drafter:
- Doug Hellmann
- Direction:
- Needs approval
- Assignee:
- Doug Hellmann
- Definition:
- Approved
- Series goal:
- Accepted for kilo
- Implementation:
- Implemented
- Milestone target:
- 2015.1.0
- Started by
- Doug Hellmann
- Completed by
- Doug Hellmann
Related branches
Related bugs
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
Add fix-import-
Remove oslo.log and move deprecated() to versionutils: https:/
Resubmit the spec for review for kilo: https:/
26 Nov 2014 - This work is blocked until we have a version of oslo.context ready for release, and can release oslo.log to update the versiontutils module in the incubator to use it. - dhellmann
Work Items
Dependency tree
* Blueprints in grey have been implemented.