In 2019 we established a new application development paradigm with the App Platform. The Platform provides a unified framework for DHIS2 Web App development, so it is time to deprecate a few of our legacy libraries!
This does not mean that these deprecated libraries will cease to work immediately, but they should be avoided in new applications and (eventually) replaced in existing ones.
In some cases there may still be a good reason to use some of the legacy libraries.
For instance, a component you need may exist in
d2-ui but not (yet) in
ui-widgets. In this case it is still acceptable to use
d2-ui while waiting for the
new components to be added.
These libraries have been deprecated and should be replaced before the 2.34 release in all Apps.
core-resource-app is a “poor man’s CDN” that worked for a long time, but is fundamentally incompatible with the way we want to develop distinct isolated web apps. It adds quite a bit of bloat to the WAR-file and will be removed in 2.34.
d2-manifest generates a
manifest.webappwhich is quite confusing, as the standard
d2-manifestuses is the Open Web App standard currently only supported by Firefox OS.
It predates the W3c Progressive Web App standard, and that is why DHIS2 historically implemented the OWA standard and not the PWA manifest standard.
We are moving to the W3c manifest standard though, so that should be used going forward.
These libraries are still used and supported, but are not being actively developed. They will receive some bug fixes but no new features. These libraries will be deprecated in the future (probably around 2.35) and so should be avoided.
d2-i18n-generate and d2-i18n-extract are used for DHIS2 internationalisation and translation. While these are still in use in non-platform Apps, we now provide this out of the box in the App Platform instead of as distinct libraries.
These tools have been completely deprecated and replaced, they should not be used.