The following issues were found

Lib/encodings/utf_7.py
10 issues
Redefining built-in 'input'
Error

Line: 11 Column: 12

              
encode = codecs.utf_7_encode

def decode(input, errors='strict'):
    return codecs.utf_7_decode(input, errors, True)

class IncrementalEncoder(codecs.IncrementalEncoder):
    def encode(self, input, final=False):
        return codecs.utf_7_encode(input, self.errors)[0]

            

Reported by Pylint.

Redefining built-in 'input'
Error

Line: 15 Column: 22

                  return codecs.utf_7_decode(input, errors, True)

class IncrementalEncoder(codecs.IncrementalEncoder):
    def encode(self, input, final=False):
        return codecs.utf_7_encode(input, self.errors)[0]

class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_7_decode


            

Reported by Pylint.

Method 'decode' is abstract in class 'Codec' but is not overridden
Error

Line: 21 Column: 1

              class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_7_decode

class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_7_encode

class StreamReader(codecs.StreamReader):
    decode = codecs.utf_7_decode


            

Reported by Pylint.

Method 'encode' is abstract in class 'Codec' but is not overridden
Error

Line: 24 Column: 1

              class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_7_encode

class StreamReader(codecs.StreamReader):
    decode = codecs.utf_7_decode

### encodings module API

def getregentry():

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 11 Column: 1

              
encode = codecs.utf_7_encode

def decode(input, errors='strict'):
    return codecs.utf_7_decode(input, errors, True)

class IncrementalEncoder(codecs.IncrementalEncoder):
    def encode(self, input, final=False):
        return codecs.utf_7_encode(input, self.errors)[0]

            

Reported by Pylint.

Missing class docstring
Error

Line: 14 Column: 1

              def decode(input, errors='strict'):
    return codecs.utf_7_decode(input, errors, True)

class IncrementalEncoder(codecs.IncrementalEncoder):
    def encode(self, input, final=False):
        return codecs.utf_7_encode(input, self.errors)[0]

class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_7_decode

            

Reported by Pylint.

Missing class docstring
Error

Line: 18 Column: 1

                  def encode(self, input, final=False):
        return codecs.utf_7_encode(input, self.errors)[0]

class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_7_decode

class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_7_encode


            

Reported by Pylint.

Missing class docstring
Error

Line: 21 Column: 1

              class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_7_decode

class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_7_encode

class StreamReader(codecs.StreamReader):
    decode = codecs.utf_7_decode


            

Reported by Pylint.

Missing class docstring
Error

Line: 24 Column: 1

              class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_7_encode

class StreamReader(codecs.StreamReader):
    decode = codecs.utf_7_decode

### encodings module API

def getregentry():

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 29 Column: 1

              
### encodings module API

