cortoproject / corto

A hierarchical object store for connecting realtime machine data with web applications, historians & more
https://www.corto.io
MIT License
87 stars 14 forks source link

Organize different package kinds into new 'driver' scope #605

Closed SanderMertens closed 7 years ago

SanderMertens commented 7 years ago

There are different kinds of packages with special interfaces that allow extending corto functionality, for for example introducing new file formats, serialization formats or code generators, which are currently stored in corto/ext, corto/fmt and corto/gen.

These packages will now be organized under a driver scope that is located in the root. This reserves the corto scope for the corto framework and any additional packages developed by the corto organization. The packages under the driver scope will be referred to as "drivers", of which there can be several driver kinds.

In addition to the ones already mentioned, the driver/mnt scope shall contain mount drivers, which are packages that contain classes that implement the mount interface. The proposed convention for these packages is to have exactly one class that inherits from core/mount, which will be called mount.

SanderMertens commented 7 years ago

Additional conventions should be added to keep the root scope clean. Similar to a Linux OS, the root scope should only contain a fixed number of objects that serve to organize object structure.