-
Notifications
You must be signed in to change notification settings - Fork 24
Restrict init file gen to package directories and fix docstring blank lines #596
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
Conversation
codegen/core/src/main/java/software/amazon/smithy/python/codegen/generators/InitGenerator.java
Show resolved
Hide resolved
| Changes made by these plugins only apply for the duration of the operation | ||
| execution and will not affect any other operation invocations. | ||
| """); | ||
| execution and will not affect any other operation invocations."""); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems a little strange for the fix. Is it because this adds the newline we need but our actual writer is also always appending a newline so we get two? I think this issue was affecting multiple places. I wonder if we should be doing something more like trimming extra newlines from the end of the final docstring (or not appending them to the end).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes there are a couple places where we add two newlines on accident by using write instead of writeInline and then passing in a text block which adds its own newline.
I pushed up a commit that adds a helper method to PythonWriter that removes all trailing whitespaces. We'll call it and then add a single newline before writing the closing """ in writeDocs(). This normalizes all docstrings and prevents a trailing blank line.
This fixed all of the issues I've seen in models.py and client.py. I also made the ConfigGenerator use writeDocs() (it didn't previously) and it resolved the blank line issue for its constructor as well.
I still fixed the source of the double newlines but the helper method will help prevent this issue from reoccurring in the future.
This is the diff for the Transcribe client with these codegen changes.
nateprewitt
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, thanks @arandito!
… lines (smithy-lang#596) * Restrict init file gen to package directories * Add helper method to remove trailing spaces from docstrings
Description
This PR removes
__init__.pyfile generation in non-package directories such asdocs/*.Examples
Bedrock Runtime
Before:
After:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.