Version 4.x and php 7.x problem while creating a form

No context provider found for value of type string . Use null as 1st argument of FormHelper::create() to create a context-less form.

the form is

    <?php echo $this->Form->create('User', ['url' => ['action' => 'login']]); ?>
    <?php echo $this->Form->input('email', ['class' => 'form-control', 'autofocus' => 'autofocus']); ?>
    <br />
    <?php echo $this->Form->input('password', ['class' => 'form-control']); ?>
    <br />
    <?php echo $this->Form->button('LOG IN', ['class' => 'btn btn-secondary']); ?>
    <?php echo $this->Form->end(); ?>

where I am wrong? what I am missing?

On this page: Form - 4.x the first argument for create() is described

$context - The context for which the form is being defined. Can be an ORM entity, ORM resultset, Form instance, array of metadata or null (to make a model-less form).

In you’re case you’ve provided a string. Not one of the allowed choices.

This was formerly supported, and I don’t see any mention of it on the 4.0 migration guide, though FormHelper::context is mentioned wrt a couple of other changes.