Insights into OXID eShop development 2016

I know you guys were longing to know what is going on in OXID eShop development, and finally, I can present quite a bunch of information that might interest you.

First of all: please feel invited to get in a personal touch with us (the OXID staff) and other members of the community at OXID Commons. I am sure that in workshops, at the tech track as well as at the Unconference the last secrets will be lit 😉

Back to the point: please see this scheme to get an idea of what we are working on. Also, this might be a good point for you to plan your module adaptations and projects:

OXID Roadmap 2016

OXID VM builder

As you might already know, the OXID development VM (builder), based on ansible and vagrant, and containing lots of the SDK (software development kit) was already released by the end of the last year. There’ll be screencasts about it’s usage soon as well as workshops about it at OXID Commons.

OXID eShop B2B

OXID B2B is an edition based on OXID eShop Enterprise Edition focussing huge enterprise level companies and solving typical process-based issues when trading between companies. This edition is not available under an open source license and was made public by the beginning of March 2016. Of course, it already supports the new responsive theme “Flow”.

OXID eShop CE/PE 4.10 Beta and OXID eShop EE 5.3 Beta

By the end of April, we published the above named minor releases as beta versions. They contain some improvements and fixed bugs as well as the new responsive theme “Flow” within this distribution. Also, the admin panel got a CSS facelift.

From this version on, in OXID eShop Enterprise and Professional Edition the extension “Visual CMS” was packaged as well. With this extension it is easily possible to create landing pages as well as department stores or other storytelling and content marketing elements. It allows to directly insert product data without any programming knowledge into content pages using existent widgets. If widgets are needed that don’t exist yet, they can easily be created by anyone who is familiar with coding.

Within the next few weeks, our live demo installations will be equipped step-by-step with the new Flow theme as well as the Visual CMS to illustrate the possibilities of these new features.

Please note that there are no BC (backwards compatibility) breaks with this release. However, we strongly recommend to not use a beta version in productive environments. We expect this OXID eShop final version to be released by the end of June (at this point).

OXID eShop series 6

The final scope and the release dates of the first version of series 6 are still to be decided but will definitely be released in 2016. Besides architectural and code changes, there’ll be other important adaptations you should know about:

Wording

We will introduce the term “Compilation” to differentiate between the standalone OXID eShop (without packaged extensions) and OXID eShop including packaged extensions.

Versioning

We will strictly apply the rules of Semantic Versioning as of the OXID eShop 6.0 release. That  means:

  • Patch releases do not include any new features. The last number of the version changes, like 5.3.0 -> 5.3.1 for example.
  • Minor releases contain new features. The second number will change like 5.2.x -> 5.3.0 but the are fully backwards compatible for features that already existed in prior versions.
  • Major releases appear when there’s a BC (backwards compatibility) break.

In deviation to the previous procedure, all versions of a major release (minor or patch) will be held in the same development branch. You might ask about the support endurance: this topic is still subject of discussion, and as soon as there’s a decision, we are going to inform you.

The technical version numbers will be unified again for all OXID eShop editions (no more 5.2/4.9 versions, all editions will be 6.x.x)

Semantic versioning in OXID eShop

Themes will be versioned independently from the eShop core, so that we can quickly release template changes which otherwise would require a full stack eShop release.

Contributions

As of OXID eShop series 6, NDA signees can optionally apply for GitHub access to the repositories of Professional and Enterprise Edition.

New installations

  • For new installations on any web hosting service, we will provide pre-compiled packages, there’s no need to have composer installed on – let’s say – your web hosting package at a common mass hosting provider.
  • On the other hand, it will be possible to set up your desired package yourself using composer if you do run your own root server(s) or have a decent staging/CI scenario.

