> For the complete documentation index, see [llms.txt](https://minwork.gitbook.io/long-press-hook/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://minwork.gitbook.io/long-press-hook/migration/v3.1+.md).

# V3.1+

{% hint style="warning" %}
**It is recommended that you upgrade `use-long-press` to at least 3.1.0 in order to seamlessly migrate from v1 / v2 to v3**
{% endhint %}

Versions before 3.1.0 did not have [cancelOutsideElement](/long-press-hook/advanced/options/cancellation/cancel-outside-element.md) option which when enabled make *useLongPress* behave in the same manner as v1 and v2 which is cancelling long press when mouse / pointer leave pressed element. Therefore, when added in 3.1.0 its default value was set to `true`, to restore previous versions behaviour.

#### Backstory

V3 was supposed to fix problem with detecting cancelling long press when finishing it outside component scope. It was achieved by detecting *mouse / pointer up* events on *window* and removing triggering cancel on *mouse / pointer leaving* the element.&#x20;

Unfortunately that solution was backward incompatible so adding [cancelOutsideElement](/long-press-hook/advanced/options/cancellation/cancel-outside-element.md) option was a way to fix that as well as new feature, hence why it was introduced as a minor version bump instead of a bugfix.
