twenty
twenty copied to clipboard
feat: workspace sync
This PR introduces a comprehensive refactoring of the workspace:sync-metadata
command, alongside addressing various bug fixes. The refactoring aimed to enhance code modularity, readability, and maintainability. Key changes include the creation of new directory structures and classes, each serving a distinct purpose in the metadata synchronization process.
-
Comparators Directory: This directory contains class designed to compare standard objects against their database counterparts. The primary function of this class is to effectively identify differences.
-
Factories Directory: The factories directory goal is to contain object generation class. It contains logic to create new objects based on provided data. A typical use case involves creating Standard objects derived from decorators.
-
Services Directory: Just here for more readability.
-
Storage Directory: This directory serves as a memory storage for the
create
,update
, anddelete
collections. Its primary purpose is to support operations like the dropping of fields, objects, or relations, thereby providing a robust mechanism for managing changes within the metadata environment.
Fix #3442