Skip to content

[Discussion] Ordering of middlewares= #6798

Open
@Dreamsorcerer

Description

@Dreamsorcerer

Describe the bug

Some users try to use Application(middlewares=...) and then use the setup() functions from other libraries, which add their own middlewares.

This can cause problems due to the ordering of middlewares. I suspect that passing a list of middlewares like this makes users less aware of the ordering of middlewares at the end of their setup.

Maybe we should consider disallowing the passing of middlewares and require later app.middlewares.append() etc.?

Or, lock the middlewares when they have been passed in, such that it can't be mixed with .append() or setup(). This allows a user to pass a fixed sequence of middlewares that will never change. If they need to use setup() or similar, then they must add all their middlewares as a separate step, paying attention to what order to add them along with the setup() calls.

Additional context

#6789

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions