spadarian / docblock-python

Atom plugin to insert documentation blocks for python functions
GNU General Public License v2.0
22 stars 9 forks source link

Uncaught TypeError: Cannot read property 'concat' of null #50

Closed JonBensi closed 3 years ago

JonBensi commented 3 years ago

Steps to reproduce:

  1. Create an empty class as with no attributes in the init like so:
    class test():
    def __init__(self):
        pass
    pass
  2. Run the auto doc block (i.e. ctrl+alt+d)

Atom: 1.52.0 x64 Electron: 6.1.12 OS: Microsoft Windows 10 Pro Thrown From: docblock-python package 0.19.0

Stack Trace

Uncaught TypeError: Cannot read property 'concat' of null

At C:\Users\jon.bensing\.atom\packages\docblock-python\lib\docblock-python.js:758

TypeError: Cannot read property 'concat' of null
    at Object.process_class (/packages/docblock-python/lib/docblock-python.js:758:27)
    at /packages/docblock-python/lib/docblock-python.js:360:29
    at Array.map (<anonymous>)
    at /packages/docblock-python/lib/docblock-python.js:331:12
    at Object.generate_docblock (/packages/docblock-python/lib/docblock-python.js:395:10)
    at HTMLElement.docblockPythonGenerate_docblock (/packages/docblock-python/lib/docblock-python.js:163:53)
    at CommandRegistry.handleCommandEvent (~/AppData/Local/atom/app-1.52.0/resources/app/static/<embedded>:11:349963)
    at KeymapManager.dispatchCommandEvent (~/AppData/Local/atom/app-1.52.0/resources/app/static/<embedded>:11:1231297)
    at KeymapManager.handleKeyboardEvent (~/AppData/Local/atom/app-1.52.0/resources/app/static/<embedded>:11:1227431)
    at WindowEventHandler.handleDocumentKeyEvent (~/AppData/Local/atom/app-1.52.0/resources/app/static/<embedded>:11:284820)

Commands

  2x -0:57.8.0 core:move-up (input.hidden-input)
     -0:56.2.0 editor:newline (input.hidden-input)
     -0:54 core:backspace (input.hidden-input)
  3x -0:53.8.0 core:move-left (input.hidden-input)
  9x -0:52.4.0 core:backspace (input.hidden-input)
     -0:39.1.0 intentions:highlight (input.hidden-input)
     -0:39 core:save (input.hidden-input)
 21x -0:38.2.0 core:move-left (input.hidden-input)
  7x -0:34.5.0 core:delete (input.hidden-input)
     -0:32.8.0 intentions:highlight (input.hidden-input)
     -0:32.7.0 core:save (input.hidden-input)
  5x -0:32 core:move-down (input.hidden-input)
     -0:26.7.0 intentions:highlight (input.hidden-input)
     -0:26.6.0 core:save (input.hidden-input)
     -0:20.4.0 intentions:highlight (input.hidden-input)
     -0:20.1.0 docblock-python:generate_docblock (input.hidden-input)

Non-Core Packages

atom-ide-debugger-python 0.7.3 
atom-python-run 0.9.7 
busy-signal 2.0.1 
docblock-python 0.19.0 
ide-python 1.5.0 
intentions 1.1.5 
linter 3.1.0 
linter-ui-default 2.1.2 
minimap 4.29.9 
python-autopep8 0.1.3 
python-debugger 0.2.0 
python-terminal 0.2.0 
python-tools 0.6.9 
todo-show 2.3.2 

Now I know the use case of not having any attributes should be slim to none in a class's init, but I'd thought I'd report anyways.

The work around is simply adding in an attribute or removing the init.