twenty icon indicating copy to clipboard operation
twenty copied to clipboard

feat: workspace sync

Open magrinj opened this issue 1 year ago • 0 comments

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.

  1. 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.

  2. 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.

  3. Services Directory: Just here for more readability.

  4. Storage Directory: This directory serves as a memory storage for the create, update, and delete 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

magrinj avatar Jan 17 '24 10:01 magrinj