Skip to content

Conversation

@nateprewitt
Copy link
Contributor

Description of changes:
This is a proposal for adding Client to the end of our generated service clients. While these all originated from the generated namespace from service_name.client import ServiceName, it reads a bit oddly in isolated code snippets.

Prior art from recent SDKs is showing 3 out of the 5 existing Smithy SDKs all suffix with Client to reduce ambiguity. I don't think there's a lot of standing precedent in Python itself for which direction to go. I'm adding this PR as a talking point for if we feel this is necessary.

I don't think it hurts to add this for the moment, but we'll need to decide if we bias one way now, are we're willing to break that based on feedback later?

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@nateprewitt nateprewitt requested a review from a team as a code owner April 3, 2025 21:26
Copy link
Contributor

@SamRemis SamRemis left a comment

Choose a reason for hiding this comment

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

Since this PR is opened as a point of discussion, just adding my two cents:

Approving this since I'm very much in favor of it. The docs seem to generate fine with this change, but I should probably look more into it than just a quick skim.

Calling this a "client" will make this more familiar for users migrating from botocore and makes it clear that this is not just a general concept, but an object to be used to call the service. I'd be very surprised if we had strong customer feedback making a compelling argument for a different name. If we do, we should make the breaking change before this goes GA.

@nateprewitt nateprewitt merged commit 2a0b036 into develop Apr 7, 2025
2 checks passed
@nateprewitt nateprewitt deleted the client_suffix branch April 7, 2025 18:47
SamRemis pushed a commit to SamRemis/smithy-python that referenced this pull request Apr 9, 2025
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