---
title: "Breaking: #100229 - Convert JSConfirmation to a BitSet"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:breaking-jsconfirmation-1687503100"
source: "Changelog/13.0/Breaking-100229-ConvertJSConfirmationToBitSet.rst"
typo3-version: "13.0"
typo3-major: 13
type: "breaking"
issue: 100229
forge: "https://forge.typo3.org/issues/100229"
tags: ["Backend", "NotScanned", "ext:backend", "ext:core", "ext:filelist"]
rendered: "2026-09-20T18:31:11+00:00"
---

# Breaking: #100229 - Convert JSConfirmation to a BitSet {#breaking-jsconfirmation-1687503100}

See [forge#100229](https://forge.typo3.org/issues/100229)

## Description {#description}

The class `\TYPO3\CMS\Core\Type\Bitmask\JSConfirmation` is replaced by
`\TYPO3\CMS\Core\Authentication\JsConfirmation`. The new class is
extending the `\TYPO3\CMS\Core\Type\BitSet` class instead of
`\TYPO3\CMS\Core\TypeEnumeration\Enumeration`.

## Impact {#impact}

Since `JSConfirmation` is now extending the class `\TYPO3\CMS\Core\Type\BitSet`
it's no longer possible to call the following public methods:

-   `matches()`
-   `setValue()`
-   `isValid()`

The only static method left is:
`compare()`

## Affected installations {#affected-installations}

Custom TYPO3 extensions calling public methods:

-   `matches()`
-   `setValue()`
-   `isValid()`

Custom TYPO3 extensions calling static methods in
`\TYPO3\CMS\Core\Type\Bitmask\JSConfirmation`
except for the method `\TYPO3\CMS\Core\Type\Bitmask\JSConfirmation::compare()`.

Custom TYPO3 extensions calling
`\TYPO3\CMS\Core\Authentication\BackendUserAuthentication->jsConfirmation()`,
if first argument passed is not an `int`.

## Migration {#migration}

Replace existing usages of `\TYPO3\CMS\Core\Type\Bitmask\JSConfirmation`
with `\TYPO3\CMS\Core\Authentication\JsConfirmation`.

There is no migration for the methods:

-   `matches()`
-   `setValue()`
-   `isValid()`

Remove existing calls to static methods
`\TYPO3\CMS\Core\Type\Bitmask\JSConfirmation::method()`
and where `JSConfirmation::compare()` is used, replace the namespace from
`\TYPO3\CMS\Core\Type\Bitmask\JSConfirmation` to
`\TYPO3\CMS\Core\Authentication\JsConfirmation`.

Ensure an int value is passed to:

-   `\TYPO3\CMS\Core\Authentication\BackendUserAuthentication->jsConfirmation()`
