aboutsummaryrefslogtreecommitdiff
path: root/development/jupyter_server/fix_get_loader.patch
diff options
context:
space:
mode:
authorIsaac Yu <isaacyu1@isaacyu1.com>2023-02-17 14:28:08 -0800
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2023-02-18 10:06:41 +0700
commitd1326f419da9d0d610a4f306940d143148277bf5 (patch)
treee8d0016fdf4093ceae203c34f1c226ba99d426cf /development/jupyter_server/fix_get_loader.patch
parentccd17804d54ef2e128938ab425b531f2bd60380a (diff)
development/jupyter_server: Backport fixes from version 2.3.0.
Signed-off-by: Andrew Clemons <andrew.clemons@gmail.com> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'development/jupyter_server/fix_get_loader.patch')
-rw-r--r--development/jupyter_server/fix_get_loader.patch89
1 files changed, 89 insertions, 0 deletions
diff --git a/development/jupyter_server/fix_get_loader.patch b/development/jupyter_server/fix_get_loader.patch
new file mode 100644
index 0000000000..eb0fb99979
--- /dev/null
+++ b/development/jupyter_server/fix_get_loader.patch
@@ -0,0 +1,89 @@
+--- a/jupyter_server/extension/utils.py
++++ b/jupyter_server/extension/utils.py
+@@ -36,20 +36,24 @@
+ underscore prefix.
+ """
+ try:
+- func = getattr(obj, "_load_jupyter_server_extension") # noqa B009
++ return getattr(obj, "_load_jupyter_server_extension") # noqa B009
++ except AttributeError:
++ pass
++
++ try:
++ func = getattr(obj, "load_jupyter_server_extension") # noqa B009
+ except AttributeError:
+- func = getattr(obj, "load_jupyter_server_extension", None)
+- warnings.warn(
+- "A `_load_jupyter_server_extension` function was not "
+- "found in {name!s}. Instead, a `load_jupyter_server_extension` "
+- "function was found and will be used for now. This function "
+- "name will be deprecated in future releases "
+- "of Jupyter Server.".format(name=obj),
+- DeprecationWarning,
+- )
+- except Exception:
+ msg = "_load_jupyter_server_extension function was not found."
+ raise ExtensionLoadingError(msg) from None
++
++ warnings.warn(
++ "A `_load_jupyter_server_extension` function was not "
++ "found in {name!s}. Instead, a `load_jupyter_server_extension` "
++ "function was found and will be used for now. This function "
++ "name will be deprecated in future releases "
++ "of Jupyter Server.".format(name=obj),
++ DeprecationWarning,
++ )
+ return func
+
+
+--- a/tests/extension/mockextensions/mockext_deprecated.py
++++ b/tests/extension/mockextensions/mockext_deprecated.py
+@@ -0,0 +1,12 @@
++"""A mock extension named `mockext_py` for testing purposes.
++"""
++# Function that makes these extensions discoverable
++# by the test functions.
++
++
++def _jupyter_server_extension_paths():
++ return [{"module": "tests.extension.mockextensions.mockext_deprecated"}]
++
++
++def load_jupyter_server_extension(serverapp):
++ pass
+--- a/tests/extension/test_utils.py
++++ b/tests/extension/test_utils.py
+@@ -1,10 +1,14 @@
+ import logging
+-import warnings
+
+ import pytest
+
+-from jupyter_server.extension.utils import get_loader, get_metadata, validate_extension
+-from tests.extension.mockextensions import mockext_sys
++from jupyter_server.extension.utils import (
++ ExtensionLoadingError,
++ get_loader,
++ get_metadata,
++ validate_extension,
++)
++from tests.extension.mockextensions import mockext_deprecated, mockext_sys
+
+ # Use ServerApps environment because it monkeypatches
+ # jupyter_core.paths and provides a config directory
+@@ -24,10 +28,11 @@
+
+
+ def test_get_loader():
+- get_loader(mockext_sys)
+- with warnings.catch_warnings():
+- warnings.simplefilter("ignore")
+- assert get_loader(object()) is None
++ assert get_loader(mockext_sys) == mockext_sys._load_jupyter_server_extension
++ with pytest.deprecated_call():
++ assert get_loader(mockext_deprecated) == mockext_deprecated.load_jupyter_server_extension
++ with pytest.raises(ExtensionLoadingError):
++ get_loader(object())
+
+
+ def test_get_metadata():