Southclaws / sampctl

The Swiss Army Knife of SA:MP - vital tools for any server owner or library maintainer.
GNU General Public License v3.0
242 stars 33 forks source link

Untangle internal dependencies #373

Closed Southclaws closed 4 years ago

Southclaws commented 4 years ago

The current layout of the codebase makes it very difficult to navigate and understand individual concerns that each package has.

This branch aims to solve that by slowly separating small components out into their own packages and reducing the complexity of dependencies between internal components.

This will start with removing the types package and putting all the structures and APIs within in their respective packages. This isn't as easy as it sounds as almost every other internal package depends on types and some of the structures are used in multiple packages, so moving these out results in cyclical dependencies.