mirror of
https://github.com/inventree/InvenTree.git
synced 2026-10-03 17:05:18 +00:00
Enforce deterministic ordering for plugin settings (#11643)
* Enforce deterministic ordering for plugin settings * Fix typo
This commit is contained in:
1 parent
e4ac02a840
commit
5f3e9a0652
2 files changed
+14
-2
No files matched your search
@@ -97,6 +97,10 @@ class MachineSettingList(APIView):
|
||||
)
|
||||
all_settings.extend(list(settings_dict.values()))
|
||||
|
||||
# Sort settings by the 'key' field before returning,
|
||||
# to ensure a deterministic order in the API response
|
||||
all_settings = sorted(all_settings, key=lambda x: x.key)
|
||||
|
||||
results = MachineSerializers.MachineSettingSerializer(
|
||||
all_settings, many=True
|
||||
).data
|
||||
|
||||
@@ -380,8 +380,12 @@ class PluginAllSettingList(APIView):
|
||||
settings_definition=settings, plugin=plugin.plugin_config()
|
||||
)
|
||||
|
||||
# Sort settings by the 'key' field before returning,
|
||||
# to ensure a deterministic order in the API response
|
||||
settings_values = sorted(settings_dict.values(), key=lambda x: x.key)
|
||||
|
||||
results = PluginSerializers.PluginSettingSerializer(
|
||||
list(settings_dict.values()), many=True
|
||||
settings_values, many=True
|
||||
).data
|
||||
return Response(results)
|
||||
|
||||
@@ -444,8 +448,12 @@ class PluginUserSettingList(APIView):
|
||||
user=request.user,
|
||||
)
|
||||
|
||||
# Sort settings by the 'key' field before returning,
|
||||
# to ensure a deterministic order in the API response
|
||||
settings_values = sorted(settings_dict.values(), key=lambda x: x.key)
|
||||
|
||||
results = PluginSerializers.PluginUserSettingSerializer(
|
||||
list(settings_dict.values()), many=True
|
||||
settings_values, many=True
|
||||
).data
|
||||
return Response(results)
|
||||
|
||||
|
||||
Reference in new issue
Block a user