summaryrefslogtreecommitdiff
path: root/oslo_db/warning.py
diff options
context:
space:
mode:
authorStephen Finucane <stephenfin@redhat.com>2018-10-17 13:59:36 +0100
committerStephen Finucane <stephenfin@redhat.com>2018-10-17 14:04:42 +0100
commit1f0f5654a71b71aabfda862f477df0e9415080bb (patch)
treea7af28251d32db7728e785b78994f8c7a33c79be /oslo_db/warning.py
parentbaa0a045b51fd261fdcef6f7dfafe8e823f26e7a (diff)
downloadoslo-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.py41
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
+
+ """