Black Lives Matter. Please consider donating to Black Girls Code today.

Callback issue after updating dash to 1.11.0

After updating from Dash 1.9.0 to 1.11.0 I ran into the following issue:

I use the following callback to simply add titles to some Collapse Buttons.
The titles are dynamic and stored in a JSON file that was written to from an earlier ‘page’ in the multi-page-app.

@app.callback([Output(f"collapse-title-{i}", 'children') for i in models],
            [Input('tabs-card','children')])
def title_collapse_buttons(x):
    '''Titles the collapse buttons based on values stored in JSON file'''
    app_vals = helpers.json_load(cfg.app_json)
    d = f"{cfg.Desal[app_vals['desal']].rstrip()} Desalination System"
    s = cfg.Solar[app_vals['solar']].rstrip()
    f = cfg.Financial[app_vals['finance']].rstrip()
    print(f"Title should be {d}")
    return d,s,f

From the print statement I’m getting:
“Title should be Vacuum Air Gap Membrane Distillation Desalination System”
so it seems the callback is being triggered.

The titles do not change from “Title Here” which is the dummy title I have in the layout:

            dbc.Button(
                html.Div("Title Here",id=f'collapse-title-{i}'),
                color="primary",
                id=f"{i}-toggle".replace(' ','_'),
            ),

Any ideas?

Hm, it’s hard to say. Is it possible for you to create a new app that has a similar callback structure but is simple, reproducible, and demonstrates the issue? Then we will be able to verify whether this is a bug or not.