[commits] [Wiki] changed: Doc/Dev/Skeleton
Wiki Guest
wikiguest at horde.org
Thu Dec 2 06:56:59 UTC 2021
guest [31.16.249.142] Thu, 02 Dec 2021 06:56:59 +0000
Modified page: https://wiki.horde.org/Doc/Dev/Skeleton
New Revision: 3
Change log: Update to reflect latest changes
@@ -65,20 +65,18 @@
These underscores have been removed unless
- there is a name clash with another method
- a protected variable or method needs to stay compatible with
parent or child code which cannot currently be refactored
-+++ lib/ code removed or turned into wrappers
++++ lib/ code removed
-Ongoing:
-
-Original code in lib either is turned into mere wrappers or removed
altogether. As applications are not inherited from or used like
libraries, only the framework's integration points need to be kept as
wrappers:
+Original code in has been removed. As applications are not inherited
from or used like libraries, this should not be a problem but you need
a recent enough framework version. For horde/core before 3.0.0alpha9
and horde/horde before 6.0.0alpha6, you may need to add wrappers for
integration points:
- lib/Application.php - Used for inter-app and DAV calls. Also
contains fallback definition of the SKELETON_BASE and HORDE_BASE
constants, though most likely not needed anymore
- lib/Api.php - Used for inter-app and RPC. In real world
applications, we might see some breakage if we actually use the API,
as calling code may be liberal with typing. In the case of skeleton,
the Api is empty anyway.
- lib/Ajax/Application.php - Integration point for the AJAX framework.
-- lib/Block/ - Wrappers for all implemented blocks need to be kept
until the framework learns to also look into /src/Block/ or some
catalog class.
- lib/Test.php - The integration point for the health check UI
called under /horde/test.php. Though skeleton does not really
implement any useful test
+With Portal Blocks, there is a little issue: If you add wrappers and
run a recent framework, blocks will show up twice. If you do not add
wrappers and run an old framework, blocks will not show up. Advise is
to not wrap blocks though. See also:
https://www.ralf-lang.de/2021/12/01/horde-skeleton-modernized/
+++ Strict types applied and type hints turned to real types
The strict typing mode is used consistently everywhere in src/.
Most property, parameter and return type hints were turned into
actual types. Many missing types were added.
More information about the commits
mailing list