New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor #60

merged 4 commits into from Dec 9, 2017


None yet
1 participant

50Wliu commented Dec 9, 2017


  • Filling out the template is required. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion.
  • All new code requires tests to ensure against regressions

Description of the Change

This refactors archive-view to be more in line with how similar packages are designed. Notable changes:

  • Remove ArchiveEditor class and make the entry file an object instead of a class
  • Move all view instantiation to ArchiveEditorView instead of splitting it between ArchiveEditor and ArchiveEditorView
  • Move all pane item methods to ArchiveEditorView
  • Move file event listeners into the ArchiveEditorView constructor and remove the confusingly-named setModel method
  • Update title and archive view on file rename

Alternate Designs



Better separation of concerns between ArchiveEditor (package lifecycle and services) and ArchiveEditorView (the view and pane item).

Possible Drawbacks

Unintentionally-introduced bugs as a result of the file restructuring.
This might also break any saved state that was relying on the ArchiveEditor deserializer name instead of the new ArchiveEditorView. I'll have to look through the commit history and then implement a shim if necessary.
I've added back the old ArchiveEditor deserializer to ensure smooth transitions to the new deserializer. After a few versions have passed it should be safe to remove it.

Applicable Issues


50Wliu added some commits Dec 9, 2017

@50Wliu 50Wliu merged commit 6a5b83a into master Dec 9, 2017

2 checks passed

continuous-integration/appveyor/pr AppVeyor build succeeded
continuous-integration/travis-ci/pr The Travis CI build passed

@50Wliu 50Wliu deleted the wl-refactor branch Dec 9, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment