This checklist isn't ready yet, but we're collecting aspects which should be done

Rename all Razor Files - remove prefix _

  1. You can do this manually, or automated.
    1. Automated - go to a folder (like bs3 - to only do this because it's recursive and run
      1. Preview: Get-ChildItem -File -Recurse -Filter "_*.cshtml" | % { Rename-Item -Path $_.PSPath -NewName $_.Name.Substring(1) -WhatIf }
      2. Really rename: Get-ChildItem -File -Recurse -Filter "_*.cshtml" | % { Rename-Item -Path $_.PSPath -NewName $_.Name.Substring(1) }
    2. Note that you should do bs3/4/5 in three steps, but do them all before you change the config in 2sxc Admin
  2. Re-configure all the views to use the new file, and make sure it points to the Bootstrap5 as the new default (before: bs4)
    @Kit.Page.Activate(condition: Kit.Css.IsUnknown, features: "Bootstrap5")
  3. Also rename "shared part" to also use the naming conventions
    search for .cshtml
    1. Shared Parts "Shared Part xxx.cshtml" 
    2. Part for a single file only "[originalfilename].Part XXX.cshtml"
  4. After making this changes, you MUST verify each view in all supported bootstraps

More Things to Change

  1. Merge BS5, BS4or BS3
    1. Check different and make Note 
    2. Discuss with 2dm
    3. Merge if the differenc only css class
  2. Change img alt handling to use new imgAltFallback
    1. Use on images
    2. Check usage on other visible texts
      1. use new Description property on img or the Alt-property
  3. Toolbar
    1. Check where we would need the condition parameter
    2. Comments if it no clear
    3. New: Wherever we set UI parameters, use the new tweak API
    4. dicuss: add Note to demo-item-toolbars!
    5. Change new Kit.Toolbar
      Old: 
      @Edit.TagToolbar(Content)
      New: 
       @Kit.Toolbar.Default(Content)
  4. Queries
    1. Make sure all have the details toggled visible - probbaly re-arrange to ensure it looks good again
    2. any that still have special code in the Razor (eg. check if admin) should review w/2dm if this can now be done in Visual Query
    3. New: On all queries, make sure we have a simple source (not the Publishing filter) - ask 2dm
  5. turnOn - use the new Kit.Page.TurnOn(...)
  6. Formulas
    1. Use new context.app.getSetting to change what is shown/hidden in the UI
  7. Settings: use the new Path accessor like
    1. Settings.Get("Images.Content")
    2. or Resources.Get("...")
  8. File Upload (Mobius etc.) - ask 2dm
  9. WebAPIs which return entities using Convert... - ask 2dm
  10. conventions: add space distance for if, foreach ) {
  11. Any use of Kit.Log should be replaced with Kit.SystemLog
  12. Update dependencies bs4
    1. Update Package.json 
      "bootstrap": "^4.4.1",
          "bs5": "npm:bootstrap@^5.1.3"
    2. Style bs5.scss change bootstrap to bs5
    3. build bs4 and build bs5

Razor Blade Changes

  1. Consider using the new Kit.HtmlTags
    @Tag.Custom(pres.HeadingType, Content.Title)
    1. Optimize use of functional API

Change in Settings 2sxc

  1. Input Type wysiwyg Field Input-Type string-wysiwyg

Update App Information 

  1. Update Required 2sxc Version in Settings to X 
    Settings > Configuration > Installation Requirements > Required Version X
  2. Update App Version in Settings X
    Settings > Version > Version X
  3. Activate LightSpeed
  4. readme.md
    1. Update Readme to current sub version (eg 01.01.05 to 01.02.00) 
    2. v.xxx and Date | changes 
    3. Update Readme with all relevant changes