[#4761] Convert exceptions to warnings

- To retain BC, filters should never raise exceptions
- Instead, raising warning and returning original value
[#4761] Added tests for null values

- null values should be filtered without warnings
[#4761] null values should not raise warnings

- null values should not be filtered, and should not raise warnings
Add info in docblock about warnings

- Added a paragraph indicating inability to filter non-scalar values,
  and that a warning will be raised in such circumstances.
- Updated return annotations to indicate a "mixed" possibility.
Merge pull request #4761