diff options
author | Stephen Finucane <stephenfin@redhat.com> | 2018-10-17 13:59:36 +0100 |
---|---|---|
committer | Stephen Finucane <stephenfin@redhat.com> | 2018-10-17 14:04:42 +0100 |
commit | 1f0f5654a71b71aabfda862f477df0e9415080bb (patch) | |
tree | a7af28251d32db7728e785b78994f8c7a33c79be /oslo_db/warning.py | |
parent | baa0a045b51fd261fdcef6f7dfafe8e823f26e7a (diff) | |
download | oslo-db-1f0f5654a71b71aabfda862f477df0e9415080bb.tar.gz |
Move warnings to their own module
Raising warnings from an exception module can result in a rather
confusing message:
Running command: '/usr/bin/nova-scheduler '
/.../sqlalchemy/enginefacade.py:332: NotSupportedWarning: Configuration option(s) ['use_tpool'] not supported
exception.NotSupportedWarning
For someone not used to Python's 'warning' infrastructure, this can look
worse than it is, as seen at [1].
While this particular warning was resolved in change I4a5f8958c3e, it's
possible that a similar warning could be raised for other options. Best
to move this out of the 'exception' module and into something more
sensible.
[1] https://bugzilla.redhat.com/show_bug.cgi?id=1639423
Change-Id: I8e0480fb11123067a111ed6aeda6b47614615645
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Diffstat (limited to 'oslo_db/warning.py')
-rw-r--r-- | oslo_db/warning.py | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/oslo_db/warning.py b/oslo_db/warning.py new file mode 100644 index 0000000..3e7ebb6 --- /dev/null +++ b/oslo_db/warning.py @@ -0,0 +1,41 @@ +# Copyright 2018 Red Hat, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +"""Custom warnings.""" + + +class NotSupportedWarning(Warning): + """Warn that an argument or call that was passed is not supported. + + This subclasses Warning so that it can be filtered as a distinct + category. + + .. seealso:: + + https://docs.python.org/2/library/warnings.html + + """ + + +class OsloDBDeprecationWarning(DeprecationWarning): + """Issued per usage of a deprecated API. + + This subclasses DeprecationWarning so that it can be filtered as a distinct + category. + + .. seealso:: + + https://docs.python.org/2/library/warnings.html + + """ |