django/django

View on GitHub
django/forms/boundfield.py

Summary

Maintainability
C
1 day
Test Coverage

File boundfield.py has 301 lines of code (exceeds 250 allowed). Consider refactoring.
Open

import re

from django.core.exceptions import ValidationError
from django.forms.utils import RenderableFieldMixin, pretty_name
from django.forms.widgets import MultiWidget, Textarea, TextInput
Severity: Minor
Found in django/forms/boundfield.py - About 3 hrs to fix

    BoundField has 26 functions (exceeds 20 allowed). Consider refactoring.
    Open

    class BoundField(RenderableFieldMixin):
        "A Field plus data"
    
        def __init__(self, form, field, name):
            self.form = form
    Severity: Minor
    Found in django/forms/boundfield.py - About 3 hrs to fix

      Function label_tag has a Cognitive Complexity of 19 (exceeds 5 allowed). Consider refactoring.
      Open

          def label_tag(self, contents=None, attrs=None, label_suffix=None, tag=None):
              """
              Wrap the given contents in a <label>, if the field has an ID attribute.
              contents should be mark_safe'd to avoid HTML escaping. If contents
              aren't given, use the field's HTML-escaped label.
      Severity: Minor
      Found in django/forms/boundfield.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 build_widget_attrs has a Cognitive Complexity of 14 (exceeds 5 allowed). Consider refactoring.
      Open

          def build_widget_attrs(self, attrs, widget=None):
              widget = widget or self.field.widget
              attrs = dict(attrs)  # Copy attrs to avoid modifying the argument.
              if (
                  widget.use_required_attribute(self.initial)
      Severity: Minor
      Found in django/forms/boundfield.py - About 1 hr 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 as_widget has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
      Open

          def as_widget(self, widget=None, attrs=None, only_initial=False):
              """
              Render the field by rendering the passed widget, adding any HTML
              attributes passed as attrs. If a widget isn't specified, use the
              field's default widget.
      Severity: Minor
      Found in django/forms/boundfield.py - About 45 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

      There are no issues that match your filters.

      Category
      Status