The uwsgi::app class uses a template that will indiscriminately sort the application options alphabetically. This breaks our uwsgi configuration, since the ordering of uwsgi config options have meaning in the uwsgi config parser:
https://uwsgi-docs.readthedocs.io/en/latest/ParsingOrder.html
In our specific case: We have some apps that run on Python 2, and some that run on Python 3. However, the sorting of the options will cause the plugin option to be sorted after the module option, meaning that uwsgi will attempt to load the application module using the wrong plugin.
The
uwsgi::appclass uses a template that will indiscriminately sort the application options alphabetically. This breaks our uwsgi configuration, since the ordering of uwsgi config options have meaning in the uwsgi config parser:https://uwsgi-docs.readthedocs.io/en/latest/ParsingOrder.html
In our specific case: We have some apps that run on Python 2, and some that run on Python 3. However, the sorting of the options will cause the
pluginoption to be sorted after themoduleoption, meaning that uwsgi will attempt to load the application module using the wrong plugin.