Hoo man has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/176269

Change subject: Update Wikibase and WikibaseDataModel
......................................................................

Update Wikibase and WikibaseDataModel

Change-Id: Ic3d71792cf9980f6557ca8ff17ee327397dff56b
---
M composer.lock
M 
extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.entityview.js
M extensions/Wikibase/repo/config/Wikibase.default.php
M extensions/Wikibase/repo/i18n/en.json
M extensions/Wikibase/repo/includes/ItemView.php
M extensions/Wikibase/repo/includes/PropertyView.php
M extensions/Wikibase/repo/includes/View/ClaimsView.php
M extensions/Wikibase/repo/includes/View/EntityViewFactory.php
M vendor/composer/autoload_files.php
M vendor/composer/autoload_psr4.php
M vendor/composer/installed.json
M vendor/wikibase/data-model/RELEASE-NOTES.md
M vendor/wikibase/data-model/WikibaseDataModel.php
M vendor/wikibase/data-model/src/Claim/Claim.php
M vendor/wikibase/data-model/src/Entity/Property.php
M vendor/wikibase/data-model/src/Statement/Statement.php
M vendor/wikibase/data-model/src/Statement/StatementList.php
M vendor/wikibase/data-model/tests/unit/Statement/StatementListTest.php
18 files changed, 242 insertions(+), 222 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikidata 
refs/changes/69/176269/1

diff --git a/composer.lock b/composer.lock
index 950e593..e3fe9fa 100644
--- a/composer.lock
+++ b/composer.lock
@@ -897,16 +897,16 @@
         },
         {
             "name": "wikibase/data-model",
-            "version": "2.4.0",
+            "version": "2.4.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/wmde/WikibaseDataModel.git";,
-                "reference": "66de8e091eeb93bd201d9fdf52ebda958fae5b2a"
+                "reference": "6223a24ac1df8688c0d429995ebe71ba37e26cd5"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/wmde/WikibaseDataModel/zipball/66de8e091eeb93bd201d9fdf52ebda958fae5b2a";,
-                "reference": "66de8e091eeb93bd201d9fdf52ebda958fae5b2a",
+                "url": 
"https://api.github.com/repos/wmde/WikibaseDataModel/zipball/6223a24ac1df8688c0d429995ebe71ba37e26cd5";,
+                "reference": "6223a24ac1df8688c0d429995ebe71ba37e26cd5",
                 "shasum": ""
             },
             "require": {
@@ -947,7 +947,7 @@
                 "wikibase",
                 "wikidata"
             ],
