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

Upgrade to the microgrid API v0.16 #844

Open
llucax opened this issue Jan 16, 2024 · 3 comments
Open

Upgrade to the microgrid API v0.16 #844

llucax opened this issue Jan 16, 2024 · 3 comments
Labels
part:microgrid Affects the interactions with the microgrid priority:high Address this as soon as possible status:blocked Other issues must be resolved before this can be worked on type:enhancement New feature or enhancement visitble to users
Milestone

Comments

@llucax
Copy link
Contributor

llucax commented Jan 16, 2024

What's needed?

We need to move development of many APIs forward, but new APIs depend on the common API v0.5, while the SDK is using the microgrid API v0.15, which depends on the common API v0.3, so actors for the new APIs can't be developed due to the API versions incompatibilities.

Proposed solution

Upgrade to the microgrid API v0.17.

Use cases

No response

Alternatives and workarounds

Copy the needed files in the common API to the new API repos. We are doing this in a couple of places, but it is starting to get messy.

Additional context

No response

@llucax llucax added priority:URGENT Address this immediately or the sky will fall type:enhancement New feature or enhancement visitble to users part:microgrid Affects the interactions with the microgrid labels Jan 16, 2024
@llucax llucax added this to the v1.0.0-rc4 milestone Jan 16, 2024
@llucax llucax added priority:high Address this as soon as possible and removed priority:URGENT Address this immediately or the sky will fall labels Jan 16, 2024
@llucax
Copy link
Contributor Author

llucax commented Jan 29, 2024

The current dependency problem is:

  • API clients depend on API common v0.5.x
  • The SDK depends on API common v0.4.x (because the microgrid API included in the SDK depends on API common v0.4.x)
  • Applications using the API clients need frequenz.sdk.actor, which makes the conflict of versions for API common

In the near future we need to make API common stable already to not end up in this situation again, so any breaking changes should go to v2. So we can also call the common API version v1.x.x already.

We prioritized the update of the microgrid API in the SDK because we need to break this dependency conflict, but another solution is to extract the actor package from the SDK.

@llucax
Copy link
Contributor Author

llucax commented Jan 29, 2024

Since this update involves a lot of code changes, and now we have the https://github.com/frequenz-floss/frequenz-client-common-python/ that we'll need to use too, and we'll need to extract the microgrid API client to its own repo, we will do this update directly in the new repo. Then we update the SDK to remove the client and depend on the new repo, and update the high-level interface to use the new client.

@llucax
Copy link
Contributor Author

llucax commented Jan 29, 2024

Blocked by:

After we have the new microgrid API client repo with v0.16, we can update the internal usage of the client in the SDK.

@llucax llucax added the status:blocked Other issues must be resolved before this can be worked on label Jan 29, 2024
@llucax llucax modified the milestones: v1.0.0-rc4, v1.0.0-rc5, v1.0.0-rc6 Feb 1, 2024
@llucax llucax modified the milestones: v1.0.0-rc6, v1.0.0-rc7 Mar 26, 2024
llucax added a commit to llucax/frequenz-sdk-python that referenced this issue May 2, 2024
The upgrade to frequenz-api-microgrid >=0.16.0 needs a lot of changes in
the code. We are not ready to do that yet, so we should ignore this
dependency for now.

See: frequenz-floss#844

Signed-off-by: Leandro Lucarella <luca-frequenz@llucax.com>
llucax added a commit that referenced this issue May 2, 2024
The upgrade to frequenz-api-microgrid >=0.16.0 needs a lot of changes in
the code. We are not ready to do that yet, so we should ignore this
dependency for now.

See:

* #844
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
part:microgrid Affects the interactions with the microgrid priority:high Address this as soon as possible status:blocked Other issues must be resolved before this can be worked on type:enhancement New feature or enhancement visitble to users
Projects
Status: To do
Development

No branches or pull requests

1 participant