Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content

Draft: refactoring proposal : changes package organization

Vincent Bourgmayer requested to merge main-11-beta-change_packages into main

Description

Fahim pointed out that eDrive's source code is complicated when he started to work on it. I think that package organization doesn't help.

In main branch code, classes are organized by functions (services with services, etc.)

The current proposal four new packages to group component based on the behaviour they're related to :

  • foundation.e.drive.setup for stuff related to eDrive setup, so when user add its account
  • foundation.e.drive.detections for stuff related to file's change detections like FileObserver, ObserverService, etc.
  • foundation.e.drive.synchronizations for stuff related to effective file transfer (upload, download, ...)
  • foundation.e.drive.ui for stuff related to user interface: widget, settings, etc.

Component which is related to more than one of the above stay in its previous package: foundation.e.drive

Do you think it could help to make things easier to work with ?

Screenshots

from main branch proposal
image image
with more details

image

Technical details

Tests

Issues

10 commandments of code reviews

👪 https://gitlab.e.foundation/internal/wiki/-/wikis/development/code-review

Edited by Vincent Bourgmayer

Merge request reports

Loading