> For the complete documentation index, see [llms.txt](https://www.nl-portal.nl/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.nl-portal.nl/3.x/release-notes/3.0.x/app/3.0.5.md).

# 3.0.5

De NL-Portal App, de backend libraries en de frontend libraries worden vanaf deze release onder één versienummer uitgebracht. Deze release bevat NL-Portal Backend Libraries 3.0.5 en NL-Portal Frontend Libraries 3.0.5. Eerdere releases van de App gebruikten het formaat `{backend}_{frontend}-{revisie}`; dat formaat wordt niet langer gebruikt.

## Nieuwe Functionaliteit

De volgende functionaliteiten zijn nieuw toegevoegd:

* NL-Portal libraries bijgewerkt naar Backend Libraries 3.0.5 en Frontend Libraries 3.0.5.
* Nieuwe omgevingsvariabele `NLPORTAL_CONFIG_PRODUCT_VERBRUIKSOBJECTMODIFICATIONENABLED` (standaard `false`) waarmee het wijzigen van verbruiksobjecten via de GraphQL-mutatie `updateProductVerbruiksObject` weer kan worden ingeschakeld. De variabele werkt alleen in combinatie met een ingeschakelde product-module. Dit is geen nieuwe functionaliteit om te gaan gebruiken, maar een onveilige terugvaloptie voor bestaande implementaties. Zie "Breaking changes" en "Deprecations".

## Bugfixes

De volgende bugs zijn opgelost:

* De applicatiebeveiliging is op meerdere punten verbeterd.

## Breaking changes

* **Het wijzigen van verbruiksobjecten is standaard uitgeschakeld.** Deze wijziging is om veiligheidsredenen doorgevoerd. Aanroepen van de GraphQL-mutatie `updateProductVerbruiksObject` leveren vanaf deze release een fout op.

  De frontend-API blijft ongewijzigd: de hook `useUpdateProductVerbruiksObjectMutation` uit `@nl-portal/nl-portal-api` blijft bestaan en blijft compileren, maar de aanroep faalt aan de serverzijde.

  **De nieuwe omgevingsvariabele is een onveilige terugvaloptie en geen aanbevolen configuratie.** Inschakelen maakt de applicatie minder veilig. Schakel de variabele uitsluitend in wanneer dat strikt noodzakelijk is om een bestaande implementatie werkend te houden, uitsluitend tijdelijk, en alleen na een eigen risicoafweging.

  ```
  NLPORTAL_CONFIG_PRODUCT_VERBRUIKSOBJECTMODIFICATIONENABLED=true
  ```

  De aanbevolen route is niet inschakelen en migreren naar de `openproduct`-module. Zie "Deprecations".

## Deprecations

* De GraphQL-mutatie `updateProductVerbruiksObject` is gedeprecieerd en wordt verwijderd in 4.0.0.
* De omgevingsvariabele `NLPORTAL_CONFIG_PRODUCT_VERBRUIKSOBJECTMODIFICATIONENABLED` is direct bij introductie gedeprecieerd en wordt samen met de mutatie verwijderd in 4.0.0. De variabele bestaat uitsluitend om bestaande implementaties tijd te geven om te migreren.
* Implementaties die verbruiksobjecten moeten kunnen wijzigen, dienen over te stappen op de `openproduct`-module en de mutatie `updateProduct`.

## Bekende problemen

Er zijn geen bekende problemen.
