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

feat(python): add error differentiation to Python. #3772

Merged
merged 41 commits into from
Sep 28, 2022
Merged

Conversation

comcalvi
Copy link
Contributor

@comcalvi comcalvi commented Sep 26, 2022

Uses RuntimeError and JsiiError to indicate recoverable vs non-recoverable errors respectively. Also fixes three bugs in the Java logic for the same feature:

  • Callbacks did not pass the error type over the wire, meaning that some faults were rethrown as runtime errors and vice versa
  • async method invocations did not pass the error type over the wire, meaning that some faults were rethrown as runtime errors and vice versa.
  • the java enum used RuntimeException in the string where it should have used RuntimeError, meaning that some errors would always be rethrown as RuntimeExceptions even when they should be JsiiErrors.

These bugs happened because the Java tests did not check for type of the exception thrown, meaning that JsiiErrors could be passed where RuntimeExceptions were expected. The tests now verify the type of the exception thrown.


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@mergify mergify bot added the contribution/core This is a PR that came from AWS. label Sep 26, 2022
@mergify
Copy link
Contributor

mergify bot commented Sep 28, 2022

Thank you for contributing! ❤️ I will now look into making sure the PR is up-to-date, then proceed to try and merge it!

@mergify mergify bot added the pr/ready-to-merge This PR is ready to be merged. label Sep 28, 2022
@mergify
Copy link
Contributor

mergify bot commented Sep 28, 2022

Merging (with squash)...

1 similar comment
@mergify
Copy link
Contributor

mergify bot commented Sep 28, 2022

Merging (with squash)...

@mergify
Copy link
Contributor

mergify bot commented Sep 28, 2022

Merging (with squash)...

@mergify mergify bot merged commit e3f7d5e into aws:main Sep 28, 2022
@mergify mergify bot removed the pr/ready-to-merge This PR is ready to be merged. label Sep 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
contribution/core This is a PR that came from AWS.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants