| VersionX 1.0 + Revolution 2.1 Compatibility Issues Please note that the 1.0.x versions of VersionX available through the Package Manager are NOT compatible with MODX Revolution 2.1 or higher. You should upgrade to VersionX 2.0 if you want further support and stability. |
| There is a still unresolved critical bug in VersionX 2.0.0-rc1 which shows itself as a silent failure while saving or creating a snapshot of a static resource. Track the progress on that bug here. |
| This document was updated for VersionX 2.0 Please note that this document has been getting updates refering to the 2.0 codebase which has just been released on May 3rd 2012. |
What is VersionX?
VersionX is an extra for MODX Revolution which adds Resource, Template, Chunk, Template Variable, Snippet and Plugin versioning to your MODX site.
History & Legacy
VersionX was first developed in December 2010 by Mark Hamstra and made it up to Alpha5 in March 2011 before time ran out to further develop and support the component. Unfortunately VersionX 1.0 did not support MODX Revolution 2.1.
In August 2011, Mark made the first steps towards a complete rewrite, which happened mostly out of the public until late November. At time of writing (late January 2012) it looks like the first public version of VersionX 2.0 will be made available through the Package Manager soon...
| Version |
Release date |
Remarks / highlights |
|---|---|---|
| 1.00-alpha |
9 Jan 2011 |
Initial release. |
| 1.0.0-alpha2 |
11 Jan 2011 |
Several fatal issues fixed, German translation added |
| 1.0.0-alpha3 |
14 Jan 2011 |
Important fixes filed, usability improvements, French and Russian translated added |
| 1.0.0-alpha4 |
18 Mar 2011 |
Many bugfixes. |
| 1.0.0-alpha5 |
24 Mar 2011 |
Few fatal bugfixes. |
| 2.0.0-rc1 |
03 May 2012 |
Complete rewrite including versioning of Elements and actually functional restoring of resources. Compatible with Revolution 2.0.8 - 2.2.x (excluding 2.2.0-pl2, including basic support for Custom Resource Classes). Tabs added to Resource and Templates. |
| VersionX 1.0 and 2.0 are NOT compatible with eachother Due to the severity of the rewrite, VersionX 1.0 and 2.0 are not compatible with eachother. However, considering the huge advantages of 2.0 over 1.0, VersionX 2.0 will be pushed out as an update to 1.0 and the update process should be pretty smooth.. minus the fact that your stored revisions will not be imported to VersionX 2.0 and you will not be able to interact with them through the Manager after updating to 2.0. You can, however, access your old data by opening up the extra_versionx table in a tool such as PhpMyAdmin. An import is not planned, however during the setup procedure of VersionX 2.0 you will be presented with options to create a snapshot of the current data. See for more information under Usage & Features. |
Development & Bug reporting
VersionX 1.0 is no longer supported or developed, but for legacy sakes you can find the source on Github: https://github.com/Mark-H/VersionX
VersionX 2.0 has not yet been publicly released, and should not be considered to be stable or "final" until a release through the Package Manager. To track or contribute to the development you can also find it on Github: https://github.com/Mark-H/VersionX2 While bugs & feature requests are welcomed there, make sure to verify the latest codebase against your issue. It is also unlikely that requests made now make it into the first public release, so don't get your hopes up!
Usage & Features
VersionX consists of two parts. The first part is a plugin running on the backend which triggers on every Resource and Element create and update to make a copy of the data at that point. The second part is the back-end module (manager page) which may be accessed through the Components menu. This page offers you searchable grids with all the different versions stored in the database, with the possibility to open up the details. From there you are able to choose a different version to compare it with.
| Work in progress Will be expanded. I promise. For real this time! And if you don't believe me, or if it takes longer than you would like, I hereby challange you to expand it. |
Version tabs on Resource & Element panels
A popular request for 1.0 and 2.0 while in development was the ability to view versions from the Resource and Element panels, so users don't have to open the component to check what has happened to a certain object. I'm glad to report that this has been added as of 2.0.0-dev9 and as development moves forward, and as more interfaces are added to the component, these will also continue to be added to their respective panels.
Due to a bug in MODX Revolution 2.2.0-pl(2) the tabs do not show up on most Element panels. A patch has been submitted and I expect this to be fixed in MODX 2.2.1.
Take a Snapshot during Installation
To provide a baseline to compare to you can create a snapshot during the installation. You will be presented with checkboxes which you can tick or leave empty, indicating which types of elements and resources you would like to create a snapshot version of. Basically this creates a version for all resources or elementtypes you chose. As you can probably imagine this is an expensive and potentially long process, so I suggest to NOT run this if you're in a hurry or on a real crappy server with lots of resources/elements. You can run this any time by reinstalling the package from the package manager.
Versions created as a result of the snapshot during setup will have a "mode" set of "Snapshot".