Issue #5866 has been updated by Thomas Sawyer.


SyntaxError? I suppose we might assume that's appropriate if YAML is doing it, but ScriptError is not a StandardError, rather it is a ScriptError, which I think means it's supposed to be for RUBY syntax errors only. Am I wrong to think that?

> "It sounds like an application (or library) layer story. Why does it need to be supported in the language layer?"

Yes, but it's helpful to base an app/library's errors on a standard superclass that fits. If a type of exception is so very common then I think it makes sense for Ruby to have a standard exception for it. I think validation is a very clear case for that. And an example for it might well be the fore mentioned YAML's use of SyntaxError, where something like ValidationError might, it seems to me, be more appropriate.


----------------------------------------
Feature #5866: ValidationError
https://bugs.ruby-lang.org/issues/5866

Author: Thomas Sawyer
Status: Feedback
Priority: Normal
Assignee: 
Category: 
Target version: 2.0.0


I've come across this from time to time, where some piece of complex data, often (but not always) loaded from a file, doesn't conform to some set of validation requirements. I've never been quite sure what type of error to throw if the data doesn't conform. It's not exactly an ArgumentError, it's more complex then that and not necessarily coming in via method arguments, nor is it exactly a TypeError since it's not necessarily anything to do with a specific class. So I find myself falling back to Runtime error and rolling my own, but thinking it would be nice if there were a general purpose `ValidationError` to raise or subclass in these cases.




-- 
http://bugs.ruby-lang.org/