Skip to content

[BUG] Upgrading to eXide 3.1.0 does not gracefully pick up new serialization preferences #334

@joewiz

Description

@joewiz

Describe the bug

#328, included in eXide 3.1.0, added preferences for the indent and expand-xincludes serialization parameters as preferences.

When users upgrade from earlier versions of eXide, the preferences are not registered. This causes unexpected serialization when loading documents.

Also, users don't see the new preferences unless they shift-reload the page after installing eXide.

Expected behavior

The new version's default behavior should match that of older versions, and new preferences should kick in gracefully. When eXide detects an old version is making a request, it should trigger a page reload to fetch the latest javascript.

To Reproduce

I'd like to add cypress/mocha tests for this, but until then my steps to reproduce are:

  1. Perform a fresh install of eXist 5.3.0, which deploys eXide 3.0.0.
  2. Open eXide 3.0.0, reload. Notice via Developer Tools > Application > Storage > Local Storage > http://localhost:8080 that preferences are stored in local storage as eXide.preferences.
  3. Install eXide 3.1.0, reload. Notice preferences are not updated.
  4. Go to Edit > Preferences > Reset Defaults. Notice preferences are updated.

Context (please always complete the following information):

  • OS: 11.4
  • eXist-db Version: 5.3.0
  • Java Version: 1.8
  • App Version: 3.1.0

Additional context

  • How is eXist-db installed? DMG
  • Any custom changes in e.g. conf.xml? n/a

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions