-
Notifications
You must be signed in to change notification settings - Fork 20
Installer
Using composer for 3rd party extensions
Composer isn’t usable in mass distributed Joomla because of issues with the time it takes to update dependencies and the inability of users to debug failed dependency resolutions. Most users also do not have SSH abilities on Shared Hosting and requiring users to build their sites on a local machine is not feasible.
Nevertheless, a composerlike dependency management is wanted for Joomla’s installer. Dependencies, which cannot be resolved automatically, are represented to the user (admin) as a choice of possible resolutions.
The design for change encourages components to only provide their core functionality and pull in other features as needed from other components. As an example, a forum component provides the thread management and pulls in any commenting component to manage followups. It is up to the site builder to decide which commenting system to use.
- White paper by Nic about improving the Joomla Installer system: Joomla! Extensions Installer TNG.pdf
- Drupal is dealing with composer for D8 between core and third party and how it all affects distro, site management, etc. drupal.org has some useful resources.
Introduction
Development
Architecture
- Universal Content Model (UCM)
- Command Query Responsibility Segregation (CQRS)
- Database Abstraction Layer (DBAL)
- Dependency Injection (DI)
- Event Sourcing (ES)
- Filesystem Abstaction Layer
- Installer
- Data Definitions (JForms)
- Model-View-Controller (MVC)
- Orthogonal Component Structure (OCS)
- Routing
Features
Appendix