def getregentry():
    return codecs.CodecInfo(
        name='utf-7',
        encode=encode,
        decode=decode,
        incrementalencoder=IncrementalEncoder,

            

Reported by Pylint.

Lib/encodings/utf_32_le.py
10 issues
Redefining built-in 'input'
Error

Line: 10 Column: 12

              
encode = codecs.utf_32_le_encode

def decode(input, errors='strict'):
    return codecs.utf_32_le_decode(input, errors, True)

class IncrementalEncoder(codecs.IncrementalEncoder):
    def encode(self, input, final=False):
        return codecs.utf_32_le_encode(input, self.errors)[0]

            

Reported by Pylint.

Redefining built-in 'input'
Error

Line: 14 Column: 22

                  return codecs.utf_32_le_decode(input, errors, True)

class IncrementalEncoder(codecs.IncrementalEncoder):
    def encode(self, input, final=False):
        return codecs.utf_32_le_encode(input, self.errors)[0]

class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_32_le_decode


            

Reported by Pylint.

Method 'decode' is abstract in class 'Codec' but is not overridden
Error

Line: 20 Column: 1

              class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_32_le_decode

class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_32_le_encode

class StreamReader(codecs.StreamReader):
    decode = codecs.utf_32_le_decode


            

Reported by Pylint.

Method 'encode' is abstract in class 'Codec' but is not overridden
Error

Line: 23 Column: 1

              class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_32_le_encode

class StreamReader(codecs.StreamReader):
    decode = codecs.utf_32_le_decode

### encodings module API

def getregentry():

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 10 Column: 1

              
encode = codecs.utf_32_le_encode

def decode(input, errors='strict'):
    return codecs.utf_32_le_decode(input, errors, True)

class IncrementalEncoder(codecs.IncrementalEncoder):
    def encode(self, input, final=False):
        return codecs.utf_32_le_encode(input, self.errors)[0]

            

Reported by Pylint.

Missing class docstring
Error

Line: 13 Column: 1

              def decode(input, errors='strict'):
    return codecs.utf_32_le_decode(input, errors, True)

class IncrementalEncoder(codecs.IncrementalEncoder):
    def encode(self, input, final=False):
        return codecs.utf_32_le_encode(input, self.errors)[0]

class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_32_le_decode

            

Reported by Pylint.

Missing class docstring
Error

Line: 17 Column: 1

                  def encode(self, input, final=False):
        return codecs.utf_32_le_encode(input, self.errors)[0]

class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_32_le_decode

class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_32_le_encode


            

Reported by Pylint.

Missing class docstring
Error

Line: 20 Column: 1

              class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_32_le_decode

class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_32_le_encode

class StreamReader(codecs.StreamReader):
    decode = codecs.utf_32_le_decode


            

Reported by Pylint.

Missing class docstring
Error

Line: 23 Column: 1

              class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_32_le_encode

class StreamReader(codecs.StreamReader):
    decode = codecs.utf_32_le_decode

### encodings module API

def getregentry():

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 28 Column: 1

              
### encodings module API

def getregentry():
    return codecs.CodecInfo(
        name='utf-32-le',
        encode=encode,
        decode=decode,
        incrementalencoder=IncrementalEncoder,

            

Reported by Pylint.

Lib/encodings/utf_32_be.py
10 issues
Redefining built-in 'input'
Error

Line: 10 Column: 12

              
encode = codecs.utf_32_be_encode

def decode(input, errors='strict'):
    return codecs.utf_32_be_decode(input, errors, True)

class IncrementalEncoder(codecs.IncrementalEncoder):
    def encode(self, input, final=False):
        return codecs.utf_32_be_encode(input, self.errors)[0]

            

Reported by Pylint.

Redefining built-in 'input'
Error

Line: 14 Column: 22

                  return codecs.utf_32_be_decode(input, errors, True)

class IncrementalEncoder(codecs.IncrementalEncoder):
    def encode(self, input, final=False):
        return codecs.utf_32_be_encode(input, self.errors)[0]

class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_32_be_decode


            

Reported by Pylint.

Method 'decode' is abstract in class 'Codec' but is not overridden
Error

Line: 20 Column: 1

              class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_32_be_decode

class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_32_be_encode

class StreamReader(codecs.StreamReader):
    decode = codecs.utf_32_be_decode


            

Reported by Pylint.

Method 'encode' is abstract in class 'Codec' but is not overridden
Error

Line: 23 Column: 1

              class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_32_be_encode

class StreamReader(codecs.StreamReader):
    decode = codecs.utf_32_be_decode

### encodings module API

def getregentry():

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 10 Column: 1

              
encode = codecs.utf_32_be_encode

def decode(input, errors='strict'):
    return codecs.utf_32_be_decode(input, errors, True)

class IncrementalEncoder(codecs.IncrementalEncoder):
    def encode(self, input, final=False):
        return codecs.utf_32_be_encode(input, self.errors)[0]

            

Reported by Pylint.

Missing class docstring
Error

Line: 13 Column: 1

              def decode(input, errors='strict'):
    return codecs.utf_32_be_decode(input, errors, True)

class IncrementalEncoder(codecs.IncrementalEncoder):
    def encode(self, input, final=False):
        return codecs.utf_32_be_encode(input, self.errors)[0]

class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_32_be_decode

            

Reported by Pylint.

Missing class docstring
Error

Line: 17 Column: 1

                  def encode(self, input, final=False):
        return codecs.utf_32_be_encode(input, self.errors)[0]

class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_32_be_decode

class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_32_be_encode


            

Reported by Pylint.

Missing class docstring
Error

Line: 20 Column: 1

              class IncrementalDecoder(codecs.BufferedIncrementalDecoder):
    _buffer_decode = codecs.utf_32_be_decode

class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_32_be_encode

class StreamReader(codecs.StreamReader):
    decode = codecs.utf_32_be_decode


            

Reported by Pylint.

Missing class docstring
Error

Line: 23 Column: 1

              class StreamWriter(codecs.StreamWriter):
    encode = codecs.utf_32_be_encode

class StreamReader(codecs.StreamReader):
    decode = codecs.utf_32_be_decode

### encodings module API

def getregentry():

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 28 Column: 1

              
### encodings module API

def getregentry():
    return codecs.CodecInfo(
        name='utf-32-be',
        encode=encode,
        decode=decode,
        incrementalencoder=IncrementalEncoder,

            

Reported by Pylint.

Lib/encodings/charmap.py
10 issues
Redefining built-in 'input'
Error

Line: 29 Column: 22

                      codecs.IncrementalEncoder.__init__(self, errors)
        self.mapping = mapping

    def encode(self, input, final=False):
        return codecs.charmap_encode(input, self.errors, self.mapping)[0]

class IncrementalDecoder(codecs.IncrementalDecoder):
    def __init__(self, errors='strict', mapping=None):
        codecs.IncrementalDecoder.__init__(self, errors)

            

Reported by Pylint.

Redefining built-in 'input'
Error

Line: 37 Column: 22

                      codecs.IncrementalDecoder.__init__(self, errors)
        self.mapping = mapping

    def decode(self, input, final=False):
        return codecs.charmap_decode(input, self.errors, self.mapping)[0]

class StreamWriter(Codec,codecs.StreamWriter):

    def __init__(self,stream,errors='strict',mapping=None):

            

Reported by Pylint.

Redefining built-in 'input'
Error

Line: 46 Column: 21

                      codecs.StreamWriter.__init__(self,stream,errors)
        self.mapping = mapping

    def encode(self,input,errors='strict'):
        return Codec.encode(input,errors,self.mapping)

class StreamReader(Codec,codecs.StreamReader):

    def __init__(self,stream,errors='strict',mapping=None):

            

Reported by Pylint.

Redefining built-in 'input'
Error

Line: 55 Column: 21

                      codecs.StreamReader.__init__(self,stream,errors)
        self.mapping = mapping

    def decode(self,input,errors='strict'):
        return Codec.decode(input,errors,self.mapping)

### encodings module API

def getregentry():

            

Reported by Pylint.

Missing class docstring
Error

Line: 17 Column: 1

              
### Codec APIs

class Codec(codecs.Codec):

    # Note: Binding these as C functions will result in the class not
    # converting them to methods. This is intended.
    encode = codecs.charmap_encode
    decode = codecs.charmap_decode

            

Reported by Pylint.

Missing class docstring
Error

Line: 24 Column: 1

                  encode = codecs.charmap_encode
    decode = codecs.charmap_decode

class IncrementalEncoder(codecs.IncrementalEncoder):
    def __init__(self, errors='strict', mapping=None):
        codecs.IncrementalEncoder.__init__(self, errors)
        self.mapping = mapping

    def encode(self, input, final=False):

            

Reported by Pylint.

Missing class docstring
Error

Line: 32 Column: 1

                  def encode(self, input, final=False):
        return codecs.charmap_encode(input, self.errors, self.mapping)[0]

class IncrementalDecoder(codecs.IncrementalDecoder):
    def __init__(self, errors='strict', mapping=None):
        codecs.IncrementalDecoder.__init__(self, errors)
        self.mapping = mapping

    def decode(self, input, final=False):

            

Reported by Pylint.

Missing class docstring
Error

Line: 40 Column: 1

                  def decode(self, input, final=False):
        return codecs.charmap_decode(input, self.errors, self.mapping)[0]

class StreamWriter(Codec,codecs.StreamWriter):

    def __init__(self,stream,errors='strict',mapping=None):
        codecs.StreamWriter.__init__(self,stream,errors)
        self.mapping = mapping


            

Reported by Pylint.

Missing class docstring
Error

Line: 49 Column: 1

                  def encode(self,input,errors='strict'):
        return Codec.encode(input,errors,self.mapping)

class StreamReader(Codec,codecs.StreamReader):

    def __init__(self,stream,errors='strict',mapping=None):
        codecs.StreamReader.__init__(self,stream,errors)
        self.mapping = mapping


            

Reported by Pylint.

Missing function or method docstring
Error

Line: 60 Column: 1

              
### encodings module API

def getregentry():
    return codecs.CodecInfo(
        name='charmap',
        encode=Codec.encode,
        decode=Codec.decode,
        incrementalencoder=IncrementalEncoder,

            

Reported by Pylint.

Doc/tools/extensions/escape4chm.py
10 issues
Unable to import 'sphinx.util.logging'
Error

Line: 11 Column: 1

              import re
from html.entities import codepoint2name

from sphinx.util.logging import getLogger

# escape the characters which codepoint > 0x7F
def _process(string):
    def escape(matchobj):
        codepoint = ord(matchobj.group(0))

            

Reported by Pylint.

Unused argument 'doctree'
Error

Line: 26 Column: 58

              
    return re.sub(r'[^\x00-\x7F]', escape, string)

def escape_for_chm(app, pagename, templatename, context, doctree):
    # only works for .chm output
    if getattr(app.builder, 'name', '') != 'htmlhelp':
        return

    # escape the `body` part to 7-bit ASCII

            

Reported by Pylint.

Unused argument 'pagename'
Error

Line: 26 Column: 25

              
    return re.sub(r'[^\x00-\x7F]', escape, string)

def escape_for_chm(app, pagename, templatename, context, doctree):
    # only works for .chm output
    if getattr(app.builder, 'name', '') != 'htmlhelp':
        return

    # escape the `body` part to 7-bit ASCII

            

Reported by Pylint.

Unused argument 'templatename'
Error

Line: 26 Column: 35

              
    return re.sub(r'[^\x00-\x7F]', escape, string)

def escape_for_chm(app, pagename, templatename, context, doctree):
    # only works for .chm output
    if getattr(app.builder, 'name', '') != 'htmlhelp':
        return

    # escape the `body` part to 7-bit ASCII

            

Reported by Pylint.

Unnecessary "else" after "return"
Error

Line: 19 Column: 9

                      codepoint = ord(matchobj.group(0))

        name = codepoint2name.get(codepoint)
        if name is None:
            return '&#%d;' % codepoint
        else:
            return '&%s;' % name

    return re.sub(r'[^\x00-\x7F]', escape, string)

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 26 Column: 1

              
    return re.sub(r'[^\x00-\x7F]', escape, string)

def escape_for_chm(app, pagename, templatename, context, doctree):
    # only works for .chm output
    if getattr(app.builder, 'name', '') != 'htmlhelp':
        return

    # escape the `body` part to 7-bit ASCII

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 36 Column: 1

                  if body is not None:
        context['body'] = _process(body)

def fixup_keywords(app, exception):
    # only works for .chm output
    if getattr(app.builder, 'name', '') != 'htmlhelp' or exception:
        return

    getLogger(__name__).info('fixing HTML escapes in keywords file...')

            

Reported by Pylint.

Variable name "f" doesn't conform to snake_case naming style
Error

Line: 44 Column: 66

                  getLogger(__name__).info('fixing HTML escapes in keywords file...')
    outdir = app.builder.outdir
    outname = app.builder.config.htmlhelp_basename
    with app.builder.open_file(outdir, outname + '.hhk', 'r') as f:
        index = f.read()
    with app.builder.open_file(outdir, outname + '.hhk', 'w') as f:
        f.write(index.replace(''', '''))

def setup(app):

            

Reported by Pylint.

Variable name "f" doesn't conform to snake_case naming style
Error

Line: 46 Column: 66

                  outname = app.builder.config.htmlhelp_basename
    with app.builder.open_file(outdir, outname + '.hhk', 'r') as f:
        index = f.read()
    with app.builder.open_file(outdir, outname + '.hhk', 'w') as f:
        f.write(index.replace(''', '''))

def setup(app):
    # `html-page-context` event emitted when the HTML builder has
    # created a context dictionary to render a template with.

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 49 Column: 1

                  with app.builder.open_file(outdir, outname + '.hhk', 'w') as f:
        f.write(index.replace(''', '''))

def setup(app):
    # `html-page-context` event emitted when the HTML builder has
    # created a context dictionary to render a template with.
    app.connect('html-page-context', escape_for_chm)
    # `build-finished` event emitted when all the files have been
    # output.

            

Reported by Pylint.

Lib/encodings/__init__.py
10 issues
Module import itself
Error

Line: 33 Column: 1

              
import codecs
import sys
from . import aliases

_cache = {}
_unknown = '--unknown--'
_import_tail = ['*']
_aliases = aliases.aliases

            

Reported by Pylint.

Constant name "_unknown" doesn't conform to UPPER_CASE naming style
Error

Line: 36 Column: 1

              from . import aliases

_cache = {}
_unknown = '--unknown--'
_import_tail = ['*']
_aliases = aliases.aliases

class CodecRegistryError(LookupError, SystemError):
    pass

            

Reported by Pylint.

Missing class docstring
Error

Line: 40 Column: 1

              _import_tail = ['*']
_aliases = aliases.aliases

class CodecRegistryError(LookupError, SystemError):
    pass

def normalize_encoding(encoding):

    """ Normalize an encoding name.

            

Reported by Pylint.

Variable name "c" doesn't conform to snake_case naming style
Error

Line: 60 Column: 9

              
    chars = []
    punct = False
    for c in encoding:
        if c.isalnum() or c == '.':
            if punct and chars:
                chars.append('_')
            if c.isascii():
                chars.append(c)

            

Reported by Pylint.

Too many branches (18/12)
Error

Line: 71 Column: 1

                          punct = True
    return ''.join(chars)

def search_function(encoding):

    # Cache lookup
    entry = _cache.get(encoding, _unknown)
    if entry is not _unknown:
        return entry

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 71 Column: 1

                          punct = True
    return ''.join(chars)

def search_function(encoding):

    # Cache lookup
    entry = _cache.get(encoding, _unknown)
    if entry is not _unknown:
        return entry

            

Reported by Pylint.

Too many boolean expressions in if statement (12/5)
Error

Line: 127 Column: 12

                      if not 4 <= len(entry) <= 7:
            raise CodecRegistryError('module "%s" (%s) failed to register'
                                     % (mod.__name__, mod.__file__))
        if not callable(entry[0]) or not callable(entry[1]) or \
           (entry[2] is not None and not callable(entry[2])) or \
           (entry[3] is not None and not callable(entry[3])) or \
           (len(entry) > 4 and entry[4] is not None and not callable(entry[4])) or \
           (len(entry) > 5 and entry[5] is not None and not callable(entry[5])):
            raise CodecRegistryError('incompatible codecs in module "%s" (%s)'

            

Reported by Pylint.

Either all return statements in a function should return an expression, or none of them should.
Error

Line: 159 Column: 5

              codecs.register(search_function)

if sys.platform == 'win32':
    def _alias_mbcs(encoding):
        try:
            import _winapi
            ansi_code_page = "cp%s" % _winapi.GetACP()
            if encoding == ansi_code_page:
                import encodings.mbcs

            

Reported by Pylint.

Import outside toplevel (_winapi)
Error

Line: 161 Column: 13

              if sys.platform == 'win32':
    def _alias_mbcs(encoding):
        try:
            import _winapi
            ansi_code_page = "cp%s" % _winapi.GetACP()
            if encoding == ansi_code_page:
                import encodings.mbcs
                return encodings.mbcs.getregentry()
        except ImportError:

            

Reported by Pylint.

Import outside toplevel (encodings.mbcs)
Error

Line: 164 Column: 17

                          import _winapi
            ansi_code_page = "cp%s" % _winapi.GetACP()
            if encoding == ansi_code_page:
                import encodings.mbcs
                return encodings.mbcs.getregentry()
        except ImportError:
            # Imports may fail while we are shutting down
            pass


            

Reported by Pylint.

Lib/hashlib.py
10 issues
Unused variable 'i'
Error

Line: 241 Column: 17

                          prev = prf(salt + loop.to_bytes(4, 'big'))
            # endianness doesn't matter here as long to / from use the same
            rkey = int.from_bytes(prev, 'big')
            for i in range(iterations - 1):
                prev = prf(prev)
                # rkey = rkey ^ prev
                rkey ^= from_bytes(prev, 'big')
            loop += 1
            dkey += rkey.to_bytes(inner.digest_size, 'big')

            

Reported by Pylint.

Unused scrypt imported from _hashlib
Error

Line: 252 Column: 5

              
try:
    # OpenSSL's scrypt requires OpenSSL 1.1+
    from _hashlib import scrypt
except ImportError:
    pass


for __func_name in __always_supported:

            

Reported by Pylint.

Import outside toplevel (_sha1)
Error

Line: 89 Column: 13

                      return constructor
    try:
        if name in {'SHA1', 'sha1'}:
            import _sha1
            cache['SHA1'] = cache['sha1'] = _sha1.sha1
        elif name in {'MD5', 'md5'}:
            import _md5
            cache['MD5'] = cache['md5'] = _md5.md5
        elif name in {'SHA256', 'sha256', 'SHA224', 'sha224'}:

            

Reported by Pylint.

Import outside toplevel (_md5)
Error

Line: 92 Column: 13

                          import _sha1
            cache['SHA1'] = cache['sha1'] = _sha1.sha1
        elif name in {'MD5', 'md5'}:
            import _md5
            cache['MD5'] = cache['md5'] = _md5.md5
        elif name in {'SHA256', 'sha256', 'SHA224', 'sha224'}:
            import _sha256
            cache['SHA224'] = cache['sha224'] = _sha256.sha224
            cache['SHA256'] = cache['sha256'] = _sha256.sha256

            

Reported by Pylint.

Import outside toplevel (_sha256)
Error

Line: 95 Column: 13

                          import _md5
            cache['MD5'] = cache['md5'] = _md5.md5
        elif name in {'SHA256', 'sha256', 'SHA224', 'sha224'}:
            import _sha256
            cache['SHA224'] = cache['sha224'] = _sha256.sha224
            cache['SHA256'] = cache['sha256'] = _sha256.sha256
        elif name in {'SHA512', 'sha512', 'SHA384', 'sha384'}:
            import _sha512
            cache['SHA384'] = cache['sha384'] = _sha512.sha384

            

Reported by Pylint.

Import outside toplevel (_sha512)
Error

Line: 99 Column: 13

                          cache['SHA224'] = cache['sha224'] = _sha256.sha224
            cache['SHA256'] = cache['sha256'] = _sha256.sha256
        elif name in {'SHA512', 'sha512', 'SHA384', 'sha384'}:
            import _sha512
            cache['SHA384'] = cache['sha384'] = _sha512.sha384
            cache['SHA512'] = cache['sha512'] = _sha512.sha512
        elif name in {'blake2b', 'blake2s'}:
            import _blake2
            cache['blake2b'] = _blake2.blake2b

            

Reported by Pylint.

Import outside toplevel (_blake2)
Error

Line: 103 Column: 13

                          cache['SHA384'] = cache['sha384'] = _sha512.sha384
            cache['SHA512'] = cache['sha512'] = _sha512.sha512
        elif name in {'blake2b', 'blake2s'}:
            import _blake2
            cache['blake2b'] = _blake2.blake2b
            cache['blake2s'] = _blake2.blake2s
        elif name in {'sha3_224', 'sha3_256', 'sha3_384', 'sha3_512'}:
            import _sha3
            cache['sha3_224'] = _sha3.sha3_224

            

Reported by Pylint.

Import outside toplevel (_sha3)
Error

Line: 107 Column: 13

                          cache['blake2b'] = _blake2.blake2b
            cache['blake2s'] = _blake2.blake2s
        elif name in {'sha3_224', 'sha3_256', 'sha3_384', 'sha3_512'}:
            import _sha3
            cache['sha3_224'] = _sha3.sha3_224
            cache['sha3_256'] = _sha3.sha3_256
            cache['sha3_384'] = _sha3.sha3_384
            cache['sha3_512'] = _sha3.sha3_512
        elif name in {'shake_128', 'shake_256'}:

            

Reported by Pylint.

Import outside toplevel (_sha3)
Error

Line: 113 Column: 13

                          cache['sha3_384'] = _sha3.sha3_384
            cache['sha3_512'] = _sha3.sha3_512
        elif name in {'shake_128', 'shake_256'}:
            import _sha3
            cache['shake_128'] = _sha3.shake_128
            cache['shake_256'] = _sha3.shake_256
    except ImportError:
        pass  # no extension module, this hash is unsupported.


            

Reported by Pylint.

Variable name "f" doesn't conform to snake_case naming style
Error

Line: 133 Column: 9

                  try:
        # MD5, SHA1, and SHA2 are in all supported OpenSSL versions
        # SHA3/shake are available in OpenSSL 1.1.1+
        f = getattr(_hashlib, 'openssl_' + name)
        # Allow the C module to raise ValueError.  The function will be
        # defined but the hash not actually available.  Don't fall back to
        # builtin if the current security policy blocks a digest, bpo#40695.
        f(usedforsecurity=False)
        # Use the C function directly (very fast)

            

Reported by Pylint.

Lib/lib2to3/fixes/fix_unicode.py
10 issues
Attempted relative import beyond top-level package
Error

Line: 11 Column: 1

              
"""

from ..pgen2 import token
from .. import fixer_base

_mapping = {"unichr" : "chr", "unicode" : "str"}

class FixUnicode(fixer_base.BaseFix):

            

Reported by Pylint.

Attempted relative import beyond top-level package
Error

Line: 12 Column: 1

              """

from ..pgen2 import token
from .. import fixer_base

_mapping = {"unichr" : "chr", "unicode" : "str"}

class FixUnicode(fixer_base.BaseFix):
    BM_compatible = True

            

Reported by Pylint.

Attribute 'unicode_literals' defined outside __init__
Error

Line: 22 Column: 9

              
    def start_tree(self, tree, filename):
        super(FixUnicode, self).start_tree(tree, filename)
        self.unicode_literals = 'unicode_literals' in tree.future_features

    def transform(self, node, results):
        if node.type == token.NAME:
            new = node.clone()
            new.value = _mapping[node.value]

            

Reported by Pylint.

Unused argument 'results'
Error

Line: 24 Column: 31

                      super(FixUnicode, self).start_tree(tree, filename)
        self.unicode_literals = 'unicode_literals' in tree.future_features

    def transform(self, node, results):
        if node.type == token.NAME:
            new = node.clone()
            new.value = _mapping[node.value]
            return new
        elif node.type == token.STRING:

            

Reported by Pylint.

Missing class docstring
Error

Line: 16 Column: 1

              
_mapping = {"unichr" : "chr", "unicode" : "str"}

class FixUnicode(fixer_base.BaseFix):
    BM_compatible = True
    PATTERN = "STRING | 'unicode' | 'unichr'"

    def start_tree(self, tree, filename):
        super(FixUnicode, self).start_tree(tree, filename)

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 20 Column: 5

                  BM_compatible = True
    PATTERN = "STRING | 'unicode' | 'unichr'"

    def start_tree(self, tree, filename):
        super(FixUnicode, self).start_tree(tree, filename)
        self.unicode_literals = 'unicode_literals' in tree.future_features

    def transform(self, node, results):
        if node.type == token.NAME:

            

Reported by Pylint.

Consider using Python 3 style super() without arguments
Error

Line: 21 Column: 9

                  PATTERN = "STRING | 'unicode' | 'unichr'"

    def start_tree(self, tree, filename):
        super(FixUnicode, self).start_tree(tree, filename)
        self.unicode_literals = 'unicode_literals' in tree.future_features

    def transform(self, node, results):
        if node.type == token.NAME:
            new = node.clone()

            

Reported by Pylint.

Either all return statements in a function should return an expression, or none of them should.
Error

Line: 24 Column: 5

                      super(FixUnicode, self).start_tree(tree, filename)
        self.unicode_literals = 'unicode_literals' in tree.future_features

    def transform(self, node, results):
        if node.type == token.NAME:
            new = node.clone()
            new.value = _mapping[node.value]
            return new
        elif node.type == token.STRING:

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 24 Column: 5

                      super(FixUnicode, self).start_tree(tree, filename)
        self.unicode_literals = 'unicode_literals' in tree.future_features

    def transform(self, node, results):
        if node.type == token.NAME:
            new = node.clone()
            new.value = _mapping[node.value]
            return new
        elif node.type == token.STRING:

            

Reported by Pylint.

Unnecessary "elif" after "return"
Error

Line: 25 Column: 9

                      self.unicode_literals = 'unicode_literals' in tree.future_features

    def transform(self, node, results):
        if node.type == token.NAME:
            new = node.clone()
            new.value = _mapping[node.value]
            return new
        elif node.type == token.STRING:
            val = node.value

            

Reported by Pylint.

Lib/lib2to3/fixes/fix_renames.py
10 issues
Attempted relative import beyond top-level package
Error

Line: 10 Column: 1

              # based on Collin Winter's fix_import

# Local imports
from .. import fixer_base
from ..fixer_util import Name, attr_chain

MAPPING = {"sys":  {"maxint" : "maxsize"},
          }
LOOKUP = {}

            

Reported by Pylint.

Attempted relative import beyond top-level package
Error

Line: 11 Column: 1

              
# Local imports
from .. import fixer_base
from ..fixer_util import Name, attr_chain

MAPPING = {"sys":  {"maxint" : "maxsize"},
          }
LOOKUP = {}


            

Reported by Pylint.

Unused argument 'node'
Error

Line: 62 Column: 25

                  #    super(FixRenames, self).start_tree(tree, filename)
    #    self.replace = {}

    def transform(self, node, results):
        mod_name = results.get("module_name")
        attr_name = results.get("attr_name")
        #bare_name = results.get("bare_name")
        #import_mod = results.get("module")


            

Reported by Pylint.

Missing function or method docstring
Error

Line: 17 Column: 1

                        }
LOOKUP = {}

def alternates(members):
    return "(" + "|".join(map(repr, members)) + ")"


def build_pattern():
    #bare = set()

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 21 Column: 1

                  return "(" + "|".join(map(repr, members)) + ")"


def build_pattern():
    #bare = set()
    for module, replace in list(MAPPING.items()):
        for old_attr, new_attr in list(replace.items()):
            LOOKUP[(module, old_attr)] = new_attr
            #bare.add(module)

            

Reported by Pylint.

Missing class docstring
Error

Line: 42 Column: 1

                  #yield """bare_name=%s""" % alternates(bare)


class FixRenames(fixer_base.BaseFix):
    BM_compatible = True
    PATTERN = "|".join(build_pattern())

    order = "pre" # Pre-order tree traversal


            

Reported by Pylint.

Missing function or method docstring
Error

Line: 49 Column: 5

                  order = "pre" # Pre-order tree traversal

    # Don't match the node if it's within another match
    def match(self, node):
        match = super(FixRenames, self).match
        results = match(node)
        if results:
            if any(match(obj) for obj in attr_chain(node, "parent")):
                return False

            

Reported by Pylint.

Consider using Python 3 style super() without arguments
Error

Line: 50 Column: 17

              
    # Don't match the node if it's within another match
    def match(self, node):
        match = super(FixRenames, self).match
        results = match(node)
        if results:
            if any(match(obj) for obj in attr_chain(node, "parent")):
                return False
            return results

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 62 Column: 5

                  #    super(FixRenames, self).start_tree(tree, filename)
    #    self.replace = {}

    def transform(self, node, results):
        mod_name = results.get("module_name")
        attr_name = results.get("attr_name")
        #bare_name = results.get("bare_name")
        #import_mod = results.get("module")


            

Reported by Pylint.

Method could be a function
Error

Line: 62 Column: 5

                  #    super(FixRenames, self).start_tree(tree, filename)
    #    self.replace = {}

    def transform(self, node, results):
        mod_name = results.get("module_name")
        attr_name = results.get("attr_name")
        #bare_name = results.get("bare_name")
        #import_mod = results.get("module")


            

Reported by Pylint.

Tools/peg_generator/pegen/validator.py
10 issues
Redefining name 'grammar' from outer scope (line 3)
Error

Line: 17 Column: 24

              

class GrammarValidator(GrammarVisitor):
    def __init__(self, grammar: grammar.Grammar) -> None:
        self.grammar = grammar
        self.rulename: Optional[str] = None

    def validate_rule(self, rulename: str, node: Rule) -> None:
        self.rulename = rulename

            

Reported by Pylint.

Missing module docstring
Error

Line: 1 Column: 1

              from typing import Optional

from pegen import grammar
from pegen.grammar import (
    Alt,
    GrammarVisitor,
    Rule,
    Rhs,
)

            

Reported by Pylint.

Missing class docstring
Error

Line: 12 Column: 1

              )


class ValidationError(Exception):
    pass


class GrammarValidator(GrammarVisitor):
    def __init__(self, grammar: grammar.Grammar) -> None:

            

Reported by Pylint.

Missing class docstring
Error

Line: 16 Column: 1

                  pass


class GrammarValidator(GrammarVisitor):
    def __init__(self, grammar: grammar.Grammar) -> None:
        self.grammar = grammar
        self.rulename: Optional[str] = None

    def validate_rule(self, rulename: str, node: Rule) -> None:

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 21 Column: 5

                      self.grammar = grammar
        self.rulename: Optional[str] = None

    def validate_rule(self, rulename: str, node: Rule) -> None:
        self.rulename = rulename
        self.visit(node)
        self.rulename = None



            

Reported by Pylint.

Missing class docstring
Error

Line: 27 Column: 1

                      self.rulename = None


class SubRuleValidator(GrammarValidator):
    def visit_Rhs(self, node: Rhs) -> None:
        for index, alt in enumerate(node.alts):
            alts_to_consider = node.alts[index + 1 :]
            for other_alt in alts_to_consider:
                self.check_intersection(alt, other_alt)

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 28 Column: 5

              

class SubRuleValidator(GrammarValidator):
    def visit_Rhs(self, node: Rhs) -> None:
        for index, alt in enumerate(node.alts):
            alts_to_consider = node.alts[index + 1 :]
            for other_alt in alts_to_consider:
                self.check_intersection(alt, other_alt)


            

Reported by Pylint.

Method name "visit_Rhs" doesn't conform to snake_case naming style
Error

Line: 28 Column: 5

              

class SubRuleValidator(GrammarValidator):
    def visit_Rhs(self, node: Rhs) -> None:
        for index, alt in enumerate(node.alts):
            alts_to_consider = node.alts[index + 1 :]
            for other_alt in alts_to_consider:
                self.check_intersection(alt, other_alt)


            

Reported by Pylint.

Missing function or method docstring
Error

Line: 34 Column: 5

                          for other_alt in alts_to_consider:
                self.check_intersection(alt, other_alt)

    def check_intersection(self, first_alt: Alt, second_alt: Alt) -> None:
        if str(second_alt).startswith(str(first_alt)):
            raise ValidationError(
                f"In {self.rulename} there is an alternative that will "
                f"never be visited:\n{second_alt}"
            )

            

Reported by Pylint.

Missing function or method docstring
Error

Line: 42 Column: 1

                          )


def validate_grammar(the_grammar: grammar.Grammar) -> None:
    for validator_cls in GrammarValidator.__subclasses__():
        validator = validator_cls(the_grammar)
        for rule_name, rule in the_grammar.rules.items():
            validator.validate_rule(rule_name, rule)

            

Reported by Pylint.