PHP library defining the DataTypes\DataType
class of which instances represent a type of value,
such as "positive integer" or "percentage".
On Packagist:
You can use Composer to download and install this package as well as its dependencies. Alternatively you can simply clone the git repository and take care of loading yourself.
To add this package as a local, per-project dependency to your project, simply add a
dependency on data-values/data-types
to your project's composer.json
file.
Here is a minimal example of a composer.json
file that just defines a dependency on
DataTypes 1.0:
{
"require": {
"data-values/data-types": "~1.0"
}
}
Get the DataTypes code, either via git, or some other means. Also get all dependencies. You can find a list of the dependencies in the "require" section of the composer.json file. Load all dependencies and the load the DataTypes library by including its entry point: DataTypes.php.
This library comes with a set up PHPUnit tests that cover all non-trivial code. You can run these tests using the PHPUnit configuration file found in the root directory. The tests can also be run via TravisCI, as a TravisCI configuration file is also provided in the root directory.
DataTypes has been written by the Wikidata team at Wikimedia Germany for the Wikidata project.
- Updated internationalizations.
DataType
andDataTypeFactory
do not accept empty strings any more.- Removed
DataType::getLabel
along with theDataTypes\Message
class. - Added
DataType::getMessageKey
. - Added a basic PHPCS rule set, can be run with
composer phpcs
.
- Fixed cache invalidation in
DataTypesModule
. - Fixed
DataTypeFactory
to report invalid arguments on construction.
DataTypeFactory::getTypes()
now returns array with typeId keys as documented
DataType
no longer takes an array ofValueValidator
in its constructorDataType::getValidators
has been removedDataTypeFactory
now takes a map from data type id to data value type.DataTypeFactory::registerBuilder
has been removed
- Fixed version number constant.
- Updated code documentation for being able to automatically generate a proper documentation using JSDuck.
- Removed the ResourceLoader module "dependencies" which had been defined by accident.
- Improved path detection so it does not break when the library is included in
vendor
rather thanextensions
- Removed the global variable
wgDataTypes
- Rename
monolingual-text
tomonolingualtext
- Rename
multilingual-text
tomultilingualtext
- Migrated the i18n support to the new MediaWiki JSON format
- The tests are now run on PHP 5.6 and HHVM on travis
dataTypes.DataType
JavaScript object may no longer be initialized from adataValues.DataValue
object.- Removed
dataTypes.DataType.getLabel
. - Removed global DataType registration in the
dataTypes
object;DataTypeStore
is to be used instead. - Split up generic "dataTypes" ResourceLoader module into "dataTypes.DataType" and "dataTypes.DataTypeStore".
- Removed MediaWiki and DataValues dependencies from JavaScript code.
- Made code PSR-4 compliant
- Removed ResourceLoader dependency of QUnit tests.
- Implemented DataTypeStore.
- Remove assumption about where the extension is installed in the resource loading paths.
Initial release.