-
Notifications
You must be signed in to change notification settings - Fork 6
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
[WIP] Catch and display path errors #246
base: master
Are you sure you want to change the base?
Conversation
update:
update:
|
This feels like adding a lot of "code" to just present error messages. Is it possible to just not have the I am curious why the PathError itself can't contain the details within, since it is being raised from within the Path itself. Additionally, is every instance of PathError just also an ExecutionError? If so, could it just raise an ExecutionError instead, or, if not, can PathError just be a subclass of ExecutionError? |
@Fryguy The problem is a generically thrown exception will not properly have the context for the error. So either the thing throwing the error needs more information, or we need to add information on the way up. I'll add the state/path to the |
I'm not sure I follow... It looks like the same thing is passed into path that's wrapped outside of it as well |
WIP: I care more about Choice fixes than error display. incorporating these errors on top of #189 |
lib/floe.rb
Outdated
class ExecutionError < Error | ||
attr_reader :floe_error | ||
|
||
def initialize(message, floe_error = "States.RuntimeError") |
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.
As Adam asked elsewhere, is States.RuntimeError an actual error?
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.
#189 (review) it isn't listed in the states-language spec but it is in the AWS StepFunctions docs and he fixed it to be States.Runtime
to match the docs there
Ensure they end up in "Error"
Components are exposed to make super easy to modify anything
Test for invalid compare key
Variable was only for Data and not for Not, Or, or And, so moved it to Data. Since we want to add type checking, and that is Data specific, it works better variable is over there.
… payload templates
update:
|
Checked commits kbrock/floe@825efcb~...8c0ee6c with ruby 3.1.5, rubocop 1.56.3, haml-lint 0.51.0, and yamllint |
This pull request is not mergeable. Please rebase and repush. |
WIP: keeping up to date locally. waiting for choice to go through before putting too much effort into this. (they all conflict) Also, my push more information into Path so it throws the fully qualified error instead of partial and having to manipulate the exception on the way up |
This pull request has been automatically marked as stale because it has not been updated for at least 3 months. If these changes are still valid, please remove the |
Depends upon
2.5 things:
Invalid path (validation)
aws:
Before
After
Path not found (runtime)
aws:
Before
After