MetaPhase-Consulting/State-TalentMAP-API

View on GitHub
talentmap_api/fsbid/services/agenda.py

Summary

Maintainability
F
6 days
Test Coverage
F
15%

File agenda.py has 1070 lines of code (exceeds 250 allowed). Consider refactoring.
Open

import csv
import logging
from functools import partial
from urllib.parse import urlencode, quote
from datetime import datetime
Severity: Major
Found in talentmap_api/fsbid/services/agenda.py - About 2 days to fix

    Function modify_agenda has a Cognitive Complexity of 96 (exceeds 7 allowed). Consider refactoring.
    Open

    def modify_agenda(query={}, jwt_token=None, host=None):
        '''
        Create/Edit Agenda
        '''
        ai_validation = ai_validator.validate_agenda_item(query)
    Severity: Minor
    Found in talentmap_api/fsbid/services/agenda.py - About 1 day to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Function fsbid_single_agenda_item_to_talentmap_single_agenda_item has a Cognitive Complexity of 21 (exceeds 7 allowed). Consider refactoring.
    Open

    def fsbid_single_agenda_item_to_talentmap_single_agenda_item(data, ref_skills={}):
        agendaStatusAbbrev = {
            "Approved": "APR",
            "Deferred - Proposed Position": "XXX",
            "Disapproved": "DIS",
    Severity: Minor
    Found in talentmap_api/fsbid/services/agenda.py - About 2 hrs to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Function get_agendas_by_panel has a Cognitive Complexity of 20 (exceeds 7 allowed). Consider refactoring.
    Open

    def get_agendas_by_panel(pk, jwt_token):
        '''
        Get agendas for panel meeting
        '''
        skillUrl = f"{API_ROOT}/v1/references/skills"
    Severity: Minor
    Found in talentmap_api/fsbid/services/agenda.py - About 2 hrs to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Function get_single_agenda_item has a Cognitive Complexity of 19 (exceeds 7 allowed). Consider refactoring.
    Open

    def get_single_agenda_item(jwt_token=None, pk=None):
        '''
        Get single agenda item
        '''
    
    
    Severity: Minor
    Found in talentmap_api/fsbid/services/agenda.py - About 2 hrs to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Function fsbid_single_agenda_item_to_talentmap_single_agenda_item has 29 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

    def fsbid_single_agenda_item_to_talentmap_single_agenda_item(data, ref_skills={}):
        agendaStatusAbbrev = {
            "Approved": "APR",
            "Deferred - Proposed Position": "XXX",
            "Disapproved": "DIS",
    Severity: Minor
    Found in talentmap_api/fsbid/services/agenda.py - About 1 hr to fix

      Avoid deeply nested control flow statements.
      Open

                              if not pydash.get(agenda_item_remark, "[0].rmrk_seq_num"):
                                  logger.error("Error creating AIR")
                              elif remark_inserts:
                                  for insert in remark_inserts:
                                      agenda_item_remark_insert = create_agenda_item_remark_insert(insert, query, jwt_token)
      Severity: Major
      Found in talentmap_api/fsbid/services/agenda.py - About 45 mins to fix

        Avoid deeply nested control flow statements.
        Open

                                if not pydash.get(agenda_item_leg, "[0].ail_seq_num"):
                                    logger.error("Error creating AIL")
                        
                        # Unpack existing AIR/AIRI
                        existing_remarks = refData.get("remarks")
        Severity: Major
        Found in talentmap_api/fsbid/services/agenda.py - About 45 mins to fix

          Avoid deeply nested control flow statements.
          Open

                                  for ail in existing_ails:
                                      ai_seq_num = query["aiseqnum"]
                                      delete_agenda_item_leg(ail, ai_seq_num, jwt_token)
                              for leg in legs:
          Severity: Major
          Found in talentmap_api/fsbid/services/agenda.py - About 45 mins to fix

            Consider simplifying this complex logical expression.
            Open

                                if ((status_code != existing_status_code) or
                                    (tod_code != existing_tod_code) or
                                    (tod_combined_months_num != existing_tod_combined_months_num) or
                                    (tod_combined_other_text != existing_tod_combined_other_text) or
                                    (asg_seq_num != existing_asg_seq_num) or
            Severity: Major
            Found in talentmap_api/fsbid/services/agenda.py - About 40 mins to fix

              Consider simplifying this complex logical expression.
              Open

                          if (status_code or tod_code or tod_combined_months_num or 
                              tod_combined_other_text or asg_seq_num or asg_revision_num):
                              if existing_ai_seq_num:
                                  if ((status_code != existing_status_code) or
                                      (tod_code != existing_tod_code) or
              Severity: Major
              Found in talentmap_api/fsbid/services/agenda.py - About 40 mins to fix

                Function fsbid_legs_to_talentmap_legs has a Cognitive Complexity of 9 (exceeds 7 allowed). Consider refactoring.
                Open

                def fsbid_legs_to_talentmap_legs(data):
                    tod_code = pydash.get(data, "ailtodcode")
                    tod_short_desc = pydash.get(data, "todshortdesc")
                    tod_long_desc = pydash.get(data, "toddesctext")
                    # only custom/other TOD will have other_text
                Severity: Minor
                Found in talentmap_api/fsbid/services/agenda.py - About 35 mins to fix

                Cognitive Complexity

                Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                A method's cognitive complexity is based on a few simple rules:

                • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                • Code is considered more complex for each "break in the linear flow of the code"
                • Code is considered more complex when "flow breaking structures are nested"

                Further reading

                Avoid too many return statements within this function.
                Open

                        return newly_created_ai_seq_num or existing_ai_seq_num
                Severity: Major
                Found in talentmap_api/fsbid/services/agenda.py - About 30 mins to fix

                  Expected 2 blank lines, found 1
                  Open

                  def modify_agenda(query={}, jwt_token=None, host=None):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Blank line contains whitespace
                  Open

                      
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Indentation is not a multiple of 4
                  Open

                                   panel_meeting_item = create_panel_meeting_item(query, jwt_token)
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Use indent_size (PEP8 says 4) spaces per indentation level.

                  For really old code that you don't want to mess up, you can continue
                  to use 8-space tabs.
                  
                  Okay: a = 1
                  Okay: if a == 0:\n    a = 1
                  E111:   a = 1
                  E114:   # a = 1
                  
                  Okay: for item in items:\n    pass
                  E112: for item in items:\npass
                  E115: for item in items:\n# Hi\n    pass
                  
                  Okay: a = 1\nb = 2
                  E113: a = 1\n    b = 2
                  E116: a = 1\n    # b = 2

                  Blank line contains whitespace
                  Open

                                  
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Expected 2 blank lines, found 1
                  Open

                  def delete_agenda_item(query, jwt_token):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Trailing whitespace
                  Open

                          'seq_num', 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Trailing whitespace
                  Open

                          'text', 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Trailing whitespace
                  Open

                          'remark_inserts', 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Trailing whitespace
                  Open

                          return 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Trailing whitespace
                  Open

                              return 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Missing whitespace after ','
                  Open

                                          existing_ails = [{"ailseqnum": x.get("ail_seq_num"), "ailupdatedate": x.get("ail_update_date", "").replace("T", " "),} for x in existing_legs if x.get("ail_seq_num")]
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Each comma, semicolon or colon should be followed by whitespace.

                  Okay: [a, b]
                  Okay: (3,)
                  Okay: a[1:4]
                  Okay: a[:4]
                  Okay: a[1:]
                  Okay: a[1:4:2]
                  E231: ['a','b']
                  E231: foo(bar,baz)
                  E231: [{'a':'b'}]

                  Expected 2 blank lines, found 1
                  Open

                  def create_agenda_item_remark_insert(data, query, jwt_token):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Trailing whitespace
                  Open

                          'mutually_exclusive_ind', 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Blank line contains whitespace
                  Open

                                  
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Too many blank lines (4)
                  Open

                  def create_panel_meeting_item(query, jwt_token):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Trailing whitespace
                  Open

                          "modifier_date": data.get("aiupdatedate") or None, 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Blank line contains whitespace
                  Open

                      
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Expected 2 blank lines, found 1
                  Open

                  def fsbid_aia_to_talentmap_aia(data):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  At least two spaces before inline comment
                  Open

                      tod_other_text = pydash.get(data, "asgdtodothertext") # only custom/other TOD should have months and other_text
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate inline comments by at least two spaces.

                  An inline comment is a comment on the same line as a statement.
                  Inline comments should be separated by at least two spaces from the
                  statement. They should start with a # and a single space.
                  
                  Each line of a block comment starts with a # and a single space
                  (unless it is indented text inside the comment).
                  
                  Okay: x = x + 1  # Increment x
                  Okay: x = x + 1    # Increment x
                  Okay: # Block comment
                  E261: x = x + 1 # Increment x
                  E262: x = x + 1  #Increment x
                  E262: x = x + 1  #  Increment x
                  E265: #Block comment
                  E266: ### Block comment

                  Expected 2 blank lines, found 1
                  Open

                  def get_agenda_statuses(query, jwt_token):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Trailing whitespace
                  Open

                          'rc_code', 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Over-indented
                  Open

                                   panel_meeting_item = create_panel_meeting_item(query, jwt_token)
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Use indent_size (PEP8 says 4) spaces per indentation level.

                  For really old code that you don't want to mess up, you can continue
                  to use 8-space tabs.
                  
                  Okay: a = 1
                  Okay: if a == 0:\n    a = 1
                  E111:   a = 1
                  E114:   # a = 1
                  
                  Okay: for item in items:\n    pass
                  E112: for item in items:\npass
                  E115: for item in items:\n# Hi\n    pass
                  
                  Okay: a = 1\nb = 2
                  E113: a = 1\n    b = 2
                  E116: a = 1\n    # b = 2

                  Expected 2 blank lines, found 1
                  Open

                  def delete_agenda_item_leg(query, ai_seq_num, jwt_token):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Over-indented
                  Open

                              skills_lookup[skill["skl_code"]] = skill["skill_descr"]
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Use indent_size (PEP8 says 4) spaces per indentation level.

                  For really old code that you don't want to mess up, you can continue
                  to use 8-space tabs.
                  
                  Okay: a = 1
                  Okay: if a == 0:\n    a = 1
                  E111:   a = 1
                  E114:   # a = 1
                  
                  Okay: for item in items:\n    pass
                  E112: for item in items:\npass
                  E115: for item in items:\n# Hi\n    pass
                  
                  Okay: a = 1\nb = 2
                  E113: a = 1\n    b = 2
                  E116: a = 1\n    # b = 2

                  Expected 2 blank lines, found 1
                  Open

                  def vice_query_mapping(pos_seq_nums):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Too many blank lines (3)
                  Open

                  def convert_create_agenda_item_remark_query(query, remark={}):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  At least two spaces before inline comment
                  Open

                          "tod_months": tod_months if is_other_tod else None, # only custom/other TOD should have months and other_text
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate inline comments by at least two spaces.

                  An inline comment is a comment on the same line as a statement.
                  Inline comments should be separated by at least two spaces from the
                  statement. They should start with a # and a single space.
                  
                  Each line of a block comment starts with a # and a single space
                  (unless it is indented text inside the comment).
                  
                  Okay: x = x + 1  # Increment x
                  Okay: x = x + 1    # Increment x
                  Okay: # Block comment
                  E261: x = x + 1 # Increment x
                  E262: x = x + 1  #Increment x
                  E262: x = x + 1  #  Increment x
                  E265: #Block comment
                  E266: ### Block comment

                  Trailing whitespace
                  Open

                                      leg["vice"] = {} 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Blank line contains whitespace
                  Open

                                  
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Trailing whitespace
                  Open

                          'short_desc_text', 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Expected 2 blank lines, found 1
                  Open

                  def get_vice_data(pos_seq_nums, jwt_token):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Indentation is not a multiple of 4
                  Open

                                   newly_created_pmi_seq_num = pydash.get(panel_meeting_item, '[0].pmi_seq_num')
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Use indent_size (PEP8 says 4) spaces per indentation level.

                  For really old code that you don't want to mess up, you can continue
                  to use 8-space tabs.
                  
                  Okay: a = 1
                  Okay: if a == 0:\n    a = 1
                  E111:   a = 1
                  E114:   # a = 1
                  
                  Okay: for item in items:\n    pass
                  E112: for item in items:\npass
                  E115: for item in items:\n# Hi\n    pass
                  
                  Okay: a = 1\nb = 2
                  E113: a = 1\n    b = 2
                  E116: a = 1\n    # b = 2

                  Trailing whitespace
                  Open

                              return 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  At least two spaces before inline comment
                  Open

                          "tod_months": tod_months if is_other_tod else None, # only a custom/other TOD should have months
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate inline comments by at least two spaces.

                  An inline comment is a comment on the same line as a statement.
                  Inline comments should be separated by at least two spaces from the
                  statement. They should start with a # and a single space.
                  
                  Each line of a block comment starts with a # and a single space
                  (unless it is indented text inside the comment).
                  
                  Okay: x = x + 1  # Increment x
                  Okay: x = x + 1    # Increment x
                  Okay: # Block comment
                  E261: x = x + 1 # Increment x
                  E262: x = x + 1  #Increment x
                  E262: x = x + 1  #  Increment x
                  E265: #Block comment
                  E266: ### Block comment

                  Trailing whitespace
                  Open

                                          # Delete existing AILs 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  At least two spaces before inline comment
                  Open

                          "aiCombinedTodMonthsNum": data.get("aicombinedtodmonthsnum") if is_other_tod else "", # only custom/other TOD should have months and other_text
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate inline comments by at least two spaces.

                  An inline comment is a comment on the same line as a statement.
                  Inline comments should be separated by at least two spaces from the
                  statement. They should start with a # and a single space.
                  
                  Each line of a block comment starts with a # and a single space
                  (unless it is indented text inside the comment).
                  
                  Okay: x = x + 1  # Increment x
                  Okay: x = x + 1    # Increment x
                  Okay: # Block comment
                  E261: x = x + 1 # Increment x
                  E262: x = x + 1  #Increment x
                  E262: x = x + 1  #  Increment x
                  E265: #Block comment
                  E266: ### Block comment

                  Expected 2 blank lines, found 1
                  Open

                  def fsbid_lang_to_talentmap_lang(data):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Expected 2 blank lines, found 1
                  Open

                  def fsbid_cdo_to_talentmap_cdo(data):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Visually indented line with same indent as next logical line
                  Open

                                  tod_combined_other_text or asg_seq_num or asg_revision_num):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Continuation lines indentation.

                  Continuation lines should align wrapped elements either vertically
                  using Python's implicit line joining inside parentheses, brackets
                  and braces, or using a hanging indent.
                  
                  When using a hanging indent these considerations should be applied:
                  - there should be no arguments on the first line, and
                  - further indentation should be used to clearly distinguish itself
                    as a continuation line.
                  
                  Okay: a = (\n)
                  E123: a = (\n    )
                  
                  Okay: a = (\n    42)
                  E121: a = (\n   42)
                  E122: a = (\n42)
                  E123: a = (\n    42\n    )
                  E124: a = (24,\n     42\n)
                  E125: if (\n    b):\n    pass
                  E126: a = (\n        42)
                  E127: a = (24,\n      42)
                  E128: a = (24,\n    42)
                  E129: if (a or\n    b):\n    pass
                  E131: a = (\n    42\n 24)

                  Blank line contains whitespace
                  Open

                      
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Trailing whitespace
                  Open

                              if (status_code or tod_code or tod_combined_months_num or 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Too many blank lines (3)
                  Open

                  def fsbid_to_talentmap_agenda_remarks_ref(data):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Expected 2 blank lines, found 1
                  Open

                  def fsbid_to_tmap_agenda_leg_action_types(data):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Closing bracket does not match visual indentation
                  Open

                                      ):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Continuation lines indentation.

                  Continuation lines should align wrapped elements either vertically
                  using Python's implicit line joining inside parentheses, brackets
                  and braces, or using a hanging indent.
                  
                  When using a hanging indent these considerations should be applied:
                  - there should be no arguments on the first line, and
                  - further indentation should be used to clearly distinguish itself
                    as a continuation line.
                  
                  Okay: a = (\n)
                  E123: a = (\n    )
                  
                  Okay: a = (\n    42)
                  E121: a = (\n   42)
                  E122: a = (\n42)
                  E123: a = (\n    42\n    )
                  E124: a = (24,\n     42\n)
                  E125: if (\n    b):\n    pass
                  E126: a = (\n        42)
                  E127: a = (24,\n      42)
                  E128: a = (24,\n    42)
                  E129: if (a or\n    b):\n    pass
                  E131: a = (\n    42\n 24)

                  Blank line contains whitespace
                  Open

                     
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Expected 2 blank lines, found 1
                  Open

                  def create_agenda_item_leg(data, query, jwt_token):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Whitespace after '('
                  Open

                          "mutually_exclusive_ind": data.get( "rmrkmutuallyexclusiveind"),
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Avoid extraneous whitespace.

                  Avoid extraneous whitespace in these situations:
                  - Immediately inside parentheses, brackets or braces.
                  - Immediately before a comma, semicolon, or colon.
                  
                  Okay: spam(ham[1], {eggs: 2})
                  E201: spam( ham[1], {eggs: 2})
                  E201: spam(ham[ 1], {eggs: 2})
                  E201: spam(ham[1], { eggs: 2})
                  E202: spam(ham[1], {eggs: 2} )
                  E202: spam(ham[1 ], {eggs: 2})
                  E202: spam(ham[1], {eggs: 2 })
                  
                  E203: if x == 4: print x, y; x, y = y , x
                  E203: if x == 4: print x, y ; x, y = y, x
                  E203: if x == 4 : print x, y; x, y = y, x

                  Trailing whitespace
                  Open

                          'order_num', 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Blank line contains whitespace
                  Open

                                  
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  Trailing whitespace
                  Open

                          'active_ind', 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  At least two spaces before inline comment
                  Open

                          "aiCombinedTodOtherText": data.get("aicombinedtodothertext") if is_other_tod else "", # only custom/other TOD should have months and other_text
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate inline comments by at least two spaces.

                  An inline comment is a comment on the same line as a statement.
                  Inline comments should be separated by at least two spaces from the
                  statement. They should start with a # and a single space.
                  
                  Each line of a block comment starts with a # and a single space
                  (unless it is indented text inside the comment).
                  
                  Okay: x = x + 1  # Increment x
                  Okay: x = x + 1    # Increment x
                  Okay: # Block comment
                  E261: x = x + 1 # Increment x
                  E262: x = x + 1  #Increment x
                  E262: x = x + 1  #  Increment x
                  E265: #Block comment
                  E266: ### Block comment

                  Expected 2 blank lines, found 1
                  Open

                  def fsbid_org_to_talentmap_org(data):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Expected 2 blank lines, found 1
                  Open

                  def get_agendas_by_panel_export(pk, jwt_token, host=None):
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate top-level function and class definitions with two blank lines.

                  Method definitions inside a class are separated by a single blank
                  line.
                  
                  Extra blank lines may be used (sparingly) to separate groups of
                  related functions.  Blank lines may be omitted between a bunch of
                  related one-liners (e.g. a set of dummy implementations).
                  
                  Use blank lines in functions, sparingly, to indicate logical
                  sections.
                  
                  Okay: def a():\n    pass\n\n\ndef b():\n    pass
                  Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                  Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                  Okay: default = 1\nfoo = 1
                  Okay: classify = 1\nfoo = 1
                  
                  E301: class Foo:\n    b = 0\n    def bar():\n        pass
                  E302: def a():\n    pass\n\ndef b(n):\n    pass
                  E302: def a():\n    pass\n\nasync def b(n):\n    pass
                  E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                  E303: def a():\n\n\n\n    pass
                  E304: @decorator\n\ndef a():\n    pass
                  E305: def a():\n    pass\na()
                  E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                  Blank line contains whitespace
                  Open

                      
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  At least two spaces before inline comment
                  Open

                          "ailtodmonthsnum": tod_months if is_other_tod else None, # only custom/other TOD should pass back months and other_text
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate inline comments by at least two spaces.

                  An inline comment is a comment on the same line as a statement.
                  Inline comments should be separated by at least two spaces from the
                  statement. They should start with a # and a single space.
                  
                  Each line of a block comment starts with a # and a single space
                  (unless it is indented text inside the comment).
                  
                  Okay: x = x + 1  # Increment x
                  Okay: x = x + 1    # Increment x
                  Okay: # Block comment
                  E261: x = x + 1 # Increment x
                  E262: x = x + 1  #Increment x
                  E262: x = x + 1  #  Increment x
                  E265: #Block comment
                  E266: ### Block comment

                  At least two spaces before inline comment
                  Open

                          "ailtodothertext": tod_long_desc if is_other_tod else None, # only custom/other TOD should pass back months and other_text
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Separate inline comments by at least two spaces.

                  An inline comment is a comment on the same line as a statement.
                  Inline comments should be separated by at least two spaces from the
                  statement. They should start with a # and a single space.
                  
                  Each line of a block comment starts with a # and a single space
                  (unless it is indented text inside the comment).
                  
                  Okay: x = x + 1  # Increment x
                  Okay: x = x + 1    # Increment x
                  Okay: # Block comment
                  E261: x = x + 1 # Increment x
                  E262: x = x + 1  #Increment x
                  E262: x = x + 1  #  Increment x
                  E265: #Block comment
                  E266: ### Block comment

                  Trailing whitespace
                  Open

                          'ref_text', 
                  Severity: Minor
                  Found in talentmap_api/fsbid/services/agenda.py by pep8

                  Trailing whitespace is superfluous.

                  The warning returned varies on whether the line itself is blank,
                  for easier filtering for those who want to indent their blank lines.
                  
                  Okay: spam(1)\n#
                  W291: spam(1) \n#
                  W293: class Foo(object):\n    \n    bang = 12

                  There are no issues that match your filters.

                  Category
                  Status