Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Manager Interface #26

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

[WIP] Manager Interface #26

wants to merge 1 commit into from

Conversation

VoyTechnology
Copy link
Member

This is part of a long series of changes. It expands on the sentiment of the Command interface, but with the goal of handing everything as a method of the Manager interface.

Why? So its easier to test and change the functionality of the package. Currently its nearly impossible for a consumer of the package to test, as everything is operated using functions, and methods on structs such as Machine. The Manager interface will contain every API call.

The code is currently 100% compatible with existing version, and simply builds on the existing code. For convenience, Run() function is exposed, which can be used to run any command using the default manager, while the APIs are being migrated.

Once the full migration completes, the previous functions will be deprecated and later removed. This most likely will mean v2 of the library, but it is fair distance away.

@VoyTechnology
Copy link
Member Author

Resolves #16

@VoyTechnology VoyTechnology force-pushed the manager-interface branch 4 times, most recently from b4775ac to 0d79b05 Compare August 11, 2022 12:52
@VoyTechnology VoyTechnology changed the title Manager Interface [WIP] Manager Interface Aug 12, 2022
This is part of a long series of changes. It expands on the sentiment of
the Command interface, but with the goal of handing everything as a
method of the Manager interface.

Why? So its easier to test and change the functionality of the package.
Currently its nearly impossible for a consumer of the package to test,
as everything is operated using functions, and methods on structs such
as Machine. The Manager interface will contain every API call.

The code is currently 100% compatible with existing version, and simply
builds on the existing code. For convenience, Run() function is exposed,
which can be used to run any command using the default manager, while
the APIs are being migrated.

Once the full migration completes, the previous functions will be
deprecated and later removed. This most likely will mean v2 of the
library, but it is fair distance away.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant