Hide

YetaWF Documentation

Display
Print

Upgrading an Existing Installation

It is recommended to back up your entire site (files, SQL DBs, etc. before performing an upgrade).

Upgrading

Your initial installation of YetaWF was created by cloning the YetaWF repository. In order to upgrade, simply pull the repository and all submodules again.

Once pulled, make sure to carefully merge any changes you may have made.

In order to select the correct project files, open a command prompt, with the solution folder as the current directory:

cd \Sites\YetaWFTest

Once completed, run the following command which creates the required symlinks and additional JavaScript packages are downloaded/installed:

post-clone.bat

Rebuild (Debug) and run the Website project. The first site restart will automatically update all models as documented in Upgrading In Development.

Upgrade Notes

Upgrading From ASP.NET 4 to .NET
Upgrading From YetaWF 2.0.2 and Older
Upgrading From YetaWF 1.0.4 and Older

Upgrading From ASP.NET 4 to .NET

It is not possible to upgrade a YetaWF site using ASP.NET 4 to use .NET. Instead, create a new installation of YetaWF with .NET and then follow these steps:

  • Manually update the AppSettings.json file in your new installation to match.
  • Manually copy the entire \Website\Data, \Website\Sites, \Website\SiteTemplates folders to the new site (same name).
  • The \Website\AddonsCustom folder has to be copied to \Website\wwwroot\AddonsCustom. (Most sites don't use this folder)
  • The \Website\SiteFiles folder has to be copied to \Website\wwwroot\SiteFiles.
  • The \Website\Vault folder has to be copied to \Website\wwwroot\Vault. (Most sites don't use this folder)

The same DBs and data files can be used so no data conversion is necessary. It's even possible to use the same DBs and data files again with a site running YetaWF with ASP.NET 4 at a later time (not concurrently though) and switch back and forth. We used to do this daily while working on YetaWF (.NET Core and ASP.NET 4).

Upgrading From YetaWF 2.0.2 and Older

YetaWF 2.5.0 moves the <AppSettings>, YetaWF>LanguageSection and YetaWF>MimeSection out of the Web.config file into separate json files in the website's Data folder.

Upgrading will install default AppSettings.json, LanguageSettings.json and MimeSettings.json files in the website's Data folder.

This means that any customizations made by you must be manually ported to the new AppSettings.json, LanguageSettings.json and MimeSettings.json files.

This means that the following portions of the Web.config file must be manually removed.

    <AppSettings>
        <add key="P:StaticFiles:Duration" value="0" />
        <!-- -->
        <add key="P:YetaWF_Core:DEFAULTSITE" value="..." />
        <add key="P:YetaWF_Core:DEBUG-MODE" value="true" />
        <add key="P:YetaWF_Core:Deployed" value="false" />
        <add key="P:YetaWF_Core:UseCDN" value="false" />
        <add key="P:YetaWF_Identity:BACKDOOR-IS-WIDE-OPEN" value="0" />
        <add key="P:YetaWF_Core:DisposableTracker" value="true" />
        ....
    </AppSettings>
    <sectionGroup name="YetaWF">
        <section name="MimeSection" requirePermission="false" type="YetaWF.Core.Upload.MimeSection, YetaWF.Core" />
        <section name="LanguageSection" requirePermission="false" type="YetaWF.Core.Language.LanguageSection, YetaWF.Core" />
    </sectionGroup>
    <LanguageSection>
        <Languages>
            <add Id="en-US" ShortName="English" Description="US English" />
        </Languages>
    </LanguageSection>
    <MimeSection>
        <MimeTypes>
            <add Type="text/plain" Extensions=".txt;.css;.scss;.less" />
            <add Type="text/html" Extensions=".html;.htm" />
            <add Type="image/gif" ImageUse="true" Extensions=".gif" />
            <add Type="image/png" ImageUse="true" Extensions=".png" />
            <add Type="image/x-png" ImageUse="true" Extensions=".png" />
            <add Type="image/jpeg" ImageUse="true" Extensions=".jpe;.jpeg;.jpg" />
            <add Type="image/pjpeg" ImageUse="true" Extensions=".jpe;.jpeg;.jpg" />
            <add Type="application/x-zip-compressed" PackageUse="true" Extensions=".zip" />
            <add Type="application/octet-stream" PackageUse="true" Extensions=".zip" />
            <add Type="application/x-shockwave-flash" FlashUse="true" Extensions=".swf" />
            <add Type="application/pdf" Extensions=".pdf" />
            <add Type="application/msword" Extensions=".doc;.docx" />
            <add Type="application/rtf" Extensions=".rtf" />
        </MimeTypes>
    </MimeSection>

Upgrading From YetaWF 1.0.4 and Older

When upgrading from a version before 1.0.5, all modules that inherited page authorization (the SameAsPage module property) will have to be manually updated using Module Settings to include User and/or Anonymous User permissions. 1.0.5 made module authorization less confusing and more secure by abandoning the SameAsPage property. Unfortunately, a manual edit of affected modules is required. A new install is not affected by this change.