Open StanZGenchev opened 3 years ago
Such settings are stored in browser's Local Storage
, for example
DIRIGIBLE.database
DIRIGIBLE.branding
DIRIGIBLE.IDE.GL.state.git
DIRIGIBLE.IDE.GL.state.terminal
DIRIGIBLE.IDE.GL.state.workbench
Proposal: Introduce new environment variable _(e.g. DIRIGIBLE_BRANDING_KEY
)_ to the list of branding related environment variables, that will be used as prefix when storing settings in the Local Storage
:
DIRIGIBLE_BRANDING_KEY=XXX
DIRIGIBLE.database
-> XXX.database
DIRIGIBLE.branding
-> XXX.branding
DIRIGIBLE.IDE.GL.state.git
-> XXX.IDE.GL.state.git
DIRIGIBLE.IDE.GL.state.terminal
-> XXX.IDE.GL.state.terminal
DIRIGIBLE.IDE.GL.state.workbench
-> XXX.IDE.GL.state.workbench
To go one step further the Eclipse Dirigible version could be used in the setting key name (assuming version 5.12.13):
DIRIGIBLE.database
-> DIRIGIBLE_5_12_13.database
DIRIGIBLE.branding
-> DIRIGIBLE_5_12_13.branding
DIRIGIBLE.IDE.GL.state.git
-> DIRIGIBLE_5_12_13.IDE.GL.state.git
DIRIGIBLE.IDE.GL.state.terminal
-> DIRIGIBLE_5_12_13.IDE.GL.state.terminal
DIRIGIBLE.IDE.GL.state.workbench
-> DIRIGIBLE_5_12_13.IDE.GL.state.workbench
Note: However this could cause unintended behaviour -> reseting all IDE settings when upgrading to a new version.
Describe the bug Currently, the layout and UI settings have no versioning. This results in glitches and usability bugs whenever default settings are updated and features are added in. For example, the 'Workspaces' tab in Workbench should not be closable anymore but since there is no way to force layout settings change, old users who have updated Dirigible are still able to close it. The current workaround is to tell the user to reset the layout manually.
Expected behavior There should be mechanism that detects whenever incompatible settings are introduced on upgrade and either reset the layout or carry out a migration similar to databases.