Announcing an Entirely New Codebase Structure with PressForward 3.9

Today we’re excited to announce the release of PressForward 3.9, which features a complete overhaul of the codebase to improve stability and pave the way for exciting future developments.

With the release of version 3.9,  PressForward takes its first step into an entirely new backend structure. After four years of constant development the core code which runs PressForward has fallen behind standards for the PHP and the greater plugin development community.  By rebuilding the core code of PressForward, the project has taken the first steps on to the path of an entirely dependency injected structure; as well as building out support to abstract database interactions into PressForward specific objects, which allows for greater modularity and creates a speedy path towards the PressForward API. Between dependency injection techniques and the first steps towards an ORM-style technique we hope to provide a robust PressForward platform that can drive a variety of applications.

The new structure will make PressForward faster and also begins the process of separating the core of PressForward from WordPress with an abstract code layer and the inclusion of interfaces. This is an important first step towards assuring the greatest possible performance, and also increases the flexibility of the project,  to speed future development.  It also has the advantage of making it increasingly easy to implement PressForward Core outside of WordPress.  

To build the new core codebase, PressForward has leveraged one of its largest community contributions to date, working closely with community contributor James DiGioia who has been developing Jaxion, the open-source dependency injection core implemented by our system. Jaxion is a Laravel-inspired framework for complex WordPress applications.

However, in order to implement these exciting enhancements, we have dropped support for PHP5.2, and users who are still running that version of PHP should upgrade. If you are unaware of what version of PHP your site is using, the “Debug Bar” plugin for WordPress provides that information without having to access server setting. Users who attempt to upgrade or install PressForward on a system running a PHP version below 5.3 will encounter an error.

To see a list of all the commits and changes in version 3.9, check out our GitHub milestone.

Props to James DiGioia


Changelog

  • Moved Core code to dependency injection system.
  • Removed compatibility with PHP5.2 and added warning for those attempting to activate on PHP5.2 or lower.
  • Added additional hooks to the Nominate This bookmarklet and process to allow for additional functionality.
  • Improve OpenGraph parsing
  • Better remove errors from the response in AJAX handlers
  • Resolve occasional activation error due to interface mis-match.

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>