From 61a27b5b6bddc568cff12880ed6d32be10f4505e Mon Sep 17 00:00:00 2001 From: Robbie Averill Date: Mon, 8 May 2017 17:09:48 +1200 Subject: [PATCH 1/4] API Add deprecation notices for removed methods in 2.0 --- code/cms/DMSDocumentAddController.php | 2 ++ code/extensions/DMSSiteTreeExtension.php | 6 ++++++ code/interface/DMSDocumentInterface.php | 8 ++++++++ code/model/DMSDocument.php | 12 ++++++++++++ 4 files changed, 28 insertions(+) diff --git a/code/cms/DMSDocumentAddController.php b/code/cms/DMSDocumentAddController.php index 475fbb1..40ee5e2 100644 --- a/code/cms/DMSDocumentAddController.php +++ b/code/cms/DMSDocumentAddController.php @@ -27,6 +27,8 @@ class DMSDocumentAddController extends LeftAndMain * Add an array of additional allowed extensions * @static * @param $array + * + * @deprecated 2.0 Will be removed in future in favour of YAML configuration */ public static function add_allowed_extensions($array = null) { diff --git a/code/extensions/DMSSiteTreeExtension.php b/code/extensions/DMSSiteTreeExtension.php index 439adbc..1f67831 100644 --- a/code/extensions/DMSSiteTreeExtension.php +++ b/code/extensions/DMSSiteTreeExtension.php @@ -18,6 +18,8 @@ class DMSSiteTreeExtension extends DataExtension * Do not show the documents tab on the array of pages set here * @static * @param $mixed Array of page types to not show the Documents tab on + * + * @deprecated 2.0 Will be removed in favour of YAML configuration */ public static function no_documents_tab($array = array()) { @@ -36,6 +38,8 @@ class DMSSiteTreeExtension extends DataExtension * still not be shown. If this isn't called, or if it is called with an empty array, all pages will get Document tabs. * @static * @param $array Array of page types to show the Documents tab on + * + * @deprecated 2.0 Will be removed in favour of YAML configuration */ public static function show_documents_tab($array = array()) { @@ -132,6 +136,8 @@ class DMSSiteTreeExtension extends DataExtension /** * Enforce sorting for frontend + * + * @deprecated 2.0 Will be removed in future */ public function PageDocuments() { diff --git a/code/interface/DMSDocumentInterface.php b/code/interface/DMSDocumentInterface.php index 9331b6f..461f439 100644 --- a/code/interface/DMSDocumentInterface.php +++ b/code/interface/DMSDocumentInterface.php @@ -23,6 +23,8 @@ interface DMSDocumentInterface * @abstract * @param $pageObject Page object to associate this DMSDocument with * @return null + * + * @deprecated 2.0 Will be removed in future in favour of document sets */ public function addPage($pageObject); @@ -32,6 +34,8 @@ interface DMSDocumentInterface * @abstract * @param $pageIDs array of page ids used for the page objects associate this DMSDocument with * @return null + * + * @deprecated 2.0 Will be removed in future in favour of document sets */ public function addPages($pageIDs); @@ -47,6 +51,8 @@ interface DMSDocumentInterface * Returns a list of the Page objects associated with this DMSDocument * @abstract * @return DataList + * + * @deprecated 2.0 Will be removed in future in favour of document sets */ public function getPages(); @@ -54,6 +60,8 @@ interface DMSDocumentInterface * Removes all associated Pages from the DMSDocument * @abstract * @return null + * + * @deprecated 2.0 Will be removed in future in favour of document sets */ public function removeAllPages(); diff --git a/code/model/DMSDocument.php b/code/model/DMSDocument.php index b47e573..ecee73a 100644 --- a/code/model/DMSDocument.php +++ b/code/model/DMSDocument.php @@ -164,6 +164,8 @@ class DMSDocument extends DataObject implements DMSDocumentInterface * @param SiteTree $pageObject Page object to associate this Document with * * @return DMSDocument + * + * @deprecated 2.0 Will be removed in future in favour of document sets */ public function addPage($pageObject) { @@ -182,6 +184,8 @@ class DMSDocument extends DataObject implements DMSDocumentInterface * @param array $pageIDs * * @return DMSDocument + * + * @deprecated 2.0 Will be removed in future in favour of document sets */ public function addPages($pageIDs) { @@ -203,6 +207,8 @@ class DMSDocument extends DataObject implements DMSDocumentInterface * @param SiteTree $pageObject Page object to remove the association to * * @return DMSDocument + * + * @deprecated 2.0 Will be removed in future in favour of document sets */ public function removePage($pageObject) { @@ -215,6 +221,8 @@ class DMSDocument extends DataObject implements DMSDocumentInterface * @see getPages() * * @return DataList + * + * @deprecated 2.0 Will be removed in future in favour of document sets */ public function Pages() { @@ -228,6 +236,8 @@ class DMSDocument extends DataObject implements DMSDocumentInterface * Returns a list of the Page objects associated with this Document. * * @return DataList + * + * @deprecated 2.0 Will be removed in future in favour of document sets */ public function getPages() { @@ -238,6 +248,8 @@ class DMSDocument extends DataObject implements DMSDocumentInterface * Removes all associated Pages from the DMSDocument * * @return DMSDocument + * + * @deprecated 2.0 Will be removed in future in favour of document sets */ public function removeAllPages() { From b6c1614b8c5cbcc2bfff48cdf1f719593aded6ec Mon Sep 17 00:00:00 2001 From: Robbie Averill Date: Tue, 16 May 2017 16:01:42 +1200 Subject: [PATCH 2/4] Add deprecation notices for DMSTag and related methods to be removed in 2.0 --- code/interface/DMSDocumentInterface.php | 16 ++++++++++++---- code/interface/DMSInterface.php | 2 ++ code/model/DMSDocument.php | 10 ++++++++++ code/model/DMSTag.php | 1 + 4 files changed, 25 insertions(+), 4 deletions(-) diff --git a/code/interface/DMSDocumentInterface.php b/code/interface/DMSDocumentInterface.php index 461f439..b660287 100644 --- a/code/interface/DMSDocumentInterface.php +++ b/code/interface/DMSDocumentInterface.php @@ -11,7 +11,7 @@ interface DMSDocumentInterface * Deletes the DMSDocument, its underlying file, as well as any tags related to this DMSDocument. * * @todo Can't be applied to classes which already implement the DataObjectInterface (naming conflict) - * + * * @abstract * @return null */ @@ -27,7 +27,7 @@ interface DMSDocumentInterface * @deprecated 2.0 Will be removed in future in favour of document sets */ public function addPage($pageObject); - + /** * Associates this DMSDocument with a set of Pages. This method loops through a set of page ids, and then associates this * DMSDocument with the individual Page with the each page id in the set @@ -77,6 +77,8 @@ interface DMSDocumentInterface * @param $value String of a metadata value to add (required) * @param bool $multiValue Boolean that determines if the category is multi-value or single-value (optional) * @return null + * + * @deprecated 2.0 Will be removed in future in favour of using silverstripe/taxonomy */ public function addTag($category, $value, $multiValue = true); @@ -87,6 +89,8 @@ interface DMSDocumentInterface * @param $category String of the metadata category to get * @param null $value String of the value of the tag to get * @return array of Strings of all the tags or null if there is no match found + * + * @deprecated 2.0 Will be removed in future in favour of using silverstripe/taxonomy */ public function getTagsList($category, $value = null); @@ -98,6 +102,8 @@ interface DMSDocumentInterface * @param $category Category to remove (required) * @param null $value Value to remove (optional) * @return null + * + * @deprecated 2.0 Will be removed in future in favour of using silverstripe/taxonomy */ public function removeTag($category, $value = null); @@ -105,6 +111,8 @@ interface DMSDocumentInterface * Deletes all tags associated with this DMSDocument. * @abstract * @return null + * + * @deprecated 2.0 Will be removed in future in favour of using silverstripe/taxonomy */ public function removeAllTags(); @@ -114,12 +122,12 @@ interface DMSDocumentInterface * @return String */ public function getLink(); - + /** * Return the extension of the file associated with the document */ public function getExtension(); - + /** * Returns the size of the file type in an appropriate format. * diff --git a/code/interface/DMSInterface.php b/code/interface/DMSInterface.php index 79702fc..e7dae4a 100644 --- a/code/interface/DMSInterface.php +++ b/code/interface/DMSInterface.php @@ -32,6 +32,8 @@ interface DMSInterface * * Returns a number of Document objects based on the a search by tags. You can search by category alone, * by tag value alone, or by both. I.e: getByTag("fruits",null); getByTag(null,"banana"); getByTag("fruits","banana") + * + * @deprecated 2.0 Will be removed in future in favour of using silverstripe/taxonomy * @abstract * @param null $category The metadata category to search for * @param null $value The metadata value to search for diff --git a/code/model/DMSDocument.php b/code/model/DMSDocument.php index ecee73a..67a9f3f 100644 --- a/code/model/DMSDocument.php +++ b/code/model/DMSDocument.php @@ -298,6 +298,8 @@ class DMSDocument extends DataObject implements DMSDocumentInterface * multi-value or single-value (optional) * * @return DMSDocument + * + * @deprecated 2.0 Will be removed in future in favour of using silverstripe/taxonomy */ public function addTag($category, $value, $multiValue = true) { @@ -350,6 +352,8 @@ class DMSDocument extends DataObject implements DMSDocumentInterface * @param string $value * * @return DataList + * + * @deprecated 2.0 Will be removed in future in favour of using silverstripe/taxonomy */ protected function getTagsObjects($category, $value = null) { @@ -371,6 +375,8 @@ class DMSDocument extends DataObject implements DMSDocumentInterface * @param string $value value of the tag to get * * @return array Strings of all the tags or null if there is no match found + * + * @deprecated 2.0 Will be removed in future in favour of using silverstripe/taxonomy */ public function getTagsList($category, $value = null) { @@ -402,6 +408,8 @@ class DMSDocument extends DataObject implements DMSDocumentInterface * @param string $value Value to remove * * @return DMSDocument + * + * @deprecated 2.0 Will be removed in future in favour of using silverstripe/taxonomy */ public function removeTag($category, $value = null) { @@ -428,6 +436,8 @@ class DMSDocument extends DataObject implements DMSDocumentInterface * Deletes all tags associated with this Document. * * @return DMSDocument + * + * @deprecated 2.0 Will be removed in future in favour of using silverstripe/taxonomy */ public function removeAllTags() { diff --git a/code/model/DMSTag.php b/code/model/DMSTag.php index f41479a..9d18d29 100644 --- a/code/model/DMSTag.php +++ b/code/model/DMSTag.php @@ -4,6 +4,7 @@ * Hold a set of metadata category/value tags associated with a DMSDocument * * @package dms + * @deprecated 2.0 Will be removed in future in favour of using silverstripe/taxonomy */ class DMSTag extends DataObject { From 1cefab037f262b59726e88b4f3dca75ee4c4d384 Mon Sep 17 00:00:00 2001 From: Florian Thoma Date: Thu, 31 May 2018 11:55:38 +1000 Subject: [PATCH 3/4] update gridfieldextensions vendor and version This is to make sure that older DMS installations work with current versions of other modules that also require gridfieldextensions --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 5b6b57e..6bd279c 100644 --- a/composer.json +++ b/composer.json @@ -11,7 +11,7 @@ "require": { "silverstripe/framework": "~3.1", "silverstripe/cms": "~3.1", - "silverstripe-australia/gridfieldextensions": "^1.1.0" + "symbiote/silverstripe-gridfieldextensions": "^2.0" }, "extra": { "branch-alias": { From 065addd6b2df99339da3c08881b711e44eb3c62e Mon Sep 17 00:00:00 2001 From: Robbie Averill Date: Thu, 31 May 2018 16:10:32 +1200 Subject: [PATCH 4/4] Add 3.6 to test suite and remove PHP 5.3 --- .travis.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 3db9042..5943ee7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,6 @@ sudo: false language: php php: - - 5.3 - 5.4 - 5.5 - 5.6 @@ -18,7 +17,7 @@ matrix: - php: 5.6 env: DB=MYSQL CORE_RELEASE=3 - php: 5.6 - env: DB=MYSQL CORE_RELEASE=3.1 + env: DB=MYSQL CORE_RELEASE=3.6 - php: 5.6 env: DB=MYSQL CORE_RELEASE=3.3 - php: 5.6