Beiträge

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.

OXID projects moved to GitHub

OXID projects, previously hosted on http://projects.oxidforge.org, using FusionForge as a platform software, moved to GitHub.

GitHub is a much more powerful platform than the previous OXID projects ever could be. Also, it provides some nice social and viral features to collaborate even beyond the OXID orbit. The pull request and forking features allow easy collaboration, while keeping your own development infrastructure. GitHub is easy to use and even knows SVN commands 🙂

All projects have been moved, incl. their README files (and/or descriptions), plus a remark regarding when and by whom the project originally was registered. If you recognize that something doesn’t fit, just leave a comment on this blog post – or pull request a change on GitHub.

All previous project URLs have been permanently redirected to their new GitHub location. Additionally, on http://projects.oxidforge.org we created a landing page with some information about why we moved and what are your benefits and advantages. Also, we highlight some interesting projects, exchanging them from time to time on this landing page. If you have some ideas for other interesting projects or plan to start a new project, please let us know.

Hope you like GitHub as much as we do.

Quality Report for OXID eShop 4.6 has been published

We are happy to announce that Quality Report for OXID eShop 4.6 has been prepared and finalized by quality assurance team and is now published. (for download see below)

In our quality report we analyze and interprete the most important quality control measures of OXID eShop and draw comparisons between current and previous versions of the platform. OXID Quality assurance team makes big efforts to ensure that OXID eShop in every new version provides our customers with ever higher quality.

The results are reflected in the quality report: you will find some important software quality measures of OXID eShop 4.6.0. like code coverage, bug tracking /fixing process, bug status statistics, statistics about implemented improvements for performance, and also results of performance tests.

We are especially proud to announce that – despite the steady growth of the source code – we are able to keep the code coverage of our unit tests above 90%!

From now on we will continue to issue a quality report for each major and minor release. Reports appear some time after the release of the software so we can collect and evaluate more data from the final version. This way we hold ourselves accountable for the quality of the released product and provide you with the most relevant information.

On this occasion and on behalf of all QA team I’d like to say a big thank you to our active and loyal community for continuously sharing with us your experience with OXID eShop. Please continue to send feedback and help us improve the quality of our products even further!

Download your personal copy of OXID eShop Quality Report 4.6.0 here.

Watch a Video Timeline of OXID eShop Development

Yes, we are crazy geeks and we like to do stupid but funny stuff 🙂

Have you heard of a project called Gource? This great piece of software visualizes the evolution of a software project by showing source code changes over a specified time frame in a video.

When we heard about it, we naturally thought of trying it out with our new OXID SVN. Here’s the result: a video showing OXID eShop trunk changes, beginning from the time we switched over to our new SVN server. The files we worked on are displayed as dots in different colors, clustered by directories. The lines and junctions between them represent the directory paths and their relationships. The „explosions“ seem to be big commits.

It’s even better if you add some music to it. We’re using Dark Highway (Midi Man), which is available for free, so go ahead and download it to your iPod if you like it!

Now, all that’s left is some popcorn…