• Bug#1064690: python-django-crispy-forms-foundation: FTBFS: TypeError: A

    From Lucas Nussbaum@21:1/5 to All on Sun Feb 25 21:00:03 2024
    Source: python-django-crispy-forms-foundation
    Version: 0.9.0+ds-1
    Severity: serious
    Justification: FTBFS
    Tags: trixie sid ftbfs
    User: lucas@debian.org
    Usertags: ftbfs-20240224 ftbfs-trixie

    Hi,

    During a rebuild of all packages in sid, your package failed to build
    on amd64.


    Relevant part (hopefully):
    make[1]: Entering directory '/<<PKGBUILDDIR>>'
    PYTHONPATH=. python3 -m pytest tests -v
    ============================= test session starts ==============================
    platform linux -- Python 3.11.8, pytest-7.4.4, pluggy-1.4.0 -- /usr/bin/python3
    cachedir: .pytest_cache
    django: settings: sandbox.settings.tests (from ini)
    rootdir: /<<PKGBUILDDIR>>
    configfile: setup.cfg
    plugins: django-4.5.2
    collecting ... collected 15 items

    tests/001_ping_demo.py::test_ping_reverse_urlname[home-url_args0-url_kwargs0] PASSED [ 6%]
    tests/001_ping_demo.py::test_ping_reverse_urlname[demo:crispy-demo-form-fieldsets-url_args1-url_kwargs1] FAILED [ 13%]
    tests/001_ping_demo.py::test_ping_reverse_urlname[demo:crispy-demo-form-tabs-url_args2-url_kwargs2] FAILED [ 20%]
    tests/001_ping_demo.py::test_ping_reverse_urlname[demo:crispy-demo-form-accordions-url_args3-url_kwargs3] FAILED [ 26%]
    tests/001_ping_demo.py::test_ping_reverse_urlname[demo:crispy-demo-success-url_args4-url_kwargs4] PASSED [ 33%]
    tests/002_layout.py::test_basic[foundation-6] FAILED [ 40%]
    tests/002_layout.py::test_layout[foundation-6] PASSED [ 46%]
    tests/002_layout.py::test_advanced[foundation-6] PASSED [ 53%]
    tests/003_fields.py::test_fakefield[foundation-6] FAILED [ 60%]
    tests/003_fields.py::test_inlinefield[foundation-6] FAILED [ 66%]
    tests/003_fields.py::test_inlineswitchfield[foundation-6] FAILED [ 73%]
    tests/004_buttons.py::test_buttongroup[foundation-6] FAILED [ 80%]
    tests/004_buttons.py::test_buttonelement[foundation-6] FAILED [ 86%]
    tests/005_containers.py::test_tab[foundation-6] FAILED [ 93%]
    tests/005_containers.py::test_accordion[foundation-6] FAILED [100%]

    =================================== FAILURES ===================================
    _ test_ping_reverse_urlname[demo:crispy-demo-form-fieldsets-url_args1-url_kwargs1] _

    client = <django.test.client.Client object at 0x7feba16fa590>
    url_name = 'demo:crispy-demo-form-fieldsets', url_args = []
    url_kwargs = {'foundation_version': 6}

    @pytest.mark.parametrize("url_name,url_args,url_kwargs", [
    ("home", [], {}),
    ("demo:crispy-demo-form-fieldsets", [], {"foundation_version": 6}),
    ("demo:crispy-demo-form-tabs", [], {"foundation_version": 6}),
    ("demo:crispy-demo-form-accordions", [], {"foundation_version": 6}),
    ("demo:crispy-demo-success", [], {"foundation_version": 6}),
    ])
    def test_ping_reverse_urlname(client, url_name, url_args, url_kwargs):
    """
    Ping reversed url names
    """
    response = client.get(reverse(url_name, args=url_args, kwargs=url_kwargs))

    tests/001_ping_demo.py:22:
    _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
    /usr/lib/python3/dist-packages/django/test/client.py:927: in get
    response = super().get(path, data=data, secure=secure, headers=headers, **extra)
    /usr/lib/python3/dist-packages/django/test/client.py:457: in get
    return self.generic( /usr/lib/python3/dist-packages/django/test/client.py:609: in generic
    return self.request(**r) /usr/lib/python3/dist-packages/django/test/client.py:891: in request
    self.check_exception(response) /usr/lib/python3/dist-packages/django/test/client.py:738: in check_exception
    raise exc_value /usr/lib/python3/dist-packages/django/core/handlers/exception.py:55: in inner
    response = get_response(request) /usr/lib/python3/dist-packages/django/core/handlers/base.py:220: in _get_response
    response = response.render() /usr/lib/python3/dist-packages/django/template/response.py:114: in render
    self.content = self.rendered_content /usr/lib/python3/dist-packages/django/template/response.py:92: in rendered_content
    return template.render(context, self._request) /usr/lib/python3/dist-packages/django/template/backends/django.py:61: in render
    return self.template.render(context) /usr/lib/python3/dist-packages/django/template/base.py:175: in render
    return self._render(context) /usr/lib/python3/dist-packages/django/test/utils.py:112: in instrumented_test_render
    return self.nodelist.render(context) /usr/lib/python3/dist-packages/django/template/base.py:1005: in render
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:1005: in <listcomp>
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:966: in render_annotated
    return self.render(context) /usr/lib/python3/dist-packages/django/template/loader_tags.py:157: in render
    return compiled_parent._render(context) /usr/lib/python3/dist-packages/django/test/utils.py:112: in instrumented_test_render
    return self.nodelist.render(context) /usr/lib/python3/dist-packages/django/template/base.py:1005: in render
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:1005: in <listcomp>
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:966: in render_annotated
    return self.render(context) /usr/lib/python3/dist-packages/django/template/loader_tags.py:157: in render
    return compiled_parent._render(context) /usr/lib/python3/dist-packages/django/test/utils.py:112: in instrumented_test_render
    return self.nodelist.render(context) /usr/lib/python3/dist-packages/django/template/base.py:1005: in render
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:1005: in <listcomp>
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:966: in render_annotated
    return self.render(context) /usr/lib/python3/dist-packages/django/template/loader_tags.py:63: in render
    result = block.nodelist.render(context) /usr/lib/python3/dist-packages/django/template/base.py:1005: in render
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:1005: in <listcomp>
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:966: in render_annotated
    return self.render(context) /usr/lib/python3/dist-packages/crispy_forms/templatetags/crispy_forms_tags.py:199: in render
    c = self.get_render(context).flatten() /usr/lib/python3/dist-packages/crispy_forms/templatetags/crispy_forms_tags.py:117: in get_render
    actual_form.form_html = helper.render_layout( /usr/lib/python3/dist-packages/crispy_forms/helper.py:276: in render_layout
    html = self.layout.render(form, context, template_pack=template_pack) /usr/lib/python3/dist-packages/crispy_forms/layout.py:142: in render
    return self.get_rendered_fields(form, context, template_pack, **kwargs) /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    /usr/lib/python3/dist-packages/crispy_forms/utils.py:65: in render_field
    return field.render(form, context, template_pack=template_pack) /usr/lib/python3/dist-packages/crispy_forms/layout.py:579: in render
    fields = self.get_rendered_fields(form, context, template_pack, **kwargs) /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    /usr/lib/python3/dist-packages/crispy_forms/utils.py:65: in render_field
    return field.render(form, context, template_pack=template_pack) /usr/lib/python3/dist-packages/crispy_forms/layout.py:747: in render
    fields = self.get_rendered_fields(form, context, template_pack, **kwargs) /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    /usr/lib/python3/dist-packages/crispy_forms/utils.py:65: in render_field
    return field.render(form, context, template_pack=template_pack) /usr/lib/python3/dist-packages/crispy_forms/layout.py:747: in render
    fields = self.get_rendered_fields(form, context, template_pack, **kwargs) /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    /usr/lib/python3/dist-packages/crispy_forms/utils.py:65: in render_field
    return field.render(form, context, template_pack=template_pack) /usr/lib/python3/dist-packages/crispy_forms/layout.py:747: in render
    fields = self.get_rendered_fields(form, context, template_pack, **kwargs) /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    /usr/lib/python3/dist-packages/crispy_forms/utils.py:65: in render_field
    return field.render(form, context, template_pack=template_pack) /usr/lib/python3/dist-packages/crispy_forms/layout.py:747: in render
    fields = self.get_rendered_fields(form, context, template_pack, **kwargs) /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

    field = <crispy_forms_foundation.layout.fields.SwitchField object at 0x7feba195dd50>
    form = <FormByFieldsetsForm bound=False, valid=False, fields=(full_input;column_input_1;column_input_2;column_input_3;textare...dio_input;checkbox_input;checkbox_switch_input_1;checkbox_switch_input_2;inlinefield_input;inlinejustifiedfield_input)>
    context = [{'True': True, 'False': False, 'None': None}, {'csrf_token': <SimpleLazyObject: 'MPFw25TMUFzbhJpFTUpE86K14AwAYUFxKauv...': ''}, {'field': <django.forms.boundfield.BoundField object at 0x7feba14e2e10>, 'labelclass': None, 'flat_attrs': ''}]
    template = None, labelclass = None, layout_object = None, attrs = None template_pack = 'foundation-6', extra_context = None, kwargs = {}
    added_keys = [], FAIL_SILENTLY = True

    def render_field(
    field,
    form,
    context,
    template=None,
    labelclass=None,
    layout_object=None,
    attrs=None,
    template_pack=TEMPLATE_PACK,
    extra_context=None,
    **kwargs,
    ):
    """
    Renders a django-crispy-forms field

    :param field: Can be a string or a Layout object like `Row`. If it's a layout
    object, we call its render method, otherwise we instantiate a BoundField
    and render it using default template 'CRISPY_TEMPLATE_PACK/field.html'
    The field is added to a list that the form holds called `rendered_fields`
    to avoid double rendering fields.
    :param form: The form/formset to which that field belongs to.
    :template: Template used for rendering the field.
    :layout_object: If passed, it points to the Layout object that is being rendered.
    We use it to store its bound fields in a list called `layout_object.bound_fields`
    :attrs: Attributes for the field's widget
    :template_pack: Name of the template pack to be used for rendering `field`
    :extra_context: Dictionary to be added to context, added variables by the layout object
    """
    added_keys = [] if extra_context is None else extra_context.keys()
    with KeepContext(context, added_keys):
    if field is None:
    return SafeString("")

    FAIL_SILENTLY = getattr(settings, "CRISPY_FAIL_SILENTLY", True)

    if hasattr(field, "render"):
    return field.render(form, context, template_pack=template_pack)
    E TypeError: SwitchField.render() missing 1 required positional argument: 'context'

    /usr/lib/python3/dist-packages/crispy_forms/utils.py:65: TypeError ------------------------------ Captured log call -------------------------------
    ERROR django.request:log.py:241 Internal Server Error: /crispy-forms/foundation-6/fieldsets/
    Traceback (most recent call last):
    File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 55, in inner
    response = get_response(request)
    ^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/core/handlers/base.py", line 220, in _get_response
    response = response.render()
    ^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/response.py", line 114, in render
    self.content = self.rendered_content
    ^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/response.py", line 92, in rendered_content
    return template.render(context, self._request)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/backends/django.py", line 61, in render
    return self.template.render(context)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 175, in render
    return self._render(context)
    ^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/test/utils.py", line 112, in instrumented_test_render
    return self.nodelist.render(context)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
    return SafeString("".join([node.render_annotated(context) for node in self]))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in <listcomp>
    return SafeString("".join([node.render_annotated(context) for node in self]))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
    return self.render(context)
    ^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/loader_tags.py", line 157, in render
    return compiled_parent._render(context)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/test/utils.py", line 112, in instrumented_test_render
    return self.nodelist.render(context)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
    return SafeString("".join([node.render_annotated(context) for node in self]))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in <listcomp>
    return SafeString("".join([node.render_annotated(context) for node in self]))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
    return self.render(context)
    ^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/loader_tags.py", line 157, in render
    return compiled_parent._render(context)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/test/utils.py", line 112, in instrumented_test_render
    return self.nodelist.render(context)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
    return SafeString("".join([node.render_annotated(context) for node in self]))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in <listcomp>
    return SafeString("".join([node.render_annotated(context) for node in self]))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
    return self.render(context)
    ^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/loader_tags.py", line 63, in render
    result = block.nodelist.render(context)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
    return SafeString("".join([node.render_annotated(context) for node in self]))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in <listcomp>
    return SafeString("".join([node.render_annotated(context) for node in self]))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
    return self.render(context)
    ^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/templatetags/crispy_forms_tags.py", line 199, in render
    c = self.get_render(context).flatten()
    ^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/templatetags/crispy_forms_tags.py", line 117, in get_render
    actual_form.form_html = helper.render_layout(
    ^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/helper.py", line 276, in render_layout
    html = self.layout.render(form, context, template_pack=template_pack)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 142, in render
    return self.get_rendered_fields(form, context, template_pack, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 105, in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 105, in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/utils.py", line 65, in render_field
    return field.render(form, context, template_pack=template_pack)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 579, in render
    fields = self.get_rendered_fields(form, context, template_pack, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 105, in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 105, in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/utils.py", line 65, in render_field
    return field.render(form, context, template_pack=template_pack)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 747, in render
    fields = self.get_rendered_fields(form, context, template_pack, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 105, in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 105, in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/utils.py", line 65, in render_field
    return field.render(form, context, template_pack=template_pack)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 747, in render
    fields = self.get_rendered_fields(form, context, template_pack, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 105, in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 105, in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/utils.py", line 65, in render_field
    return field.render(form, context, template_pack=template_pack)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 747, in render
    fields = self.get_rendered_fields(form, context, template_pack, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 105, in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 105, in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/utils.py", line 65, in render_field
    return field.render(form, context, template_pack=template_pack)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 747, in render
    fields = self.get_rendered_fields(form, context, template_pack, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 105, in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    File "/usr/lib/python3/dist-packages/crispy_forms/layout.py", line 105, in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3/dist-packages/crispy_forms/utils.py", line 65, in render_field
    return field.render(form, context, template_pack=template_pack)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: SwitchField.render() missing 1 required positional argument: 'context'
    _ test_ping_reverse_urlname[demo:crispy-demo-form-tabs-url_args2-url_kwargs2] __

    client = <django.test.client.Client object at 0x7feba0fb4d10>
    url_name = 'demo:crispy-demo-form-tabs', url_args = []
    url_kwargs = {'foundation_version': 6}

    @pytest.mark.parametrize("url_name,url_args,url_kwargs", [
    ("home", [], {}),
    ("demo:crispy-demo-form-fieldsets", [], {"foundation_version": 6}),
    ("demo:crispy-demo-form-tabs", [], {"foundation_version": 6}),
    ("demo:crispy-demo-form-accordions", [], {"foundation_version": 6}),
    ("demo:crispy-demo-success", [], {"foundation_version": 6}),
    ])
    def test_ping_reverse_urlname(client, url_name, url_args, url_kwargs):
    """
    Ping reversed url names
    """
    response = client.get(reverse(url_name, args=url_args, kwargs=url_kwargs))

    tests/001_ping_demo.py:22:
    _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
    /usr/lib/python3/dist-packages/django/test/client.py:927: in get
    response = super().get(path, data=data, secure=secure, headers=headers, **extra)
    /usr/lib/python3/dist-packages/django/test/client.py:457: in get
    return self.generic( /usr/lib/python3/dist-packages/django/test/client.py:609: in generic
    return self.request(**r) /usr/lib/python3/dist-packages/django/test/client.py:891: in request
    self.check_exception(response) /usr/lib/python3/dist-packages/django/test/client.py:738: in check_exception
    raise exc_value /usr/lib/python3/dist-packages/django/core/handlers/exception.py:55: in inner
    response = get_response(request) /usr/lib/python3/dist-packages/django/core/handlers/base.py:220: in _get_response
    response = response.render() /usr/lib/python3/dist-packages/django/template/response.py:114: in render
    self.content = self.rendered_content /usr/lib/python3/dist-packages/django/template/response.py:92: in rendered_content
    return template.render(context, self._request) /usr/lib/python3/dist-packages/django/template/backends/django.py:61: in render
    return self.template.render(context) /usr/lib/python3/dist-packages/django/template/base.py:175: in render
    return self._render(context) /usr/lib/python3/dist-packages/django/test/utils.py:112: in instrumented_test_render
    return self.nodelist.render(context) /usr/lib/python3/dist-packages/django/template/base.py:1005: in render
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:1005: in <listcomp>
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:966: in render_annotated
    return self.render(context) /usr/lib/python3/dist-packages/django/template/loader_tags.py:157: in render
    return compiled_parent._render(context) /usr/lib/python3/dist-packages/django/test/utils.py:112: in instrumented_test_render
    return self.nodelist.render(context) /usr/lib/python3/dist-packages/django/template/base.py:1005: in render
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:1005: in <listcomp>
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:966: in render_annotated
    return self.render(context) /usr/lib/python3/dist-packages/django/template/loader_tags.py:157: in render
    return compiled_parent._render(context) /usr/lib/python3/dist-packages/django/test/utils.py:112: in instrumented_test_render
    return self.nodelist.render(context) /usr/lib/python3/dist-packages/django/template/base.py:1005: in render
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:1005: in <listcomp>
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:966: in render_annotated
    return self.render(context) /usr/lib/python3/dist-packages/django/template/loader_tags.py:63: in render
    result = block.nodelist.render(context) /usr/lib/python3/dist-packages/django/template/base.py:1005: in render
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:1005: in <listcomp>
    return SafeString("".join([node.render_annotated(context) for node in self]))
    /usr/lib/python3/dist-packages/django/template/base.py:966: in render_annotated
    return self.render(context) /usr/lib/python3/dist-packages/crispy_forms/templatetags/crispy_forms_tags.py:199: in render
    c = self.get_render(context).flatten() /usr/lib/python3/dist-packages/crispy_forms/templatetags/crispy_forms_tags.py:117: in get_render
    actual_form.form_html = helper.render_layout( /usr/lib/python3/dist-packages/crispy_forms/helper.py:276: in render_layout
    html = self.layout.render(form, context, template_pack=template_pack) /usr/lib/python3/dist-packages/crispy_forms/layout.py:142: in render
    return self.get_rendered_fields(form, context, template_pack, **kwargs) /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in get_rendered_fields
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    /usr/lib/python3/dist-packages/crispy_forms/layout.py:105: in <genexpr>
    "".join(render_field(field, form, context, template_pack=template_pack, **kwargs) for field in self.fields)
    _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

    field = <crispy_forms_foundation.layout.containers.TabHolder object at 0x7feba0fb4a90>
    form = <FormByTabsForm bound=False, valid=Unknown, fields=(full_input;column_input_1;column_input_2;column_input_3;textarea_i...dio_input;checkbox_input;checkbox_switch_input_1;checkbox_switch_input_2;inlinefield_input;inlinejustifiedfield_input)>

    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Debian Bug Tracking System@21:1/5 to All on Mon Feb 26 09:10:03 2024
    This is a multi-part message in MIME format...

    Your message dated Mon, 26 Feb 2024 09:01:32 +0100
    with message-id <ZdxFXJ1YvJ812Zju@grub.nussbaum.fr>
    and subject line Re: Bug#1064690: python-django-crispy-forms-foundation: FTBFS: TypeError: AccordionHolder.render() missing 1 required positional argument: 'context'
    has caused the Debian Bug report #1064690,
    regarding python-django-crispy-forms-foundation: FTBFS: TypeError: AccordionHolder.render() missing 1 required positional argument: 'context'
    to be marked as done.

    This means that you claim that the problem has been dealt with.
    If this is not the case it is now your responsibility to reopen the
    Bug report if necessary, and/or fix the problem forthwith.

    (NB: If you are a system administrator and have no idea what this
    message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@bugs.debian.org
    immediately.)


    --
    1064690: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1064690
    Debian Bug Tracking System
    Contact owner@bugs.debian.org with problems

    Received: (at submit) by bugs.debian.org; 25 Feb 2024 19:49:30 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.6-bugs.debian.org_2005_01_02
    (2021-04-09) on buxtehude.debian.org
    X-Spam-Level:
    X-Spam-Status: No, score=-105.3 required=4.0 tests=BAYES_00,DKIMWL_WL_HIGH,
    DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FROMDEVELOPER,
    FVGT_m_MULTI_ODD,SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,
    UNPARSEABLE_RELAY,USER_IN_DKIM_WELCOMELIST,USER_IN_DKIM_WHITELIST,
    WEIRD_PORT autolearn=ham autolearn_force=no
    version=3.4.6-bugs.debian.org_2005_01_02
    X-Spam-Bayes: score:0.0000 Tokens: new, 140; hammy, 150; neutral, 309; spammy,
    0. spammytokens: hammytokens:0.000-+--python3,
    0.000-+--Hx-spam-relays-external:sk:stravin, 0.000-+--H*RT:sk:stravin,
    0.000-+--Hx-spam-relays-external:311, 0.000-+--H*RT:311
    Return-path: <lucas@debian.org>
    Received: from stravi