Messed up table contents with SetParams function written in earlier version

SDK: v12.10.0
Platform: v22.04.0

Current Behavior

In an earlier version of our app a SetParams function for a table has been written.
In this function a list is created where every item consists of a dictionary with all the items of the table.
The items were not in the same order als the table, but based on the name of the parameter matching the name of the column, every parameter ended up in the right column

Since the app is updated to a later version (not necessary only since the current version), all the parameters are messed up (in the wrong column) after using the SetParams function. It seems in this version, the name of a dictionary item does not matter anymore, only the order of the items in the dictionary determines where the parameter is written to in the table

Expected Behavior

I would expected to not be surprised by this bug, but to have a notification or a warning or something about the new way this works in Viktor. If this notification has been there, I’ve missed it.

Context (optional, but preferred)

Notifying you about this misunderstanding, for you to learn from.
Developers within VolkerWessels are losing trust in Viktor (if only a bit) when surprised by things like this.

Hi Guido, I understand that this is pretty annoying and not as expected.

I am trying to reproduce the issue, but for me it seems to work fine. Do I understand correctly that the following implementation does not work for you?

    def set_table(self, params, **kwargs):
        return SetParamsResult({
            'table': [
                {'c1': 'a text', 'c2': 3.5, 'c3': True},
                {'c2': 4.5, 'c3': False, 'c1': 'another text'},
            ]
        })

To help kevin in reproducing this, can you elaborate on:

Since the app is updated to a later version

Do you mean an update of the SDK version or an update of the platform version? What exactly changed between the working state and the not working state?

I’ll try to find this out, and come back on this

Guido and I have been trying to reproduce the issue, but without success. It might have been a side effect of other code changes.

I’ll keep the topic open in case anything pops up.