From 2254bcc91900d03c371eb510fe6d0c000e96a390 Mon Sep 17 00:00:00 2001
From: Guy Sartorelli <36352093+GuySartorelli@users.noreply.github.com>
Date: Tue, 5 Nov 2024 13:34:46 +1300
Subject: [PATCH] DOC Document deprecations for migrating the template engine
 (#623)

---
 en/08_Changelogs/5.4.0.md | 40 ++++++++++++++++++++++-----------------
 1 file changed, 23 insertions(+), 17 deletions(-)

diff --git a/en/08_Changelogs/5.4.0.md b/en/08_Changelogs/5.4.0.md
index 18ba2dea..ffff6576 100644
--- a/en/08_Changelogs/5.4.0.md
+++ b/en/08_Changelogs/5.4.0.md
@@ -127,37 +127,43 @@ The changes include:
 - [`ViewableData::XML_val()`](api:SilverStripe\View\ViewableData::XML_val()) has been deprecated. It will be removed without equivalent functionality to replace it.
 - [`ViewableData::getXMLValues()`](api:SilverStripe\View\ViewableData::getXMLValues()) has been deprecated. It will be removed without equivalent functionality to replace it.
 - The `$parser` parameter for the [`SSViewer::__construct()`](api:SilverStripe\View\SSViewer::__construct()) method has been deprecated. It will be removed without equivalent functionality to replace it.
-- [`SSViewer::flush()`](api:SilverStripe\View\SSViewer::flush()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::flush()`.
-- [`SSViewer::fromString()`](api:SilverStripe\View\SSViewer::fromString()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::renderString()`.
+- [`SSViewer::flush()`](api:SilverStripe\View\SSViewer::flush()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::flush()`.
+- [`SSViewer::fromString()`](api:SilverStripe\View\SSViewer::fromString()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::renderString()`.
 - [`SSViewer::topLevel()`](api:SilverStripe\View\SSViewer::topLevel()) has been deprecated. It will be removed without equivalent functionality to replace it.
 - [`SSViewer::chooseTemplate()`](api:SilverStripe\View\SSViewer::chooseTemplate()) has been deprecated. It will be removed without equivalent functionality to replace it.
-- [`SSViewer::setTemplate()`](api:SilverStripe\View\SSViewer::setTemplate()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::setTemplate()`.
-- [`SSViewer::setParser()`](api:SilverStripe\View\SSViewer::setParser()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::setParser()`.
-- [`SSViewer::getParser()`](api:SilverStripe\View\SSViewer::getParser()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::getParser()`.
-- [`SSViewer::hasTemplate()`](api:SilverStripe\View\SSViewer::hasTemplate()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::hasTemplate()`.
+- [`SSViewer::setTemplate()`](api:SilverStripe\View\SSViewer::setTemplate()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::setTemplate()`.
+- [`SSViewer::setParser()`](api:SilverStripe\View\SSViewer::setParser()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::setParser()`.
+- [`SSViewer::getParser()`](api:SilverStripe\View\SSViewer::getParser()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::getParser()`.
+- [`SSViewer::hasTemplate()`](api:SilverStripe\View\SSViewer::hasTemplate()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::hasTemplate()`.
 - [`SSViewer::exists()`](api:SilverStripe\View\SSViewer::exists()) has been deprecated. It will be removed without equivalent functionality to replace it.
 - [`SSViewer::getTemplateFileByType()`](api:SilverStripe\View\SSViewer::getTemplateFileByType()) has been deprecated. It will be removed without equivalent functionality to replace it.
-- [`SSViewer::flush_template_cache()`](api:SilverStripe\View\SSViewer::flush_template_cache()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::flushTemplateCache()`.
-- [`SSViewer::flush_cacheblock_cache()`](api:SilverStripe\View\SSViewer::flush_cacheblock_cache()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::flushCacheBlockCache()`.
-- [`SSViewer::setPartialCacheStore()`](api:SilverStripe\View\SSViewer::setPartialCacheStore()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::setPartialCacheStore()`.
-- [`SSViewer::getPartialCacheStore()`](api:SilverStripe\View\SSViewer::getPartialCacheStore()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::getPartialCacheStore()`.
-- [`SSViewer::includeGeneratedTemplate()`](api:SilverStripe\View\SSViewer::includeGeneratedTemplate()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::includeGeneratedTemplate()`.
+- [`SSViewer::flush_template_cache()`](api:SilverStripe\View\SSViewer::flush_template_cache()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::flushTemplateCache()`.
+- [`SSViewer::flush_cacheblock_cache()`](api:SilverStripe\View\SSViewer::flush_cacheblock_cache()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::flushCacheBlockCache()`.
+- [`SSViewer::setPartialCacheStore()`](api:SilverStripe\View\SSViewer::setPartialCacheStore()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::setPartialCacheStore()`.
+- [`SSViewer::getPartialCacheStore()`](api:SilverStripe\View\SSViewer::getPartialCacheStore()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::getPartialCacheStore()`.
+- [`SSViewer::includeGeneratedTemplate()`](api:SilverStripe\View\SSViewer::includeGeneratedTemplate()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::includeGeneratedTemplate()`.
 - The `$inheritedScope` parameter for the [SSViewer::process()](api:SilverStripe\View\SSViewer::process()) method has been deprecated. It will be removed without equivalent functionality to replace it.
-- [`SSViewer::getSubtemplateFor()`](api:SilverStripe\View\SSViewer::getSubtemplateFor()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::getSubtemplateFor()`.
-- [`SSViewer::parseTemplateContent()`](api:SilverStripe\View\SSViewer::parseTemplateContent()) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::parseTemplateContent()`.
+- [`SSViewer::getSubtemplateFor()`](api:SilverStripe\View\SSViewer::getSubtemplateFor()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::getSubtemplateFor()`.
+- [`SSViewer::parseTemplateContent()`](api:SilverStripe\View\SSViewer::parseTemplateContent()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::parseTemplateContent()`.
 - [`SSViewer::templates()`](api:SilverStripe\View\SSViewer::templates()) has been deprecated. It will be removed without equivalent functionality to replace it.
 - [`SSViewer::setTemplateFile()`](api:SilverStripe\View\SSViewer::setTemplateFile()) has been deprecated. It will be removed without equivalent functionality to replace it.
 - [`SSViewer::get_base_tag()`](api:SilverStripe\View\SSViewer::get_base_tag()) has been deprecated. Use [`SSViewer::getBaseTag()`](api:SilverStripe\View\SSViewer::getBaseTag()) instead.
-- [`SSViewer_DataPresenter`](api:SilverStripe\View\SSViewer_DataPresenter) has been deprecated. It will be merged back into [`SSViewer_Scope`](api:SilverStripe\View\SSViewer_Scope).
-- [`SSViewer_FromString`](api:SilverStripe\View\SSViewer_FromString) has been deprecated. It will be replaced with `SilverStripe\View\SSTemplateEngine::renderString()`.
+- [`SSViewer_DataPresenter`](api:SilverStripe\View\SSViewer_DataPresenter) has been deprecated. It will be merged into [`SSViewer_Scope`](api:SilverStripe\TemplateEngine\ScopeManager).
+- [`SSViewer_FromString`](api:SilverStripe\View\SSViewer_FromString) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::renderString()`.
 - [`SSViewer_Scope::getItem()`](api:SilverStripe\View\SSViewer_Scope::getItem()) has been deprecated. Use [`SSViewer_Scope::getCurrentItem()`](api:SilverStripe\View\SSViewer_Scope::getCurrentItem()) instead.
-- [`SSViewer_Scope::obj()`](api:SilverStripe\View\SSViewer_Scope::obj()) has been deprecated. It will be renamed `scopeToIntermediateValue()`.
+- [`SSViewer_Scope::obj()`](api:SilverStripe\View\SSViewer_Scope::obj()) has been deprecated. It will be renamed to `scopeToIntermediateValue()`.
+- [`SSViewer_Scope`](api:SilverStripe\View\SSViewer_Scope) has been deprecated. It will be renamed to `SilverStripe\TemplateEngine\ScopeManager`.
 - [`SSViewer::execute_template()`](api:SilverStripe\View\SSViewer::execute_template()) has been deprecated. It will be removed without equivalent functionality to replace it.
 - [`SSViewer::execute_string()`](api:SilverStripe\View\SSViewer::execute_string()) has been deprecated. It will be removed without equivalent functionality to replace it.
 - [`ThemeResourceLoader::findTemplate()`](api:SilverStripe\View\ThemeResourceLoader::findTemplate()) has been deprecated. It will be removed without equivalent functionality to replace it.
 - [`FlushMiddleware`](api:SilverStripe\Control\Middleware\FlushMiddleware) has been deprecated. It will be replaced with flushing inside the Kernel directly.
-- The [`LeftAndMain.tree_class`](api:SilverStripe\Admin\LeftAndMain->tree_class) configuration property has been deprecated. It will be renamed `model_class`.
+- The [`LeftAndMain.tree_class`](api:SilverStripe\Admin\LeftAndMain->tree_class) configuration property has been deprecated. It will be renamed to `model_class`.
 - [`SiteConfigLeftAndMain::save_siteconfig()`](api:SilverStripe\SiteConfig\SiteConfigLeftAndMain::save_siteconfig()) has been deprecated. It will be replaced with [`save()`](api:SilverStripe\Admin\LeftAndMain::save()).
+- [`SSViewer_BasicIteratorSupport`](api:SilverStripe\View\SSViewer_BasicIteratorSupport) has been deprecated. It will be renamed to `SilverStripe\TemplateEngine\BasicIteratorSupport`.
+- [`SSTemplateParseException`](api:SilverStripe\View\SSTemplateParseException) has been deprecated. It will be renamed to `SilverStripe\TemplateEngine\Exception\SSTemplateParseException`.
+- [`SSTemplateParser`](api:SilverStripe\View\SSTemplateParser) has been deprecated. It will be renamed to `SilverStripe\TemplateEngine\SSTemplateParser`.
+- [`TemplateIteratorProvider`](api:SilverStripe\View\TemplateIteratorProvider) has been deprecated. It will be renamed to `SilverStripe\TemplateEngine\TemplateIteratorProvider`.
+- [`TemplateParser`](api:SilverStripe\View\TemplateParser) has been deprecated. It will be renamed to `SilverStripe\TemplateEngine\TemplateParser`.
 
 ## Bug fixes