Uploaded image for project: 'Nuxeo Drive '
  1. Nuxeo Drive
  2. NXDRIVE-1092

Architecture review

    XMLWordPrintable

    Details

    • Type: Epic
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 3.0.4
    • Fix Version/s: QualifiedToSchedule
    • Component/s: Framework

      Description

      Before starting the engine rewrite, we need to rethink the current architecture. I mean reorganizing components and be more modular.
      After that rework, it will be way simpler to think about the sync engine rewrite.

      Goals are:

      • Each component must work on its own and not be dispatched in others components.
      • A component can be optional and pluggable.
      • Easier Python 3 migration by compatibility checking (verifying a single module is more doable than the whole software). (no more revelant since NXDRIVE-691)

      For instance, let's take the Auto-Lock feature:

      • Ideally it should be a lone module that we decide to import and activate.
      • But currently, the feature is splitted into the Auto-Lock, Drive Edit, Notifications and DAO components. It is hard to understand and modify.

      Components list:

      • Sync engine (including watchers)
      • Direct Edit
      • Direct Transfer
      • Auto-Lock
      • GUI
      • CLI
      • Options
      • Database
      • Notifications
      • OS integration
      • Updater
      • Installer

        Attachments

          Activity

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: