-
-
Notifications
You must be signed in to change notification settings - Fork 30
Description
Class \Nette\Schema\Context is marked as @internal.
Lines 15 to 18 in febf71f
| /** | |
| * @internal | |
| */ | |
| final class Context |
It causes that I cannot make custom validator object because the ->normalize() method requires Context instance in argument declared by \Nette\Schema\Schema interface.
PhpStorm is here firing inspection warning:
Class 'Context' is marked as @internal
Inspection info: Reports the usages of the entities that are marked as @internal.
In most cases, such usages should be removed or replaced with other constructs.
In addition Context is not fully internal, because custom validators need it for for collecting validation errors. I didn't found possibility to do it with more clean way.
Example of use:
https://github.com/redbitcz/subreg-api-php/blob/60f377ac68f3c1871b926eca336f5eb8d3368455/src/Schema/DateTime.php#L44-L64
Suggest to feature
Unmark \Nette\Schema\Context as internal.
I understand the Context class has currently too open public interface which is potentially sensitive. Maybe move collecting errors to more specifics object which will not be @internal marked.