You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: developer_manual/release_notes/critical_changes.rst
+18-1Lines changed: 18 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -85,7 +85,7 @@ they have been deprecated since Nextcloud 17 and scheduled for removal since Nex
85
85
- ``oc_appswebroots`` use ``OC.appswebroots`` instead
86
86
- ``oc_config`` use ``OC.config`` instead
87
87
- ``oc_current_user`` use ``OC.getCurrentUser().uid`` instead
88
-
- ``oc_debug`` use ``OC.debug`` instead
88
+
- ``oc_debug`` use ``OC.debug`` instead8
89
89
- ``oc_defaults`` use ``OC.theme`` instead
90
90
- ``oc_isadmin`` use ``OC.isUserAdmin()`` instead
91
91
- ``oc_requesttoken`` use ``OC.requestToken`` instead
@@ -95,6 +95,23 @@ they have been deprecated since Nextcloud 17 and scheduled for removal since Nex
95
95
Please keep in mind that ``OC`` is considered a private namespace for which our stability rules do not fully apply.
96
96
Its recommended to use the :ref:`Nextcloud frontend libraries<js-libraries>` instead if possible.
97
97
98
+
Modified back-end APIs
99
+
----------------------
100
+
101
+
Nextcloud now provides a wrapper for the DBAL/migration classes from ``doctrine/dbal``. This will allow
102
+
us in the future to more easily update this dependency without breaking your applications and make it
103
+
easier for the static analyser to analyse this part of your code without providing stubs.
104
+
105
+
There are a few hard breaking changes:
106
+
107
+
- ``Type::lookupName($column->getType())`` will have to be replaced with ``$column->getType()->getName()``
108
+
- Methods taking a ``Doctrine\DBAL`` classes, will have to be changed to take a ``OCP\DB\Schema`` instead
109
+
110
+
Additionally, some part of the public API were removed and are now only available in the private API for runtime compatibility reason.
111
+
112
+
- ``Column->setOptions(array $options)`` is no longer available in the public API and you will have to use the typed setters instead like ``Column->setLength``
113
+
- ``Column->setType(DBAL\Type $type)`` is no longer available in the public API and you will have to provide one of the constants available in ``\OCP\DB\Types`` instead.
0 commit comments