There is always a great deal of Joomla! development activity underway and communicating with other developers in the community is essential. This site is a resource for anyone looking to build or maintain software based on the Joomla platform

Version 11.1 was tagged on 5 July 2011. This was the inaugural release of the platform following its separation from the Joomla CMS trunk.

The following pull requests made by community contributors were merged:

  • [ #72 ] Some modifications to fix unit tests, etc. ( LouisLandry )

  • [ #67 ] Docblock Work ( elinw )

    Docblocks in database continued

  • [ #68 ] Docblocks ( elinw )

    More docblocks

  • [ #70 ] PHP Strict Errors ( AmyStephen )

    Commit 1 - Minor change made to JDate::setTimezone to correct PHP Strict Error Commit 2 - Remove JButton::fetchID parent class - child classes are not consistent with parameters so there is no easy way to make the parent class consistent. Since it is not used and since it only returns when executed, removing it will at least get rid of the Strict eror.

  • [ #25 ] Fixes for #22587 and #24285 ( klas )

    #22587 - Change modules cache lifetime to be set as intended (seconds must be converted to minutes) - Cache handler needs to use all parameters for static variable caching Also $_handler is a static variable and so can't be referenced as $this->_handler (this bug was introduced after #22587 report) - change back to self::$_handler #24285 Fix changes module caching to store only headers that changed after module was executed. Headers before and after callback are compared.

  • [ #65 ] Docblocks ( elinw )

    Some more work

  • [ #64 ] A couple minor adjustments to the JApplication constructor and JDocumentOpenSearch tests. (LouisLandry )

  • [ #62 ] Deprecate JException ( elinw )

    Deprecate JException I believe that's the intention see also mailing list discussion http://groups.google.com/group/joomla-dev-framework/browse_thread/thread/930aa3cb51a88f4c

  • [ #61 ] Rearranged if statement ( rcorral )

    It will be quicker to check for null every time than the $plugin variable

  • [ #60 ] Secruity ( realityking )

    These are tow security fixes/improvements I wrote a while ago but are only now public. They have already been committed to the 1.6.4 branch.

  • [ #59 ] Docblocks ( elinw )

    New version of the old pull request

  • [ #48 ] Docblocks ( elinw )

    More updating of doc blocks

  • [ #57 ] Restoring memory limit after daemon test ( ianmacl )

    The daemon class sets the maximum memory to 256M which causes the code coverage report to fail. This change will restore the default value after the test is run.

  • [ #58 ] Adding files for continuous integration ( ianmacl )

    Added an ant script and moved the phpunit.xml.dist file into root to facilitate continuous integration.

  • [ #53 ] Let getModules get the module parameters. ( elinw )

    This is in response to this discussion on the general list. https://groups.google.com/d/topic/joomla-dev-general/vQ1BY2AwCRo/discussion

  • [ #26 ] Add batch processing to framework (Feature Request #22590) ( mbabker )

    Consistent with http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=22590... This pull request focuses only on the framework changes for this feature request. Between the 1.6.3 release and the platform merge, batch processing was added to com_content. Upon my own review and testing, the code used here was applied in a manner that it could be reused throughout components that follow a category->item structure. Specific to the framework are the following changes: - JControllerForm: Function batch added - JModelAdmin: Functions batch, batchAccess, batchCopy, batchMove, and generateNewTitle added - JHtmlBatch added If implemented, changes to the CMS can be made as demonstrated via my SVN branch (mbabker).

  • [ #38 ] Add JHtmlBehavior::multiselect() and move the multiselect JavaScript code ( realityking )

    Add JHtmlBehavior::multiselect() and move the multiselect JavaScript code to core.js. Add the option to use id's other than "adminForm" with multiselect.

  • [ #52 ] fix for removeUserFromGroup(), Ticket does not exist for it ( svanschu )

  • [ #55 ] Don't render meta elements without content ( realityking )

    CMS Issue: http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=26184 Just a little markup saver. Also helps a little with some meta elements not valid in HTML5.

  • [ #56 ] Use local storage for tabs ( realityking )

    CMS Issue: http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=26192 Saves a couple of cookies in the administration without loosing any functionality. Shouldn't have an BC issues.

  • [ #51 ] Test suite cleanup ( sebastianbergmann )

  • [ #42 ] Corrects some errors in the router + add some unit test ( chdemko )

    see http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=23999

  • [ #41 ] Component install rollback function rollback_menu is unimplemented leaving items in jos_menu (chdemko )

    see http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=24549 http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=25663

  • [ #50 ] Namespace the checkAll() function ( realityking )

    Issue on JoomlaCode: http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=26124

  • [ #47 ] 2 platform changes that will enable Joomfish to interact with database queries more effectively (redux) ( GeraintEdwards )

    Sorry - closed pull request 44 by mistake (I'm new to github). This new request has the getter added to the correct class (I'd cut and pasted it in the wrong class last time :( ). To avoid confusion I'll repeat my comment about setters: A setter is a good idea (but not essential) but it would allow for unforeseen eventualities. The only problem with the setter is how it would interact with JDatabaseQueryElement - i.e. which one of the elements would it be setting? You can always simulate a setter by getting the separate element groups, calling clear and then resetting the relevant element. e.g. in pseudo code: $elements = $query->where; // do something to elements $query->clear('where'); foreach ($elements as $elem){ $query->where($elem); } Perhaps the last 4 lines would be the code for the __set method?

  • [ #46 ] Move JUpdater:arrayUnique() to JArrayHelper::arrayUnique(). ( realityking )

    IMO this sort of utility function is potentially useful for extension as well and should be located in a place where people would actually look for it :)

  • [ #49 ] Sync up media changes from trunk ( realityking )

  • [ #18 ] Add JDocumentOpensearch. ( realityking )

    These are the library changes for this patch: http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=25250 This is potentially useful for other apps as well.

  • [ #45 ] Cleared Fatal crash if JTestConfig not found ( Paladin )

    Added different config file to JDatabaseMySQLTest to allow an independent decision by the tester on whether these tests should be run. It now requires config_mysql.php to contain the JMySQLTestConfig class to be present or the tests will be skipped.

  • [ #12 ] New Unit tests ( realityking )

    A couple of unit tests from my Bitbucket branch.

  • [ #39 ] Update FancyUpload to version 3.0.1. ( realityking )

  • [ #33 ] Fixed JStringTest ( Paladin )

    Darwin bug was causing tests to fail. Added test for Darwin, and if tests are running under Darwin, it marks the international string tests as skipped, and gives the reason why.

  • [ #34 ] Fixed broken JCacheStorageTest test ( Paladin )

    Test case did not handle mimimum cache life properly. Also moved test into the JoomlaTestCase class hierarchy because of its dependencies and cleaned up duplicated code.

  • [ #35 ] Fixed JCacheTest cases ( Paladin )

    JCacheTest test cases were pointed at a directory structure that no longer exists in the new testing environment. I pointed them to the correct location.

  • [ #37 ] JDocumentRenderer tests skipped ( Paladin )

    The JDocumentRendererAtom and JDocumentRendererRSS classes are too tightly coupled for good testing right now, so I marked the tests as skipped with a todo to come back after breaking more dependencies in the code. I basically punted on these tests, after doing a minor bit of code cleanup. They're too tightly coupled with too long of a chain of static method calls to be able to test as a block right now. So I marked the tests as skipped, and left a TODO to revisit them after we've broken a few more layers of dependency.

  • [ #32 ] Cleaning up after JDocument changes ( Paladin )

    Removing methods under test while ignoring the tests caused a mess that needed cleaned up.

  • [ #8 ] Docblocks branch ( elinw )

    This should be just the doc block edits.

  • [ #31 ] Cleaned up After JVersion Rename ( Paladin )

    Rename of JVersion left the tests for it untouched. Renamed the test file and everything associated with JVersion to JPlatform, to catch up with change.

  • [ #13 ] Move the rendering of HTML link elements to JDocumentRendererHead. ( realityking )

    Previously discussed here: http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=25251 Note: This has some small backwards compatibility consequences (e.g. if somebody chose to override either of the two classes involved) but it makes JDocument more consistent and opens up future use (head links in other types of documents).

  • [ #22 ] Bb bit bucket url stuff updated ( elinw )

    old request did not have the test

  • [ #17 ] Remove getHeadData(), setHeadData() and mergeHeadData() from JDocument si ( realityking )

    Remove getHeadData(), setHeadData() and mergeHeadData() from JDocument since it only applies to JDocumentHTML.

  • [ #23 ] Remove workaround for PHP 4 and PHP 5.2.3 in JFTP and JXMLElement. ( realityking )

  • [ #11 ] AJAX improvements ( realityking )

    Small library modification to make it easier to use AJAX or other JS functionality with the Joomla framework.

  • [ #20 ] Use require_once instead of include in JLoader ( rvsjoen )

    I do not know if there is a good reason for using include over require_once, if there is, please disregard this commit. All unit tests ran fine with this change.

  • [ #14 ] JURI bugfix + stuff ( realityking )

    This fixes a regression in JURI (first commit). It also contains some new unit tests and code style improvements. The last commit removes a function parameter that is unused.

  • [ #19 ] Fix some unit tests so they also work on Windows ( rvsjoen )

    This has been previously discussed in this thread http://groups.google.com/group/joomla-dev-framework/browse_thread/thread/2bbd283638862a79

  • [ #2 ] Missing paremeter ( jonnsl )

    The function getUserState in the JApplication class is missing the $default parameter

As news came out today that there’s a vulnerability on HTTP_PROXY infecting CGI application on PHP, Python, Go and others known as httpoxy. The Production Leadership Team and the Joomla! Project wants to raise awareness of this to it’s users.

The Joomla! core itself is not affected in any way by this vulnerability, but third party extensions using specific PHP libraries might be. As of now we have no further information on which third parties extensions may use any affected libraries, so we ask all of our users to check with their extension providers to see if their extension might be affected. The HTTP protocol is used to make requests for information on the Internet, such as to load a web page, image file, or data from a RESTful API.

More information on the vulnerability can be found at : https://httpoxy.org/

For example we know the Guzzle library (a very popular one) is affected, therefore it’s recommended to update the library as soon as possible. For this specific library you can find a fix on github at the following link : https://github.com/guzzle/guzzle/commit/9d521b23146cb6cedd772770a2617fd6cbdb1596 or via Composer.

If you are not sure what libraries are used by your Third Party extension providers, please contact them. If you see updates in the next few days from these developers, please apply them.


Joomla! raises awareness on the HTTP_PROXY vulnerability

The Joomla UX team is conducting research to improve future versions of Joomla and we want your feedback! The goal of this survey is to gather user feedback regarding the recent Joomla 3.5 release. The feedback we receive will shape the direction of our process and our future research efforts.

This survey is fairly short and simple, it should take around 5 to 10 minutes to complete. The more feedback we get the more we can help our users - including you!. Please share this survey with your local Joomla communities, JUG groups, and spread the word on social media.

Take the Joomla 3.5 survey now!


Joomla 3.5: We Want Your Feedback

After feedback from the community the PLT agreed at their meeting on Sunday 1st May 2016 to release the improvements to the Joomla Update Component, containing a reinstall button and reinstating the ability to update Joomla via file upload, as soon as possible.

With our versioning policy (available at https://developer.joomla.org/news/586-joomla-development-strategy.html) this means that we must make a minor release. As a result rather than making a 3.5.2 release we will instead make a 3.6.0 release.

The features that originally were planned to ship with 3.6 (for example the refactored routing system and the custom fields component) will now be made in a 3.7 release. The timescale for the 3.7 release will be roughly unchanged and will still be led by Chris Davenport.

The full PLT minutes for this meeting will be published very soon in the usual reports section on the volunteer portal and will contain the planned release dates for 3.6.


Version Number Shifting