bpo-33911: Fixed deprecation warning in xmlrpc.server (GH-7847)

Replace deprecated inspect.getfullargspec() with inspect.signature().
This commit is contained in:
Nicolas Noé 2018-07-16 10:46:04 +02:00 committed by Victor Stinner
parent bd47384e07
commit 35c0809158

View file

@ -107,13 +107,13 @@ def export_add(self, x, y):
from xmlrpc.client import Fault, dumps, loads, gzip_encode, gzip_decode
from http.server import BaseHTTPRequestHandler
from functools import partial
from inspect import signature
import http.server
import socketserver
import sys
import os
import re
import pydoc
import inspect
import traceback
try:
import fcntl
@ -771,24 +771,8 @@ def docroutine(self, object, name, mod=None,
title = '<a name="%s"><strong>%s</strong></a>' % (
self.escape(anchor), self.escape(name))
if inspect.ismethod(object):
args = inspect.getfullargspec(object)
# exclude the argument bound to the instance, it will be
# confusing to the non-Python user
argspec = inspect.formatargspec (
args.args[1:],
args.varargs,
args.varkw,
args.defaults,
annotations=args.annotations,
formatvalue=self.formatvalue
)
elif inspect.isfunction(object):
args = inspect.getfullargspec(object)
argspec = inspect.formatargspec(
args.args, args.varargs, args.varkw, args.defaults,
annotations=args.annotations,
formatvalue=self.formatvalue)
if callable(object):
argspec = str(signature(object))
else:
argspec = '(...)'