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

proto: rename GetIDs to GetIds #51

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

Conversation

pepyakin
Copy link
Contributor

@pepyakin pepyakin commented Feb 26, 2024

This changeset renames proto's GetIDs to GetIds.

The motivation behind this change lies in the fact, that protobuf (unlike the go part of the codebase) is a language agnostic tool: it generates concrete definitions in the target languages given a common .proto definition.

As such, it needs a way to convert between case conventions, automatically. Abbreviations and acronyms such as ID, HTTP or URL is a big contention point. Go seems to prefer URL. Java Url.

I have no intention here to wage holy war either one way or another.

Just want to point out that treating an abbrevation/acronym as a word plays nicely with
simple algorithms that convert between case conventions automatically. snake_case conversion makes a good example:

GetIDs -> get_i_ds

This is what you get in rust with tonic (no option to override there).

I can live with that of course, feel free to close this PR.

Also, I realize that this is a breaking change and may be not desirable. As such, feel free to close this PR or leave it dangling until the next time to change the proto comes.

Summary by CodeRabbit

  • Refactor
    • Updated naming conventions for consistency in data access and proxy layers, specifically changing GetIDs to GetIds to align with best practices.

Copy link

coderabbitai bot commented Feb 26, 2024

Walkthrough

The essence of the modifications revolves around standardizing the naming convention for the GetIDs method across a service definition and its client-server implementation. This involved renaming it to GetIds and adjusting the associated request and response types to reflect this change, ensuring consistency and adherence to naming guidelines.

Changes

File Path Change Summary
proto/da/da.proto Renamed GetIDs RPC method to GetIds including request and response messages in DAService.
proxy/client.go
proxy/server.go
Updated to use GetIds, GetIdsRequest, and GetIdsResponse instead of their GetIDs counterparts.

🐇✨
In the land of code and byte,
A rabbit hopped through the night.
With a flick and a hop, GetIDs was no more,
GetIds it became, consistency to adore.
Through files and lines, the changes did weave,
A tale of renaming, in code we believe.
🌟🐾

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share

Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit-tests for this file.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit tests for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository from git and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit tests.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger a review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • The JSON schema for the configuration file is available here.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/coderabbit-overrides.v2.json

CodeRabbit Discord Community

Join our Discord Community to get help, request features, and share feedback.

Copy link

codecov bot commented Feb 26, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 78.01%. Comparing base (4538294) to head (c5a2e14).

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #51   +/-   ##
=======================================
  Coverage   78.01%   78.01%           
=======================================
  Files           3        3           
  Lines         191      191           
=======================================
  Hits          149      149           
  Misses         32       32           
  Partials       10       10           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Review Status

Actionable comments generated: 2

Configuration used: CodeRabbit UI

Commits Files that changed from the base of the PR and between 4538294 and c5a2e14.
Files ignored due to path filters (1)
  • types/pb/da/da.pb.go is excluded by: !**/*.pb.go
Files selected for processing (3)
  • proto/da/da.proto (2 hunks)
  • proxy/client.go (1 hunks)
  • proxy/server.go (1 hunks)
Additional comments: 2
proto/da/da.proto (2)
  • 12-13: The RPC method GetIds has been correctly renamed from GetIDs, aligning with the PR objectives to improve naming convention consistency. This change is consistent and correctly implemented in the DAService service definition.
  • 73-80: The message types GetIdsRequest and GetIdsResponse have been correctly renamed and defined, aligning with the renaming of the GetIds RPC method. These changes are consistent and correctly implemented, ensuring compatibility and consistency in naming conventions across different programming languages and tools.

Comment on lines +40 to +46
func (p *proxySrv) GetIds(ctx context.Context, request *pbda.GetIdsRequest) (*pbda.GetIdsResponse, error) {
ids, err := p.target.GetIDs(ctx, request.Height, request.Namespace.GetValue())
if err != nil {
return nil, err
}

return &pbda.GetIDsResponse{Ids: idsDA2PB(ids)}, nil
return &pbda.GetIdsResponse{Ids: idsDA2PB(ids)}, nil
Copy link

Choose a reason for hiding this comment

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

The method GetIds has been correctly renamed from GetIDs, and the request and response types have been updated to GetIdsRequest and GetIdsResponse, respectively. This change aligns with the PR objectives of improving compatibility and consistency in naming conventions. However, there's a minor oversight in the method implementation:

  • The call to p.target.GetIDs within the GetIds method has not been updated to reflect the new method name. This could lead to a compilation error or unexpected behavior if the corresponding method in the da.DA interface has also been renamed to match the new naming convention.
- ids, err := p.target.GetIDs(ctx, request.Height, request.Namespace.GetValue())
+ ids, err := p.target.GetIds(ctx, request.Height, request.Namespace.GetValue())

Ensure that the da.DA interface and its implementations are updated accordingly to avoid any issues.


Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation.

Suggested change
func (p *proxySrv) GetIds(ctx context.Context, request *pbda.GetIdsRequest) (*pbda.GetIdsResponse, error) {
ids, err := p.target.GetIDs(ctx, request.Height, request.Namespace.GetValue())
if err != nil {
return nil, err
}
return &pbda.GetIDsResponse{Ids: idsDA2PB(ids)}, nil
return &pbda.GetIdsResponse{Ids: idsDA2PB(ids)}, nil
func (p *proxySrv) GetIds(ctx context.Context, request *pbda.GetIdsRequest) (*pbda.GetIdsResponse, error) {
ids, err := p.target.GetIds(ctx, request.Height, request.Namespace.GetValue())
if err != nil {
return nil, err
}
return &pbda.GetIdsResponse{Ids: idsDA2PB(ids)}, nil

Comment on lines +69 to +70
req := &pbda.GetIdsRequest{Height: height, Namespace: &pbda.Namespace{Value: namespace}}
resp, err := c.client.GetIds(ctx, req)
Copy link

Choose a reason for hiding this comment

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

The function previously known as GetIDs has been correctly updated to use GetIdsRequest and call the GetIds method, aligning with the PR objectives. This change ensures consistency with the new naming convention and improves compatibility across different programming languages and tools. However, it's important to note that the function name itself should also be updated to reflect the new naming convention:

- func (c *Client) GetIDs(ctx context.Context, height uint64, namespace da.Namespace) ([]da.ID, error) {
+ func (c *Client) GetIds(ctx context.Context, height uint64, namespace da.Namespace) ([]da.ID, error) {

Ensure that all calls to this function throughout the codebase have been updated to match the new name.


Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation.

Suggested change
req := &pbda.GetIdsRequest{Height: height, Namespace: &pbda.Namespace{Value: namespace}}
resp, err := c.client.GetIds(ctx, req)
req := &pbda.GetIdsRequest{Height: height, Namespace: &pbda.Namespace{Value: namespace}}
resp, err := c.client.GetIds(ctx, req)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

None yet

1 participant