Skip to content

Restructure (7): Make extensions package public#607

Merged
roosterfish merged 6 commits intocanonical:v3from
roosterfish:restructure_extensions
Feb 3, 2026
Merged

Restructure (7): Make extensions package public#607
roosterfish merged 6 commits intocanonical:v3from
roosterfish:restructure_extensions

Conversation

@roosterfish
Copy link
Contributor

This is the seventh PR taken from a single commit in #534 (even though in this case the actual changes are very different from the original commit).
The final package layout will be different but to allow reviewing the changes in smaller chunks I will split this PR by its commits.

In this PR the extensions package is made public so that the actual types can be accessed by importers of Microcluster.

Signed-off-by: Julian Pelizäus <julian.pelizaeus@canonical.com>
Signed-off-by: Julian Pelizäus <julian.pelizaeus@canonical.com>
Signed-off-by: Julian Pelizäus <julian.pelizaeus@canonical.com>
Signed-off-by: Julian Pelizäus <julian.pelizaeus@canonical.com>
Signed-off-by: Julian Pelizäus <julian.pelizaeus@canonical.com>
Signed-off-by: Julian Pelizäus <julian.pelizaeus@canonical.com>
Copy link
Contributor

@tugbataluy tugbataluy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! 👍
The migration of the Extensions type from internal/ to the public microcluster/types package is clean and follows the same pattern established in the previous restructure PRs. As far as I understand from the previous PRs, this continues making internal types properly accessible to downstream consumers while enabling mocking for unit tests.

@roosterfish roosterfish merged commit 4c9d116 into canonical:v3 Feb 3, 2026
5 checks passed
@roosterfish roosterfish deleted the restructure_extensions branch February 3, 2026 16:42
roosterfish added a commit that referenced this pull request Feb 4, 2026
Can only be merged after (won't build before):
* #607

This is the eigth PR taken from a single commit in
#534 (even though in this
case the actual changes are very different from the original commit).
The final package layout will be different but to allow reviewing the
changes in smaller chunks I will split this PR by its commits.

In this PR the DB interface is made public. It's returned by the public
`State` interface and should therefore not be located inside the
`internal/` package.
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.

2 participants