Show More
@@ -256,16 +256,6 b' class BaseIPythonApplication(Application):' | |||||
256 | # Various stages of Application creation |
|
256 | # Various stages of Application creation | |
257 | #------------------------------------------------------------------------- |
|
257 | #------------------------------------------------------------------------- | |
258 |
|
258 | |||
259 | deprecated_subcommands = {} |
|
|||
260 |
|
||||
261 | def initialize_subcommand(self, subc, argv=None): |
|
|||
262 | if subc in self.deprecated_subcommands: |
|
|||
263 | self.log.warning("Subcommand `ipython {sub}` is deprecated and will be removed " |
|
|||
264 | "in future versions.".format(sub=subc)) |
|
|||
265 | self.log.warning("You likely want to use `jupyter {sub}` in the " |
|
|||
266 | "future".format(sub=subc)) |
|
|||
267 | return super(BaseIPythonApplication, self).initialize_subcommand(subc, argv) |
|
|||
268 |
|
||||
269 | def init_crash_handler(self): |
|
259 | def init_crash_handler(self): | |
270 | """Create a crash handler, typically setting sys.excepthook to it.""" |
|
260 | """Create a crash handler, typically setting sys.excepthook to it.""" | |
271 | self.crash_handler = self.crash_handler_class(self) |
|
261 | self.crash_handler = self.crash_handler_class(self) |
@@ -144,22 +144,15 b' def BdbQuit_excepthook(et, ev, tb, excepthook=None):' | |||||
144 | All other exceptions are processed using the `excepthook` |
|
144 | All other exceptions are processed using the `excepthook` | |
145 | parameter. |
|
145 | parameter. | |
146 | """ |
|
146 | """ | |
147 | warnings.warn("`BdbQuit_excepthook` is deprecated since version 5.1", |
|
147 | raise ValueError( | |
148 | DeprecationWarning, stacklevel=2) |
|
148 | "`BdbQuit_excepthook` is deprecated since version 5.1", | |
149 | if et == bdb.BdbQuit: |
|
149 | ) | |
150 | print('Exiting Debugger.') |
|
|||
151 | elif excepthook is not None: |
|
|||
152 | excepthook(et, ev, tb) |
|
|||
153 | else: |
|
|||
154 | # Backwards compatibility. Raise deprecation warning? |
|
|||
155 | BdbQuit_excepthook.excepthook_ori(et, ev, tb) |
|
|||
156 |
|
150 | |||
157 |
|
151 | |||
158 | def BdbQuit_IPython_excepthook(self, et, ev, tb, tb_offset=None): |
|
152 | def BdbQuit_IPython_excepthook(self, et, ev, tb, tb_offset=None): | |
159 | warnings.warn( |
|
153 | raise ValueError( | |
160 | "`BdbQuit_IPython_excepthook` is deprecated since version 5.1", |
|
154 | "`BdbQuit_IPython_excepthook` is deprecated since version 5.1", | |
161 | DeprecationWarning, stacklevel=2) |
|
155 | DeprecationWarning, stacklevel=2) | |
162 | print('Exiting Debugger.') |
|
|||
163 |
|
156 | |||
164 |
|
157 | |||
165 | RGX_EXTRA_INDENT = re.compile(r'(?<=\n)\s+') |
|
158 | RGX_EXTRA_INDENT = re.compile(r'(?<=\n)\s+') |
@@ -835,11 +835,9 b' class JSONFormatter(BaseFormatter):' | |||||
835 | # unpack data, metadata tuple for type checking on first element |
|
835 | # unpack data, metadata tuple for type checking on first element | |
836 | r, md = r |
|
836 | r, md = r | |
837 |
|
837 | |||
838 | # handle deprecated JSON-as-string form from IPython < 3 |
|
838 | assert not isinstance( | |
839 |
|
|
839 | r, str | |
840 | warnings.warn("JSON expects JSONable list/dict containers, not JSON strings", |
|
840 | ), "JSON-as-string has been deprecated since IPython < 3" | |
841 | FormatterWarning) |
|
|||
842 | r = json.loads(r) |
|
|||
843 |
|
841 | |||
844 | if md is not None: |
|
842 | if md is not None: | |
845 | # put the tuple back together |
|
843 | # put the tuple back together |
@@ -906,7 +906,11 b' class InteractiveShell(SingletonConfigurable):' | |||||
906 |
|
906 | |||
907 | if _warn_deprecated and (name in IPython.core.hooks.deprecated): |
|
907 | if _warn_deprecated and (name in IPython.core.hooks.deprecated): | |
908 | alternative = IPython.core.hooks.deprecated[name] |
|
908 | alternative = IPython.core.hooks.deprecated[name] | |
909 | warn("Hook {} is deprecated. Use {} instead.".format(name, alternative), stacklevel=2) |
|
909 | raise ValueError( | |
|
910 | "Hook {} has been deprecated since IPython 5.0. Use {} instead.".format( | |||
|
911 | name, alternative | |||
|
912 | ) | |||
|
913 | ) | |||
910 |
|
914 | |||
911 | if not dp: |
|
915 | if not dp: | |
912 | dp = IPython.core.hooks.CommandChainDispatcher() |
|
916 | dp = IPython.core.hooks.CommandChainDispatcher() | |
@@ -933,9 +937,10 b' class InteractiveShell(SingletonConfigurable):' | |||||
933 |
|
937 | |||
934 | Register a function for calling after code execution. |
|
938 | Register a function for calling after code execution. | |
935 | """ |
|
939 | """ | |
936 | warn("ip.register_post_execute is deprecated, use " |
|
940 | raise ValueError( | |
937 | "ip.events.register('post_run_cell', func) instead.", stacklevel=2) |
|
941 | "ip.register_post_execute is deprecated since IPython 1.0, use " | |
938 |
|
|
942 | "ip.events.register('post_run_cell', func) instead." | |
|
943 | ) | |||
939 |
|
944 | |||
940 | def _clear_warning_registry(self): |
|
945 | def _clear_warning_registry(self): | |
941 | # clear the warning registry, so that different code blocks with |
|
946 | # clear the warning registry, so that different code blocks with |
@@ -98,11 +98,6 b' shell_aliases = dict(' | |||||
98 | ) |
|
98 | ) | |
99 | shell_aliases['cache-size'] = 'InteractiveShell.cache_size' |
|
99 | shell_aliases['cache-size'] = 'InteractiveShell.cache_size' | |
100 |
|
100 | |||
101 | if traitlets.version_info < (5, 0): |
|
|||
102 | # traitlets 4 doesn't handle lists on CLI |
|
|||
103 | shell_aliases["ext"] = "InteractiveShellApp.extra_extension" |
|
|||
104 |
|
||||
105 |
|
||||
106 | #----------------------------------------------------------------------------- |
|
101 | #----------------------------------------------------------------------------- | |
107 | # Main classes and functions |
|
102 | # Main classes and functions | |
108 | #----------------------------------------------------------------------------- |
|
103 | #----------------------------------------------------------------------------- | |
@@ -126,17 +121,6 b' class InteractiveShellApp(Configurable):' | |||||
126 | help="A list of dotted module names of IPython extensions to load." |
|
121 | help="A list of dotted module names of IPython extensions to load." | |
127 | ).tag(config=True) |
|
122 | ).tag(config=True) | |
128 |
|
123 | |||
129 | extra_extension = Unicode( |
|
|||
130 | "", |
|
|||
131 | help=""" |
|
|||
132 | DEPRECATED. Dotted module name of a single extra IPython extension to load. |
|
|||
133 |
|
||||
134 | Only one extension can be added this way. |
|
|||
135 |
|
||||
136 | Only used with traitlets < 5.0, plural extra_extensions list is used in traitlets 5. |
|
|||
137 | """, |
|
|||
138 | ).tag(config=True) |
|
|||
139 |
|
||||
140 | extra_extensions = List( |
|
124 | extra_extensions = List( | |
141 | DottedObjectName(), |
|
125 | DottedObjectName(), | |
142 | help=""" |
|
126 | help=""" | |
@@ -293,8 +277,6 b' class InteractiveShellApp(Configurable):' | |||||
293 | extensions = ( |
|
277 | extensions = ( | |
294 | self.default_extensions + self.extensions + self.extra_extensions |
|
278 | self.default_extensions + self.extensions + self.extra_extensions | |
295 | ) |
|
279 | ) | |
296 | if self.extra_extension: |
|
|||
297 | extensions.append(self.extra_extension) |
|
|||
298 | for ext in extensions: |
|
280 | for ext in extensions: | |
299 | try: |
|
281 | try: | |
300 | self.log.info("Loading IPython extension: %s" % ext) |
|
282 | self.log.info("Loading IPython extension: %s" % ext) |
@@ -430,18 +430,6 b' def test_ipython_display_formatter():' | |||||
430 | f.ipython_display_formatter.enabled = save_enabled |
|
430 | f.ipython_display_formatter.enabled = save_enabled | |
431 |
|
431 | |||
432 |
|
432 | |||
433 | def test_json_as_string_deprecated(): |
|
|||
434 | class JSONString(object): |
|
|||
435 | def _repr_json_(self): |
|
|||
436 | return '{}' |
|
|||
437 |
|
||||
438 | f = JSONFormatter() |
|
|||
439 | with warnings.catch_warnings(record=True) as w: |
|
|||
440 | d = f(JSONString()) |
|
|||
441 | assert d == {} |
|
|||
442 | assert len(w) == 1 |
|
|||
443 |
|
||||
444 |
|
||||
445 | def test_repr_mime(): |
|
433 | def test_repr_mime(): | |
446 | class HasReprMime(object): |
|
434 | class HasReprMime(object): | |
447 | def _repr_mimebundle_(self, include=None, exclude=None): |
|
435 | def _repr_mimebundle_(self, include=None, exclude=None): |
@@ -262,22 +262,6 b' class TerminalIPythonApp(BaseIPythonApplication, InteractiveShellApp):' | |||||
262 | # internal, not-configurable |
|
262 | # internal, not-configurable | |
263 | something_to_run=Bool(False) |
|
263 | something_to_run=Bool(False) | |
264 |
|
264 | |||
265 | def parse_command_line(self, argv=None): |
|
|||
266 | """override to allow old '-pylab' flag with deprecation warning""" |
|
|||
267 |
|
||||
268 | argv = sys.argv[1:] if argv is None else argv |
|
|||
269 |
|
||||
270 | if '-pylab' in argv: |
|
|||
271 | # deprecated `-pylab` given, |
|
|||
272 | # warn and transform into current syntax |
|
|||
273 | argv = argv[:] # copy, don't clobber |
|
|||
274 | idx = argv.index('-pylab') |
|
|||
275 | warnings.warn("`-pylab` flag has been deprecated.\n" |
|
|||
276 | " Use `--matplotlib <backend>` and import pylab manually.") |
|
|||
277 | argv[idx] = '--pylab' |
|
|||
278 |
|
||||
279 | return super(TerminalIPythonApp, self).parse_command_line(argv) |
|
|||
280 |
|
||||
281 | @catch_config_error |
|
265 | @catch_config_error | |
282 | def initialize(self, argv=None): |
|
266 | def initialize(self, argv=None): | |
283 | """Do actions after construct, but before starting the app.""" |
|
267 | """Do actions after construct, but before starting the app.""" |
@@ -67,20 +67,6 b' def get_long_path_name(path):' | |||||
67 | return _get_long_path_name(path) |
|
67 | return _get_long_path_name(path) | |
68 |
|
68 | |||
69 |
|
69 | |||
70 | def unquote_filename(name, win32=(sys.platform=='win32')): |
|
|||
71 | """ On Windows, remove leading and trailing quotes from filenames. |
|
|||
72 |
|
||||
73 | This function has been deprecated and should not be used any more: |
|
|||
74 | unquoting is now taken care of by :func:`IPython.utils.process.arg_split`. |
|
|||
75 | """ |
|
|||
76 | warn("'unquote_filename' is deprecated since IPython 5.0 and should not " |
|
|||
77 | "be used anymore", DeprecationWarning, stacklevel=2) |
|
|||
78 | if win32: |
|
|||
79 | if name.startswith(("'", '"')) and name.endswith(("'", '"')): |
|
|||
80 | name = name[1:-1] |
|
|||
81 | return name |
|
|||
82 |
|
||||
83 |
|
||||
84 | def compress_user(path): |
|
70 | def compress_user(path): | |
85 | """Reverse of :func:`os.path.expanduser` |
|
71 | """Reverse of :func:`os.path.expanduser` | |
86 | """ |
|
72 | """ | |
@@ -89,7 +75,7 b' def compress_user(path):' | |||||
89 | path = "~" + path[len(home):] |
|
75 | path = "~" + path[len(home):] | |
90 | return path |
|
76 | return path | |
91 |
|
77 | |||
92 |
def get_py_filename(name |
|
78 | def get_py_filename(name): | |
93 | """Return a valid python filename in the current directory. |
|
79 | """Return a valid python filename in the current directory. | |
94 |
|
80 | |||
95 | If the given name is not a file, it adds '.py' and searches again. |
|
81 | If the given name is not a file, it adds '.py' and searches again. | |
@@ -97,10 +83,6 b' def get_py_filename(name, force_win32=None):' | |||||
97 | """ |
|
83 | """ | |
98 |
|
84 | |||
99 | name = os.path.expanduser(name) |
|
85 | name = os.path.expanduser(name) | |
100 | if force_win32 is not None: |
|
|||
101 | warn("The 'force_win32' argument to 'get_py_filename' is deprecated " |
|
|||
102 | "since IPython 5.0 and should not be used anymore", |
|
|||
103 | DeprecationWarning, stacklevel=2) |
|
|||
104 | if not os.path.isfile(name) and not name.endswith('.py'): |
|
86 | if not os.path.isfile(name) and not name.endswith('.py'): | |
105 | name += '.py' |
|
87 | name += '.py' | |
106 | if os.path.isfile(name): |
|
88 | if os.path.isfile(name): | |
@@ -253,36 +235,6 b' def get_xdg_cache_dir():' | |||||
253 | return None |
|
235 | return None | |
254 |
|
236 | |||
255 |
|
237 | |||
256 | @undoc |
|
|||
257 | def get_ipython_dir(): |
|
|||
258 | warn("get_ipython_dir has moved to the IPython.paths module since IPython 4.0.", DeprecationWarning, stacklevel=2) |
|
|||
259 | from IPython.paths import get_ipython_dir |
|
|||
260 | return get_ipython_dir() |
|
|||
261 |
|
||||
262 | @undoc |
|
|||
263 | def get_ipython_cache_dir(): |
|
|||
264 | warn("get_ipython_cache_dir has moved to the IPython.paths module since IPython 4.0.", DeprecationWarning, stacklevel=2) |
|
|||
265 | from IPython.paths import get_ipython_cache_dir |
|
|||
266 | return get_ipython_cache_dir() |
|
|||
267 |
|
||||
268 | @undoc |
|
|||
269 | def get_ipython_package_dir(): |
|
|||
270 | warn("get_ipython_package_dir has moved to the IPython.paths module since IPython 4.0.", DeprecationWarning, stacklevel=2) |
|
|||
271 | from IPython.paths import get_ipython_package_dir |
|
|||
272 | return get_ipython_package_dir() |
|
|||
273 |
|
||||
274 | @undoc |
|
|||
275 | def get_ipython_module_path(module_str): |
|
|||
276 | warn("get_ipython_module_path has moved to the IPython.paths module since IPython 4.0.", DeprecationWarning, stacklevel=2) |
|
|||
277 | from IPython.paths import get_ipython_module_path |
|
|||
278 | return get_ipython_module_path(module_str) |
|
|||
279 |
|
||||
280 | @undoc |
|
|||
281 | def locate_profile(profile='default'): |
|
|||
282 | warn("locate_profile has moved to the IPython.paths module since IPython 4.0.", DeprecationWarning, stacklevel=2) |
|
|||
283 | from IPython.paths import locate_profile |
|
|||
284 | return locate_profile(profile=profile) |
|
|||
285 |
|
||||
286 | def expand_path(s): |
|
238 | def expand_path(s): | |
287 | """Expand $VARS and ~names in a string, like a shell |
|
239 | """Expand $VARS and ~names in a string, like a shell | |
288 |
|
240 |
@@ -62,6 +62,7 b' if resource is not None and hasattr(resource, "getrusage"):' | |||||
62 | Similar to clock(), but return a tuple of user/system times.""" |
|
62 | Similar to clock(), but return a tuple of user/system times.""" | |
63 | return resource.getrusage(resource.RUSAGE_SELF)[:2] |
|
63 | return resource.getrusage(resource.RUSAGE_SELF)[:2] | |
64 |
|
64 | |||
|
65 | ||||
65 | else: |
|
66 | else: | |
66 | # There is no distinction of user/system time under windows, so we just use |
|
67 | # There is no distinction of user/system time under windows, so we just use | |
67 | # time.perff_counter() for everything... |
|
68 | # time.perff_counter() for everything... |
@@ -171,7 +171,6 b' extras_require = dict(' | |||||
171 | nbconvert=["nbconvert"], |
|
171 | nbconvert=["nbconvert"], | |
172 | ) |
|
172 | ) | |
173 |
|
173 | |||
174 |
|
||||
175 | everything = set(chain.from_iterable(extras_require.values())) |
|
174 | everything = set(chain.from_iterable(extras_require.values())) | |
176 | extras_require['all'] = list(sorted(everything)) |
|
175 | extras_require['all'] = list(sorted(everything)) | |
177 |
|
176 |
General Comments 0
You need to be logged in to leave comments.
Login now