Addshore has uploaded a new change for review.
https://gerrit.wikimedia.org/r/231509
Change subject: Follow up on compatibility breaks in Wikibase
......................................................................
Follow up on compatibility breaks in Wikibase
EntityLookup and LanguageLabelDescriptionLookup have been removed from
WikibaseLib thus we must now get it from DataModelServices.
This extensions now requires ~1.1 of DMServices.
Replace ClaimGuidValidator StatementGuidValidator from DataModelServices.
Renamed getClaimGuidValidator to getStatementGuidValidator.
Bug: T108934
Change-Id: I0e4c1ff2ee6d9fdced90c16fcd4f90c8cf9aa6d4
---
M api/RunCrossCheck.php
M composer.json
M includes/CrossCheck/Comparer/DataValueComparerFactory.php
M includes/CrossCheck/CrossCheckInteractor.php
M includes/CrossCheck/CrossChecker.php
M includes/DumpMetaInformation/SqlDumpMetaInformationRepo.php
M includes/ExternalValidationServices.php
M includes/Violations/CrossCheckViolationFormatter.php
M specials/SpecialCrossCheck.php
M specials/SpecialExternalDbs.php
M tests/phpunit/Api/RunCrossCheckTest.php
M tests/phpunit/CrossCheck/CrossCheckInteractorTest.php
M tests/phpunit/DumpMetaInformation/SqlDumpMetaInformationRepoTest.php
M tests/phpunit/EvaluateCrossCheckJobServiceTest.php
M tests/phpunit/Specials/SpecialCrossCheckTest.php
M tests/phpunit/UpdateExternalData/UpdateExternalDataTest.php
16 files changed, 38 insertions(+), 39 deletions(-)
git pull
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/WikibaseQualityExternalValidation
refs/changes/09/231509/1
diff --git a/api/RunCrossCheck.php b/api/RunCrossCheck.php
index 31d94f0..4df22d1 100644
--- a/api/RunCrossCheck.php
+++ b/api/RunCrossCheck.php
@@ -6,12 +6,12 @@
use ApiMain;
use DataValues\Serializers;
use RequestContext;
+use Wikibase\DataModel\Services\EntityId\EntityIdParser;
+use Wikibase\DataModel\Services\Statement\StatementGuidValidator;
use Wikibase\Repo\Api\ApiErrorReporter;
use Wikibase\Repo\Api\ApiHelperFactory;
use Wikibase\Repo\Api\ResultBuilder;
use Wikibase\DataModel\Entity\EntityId;
-use Wikibase\DataModel\Entity\EntityIdParser;
-use Wikibase\Lib\ClaimGuidValidator;
use Wikibase\Repo\WikibaseRepo;
use WikibaseQuality\ExternalValidation\CrossCheck\CrossCheckInteractor;
use WikibaseQuality\ExternalValidation\ExternalValidationServices;
@@ -30,9 +30,9 @@
class RunCrossCheck extends ApiBase {
/**
- * @var ClaimGuidValidator
+ * @var StatementGuidValidator
*/
- private $claimGuidValidator;
+ private $statementGuidValidator;
/**
* @var CrossCheckInteractor
@@ -75,7 +75,7 @@
$main,
$name,
$prefix,
- $repo->getClaimGuidValidator(),
+ $repo->getStatementGuidValidator(),
$externalValidationServices->getCrossCheckInteractor(),
$externalValidationServices->getSerializerFactory(),
$repo->getApiHelperFactory( RequestContext::getMain() ),
@@ -88,12 +88,12 @@
* @param string $name
* @param string $prefix
*/
- public function __construct( ApiMain $main, $name, $prefix = '',
ClaimGuidValidator $claimGuidValidator,
+ public function __construct( ApiMain $main, $name, $prefix = '',
StatementGuidValidator $claimGuidValidator,
CrossCheckInteractor $crossCheckInteractor, SerializerFactory
$serializerFactory,
ApiHelperFactory $apiHelperFactory, EntityIdParser $idParser ) {
parent::__construct( $main, $name, $prefix );
- $this->claimGuidValidator = $claimGuidValidator;
+ $this->statementGuidValidator = $claimGuidValidator;
$this->crossCheckInteractor = $crossCheckInteractor;
$this->serializerFactory = $serializerFactory;
$this->errorReporter = $apiHelperFactory->getErrorReporter(
$this );
@@ -152,7 +152,7 @@
*/
private function assertAreValidClaimGuids( array $claimGuids ) {
foreach ( $claimGuids as $claimGuid ) {
- if ( $this->claimGuidValidator->validateFormat(
$claimGuid ) === false ) {
+ if ( $this->statementGuidValidator->validateFormat(
$claimGuid ) === false ) {
$this->errorReporter->dieError( 'Invalid claim
guid.', 'invalid-guid' );
}
}
diff --git a/composer.json b/composer.json
index 2ba479b..539f814 100644
--- a/composer.json
+++ b/composer.json
@@ -16,6 +16,7 @@
"require": {
"php": ">=5.3.0",
"wikibase/data-model": "~3.0",
+ "wikibase/data-model-services": "~1.1",
"serialization/serialization": "3.*,>=3.2.1",
"wikibase/data-model-serialization": "~1.3",
"wikimedia/assert": "~0.2.2"
diff --git a/includes/CrossCheck/Comparer/DataValueComparerFactory.php
b/includes/CrossCheck/Comparer/DataValueComparerFactory.php
index 53a287d..8ea5dbe 100644
--- a/includes/CrossCheck/Comparer/DataValueComparerFactory.php
+++ b/includes/CrossCheck/Comparer/DataValueComparerFactory.php
@@ -2,10 +2,8 @@
namespace WikibaseQuality\ExternalValidation\CrossCheck\Comparer;
-use Wikibase\Lib\Store\EntityLookup;
use Wikibase\StringNormalizer;
use Wikibase\TermIndex;
-
/**
* Class DataValueComparerFactory
diff --git a/includes/CrossCheck/CrossCheckInteractor.php
b/includes/CrossCheck/CrossCheckInteractor.php
index e392944..b79f09d 100644
--- a/includes/CrossCheck/CrossCheckInteractor.php
+++ b/includes/CrossCheck/CrossCheckInteractor.php
@@ -3,13 +3,13 @@
namespace WikibaseQuality\ExternalValidation\CrossCheck;
use InvalidArgumentException;
-use Wikibase\DataModel\Statement\StatementGuidParser;
+use Wikibase\DataModel\Services\Lookup\EntityLookup;
+use Wikibase\DataModel\Services\Statement\StatementGuidParser;
use Wikimedia\Assert\Assert;
use Wikibase\DataModel\Entity\Entity;
use Wikibase\DataModel\Entity\EntityId;
use Wikibase\DataModel\Entity\PropertyId;
use Wikibase\DataModel\Statement\StatementList;
-use Wikibase\Lib\Store\EntityLookup;
use WikibaseQuality\ExternalValidation\CrossCheck\Result\CrossCheckResultList;
diff --git a/includes/CrossCheck/CrossChecker.php
b/includes/CrossCheck/CrossChecker.php
index 38f0ebd..f7827f3 100644
--- a/includes/CrossCheck/CrossChecker.php
+++ b/includes/CrossCheck/CrossChecker.php
@@ -9,10 +9,10 @@
use Wikibase\DataModel\Entity\Entity;
use Wikibase\DataModel\Entity\EntityIdValue;
use Wikibase\DataModel\Entity\PropertyId;
+use Wikibase\DataModel\Services\Lookup\EntityLookup;
use Wikibase\DataModel\Snak\PropertyValueSnak;
use Wikibase\DataModel\Statement\Statement;
use Wikibase\DataModel\Statement\StatementList;
-use Wikibase\Lib\Store\EntityLookup;
use
WikibaseQuality\ExternalValidation\CrossCheck\ValueParser\ComparativeValueParser;
use
WikibaseQuality\ExternalValidation\CrossCheck\ValueParser\ComparativeValueParserFactory;
use WikibaseQuality\ExternalValidation\CrossCheck\Comparer\DataValueComparer;
diff --git a/includes/DumpMetaInformation/SqlDumpMetaInformationRepo.php
b/includes/DumpMetaInformation/SqlDumpMetaInformationRepo.php
index 890ed0a..5dc6c9d 100644
--- a/includes/DumpMetaInformation/SqlDumpMetaInformationRepo.php
+++ b/includes/DumpMetaInformation/SqlDumpMetaInformationRepo.php
@@ -7,7 +7,6 @@
use InvalidArgumentException;
use UnexpectedValueException;
use ResultWrapper;
-use Wikibase\DataModel\Entity\EntityIdParser;
use Wikibase\DataModel\Entity\ItemId;
use Wikibase\DataModel\Entity\PropertyId;
diff --git a/includes/ExternalValidationServices.php
b/includes/ExternalValidationServices.php
index 8e41cf5..6565a47 100644
--- a/includes/ExternalValidationServices.php
+++ b/includes/ExternalValidationServices.php
@@ -6,8 +6,8 @@
use DataValues\Deserializers\DataValueDeserializer;
use DataValues\Serializers\DataValueSerializer;
use ValueFormatters\FormatterOptions;
+use Wikibase\DataModel\Services\Lookup\LanguageLabelDescriptionLookup;
use Wikibase\Lib\SnakFormatter;
-use Wikibase\Lib\Store\LanguageLabelDescriptionLookup;
use Wikibase\Repo\ValueParserFactory;
use Wikibase\Repo\WikibaseRepo;
use Wikibase\StringNormalizer;
diff --git a/includes/Violations/CrossCheckViolationFormatter.php
b/includes/Violations/CrossCheckViolationFormatter.php
index 361d82e..14e6c88 100644
--- a/includes/Violations/CrossCheckViolationFormatter.php
+++ b/includes/Violations/CrossCheckViolationFormatter.php
@@ -7,7 +7,7 @@
use InvalidArgumentException;
use ValueFormatters\ValueFormatter;
use Wikibase\DataModel\Entity\ItemId;
-use Wikibase\Lib\EntityIdFormatter;
+use Wikibase\DataModel\Services\EntityId\EntityIdFormatter;
use
WikibaseQuality\ExternalValidation\DumpMetaInformation\DumpMetaInformationLookup;
use WikibaseQuality\Violations\Violation;
use WikibaseQuality\Violations\ViolationFormatter;
diff --git a/specials/SpecialCrossCheck.php b/specials/SpecialCrossCheck.php
index 4e858ad..dc7d8cb 100644
--- a/specials/SpecialCrossCheck.php
+++ b/specials/SpecialCrossCheck.php
@@ -4,6 +4,7 @@
use DataValues\DataValue;
use InvalidArgumentException;
+use Traversable;
use UnexpectedValueException;
use Html;
use HTMLForm;
@@ -14,14 +15,15 @@
use ValueFormatters\ValueFormatter;
use Wikibase\DataModel\Entity\Entity;
use Wikibase\DataModel\Entity\EntityId;
-use Wikibase\DataModel\Entity\EntityIdParser;
-use Wikibase\DataModel\Entity\EntityIdParsingException;
-use Wikibase\Lib\EntityIdFormatter;
+use Wikibase\DataModel\Entity\EntityIdValue;
+use Wikibase\DataModel\Services\EntityId\EntityIdFormatter;
+use Wikibase\DataModel\Services\EntityId\EntityIdParser;
+use Wikibase\DataModel\Services\EntityId\EntityIdParsingException;
+use Wikibase\DataModel\Services\Lookup\EntityLookup;
+use Wikibase\DataModel\Services\Lookup\LanguageLabelDescriptionLookup;
+use Wikibase\DataModel\Services\Lookup\TermLookup;
use Wikibase\Lib\OutputFormatValueFormatterFactory;
use Wikibase\Lib\SnakFormatter;
-use Wikibase\Lib\Store\EntityLookup;
-use Wikibase\Lib\Store\LanguageLabelDescriptionLookup;
-use Wikibase\Lib\Store\TermLookup;
use Wikibase\Repo\EntityIdHtmlLinkFormatterFactory;
use Wikibase\Repo\EntityIdLabelFormatterFactory;
use Wikibase\Repo\WikibaseRepo;
diff --git a/specials/SpecialExternalDbs.php b/specials/SpecialExternalDbs.php
index 8ec904c..abae13a 100644
--- a/specials/SpecialExternalDbs.php
+++ b/specials/SpecialExternalDbs.php
@@ -6,12 +6,12 @@
use Language;
use Linker;
use SpecialPage;
-use Wikibase\Lib\EntityIdFormatter;
+use Wikibase\DataModel\Services\EntityId\EntityIdFormatter;
+use Wikibase\DataModel\Services\Lookup\LanguageLabelDescriptionLookup;
+use Wikibase\DataModel\Services\Lookup\TermLookup;
use Wikibase\Lib\EntityIdHtmlLinkFormatter;
use Wikibase\Lib\LanguageNameLookup;
use Wikibase\Lib\Store\EntityTitleLookup;
-use Wikibase\Lib\Store\LanguageLabelDescriptionLookup;
-use Wikibase\Lib\Store\TermLookup;
use Wikibase\Repo\EntityIdHtmlLinkFormatterFactory;
use Wikibase\Repo\WikibaseRepo;
use WikibaseQuality\ExternalValidation\DumpMetaInformation\DumpMetaInformation;
diff --git a/tests/phpunit/Api/RunCrossCheckTest.php
b/tests/phpunit/Api/RunCrossCheckTest.php
index 535744e..83b76e7 100644
--- a/tests/phpunit/Api/RunCrossCheckTest.php
+++ b/tests/phpunit/Api/RunCrossCheckTest.php
@@ -9,8 +9,8 @@
use Wikibase\DataModel\Entity\ItemId;
use Wikibase\DataModel\Entity\Property;
use Wikibase\DataModel\Entity\PropertyId;
+use Wikibase\DataModel\Services\Statement\GuidGenerator;
use Wikibase\DataModel\Snak\PropertyValueSnak;
-use Wikibase\Lib\ClaimGuidGenerator;
use Wikibase\Repo\WikibaseRepo;
use Wikibase\Test\Repo\Api\WikibaseApiTestCase;
use
WikibaseQuality\ExternalValidation\DumpMetaInformation\SqlDumpMetaInformationRepo;
@@ -90,29 +90,29 @@
$store->saveEntity( $itemQ1, 'TestEntityQ1',
$GLOBALS['wgUser'], EDIT_NEW );
self::$idMap['Q1'] = $itemQ1->getId();
- $claimGuidGenerator = new ClaimGuidGenerator();
+ $guidGenerator = new GuidGenerator();
$dataValue = new EntityIdValue( new ItemId(
IDENTIFIER_PROPERTY_QID ) );
$snak = new PropertyValueSnak( new PropertyId(
INSTANCE_OF_PID ), $dataValue );
- $claimGuid = $claimGuidGenerator->newGuid(
self::$idMap['P3'] );
+ $claimGuid = $guidGenerator->newGuid(
self::$idMap['P3'] );
$propertyP3->getStatements()->addNewStatement( $snak,
null, null, $claimGuid );
$store->saveEntity( $propertyP3, 'TestEntityP3',
$GLOBALS['wgUser'], EDIT_UPDATE );
$dataValue = new StringValue( 'foo' );
$snak = new PropertyValueSnak( self::$idMap['P1'],
$dataValue );
- $claimGuid = $claimGuidGenerator->newGuid(
self::$idMap['Q1'] );
+ $claimGuid = $guidGenerator->newGuid(
self::$idMap['Q1'] );
self::$claimGuids['P1'] = $claimGuid;
$itemQ1->getStatements()->addNewStatement( $snak, null,
null, $claimGuid );
$dataValue = new StringValue( 'baz' );
$snak = new PropertyValueSnak( self::$idMap['P2'],
$dataValue );
- $claimGuid = $claimGuidGenerator->newGuid(
self::$idMap['Q1'] );
+ $claimGuid = $guidGenerator->newGuid(
self::$idMap['Q1'] );
self::$claimGuids['P2'] = $claimGuid;
$itemQ1->getStatements()->addNewStatement( $snak, null,
null, $claimGuid );
$dataValue = new StringValue( '1234' );
$snak = new PropertyValueSnak( self::$idMap['P3'],
$dataValue );
- $claimGuid = $claimGuidGenerator->newGuid(
self::$idMap['Q1'] );
+ $claimGuid = $guidGenerator->newGuid(
self::$idMap['Q1'] );
self::$claimGuids['P3'] = $claimGuid;
$itemQ1->getStatements()->addNewStatement( $snak, null,
null, $claimGuid );
diff --git a/tests/phpunit/CrossCheck/CrossCheckInteractorTest.php
b/tests/phpunit/CrossCheck/CrossCheckInteractorTest.php
index 73e53ea..d875ee1 100644
--- a/tests/phpunit/CrossCheck/CrossCheckInteractorTest.php
+++ b/tests/phpunit/CrossCheck/CrossCheckInteractorTest.php
@@ -2,11 +2,11 @@
namespace WikibaseQuality\ExternalValidation\Tests\CrossCheck;
-use Wikibase\DataModel\Statement\StatementGuidParser;
-use Wikibase\DataModel\Entity\BasicEntityIdParser;
use Wikibase\DataModel\Entity\Item;
use Wikibase\DataModel\Entity\ItemId;
use Wikibase\DataModel\Entity\PropertyId;
+use Wikibase\DataModel\Services\EntityId\BasicEntityIdParser;
+use Wikibase\DataModel\Services\Statement\StatementGuidParser;
use Wikibase\DataModel\Statement\Statement;
use Wikibase\DataModel\Entity\Entity;
use Wikibase\DataModel\Statement\StatementList;
diff --git
a/tests/phpunit/DumpMetaInformation/SqlDumpMetaInformationRepoTest.php
b/tests/phpunit/DumpMetaInformation/SqlDumpMetaInformationRepoTest.php
index df7a128..665b654 100644
--- a/tests/phpunit/DumpMetaInformation/SqlDumpMetaInformationRepoTest.php
+++ b/tests/phpunit/DumpMetaInformation/SqlDumpMetaInformationRepoTest.php
@@ -2,9 +2,9 @@
namespace WikibaseQuality\ExternalValidation\Tests\DumpMetaInformation;
-use Wikibase\DataModel\Entity\BasicEntityIdParser;
use Wikibase\DataModel\Entity\ItemId;
use Wikibase\DataModel\Entity\PropertyId;
+use Wikibase\DataModel\Services\EntityId\BasicEntityIdParser;
use WikibaseQuality\ExternalValidation\DumpMetaInformation\DumpMetaInformation;
use
WikibaseQuality\ExternalValidation\DumpMetaInformation\SqlDumpMetaInformationRepo;
diff --git a/tests/phpunit/EvaluateCrossCheckJobServiceTest.php
b/tests/phpunit/EvaluateCrossCheckJobServiceTest.php
index 717f495..b09003d 100644
--- a/tests/phpunit/EvaluateCrossCheckJobServiceTest.php
+++ b/tests/phpunit/EvaluateCrossCheckJobServiceTest.php
@@ -2,8 +2,8 @@
namespace WikibaseQuality\ExternalValidation\Tests;
-use Wikibase\Lib\ClaimGuidGenerator;
use Wikibase\DataModel\Entity\Item;
+use Wikibase\DataModel\Services\Statement\GuidGenerator;
use WikibaseQuality\ExternalValidation\EvaluateCrossCheckJobService;
use WikibaseQuality\ExternalValidation\DumpMetaInformation\DumpMetaInformation;
use WikibaseQuality\ExternalValidation\CrossCheck\Result\ComparisonResult;
@@ -38,7 +38,7 @@
$this->entity->setId( new ItemId( 'Q23' ) );
$propertyId = new PropertyId( 'P188' );
- $guidGenerator = new ClaimGuidGenerator();
+ $guidGenerator = new GuidGenerator();
$itemId = new ItemId( 'Q42' );
$identifierPropertyIds = array( new PropertyId( 'P42' ) );
$claimGuid = $guidGenerator->newGuid( $itemId );
diff --git a/tests/phpunit/Specials/SpecialCrossCheckTest.php
b/tests/phpunit/Specials/SpecialCrossCheckTest.php
index 323f220..79734d3 100644
--- a/tests/phpunit/Specials/SpecialCrossCheckTest.php
+++ b/tests/phpunit/Specials/SpecialCrossCheckTest.php
@@ -5,6 +5,7 @@
use Wikibase\DataModel\Entity\EntityIdValue;
use Wikibase\DataModel\Entity\ItemId;
use Wikibase\DataModel\Entity\PropertyId;
+use Wikibase\DataModel\Services\Statement\GuidGenerator;
use Wikibase\Repo\EntityIdLabelFormatterFactory;
use Wikibase\Test\SpecialPageTestBase;
use
WikibaseQuality\ExternalValidation\DumpMetaInformation\SqlDumpMetaInformationRepo;
@@ -16,7 +17,6 @@
use Wikibase\DataModel\Entity\Property;
use Wikibase\DataModel\Snak\PropertyValueSnak;
use Wikibase\DataModel\Statement\Statement;
-use Wikibase\Lib\ClaimGuidGenerator;
use Wikibase\Repo\WikibaseRepo;
use Wikibase\DataModel\Entity\EntityId;
use WikibaseQuality\WikibaseQualityServices;
@@ -125,7 +125,7 @@
$store->saveEntity($itemQ1, 'TestEntityQ1',
$GLOBALS['wgUser'], EDIT_NEW);
self::$idMap['Q1'] = $itemQ1->getId();
- $statementGuidGenerator = new ClaimGuidGenerator();
+ $statementGuidGenerator = new GuidGenerator();
$dataValue = new EntityIdValue(new
ItemId(IDENTIFIER_PROPERTY_QID));
$snak = new PropertyValueSnak(new
PropertyId(INSTANCE_OF_PID), $dataValue);
diff --git a/tests/phpunit/UpdateExternalData/UpdateExternalDataTest.php
b/tests/phpunit/UpdateExternalData/UpdateExternalDataTest.php
index 9e0805b..815a77c 100644
--- a/tests/phpunit/UpdateExternalData/UpdateExternalDataTest.php
+++ b/tests/phpunit/UpdateExternalData/UpdateExternalDataTest.php
@@ -2,7 +2,6 @@
namespace WikibaseQuality\ExternalValidation\Tests\UpdateExternalData;
-use Wikibase\DataModel\Entity\BasicEntityIdParser;
use Wikibase\DataModel\Entity\ItemId;
use Wikibase\DataModel\Entity\PropertyId;
use
WikibaseQuality\ExternalValidation\DumpMetaInformation\SqlDumpMetaInformationRepo;
--
To view, visit https://gerrit.wikimedia.org/r/231509
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I0e4c1ff2ee6d9fdced90c16fcd4f90c8cf9aa6d4
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/WikibaseQualityExternalValidation
Gerrit-Branch: master
Gerrit-Owner: Addshore <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits