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

fix: allow application to set and query app version #395

Merged
merged 2 commits into from
Apr 29, 2024

Conversation

cmwaters
Copy link

@cmwaters cmwaters commented Apr 26, 2024

Description

This add the necessary API to fix the bug with restarting the application that was caused by not being able to correctly set the app version

@cmwaters cmwaters requested a review from a team as a code owner April 26, 2024 13:50
@cmwaters cmwaters requested review from ramin and rach-id and removed request for a team April 26, 2024 13:50
@rootulp rootulp self-requested a review April 26, 2024 14:01
@evan-forbes
Copy link
Member

nice find

Copy link
Collaborator

@rootulp rootulp left a comment

Choose a reason for hiding this comment

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

LGTM after one residual comment gets removed

baseapp/abci.go Outdated Show resolved Hide resolved
baseapp/baseapp.go Outdated Show resolved Hide resolved
@@ -223,12 +223,22 @@ func (app *BaseApp) Name() string {
return app.name
}

func (app *BaseApp) InitAppVersion(ctx sdk.Context) {
Copy link
Collaborator

Choose a reason for hiding this comment

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

[question] is the removal of this public method technically breaking? I don't think we need to cut a major release of Cosmos SDK as long as know that celestia-app has to replace usage of InitAppVersion when it bumps to a new release of Cosmos SDK with this PR.

Side note: Is this change back-portable to v1.x? If it isn't, then we may need to create a new branch in this repo if there's a bug we need to address on celestia-app v1.x after this PR merges. Perhaps not worth worrying about for now.

Copy link
Author

Choose a reason for hiding this comment

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

I could keep this function around if we were worried about breaking changes. I had intended to replace the usage of InitAppVersion.

Copy link
Collaborator

Choose a reason for hiding this comment

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

I'm more concerned with the ability to backport than the breaking change. IMO if it's possible to backport to celestia-app v1.x easily then I'm fine with removing InitAppVersion. If it isn't possible to backport then we may have to maintain multiple Cosmos SDK branches (one per celestia-app major version) which seems like it could be a maintenance burden.

Copy link
Author

Choose a reason for hiding this comment

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

It's not used in v1.x so it should be easy to backport

Co-authored-by: Rootul P <rootulp@gmail.com>
app.appVersion = vp.AppVersion
return vp.AppVersion
}
return 0
Copy link
Member

Choose a reason for hiding this comment

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

What is app version 0? Just a non-empty value to return?

Copy link
Author

Choose a reason for hiding this comment

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

Yeah, it just means that it's not current set

@cmwaters cmwaters merged commit d2720e3 into release/v0.46.x-celestia Apr 29, 2024
32 of 33 checks passed
@cmwaters cmwaters deleted the cal/app-version branch April 29, 2024 10:51
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.

5 participants