Semantic MediaWiki and related extensions
Semantic MediaWiki 2.0

Released August 4th, 2014.

Compatibility changes

Semantic MediaWiki 2.0 is compatible with MediaWiki 1.19 up to MediaWiki 1.23, and possibly later versions. Support for both MediaWiki 1.23 and MediaWiki 1.24 was improved compared to SMW 1.9.

PHP compatibility remains the same as in SMW 1.9: all versions from PHP 5.3.2 to PHP 5.6.x.

For a full overview, see our https://github.com/SemanticMediaWiki/SemanticMediaWiki/blob/master/docs/COMPATIBILITY.md "compatibility matrix".

Quality and stability improvements

A great deal of effort has been put into ensuring both existing and new features work well. Not just at present, but also in future releases. And not just with MySQL and one version of MediaWiki, but on all platforms we support. This dedication to quality has resulted in many bugs being discovered and fixed, and makes future regressions much less likely.

Continuous integration is now an integral part of the development process behind SMW. As of the 2.0 release, SMW has over 2300 automated tests, which cover two thirds of the codebase. These tests are run automatically for every change made to the code, on machines with different databases, different versions of PHP, different SPARQL stores and different versions of MediaWiki.

Semantic Versioning

As of the 2.0 release, Semantic MediaWiki adheres to the Semantic Versioning standard. This makes our version numbers more meaningful and makes it easier for administrators to determine if a new release is relevant to them.

Improved SPARQLStore support

Semantic MediaWiki 1.6 introduced support for data synchronization with RDF back-ends. SMW 2.0 makes this functionality a first class citizen through many enhancements and stability improvements.

The smwgSparqlDatabase setting introduced in 1.6 has been deprecated in favour of $smwgSparqlDatabaseConnector (#342) to avoid arbitrary class assignments in $smwgSparqlDatabase (now only used to assign custom connectors).

Unit and integration tests were given extra focus together with a continuous integration of Jena Fuseki (1.0.2) (#337) and Virtuoso opensource 6.1 (#394) to ensure that compatibility and functional parity are going hand in hand with the rest of SMW. (Unfortunately 4Store currently does not run on the continuous integration platform, for details see garlik#110 but tests have been run successfully with a local 4store instance).

At this moment, the only RDF store to be tested and to support SPARQL 1.1 is Jena Fuseki therefore other stores may not support all query features. For details to the testing environment and its configuration, see the https://github.com/SemanticMediaWiki/SemanticMediaWiki/blob/master/src/SPARQLStore/README.md "README" file.

Improved subobject support

Support for subobjects has been added to the RDF export. This new capability is used by the RDF store functionality to also synchronize subobjects. (#344)

Subobjects now support sorting via the @sortkey annotation that stores an individual sortkey per subobject. (#225)

Notable bug fixes

SPARQLStore

Behind the scenes

SMW 2.0 continues to convert its classes to use PHP namespaces in order to separate responsibilities (#398, #404, #407, #409, #410, #411, #412, #416, #417, #418, #419, #421) and to be able to support PSR-4 in future.

Other internal enhancements or changes include:

Deprecated classes or scripts:

Removed classes or scripts:


About | General disclaimer | Privacy policy