Description
Is there an existing issue for this?
- I have searched the existing issues
Current Behavior
Apps that were created before v2.4.x are not working as expected. Specifically, the tables seem broken in some cases.
After upgrading to the latest lowcoder version from 2.3.0 to 2.4.x, user can no longer select rows on some tables, and tables no longer work with various issues. When a user clicks on a row, an error populates in the dev console:
index-4f883cee.js:265 Uncaught TypeError: Cannot convert undefined or null to object at Function.keys (<anonymous>) at index-4f883cee.js:855:680 at Map.forEach (<anonymous>) at t.fetchInfo (index-4f883cee.js:855:518) at a_n (index-4f883cee.js:832:24221) at n.value [as fetchInfo] (index-4f883cee.js:832:24403) at t.fetchInfo (index-4f883cee.js:832:27040) at a_n (index-4f883cee.js:832:24221) at n.value [as fetchInfo] (index-4f883cee.js:832:24403) at index-4f883cee.js:832:28275
One issue seems to be with data that has null values for some properties. Another issue seems to be related to columns not correctly mapping to the new table metadata structure. The two pictures below show a table column that cannot be fixed. The data mapping dropdown is hardcoded with {{currentCell}} and there are no other options.
If you duplicate the table, the new table does not work as well. Also, if you create a completely new table, you cannot rename it to the old table name without the table breaking again. For apps with queries that reference this table, they must all be refactored manually and a new table needs to be created in every app that experiences this issue. There does not seem to be a feasible workaround for this problem.
If a suite of apps are being developed over time, there is no way to upgrade the lowcoder platform and continue with existing apps. They must all be recreated, which blocks development progress. The current scenario is: you can never upgrade, you are stuck with the version you started in, and you must maintain several versions of this platform to be able to deploy a suite of apps that have been developed over time.
Expected Behavior
When an app that was created in a 2.3.x version of lowcoder to a 2.4.x version of lowcoder, it should behave normally without issues.
Potentially an upgrade path for these components should be developed so as their structure changes, there is a mapping from the old structure to the new structure that does not break the apps.
Steps to reproduce
Create an application in 2.3.0, with a table, and data backing that table that has null values for some fields/properties.
Import that application into a 2.4.x (2.4.5, for instance) version of lowcoder. Check for errors and bugs.
Environment
No response
Additional Information
No response
Metadata
Metadata
Assignees
Type
Projects
Status