Nieuwe Joomla roadmap

Joomla heeft grootse plannen voor de toekomst van het CMS. Hieronder staan een aantal ideeën die voor de volgende releases op de planning staan.

Een lichte core en core ondersteunde extensies

De lichte core is gebaseerd op de terugkoppeling die op vragen ontvangen is. De volgende stap was het beoordelen hoe tot een lichte core gekomen kan worden en welke onderdelen noodzakelijk zijn in deze lichte core. Duidelijk is dat er verschillende gedachten zijn over hoe dat gerealiseerd kan worden, wat in de lichte core moet zitten en wat er uit verwijderd kan worden. Er is een lijst samengesteld van core componenten die in het CMS moeten blijven en een lijst van componenten die rechtmatig uit de core verwijderd kunnen worden en in de extensie categorie “core ondersteunde” geplaatst kunnen worden op JED.

Core ondersteunde extensies

  • Contact
  • Finder
  • Messages
  • Newsfeeds
  • Redirect
  • Search
  • Weblinks

Een rechtvaardiging voor deze specifieke extensies is dat het een resultaat is van vele discussies. Een belangrijke factor was de aanwezigheid van betere alternatieven door andere alternatieve bronnen. Niet al van de hier boven genoemde extensies heeft een bekend alternatief maar de meesten wel.

Er moet wel vermeld worden wat een core ondersteunde extensie betekend. Joomla CMS is vastberaden om zoveel mogelijk compatibel te blijven met de oudere versies van Joomla en de stabiliteit naar de community toe. Het betekend dat vooruitgang goed doorgedacht moet plaatsvinden. Om een lichte core CMS te maken moeten we beginnen met het verwijderen van extensies, maar wel de achterwaartse compatibiliteit te bewaren. Hier volgt nu het plan om hier tot te komen.

Nieuwe JED Categorie

Allereerst wordt er een nieuwe categorie gemaakt binnen de Joomla extensie directory. Deze categorie zal gereserveerd blijven voor de extensies die als “core ondersteunde” gekenmerkt zijn. In eerste instantie zullen de core ondersteunde extensies alleen de hier boven genoemde extensies bevatten en elke extensie die door het Production Leadership Team als dusdanig gekenmerkt zijn. Het is belangrijk dat wanneer de nieuwe versie van Joomla uit komt er meer beschikbaar zijn dan de opsomming hierboven.

Gemakkelijk te installeren

De volgende stap is het erg makkelijk maken om de core ondersteunde extensies aan Joomla toe te voegen. Dit betekend dat je deze meteen tijdens het installeren van Joomla kan mee-installeren. Dit wordt mogelijk door de plugin “Installeren van web” toe te voegen aan de core en standaard geactiveerd moet zijn. Er was discussie over de werking van deze plugin maar op dit moment is deze goed getest en bewezen dat deze zijn werk goed doet en de code zal continue verbeterd worden. Door deze plugin aan de core toe te voegen en standaard actief te zetten wordt het mogelijk om na de installatie doorverwezen te worden naar deze installatiepagina. De installeer van weg pagina zal op de pagina van core ondersteunde extensies worden geopend zodat de gebruiker direct één of meerdere van de originele extensies kan installeren.

Speciale GitHub Repository

Een nieuwe Github organisatie die al aangemaakt is zal worden gebruikt om alle core ondersteunde extensies te plaatsen en het mogelijk te maken dat ze upgrades, verbeteren en uitgebracht kunnen worden. Op deze wijze zijn er zijn meerdere voordelen en zal dat hopelijk leiden naar een verbeterde supprt en onderhoud van deze extensies.

Achterwaartse compatibiliteit

Een vraag die gesteld had betrekking tot de achterwaarste compatibiliteit. Elk bestaande CMS installatie zal bij een upgrade geen bestaand geïnstalleerde extensies verliezen. Met elke release zal het doel zijn om elke individuele extensie deïnstalleerbaar en verwijderbaar te maken. Als de gebruiker dan een extensie wil deïnstalleren kunnen ze dan dat via de installeer van web of core-ondersteunde Joomla extensies doen.
Om een begin met dit lastige proces van extensies verwijderen te maken wordt er als test een enkele extensie verwijderd in een release om te controleren of dit correct werkt. Deze release zal de weblinks component van de core verwijderen, een core-ondersteunde categorie klaar zetten in de Joomla Extension Directory, een post-install bericht/link naar deze categorie laten zien binnen de installeer van web optie, en de weblinks extensies deïnstalleerbaar maken bij bestaande CMS upgrades.
Dit zorgt er voor dat de achterwaartse compatibiliteit bewaard blijft en het CMS een grote stap voorwaarts naar een lichtere core kan maken. Bij een succesvolle release kan dit proces nogmaals gemaakt worden bij een andere extensie.
Dit was een overzicht van de kenmerken van het voorstel voor een nieuwe release procedure. Nu kijken we naar hoe de tijdsplanning van releases gestructureerd zijn en hoe deze in relatie staan tot het voorstel van een nieuwe ontwikkelingsproces als hierboven beschreven en waar eerder over gediscussieerd is.

Releasestrategie en sematische versies

Met het voorstel van de nieuwe ontwikkelingscyclus is de langetermijnondersteuning en achterwaartse compatibiliteit één van belangrijkste punten terwijl ook het begin met het volgen van een semantische versiebeheer voor releases. Dit aspect was eerder geïdentificeerd als probleem van de huidige release strategie en sluit nauw aan bij de versienummers en release data.

Door het wijzigingen van de releases naar een gestandaardiseerde semantische versienummering en het verhogen van het aantal releases zullen we de druk om snel bugfixes en verbeteringen aan een release toe te voegen stoppen.
Het ideale doel is het minimaliseren van toevoegen van items aan een release maar ook om een meer frequente release-cyclus. Belangrijk om in het achterhoofd te houden is dat releases als minor releases worden beschouwd en dus de achterwaartse compatibiliteit behoudt. Elke feature die de achterwaartse compatibiliteit breekt zal aan de volgende major release worden toegevoegd.

Stappen van de voorgestelde roadmap

De onderstaande CMS roadmap was tijdens de PLT Summit in Praag in juni 2015 goedgekeurd. Onthoud dat alle data voorlopige data zijn en deze bij elke release kunnen wijzigen.

2015
ReleaseFocusDate
3.5
  • New update emails plugin.
  • New router.
  • Remove com_messages from the core distribution (it will continue to be available from the JED as a core-ondersteunde extension).
  • Plugin to gather basic anonymised data as an opt-out feature. Data to be gathered will be PHP version, database type/version, Joomla version and OS type/version. We will also investigate gathering an optional further set of data as an opt-in feature inside the plugin.
  • Establish workflow for releasing core-ondersteunde extensions so that further core extensions can be decoupled.
October 2015
2016
ReleaseFocusDate
3.6
  • Hypermedia API (web services).
  • Remove unnecessary sample data.
  • New MVC.
  • Translator experience improvements.
1st quarter 2016
3.7
  • Improve the installation experience.
  • New Media Manager.
  • Further extension decoupling.
3rd quarter 2016