Delivery of updates

  • We will no longer generate Cumulative Update Packages (CUPs) as updates will be provided by Composer repositories.
  • Updates – either patch or minor releases – can be published on a daily basis once our new continuous integration and delivery system is up and running.
  • We might release updates very frequently, and provide them to users and customers via Composer repositories in various flavours (stable, unstable).
  • This way, you can choose between a stable and unstable (bleeding edge) code base, which enables module developers to keep track with our development changes, and on the other hand provide proven code to those who want to use it in productive environments.
  • But no fear: there are still options to run an update if you’re not able to run composer on your system. Simply get the entire package and overwrite your existing installation with it. It is not recommended to change core code anyway, and if you do so, you should document it properly – a procedure you might got used to in the meantime, didn’t you?

Encoding

We will encrypt any proprietary code with ionCube instead of Zend Guard from OXID eShop series 6 on. As an Enterprise Edition customer or an Enterprise Solution Partner you may of course get the source code unencrypted after signing an NDA.

Architectural and code changes

  • New classes are already within namespaces. All current ox<Name> classes have been moved into namespaced ones.
  • Autoloading is pivoted to PSR-4, please see the code for autoloader inclusion
  • Database Access layer is switched to Doctrine, AdoDB light is ditched
  • Migrated database MyISAM tables to InnoDB
  • Some of the currently implemented 3rd party libraries upgraded to newer versions (e.g. PHPMailer)
  • (EE only): Varnish is now able to flush the cache on sub shop basis
  • Streamlining the core: some of the build-in features were relocated into modules such as Captcha, Lexware export, Statistics, Guestbook, Trusted Shops registration. For reasons…
  • Possibility to support several themes for modules was introduced
  • Henceforth, PHP v7 will officially be supported (although current versions seem to work well with it)
  • etc.

Alright, hope I could give you an overview on your questions about the what and when. I think this listing gives you also a good sense about the course, OXID eShop takes so you can plan your daily business.

Looking forward to seeing you on OXID Commons 2016 on June 2nd in Freiburg! Let us chat there and discover some more “secrets” and the “how”-part at the Unconference 😉


Marco SteinhäuserMarco is in e-commerce since 2000, working for OXID eSales since 2006 starting at support dept, taking care about OXID’s community management since October 2008. Father of four boys, passionate about i18n, l10n, guitar playing and archery. Get in touch.

13 thoughts on “Insights into OXID eShop development 2016

  1. Pingback: OXID eShop Entwicklungstrends, Shopware Community Day Nachlese, Nach der Show ist vor der Show – twam #47 | Magazin

    • In general it will be possible to install themes and modules either via the usual way and via composer. The modules we deliver, we will be installed via composer: there’ll be a specially coded plugin for composer that checks files will be placed to the right paths.
      Hard to predict what other module writers will do. If their modules will be hold in GitHub repositories it is no problem to use composer for the installation.

  2. Amazing stuff, it’s good to see that proper composer integration is a thing now. Switching to Doctrine seems a reasonable approach and proves that oxid is still going with the times at some point. But what happend with the proposed Symfony approach? Is this still a thing?

    Also, your shedule lists “RESTful API” in mid July. Is a REST API already a feature of the PE/EE versions or is this something completely new? If this is a new feature, will it be available in CE or PE/EE only? And will it only be able to manage product data or will it provide more functionality (like oauth, adding to basket, ordering, etc.) in the long run?

    • Daniel, sorry for the late answer – didn’t see your comment for a while.
      The RESTful API is actually what you might know as the AdminNG project. It is completely based on SF2 and handles product data in a first step.

  3. Hi, is there a specific beta release date or an alpha version we could use for some test of Oxid 6?

  4. Hi Marco, is there an updated release plan for OXID 6? Since it is end of november now, it would be interesting, if the 6 beta is still planned to be released this year? Thank you very much for any insights!

    • Hi Silvan,
      actually today is the release day for v6 beta 🙂
      As I am presently on the road and usually there are a lot of release steps it might happen that the community will be informed tomorrow or the day after.

Leave a Reply

Your email address will not be published. Required fields are marked *