-            "time": "2014-11-23 00:54:35"
+            "time": "2014-11-26 21:29:26"
         },
         {
             "name": "wikibase/data-model-javascript",
@@ -1188,12 +1188,12 @@
             "source": {
                 "type": "git",
                 "url": 
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git";,
-                "reference": "e8d02191319edc1f8c1821fb8c7adfa68cb20e2d"
+                "reference": "9a20e61a5c862a31bb7da1de661691f73e740124"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/e8d02191319edc1f8c1821fb8c7adfa68cb20e2d";,
-                "reference": "e8d02191319edc1f8c1821fb8c7adfa68cb20e2d",
+                "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/9a20e61a5c862a31bb7da1de661691f73e740124";,
+                "reference": "9a20e61a5c862a31bb7da1de661691f73e740124",
                 "shasum": ""
             },
             "require": {
@@ -1259,7 +1259,7 @@
                 "wikibaserepo",
                 "wikidata"
             ],
-            "time": "2014-11-25 19:41:13"
+            "time": "2014-11-27 14:51:02"
         },
         {
             "name": "wikibase/wikimedia-badges",
diff --git 
a/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.entityview.js
 
b/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.entityview.js
index dbdb1d4..2e7eabd 100644
--- 
a/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.entityview.js
+++ 
b/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.entityview.js
@@ -105,7 +105,7 @@
                var entityType = this.options.value.getType();
                if(
                        entityType === 'item'
-                       || entityType === 'property' && mw.config.get( 
'wbExperimentalFeatures' )
+                       || entityType === 'property' && this.element.find( 
'.wb-claimlistview' ).length === 1
                ) {
                        this._initClaims();
                }
diff --git a/extensions/Wikibase/repo/config/Wikibase.default.php 
b/extensions/Wikibase/repo/config/Wikibase.default.php
index 1eb1e3d..8187aa1 100644
--- a/extensions/Wikibase/repo/config/Wikibase.default.php
+++ b/extensions/Wikibase/repo/config/Wikibase.default.php
@@ -94,6 +94,8 @@
 
                'useRedirectTargetColumn' => true,
 
+               'displayStatementsOnProperties' => true,
+
                'conceptBaseUri' => function() {
                        $uri = $GLOBALS['wgServer'];
                        $uri = preg_replace( '!^//!', 'http://', $uri );
diff --git a/extensions/Wikibase/repo/i18n/en.json 
b/extensions/Wikibase/repo/i18n/en.json
index 5b82521..42b79a6 100644
--- a/extensions/Wikibase/repo/i18n/en.json
+++ b/extensions/Wikibase/repo/i18n/en.json
@@ -48,9 +48,7 @@
        "wikibase-description-input-help-message": "Enter a short description 
for this entity in $1.",
        "wikibase-fingerprintgroupview-input-help-message": "Enter a label of 
this entity, a short description and aliases per language.",
        "wikibase-fingerprintview-input-help-message": "Enter the label of this 
entity, a short description and aliases in $1.",
-       "wikibase-claims": "Claims",
        "wikibase-statements": "Statements",
-       "wikibase-attributes": "Attributes",
        "wikibase-terms": "In other languages",
        "wikibase-sitelinkgroupview-input-help-message": "Add a site link by 
specifying a site and a page of that site, edit or remove existing site links.",
        "wikibase-sitelinks-empty": "No page is linked to this item yet.",
diff --git a/extensions/Wikibase/repo/includes/ItemView.php 
b/extensions/Wikibase/repo/includes/ItemView.php
index e506d21..f791ebd 100644
--- a/extensions/Wikibase/repo/includes/ItemView.php
+++ b/extensions/Wikibase/repo/includes/ItemView.php
@@ -35,8 +35,7 @@
                $html = parent::getMainHtml( $entityRevision, $entityInfo, 
$editable );
                $html .= $this->claimsView->getHtml(
                        $item->getStatements()->toArray(),
-                       $entityInfo,
-                       'wikibase-statements'
+                       $entityInfo
                );
 
                return $html;
diff --git a/extensions/Wikibase/repo/includes/PropertyView.php 
b/extensions/Wikibase/repo/includes/PropertyView.php
index 6e8786b..40105fa 100644
--- a/extensions/Wikibase/repo/includes/PropertyView.php
+++ b/extensions/Wikibase/repo/includes/PropertyView.php
@@ -6,6 +6,9 @@
 use InvalidArgumentException;
 use Wikibase\DataModel\Entity\Property;
 use Wikibase\Repo\WikibaseRepo;
+use Wikibase\Repo\View\FingerprintView;
+use Wikibase\Repo\View\ClaimsView;
+use Language;
 
 /**
  * Class for creating views for Property instances.
@@ -18,6 +21,23 @@
  * @author H. Snater < mediaw...@snater.com >
  */
 class PropertyView extends EntityView {
+
+       /**
+        * @var bool
+        */
+       private $displayStatementsOnProperties;
+
+       /**
+        * @param FingerprintView $fingerprintView
+        * @param ClaimsView $claimsView
+        * @param Language $language
+        * @param bool $displayStatementsOnProperties
+        */
+       public function __construct( FingerprintView $fingerprintView, 
ClaimsView $claimsView, Language $language, $displayStatementsOnProperties ) {
+               parent::__construct($fingerprintView, $claimsView, $language);
+
+               $this->displayStatementsOnProperties = 
$displayStatementsOnProperties;
+       }
 
        /**
         * @see EntityView::getMainHtml
@@ -36,12 +56,10 @@
                $html = parent::getMainHtml( $entityRevision, $entityInfo, 
$editable );
                $html .= $this->getHtmlForDataType( $this->getDataType( 
$property ) );
 
-               if ( defined( 'WB_EXPERIMENTAL_FEATURES' ) && 
WB_EXPERIMENTAL_FEATURES ) {
-                       // @fixme Property::getClaims no longer returns any 
statements for properties!
+               if ( $this->displayStatementsOnProperties ) {
                        $html .= $this->claimsView->getHtml(
                                $property->getStatements()->toArray(),
-                               $entityInfo,
-                               'wikibase-attributes'
+                               $entityInfo
                        );
                }
 
diff --git a/extensions/Wikibase/repo/includes/View/ClaimsView.php 
b/extensions/Wikibase/repo/includes/View/ClaimsView.php
index 6ba6369..451c9e4 100644
--- a/extensions/Wikibase/repo/includes/View/ClaimsView.php
+++ b/extensions/Wikibase/repo/includes/View/ClaimsView.php
@@ -5,12 +5,8 @@
 use Linker;
 use Wikibase\ClaimHtmlGenerator;
 use Wikibase\DataModel\Claim\Claim;
-use Wikibase\DataModel\Entity\EntityId;
-use Wikibase\DataModel\Entity\Property;
 use Wikibase\DataModel\Snak\Snak;
-use Wikibase\Lib\Store\EntityInfoBuilderFactory;
 use Wikibase\Lib\Store\EntityTitleLookup;
-use Wikibase\ReferencedEntitiesFinder;
 
 /**
  * Generates HTML to display claims.
@@ -67,10 +63,9 @@
         *
         * @param Claim[] $claims the claims to render
         * @param array $entityInfo
-        * @param string $heading the message key of the heading
         * @return string
         */
-       public function getHtml( array $claims, array $entityInfo, $heading = 
'wikibase-claims' ) {
+       public function getHtml( array $claims, array $entityInfo ) {
                // aggregate claims by properties
                $claimsByProperty = $this->groupClaimsByProperties( $claims );
 
@@ -82,7 +77,7 @@
                $claimgrouplistviewHtml = wfTemplate( 'wb-claimgrouplistview', 
$claimsHtml, '' );
 
                // TODO: Add link to SpecialPage that allows adding a new claim.
-               $sectionHeading = $this->getHtmlForSectionHeading( $heading );
+               $sectionHeading = $this->getHtmlForSectionHeading( 
'wikibase-statements' );
                // FIXME: claimgrouplistview should be the topmost claims 
related template
                $html = wfTemplate( 'wb-claimlistview', 
$claimgrouplistviewHtml, '', '' );
                return $sectionHeading . $html;
diff --git a/extensions/Wikibase/repo/includes/View/EntityViewFactory.php 
b/extensions/Wikibase/repo/includes/View/EntityViewFactory.php
index 89e3759..92056c0 100644
--- a/extensions/Wikibase/repo/includes/View/EntityViewFactory.php
+++ b/extensions/Wikibase/repo/includes/View/EntityViewFactory.php
@@ -21,6 +21,7 @@
 use Wikibase\Repo\View\FingerprintView;
 use Wikibase\Repo\View\SectionEditLinkGenerator;
 use Wikibase\Repo\View\SnakHtmlGenerator;
+use Wikibase\Repo\WikibaseRepo;
 
 /**
  * @since 0.5
@@ -85,7 +86,10 @@
                if ( $entityType === 'item' ) {
                        return new ItemView( $fingerprintView, $claimsView, 
$language );
                } elseif ( $entityType === 'property' ) {
-                       return new PropertyView( $fingerprintView, $claimsView, 
$language );
+                       $displayStatementsOnProperties = 
WikibaseRepo::getDefaultInstance()->getSettings()
+                                       ->getSetting( 
'displayStatementsOnProperties' );
+
+                       return new PropertyView( $fingerprintView, $claimsView, 
$language, $displayStatementsOnProperties );
                }
 
                throw new InvalidArgumentException( 'No EntityView for entity 
type: ' . $entityType );
diff --git a/vendor/composer/autoload_files.php 
b/vendor/composer/autoload_files.php
index d7aeaca..c507edd 100644
--- a/vendor/composer/autoload_files.php
+++ b/vendor/composer/autoload_files.php
@@ -12,15 +12,15 @@
     $vendorDir . '/serialization/serialization/Serialization.php',
     $vendorDir . '/diff/diff/Diff.php',
     $vendorDir . '/data-values/javascript/DataValuesJavascript.php',
-    $vendorDir . '/wikibase/data-model/WikibaseDataModel.php',
     $vendorDir . '/data-values/time/Time.php',
     $vendorDir . '/data-values/number/Number.php',
     $vendorDir . '/data-values/geo/Geo.php',
+    $vendorDir . '/wikibase/data-model/WikibaseDataModel.php',
     $vendorDir . '/wikibase/data-model-javascript/init.php',
     $vendorDir . '/wikibase/serialization-javascript/init.php',
     $baseDir . '/extensions/ValueView/ValueView.php',
     $vendorDir . '/data-values/data-types/DataTypes.php',
     $vendorDir . '/data-values/validators/Validators.php',
-    $baseDir . '/extensions/Wikibase/Wikibase.composer.php',
     $baseDir . '/extensions/WikimediaBadges/WikimediaBadges.php',
+    $baseDir . '/extensions/Wikibase/Wikibase.composer.php',
 );
diff --git a/vendor/composer/autoload_psr4.php 
b/vendor/composer/autoload_psr4.php
index 2f4f533..14dd8b9 100644
--- a/vendor/composer/autoload_psr4.php
+++ b/vendor/composer/autoload_psr4.php
@@ -9,7 +9,7 @@
     'Wikidata\\' => array($baseDir . '/src'),
     'Wikibase\\Repo\\View\\' => array($baseDir . 
'/extensions/Wikibase/repo/includes/View'),
     'Wikibase\\InternalSerialization\\' => array($vendorDir . 
'/wikibase/internal-serialization/src'),
-    'Wikibase\\DataModel\\' => array($vendorDir . '/wikibase/data-model/src', 
$vendorDir . '/wikibase/data-model-serialization/src'),
+    'Wikibase\\DataModel\\' => array($vendorDir . 
'/wikibase/data-model-serialization/src', $vendorDir . 
'/wikibase/data-model/src'),
     'ValueValidators\\' => array($vendorDir . '/data-values/validators/src'),
     'Serializers\\' => array($vendorDir . 
'/serialization/serialization/src/Serializers'),
     'PropertySuggester\\' => array($baseDir . 
'/extensions/PropertySuggester/src/PropertySuggester'),
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index e619d70..c8f1e8a 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -536,62 +536,6 @@
         ]
     },
     {
-        "name": "wikibase/data-model",
-        "version": "2.4.0",
-        "version_normalized": "2.4.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/wmde/WikibaseDataModel.git";,
-            "reference": "66de8e091eeb93bd201d9fdf52ebda958fae5b2a"
-        },
-        "dist": {
-            "type": "zip",
-            "url": 
"https://api.github.com/repos/wmde/WikibaseDataModel/zipball/66de8e091eeb93bd201d9fdf52ebda958fae5b2a";,
-            "reference": "66de8e091eeb93bd201d9fdf52ebda958fae5b2a",
-            "shasum": ""
-        },
-        "require": {
-            "data-values/data-values": "~0.1|~1.0",
-            "diff/diff": "~1.0",
-            "php": ">=5.3.0"
-        },
-        "time": "2014-11-23 00:54:35",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.4.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "files": [
-                "WikibaseDataModel.php"
-            ],
-            "psr-4": {
-                "Wikibase\\DataModel\\": "src/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/";,
-        "license": [
-            "GPL-2.0+"
-        ],
-        "authors": [
-            {
-                "name": "Jeroen De Dauw",
-                "email": "jeroended...@gmail.com",
-                "homepage": "http://jeroendedauw.com";,
-                "role": "Developer"
-            }
-        ],
-        "description": "PHP implementation of the Wikibase DataModel",
-        "homepage": "https://github.com/wmde/WikibaseDataModel";,
-        "keywords": [
-            "DataModel",
-            "wikibase",
-            "wikidata"
-        ]
-    },
-    {
         "name": "wikibase/data-model-serialization",
         "version": "1.2.0",
         "version_normalized": "1.2.0.0",
@@ -1171,87 +1115,6 @@
         ]
     },
     {
-        "name": "wikibase/wikibase",
-        "version": "dev-wmf/1.25wmf10",
-        "version_normalized": "dev-wmf/1.25wmf10",
-        "source": {
-            "type": "git",
-            "url": 
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git";,
-            "reference": "e8d02191319edc1f8c1821fb8c7adfa68cb20e2d"
-        },
-        "dist": {
-            "type": "zip",
-            "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/e8d02191319edc1f8c1821fb8c7adfa68cb20e2d";,
-            "reference": "e8d02191319edc1f8c1821fb8c7adfa68cb20e2d",
-            "shasum": ""
-        },
-        "require": {
-            "data-values/common": "~0.2.0",
-            "data-values/data-types": "~0.4.0",
-            "data-values/data-values": "~1.0.0",
-            "data-values/geo": "~1.0",
-            "data-values/interfaces": "~0.1.4",
-            "data-values/javascript": "~0.6.0",
-            "data-values/number": "~0.4.0",
-            "data-values/serialization": "~1.0",
-            "data-values/time": "~0.6.0",
-            "data-values/validators": "~0.1.0",
-            "data-values/value-view": "~0.8.1",
-            "diff/diff": "~1.0",
-            "php": ">=5.3.2",
-            "wikibase/data-model": "~2.4",
-            "wikibase/data-model-javascript": "~1.0",
-            "wikibase/data-model-serialization": "~1.2",
-            "wikibase/easyrdf_lite": "~0.8.1",
-            "wikibase/internal-serialization": "~1.3",
-            "wikibase/serialization-javascript": "~2.0"
-        },
-        "conflict": {
-            "mediawiki/mediawiki": "<1.23"
-        },
-        "time": "2014-11-25 19:41:13",
-        "type": "mediawiki-extension",
-        "installation-source": "dist",
-        "autoload": {
-            "files": [
-                "Wikibase.composer.php"
-            ],
-            "classmap": [
-                "client/includes/",
-                "client/WikibaseClient.hooks.php",
-                "client/tests/phpunit/",
-                "lib/includes/",
-                "lib/WikibaseLib.hooks.php",
-                "lib/tests/phpunit/",
-                "repo/includes/",
-                "repo/maintenance/",
-                "repo/tests/phpunit/",
-                "repo/Wikibase.hooks.php"
-            ],
-            "psr-4": {
-                "Wikibase\\Repo\\View\\": "repo/includes/View"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/";,
-        "license": [
-            "GPL-2.0+"
-        ],
-        "authors": [
-            {
-                "name": "The Wikidata team"
-            }
-        ],
-        "description": "Structured data repository for MediaWiki",
-        "homepage": "http://wikiba.se";,
-        "keywords": [
-            "wikibase",
-            "wikibaseclient",
-            "wikibaselib",
-            "wikibaserepo",
-            "wikidata"
-        ]
-    },
-    {
         "name": "wikibase/wikimedia-badges",
         "version": "dev-master",
         "version_normalized": "9999999-dev",
@@ -1351,5 +1214,142 @@
             "source": "https://github.com/wmde/Wikidata.org/tree/master";,
             "issues": "https://github.com/wmde/Wikidata.org/issues";
         }
+    },
+    {
+        "name": "wikibase/data-model",
+        "version": "2.4.1",
+        "version_normalized": "2.4.1.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/wmde/WikibaseDataModel.git";,
+            "reference": "6223a24ac1df8688c0d429995ebe71ba37e26cd5"
+        },
+        "dist": {
+            "type": "zip",
+            "url": 
"https://api.github.com/repos/wmde/WikibaseDataModel/zipball/6223a24ac1df8688c0d429995ebe71ba37e26cd5";,
+            "reference": "6223a24ac1df8688c0d429995ebe71ba37e26cd5",
+            "shasum": ""
+        },
+        "require": {
+            "data-values/data-values": "~0.1|~1.0",
+            "diff/diff": "~1.0",
+            "php": ">=5.3.0"
+        },
+        "time": "2014-11-26 21:29:26",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.4.x-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "files": [
+                "WikibaseDataModel.php"
+            ],
+            "psr-4": {
+                "Wikibase\\DataModel\\": "src/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/";,
+        "license": [
+            "GPL-2.0+"
+        ],
+        "authors": [
+            {
+                "name": "Jeroen De Dauw",
+                "email": "jeroended...@gmail.com",
+                "homepage": "http://jeroendedauw.com";,
+                "role": "Developer"
+            }
+        ],
+        "description": "PHP implementation of the Wikibase DataModel",
+        "homepage": "https://github.com/wmde/WikibaseDataModel";,
+        "keywords": [
+            "DataModel",
+            "wikibase",
+            "wikidata"
+        ]
+    },
+    {
+        "name": "wikibase/wikibase",
+        "version": "dev-wmf/1.25wmf10",
+        "version_normalized": "dev-wmf/1.25wmf10",
+        "source": {
+            "type": "git",
+            "url": 
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git";,
+            "reference": "9a20e61a5c862a31bb7da1de661691f73e740124"
+        },
+        "dist": {
+            "type": "zip",
+            "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/9a20e61a5c862a31bb7da1de661691f73e740124";,
+            "reference": "9a20e61a5c862a31bb7da1de661691f73e740124",
+            "shasum": ""
+        },
+        "require": {
+            "data-values/common": "~0.2.0",
+            "data-values/data-types": "~0.4.0",
+            "data-values/data-values": "~1.0.0",
+            "data-values/geo": "~1.0",
+            "data-values/interfaces": "~0.1.4",
+            "data-values/javascript": "~0.6.0",
+            "data-values/number": "~0.4.0",
+            "data-values/serialization": "~1.0",
+            "data-values/time": "~0.6.0",
+            "data-values/validators": "~0.1.0",
+            "data-values/value-view": "~0.8.1",
+            "diff/diff": "~1.0",
+            "php": ">=5.3.2",
+            "wikibase/data-model": "~2.4",
+            "wikibase/data-model-javascript": "~1.0",
+            "wikibase/data-model-serialization": "~1.2",
+            "wikibase/easyrdf_lite": "~0.8.1",
+            "wikibase/internal-serialization": "~1.3",
+            "wikibase/serialization-javascript": "~2.0"
+        },
+        "conflict": {
+            "mediawiki/mediawiki": "<1.23"
+        },
+        "time": "2014-11-27 14:51:02",
+        "type": "mediawiki-extension",
+        "installation-source": "source",
+        "autoload": {
+            "files": [
+                "Wikibase.composer.php"
+            ],
+            "classmap": [
+                "client/includes/",
+                "client/WikibaseClient.hooks.php",
+                "client/tests/phpunit/",
+                "lib/includes/",
+                "lib/WikibaseLib.hooks.php",
+                "lib/tests/phpunit/",
+                "repo/includes/",
+                "repo/maintenance/",
+                "repo/tests/phpunit/",
+                "repo/Wikibase.hooks.php"
+            ],
+            "psr-4": {
+                "Wikibase\\Repo\\View\\": "repo/includes/View"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/";,
+        "license": [
+            "GPL-2.0+"
+        ],
+        "authors": [
+            {
+                "name": "The Wikidata team"
+            }
+        ],
+        "description": "Structured data repository for MediaWiki",
+        "homepage": "http://wikiba.se";,
+        "keywords": [
+            "wikibase",
+            "wikibaseclient",
+            "wikibaselib",
+            "wikibaserepo",
+            "wikidata"
+        ]
     }
 ]
diff --git a/vendor/wikibase/data-model/RELEASE-NOTES.md 
b/vendor/wikibase/data-model/RELEASE-NOTES.md
index 171135e..504ef14 100644
--- a/vendor/wikibase/data-model/RELEASE-NOTES.md
+++ b/vendor/wikibase/data-model/RELEASE-NOTES.md
@@ -1,5 +1,9 @@
 # Wikibase DataModel release notes
 
+## Version 2.4.1 (2014-11-26)
+
+* Fixed `StatementList` not reindexing array keys
+
 ## Version 2.4.0 (2014-11-23)
 
 * `Property` now implements the deprecated claim related methods defined in 
`Entity`
diff --git a/vendor/wikibase/data-model/WikibaseDataModel.php 
b/vendor/wikibase/data-model/WikibaseDataModel.php
index 5ab56f6..cfcea62 100644
--- a/vendor/wikibase/data-model/WikibaseDataModel.php
+++ b/vendor/wikibase/data-model/WikibaseDataModel.php
@@ -12,7 +12,7 @@
        return 1;
 }
 
-define( 'WIKIBASE_DATAMODEL_VERSION', '2.4.0' );
+define( 'WIKIBASE_DATAMODEL_VERSION', '2.4.1' );
 
 if ( defined( 'MEDIAWIKI' ) ) {
        call_user_func( function() {
diff --git a/vendor/wikibase/data-model/src/Claim/Claim.php 
b/vendor/wikibase/data-model/src/Claim/Claim.php
index 7f196eb..0ee7c2c 100644
--- a/vendor/wikibase/data-model/src/Claim/Claim.php
+++ b/vendor/wikibase/data-model/src/Claim/Claim.php
@@ -63,11 +63,11 @@
 
        /**
         * @param Snak $mainSnak
-        * @param null|Snaks $qualifiers
+        * @param Snaks|null $qualifiers
         */
        public function __construct( Snak $mainSnak, Snaks $qualifiers = null ) 
{
                $this->mainSnak = $mainSnak;
-               $this->qualifiers = $qualifiers === null ? new SnakList() : 
$qualifiers;
+               $this->qualifiers = $qualifiers ?: new SnakList();
        }
 
        /**
diff --git a/vendor/wikibase/data-model/src/Entity/Property.php 
b/vendor/wikibase/data-model/src/Entity/Property.php
index dfcb2bb..87b6f28 100644
--- a/vendor/wikibase/data-model/src/Entity/Property.php
+++ b/vendor/wikibase/data-model/src/Entity/Property.php
@@ -42,11 +42,16 @@
         * @param string $dataTypeId
         * @param StatementList|null $statements Since 1.1
         */
-       public function __construct( PropertyId $id = null, Fingerprint 
$fingerprint, $dataTypeId, StatementList $statements = null ) {
+       public function __construct(
+               PropertyId $id = null,
+               Fingerprint $fingerprint,
+               $dataTypeId,
+               StatementList $statements = null
+       ) {
                $this->id = $id;
                $this->fingerprint = $fingerprint;
                $this->setDataTypeId( $dataTypeId );
-               $this->statements = $statements === null ? new StatementList() 
: $statements;
+               $this->statements = $statements ?: new StatementList();
        }
 
        /**
@@ -125,8 +130,7 @@
                return new self(
                        null,
                        Fingerprint::newEmpty(),
-                       $dataTypeId,
-                       new StatementList()
+                       $dataTypeId
                );
        }
 
diff --git a/vendor/wikibase/data-model/src/Statement/Statement.php 
b/vendor/wikibase/data-model/src/Statement/Statement.php
index 4b58ca5..cb42c69 100644
--- a/vendor/wikibase/data-model/src/Statement/Statement.php
+++ b/vendor/wikibase/data-model/src/Statement/Statement.php
@@ -48,7 +48,7 @@
         */
        public function __construct( Claim $claim, ReferenceList $references = 
null ) {
                $this->setClaim( $claim );
-               $this->references = $references === null ? new ReferenceList() 
: $references;
+               $this->references = $references ?: new ReferenceList();
        }
 
        /**
diff --git a/vendor/wikibase/data-model/src/Statement/StatementList.php 
b/vendor/wikibase/data-model/src/Statement/StatementList.php
index 5f2c222..db843d2 100644
--- a/vendor/wikibase/data-model/src/Statement/StatementList.php
+++ b/vendor/wikibase/data-model/src/Statement/StatementList.php
@@ -41,19 +41,6 @@
         * @throws InvalidArgumentException
         */
        public function __construct( $statements = array() ) {
-               $this->assertAreStatements( $statements );
-
-               if ( is_array( $statements ) ) {
-                       $this->statements = $statements;
-               }
-               else {
-                       foreach ( $statements as $statement ) {
-                               $this->statements[] = $statement;
-                       }
-               }
-       }
-
-       private function assertAreStatements( $statements ) {
                if ( !is_array( $statements ) && !( $statements instanceof 
Traversable ) ) {
                        throw new InvalidArgumentException( '$statements must 
be an array or an instance of Traversable' );
                }
@@ -62,6 +49,8 @@
                        if ( !( $statement instanceof Statement ) ) {
                                throw new InvalidArgumentException( 'Every 
element in $statements must be an instance of Statement' );
                        }
+
+                       $this->statements[] = $statement;
                }
        }
 
diff --git 
a/vendor/wikibase/data-model/tests/unit/Statement/StatementListTest.php 
b/vendor/wikibase/data-model/tests/unit/Statement/StatementListTest.php
index 9f9261a..9ca2187 100644
--- a/vendor/wikibase/data-model/tests/unit/Statement/StatementListTest.php
+++ b/vendor/wikibase/data-model/tests/unit/Statement/StatementListTest.php
@@ -28,11 +28,11 @@
 
        public function 
testGivenStatements_getPropertyIdsReturnsArrayWithoutDuplicates() {
                $list = new StatementList( array(
-                       $this->getStubStatement( 1, 'kittens' ),
-                       $this->getStubStatement( 3, 'foo' ),
-                       $this->getStubStatement( 2, 'bar' ),
-                       $this->getStubStatement( 2, 'baz' ),
-                       $this->getStubStatement( 1, 'bah' ),
+                       $this->getStatement( 1, 'kittens' ),
+                       $this->getStatement( 3, 'foo' ),
+                       $this->getStatement( 2, 'bar' ),
+                       $this->getStatement( 2, 'baz' ),
+                       $this->getStatement( 1, 'bah' ),
                ) );
 
                $this->assertEquals(
@@ -45,7 +45,21 @@
                );
        }
 
-       private function getStubStatement( $propertyId, $guid, $rank = 
Statement::RANK_NORMAL ) {
+       public function testGivenStatementsWithArrayKeys_reindexesArray() {
+               $statement = $this->getStatement( 1, 'guid' );
+               $list = new StatementList( array( 'ignore-me' => $statement ) );
+
+               $this->assertSame( array( 0 => $statement ), $list->toArray() );
+       }
+
+       /**
+        * @param int $propertyId
+        * @param string $guid
+        * @param int $rank
+        *
+        * @return Statement
+        */
+       private function getStatement( $propertyId, $guid, $rank = 
Statement::RANK_NORMAL ) {
                $statement = $this->getMockBuilder( 
'Wikibase\DataModel\Statement\Statement' )
                        ->disableOriginalConstructor()->getMock();
 
@@ -65,7 +79,7 @@
        }
 
        public function testCanIterate() {
-               $statement = $this->getStubStatement( 1, 'kittens' );
+               $statement = $this->getStatement( 1, 'kittens' );
                $list = new StatementList( array( $statement ) );
 
                foreach ( $list as $statementFormList ) {
@@ -75,27 +89,27 @@
 
        public function testGetBestStatementPerProperty() {
                $list = new StatementList( array(
-                       $this->getStubStatement( 1, 'one', 
Statement::RANK_PREFERRED ),
-                       $this->getStubStatement( 1, 'two', 
Statement::RANK_NORMAL ),
-                       $this->getStubStatement( 1, 'three', 
Statement::RANK_PREFERRED ),
+                       $this->getStatement( 1, 'one', 
Statement::RANK_PREFERRED ),
+                       $this->getStatement( 1, 'two', Statement::RANK_NORMAL ),
+                       $this->getStatement( 1, 'three', 
Statement::RANK_PREFERRED ),
 
-                       $this->getStubStatement( 2, 'four', 
Statement::RANK_DEPRECATED ),
+                       $this->getStatement( 2, 'four', 
Statement::RANK_DEPRECATED ),
 
-                       $this->getStubStatement( 3, 'five', 
Statement::RANK_DEPRECATED ),
-                       $this->getStubStatement( 3, 'six', 
Statement::RANK_NORMAL ),
+                       $this->getStatement( 3, 'five', 
Statement::RANK_DEPRECATED ),
+                       $this->getStatement( 3, 'six', Statement::RANK_NORMAL ),
 
-                       $this->getStubStatement( 4, 'seven', 
Statement::RANK_PREFERRED ),
-                       $this->getStubStatement( 4, 'eight', Claim::RANK_TRUTH 
),
+                       $this->getStatement( 4, 'seven', 
Statement::RANK_PREFERRED ),
+                       $this->getStatement( 4, 'eight', Claim::RANK_TRUTH ),
                ) );
 
                $this->assertEquals(
                        array(
-                               $this->getStubStatement( 1, 'one', 
Statement::RANK_PREFERRED ),
-                               $this->getStubStatement( 1, 'three', 
Statement::RANK_PREFERRED ),
+                               $this->getStatement( 1, 'one', 
Statement::RANK_PREFERRED ),
+                               $this->getStatement( 1, 'three', 
Statement::RANK_PREFERRED ),
 
-                               $this->getStubStatement( 3, 'six', 
Statement::RANK_NORMAL ),
+                               $this->getStatement( 3, 'six', 
Statement::RANK_NORMAL ),
 
-                               $this->getStubStatement( 4, 'eight', 
Claim::RANK_TRUTH ),
+                               $this->getStatement( 4, 'eight', 
Claim::RANK_TRUTH ),
                        ),
                        $list->getBestStatementPerProperty()->toArray()
                );
@@ -298,22 +312,15 @@
 
        public function statementArrayProvider() {
                return array(
-                       array(
-                               array(
-                                       $this->getStatementWithSnak( 1, 'foo' ),
-                                       $this->getStatementWithSnak( 2, 'bar' ),
-                               )
-                       ),
-
-                       array(
-                               array(
-                                       $this->getStatementWithSnak( 1, 'foo' ),
-                               )
-                       ),
-
-                       array(
-                               array()
-                       ),
+                       array( array(
+                               $this->getStatementWithSnak( 1, 'foo' ),
+                               $this->getStatementWithSnak( 2, 'bar' ),
+                       ) ),
+                       array( array(
+                               $this->getStatementWithSnak( 1, 'foo' ),
+                       ) ),
+                       array( array(
+                       ) ),
                );
        }
 

-- 
To view, visit https://gerrit.wikimedia.org/r/176269
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic3d71792cf9980f6557ca8ff17ee327397dff56b
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikidata
Gerrit-Branch: wmf/1.25wmf10
Gerrit-Owner: Hoo man <h...@online.de>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to