WikiTraccs 1.12.5

Google Endpoint Fix

Time for Google’s once a year change of endpoints. WikiTraccs has been adjusted to handle those.

Permission Migration Improvements

  • new: in a hierarchy of restricted pages, when the principals of a parent page are not all mapped, the principals that are mapped will be inherited by the child pages (within narrow boundaries)
  • improvement: hardened permission retrieval against connection losses
  • improvement: when permissions cannot (fully) be applied to a SharePoint page (e.g. due to missing user mapping) permission inheritance for the SharePoint page will be broken nevertheless
  • improvement: better indication when being throttled by Microsoft (in the console and log file)
  • fix: reverted connection timeout back and increased to 600 seconds as it otherwise interferes with throttled requests

Verification Mode

This release introduces the mode Verify page contents.


When running in verification mode WikiTraccs will go over all migrated SharePoint pages, pull the corresponding original pages from Confluence, and compare contents. This creates updated progress log files.

WikiTraccs will check the following things:

  • check each code snippet web part for invalid characters in the backing CanvasContent1 list item field
  • check if the Confluence page contains words that are missing in the SharePoint page

The results will be stored in the “25” progress log file.

In the progress log file, each page entry will get an additional state indicator that is one of the following values:

  • skippedverify - did not check a page; this is the state for the progress log file that is created when starting the verification run
  • verified - checked a page and found nothing of interest
  • worddiff - the Confluence page contains words that are not present in the SharePoint page
  • invalidcodesnippetchars - a code snippet web part contains invalid characters in the CanvasContent1 field of the page list item


But why?

The reason for the introduction of the verification mode is an incident where pages seemed broken due to invalid characters in the backing field of the page. Note that several weeks had passed since the migration.

The content of a SharePoint page is stored in a list item field called CanvasContent1, in the Site Pages library. It is HTML which needs to adhere to certain rules. One rule is, that special characters like < and > need to be encoded properly. WikiTraccs does this since its inception in 2022. Nevertheless, something changed this content for some pages with HTML code snippet web parts to contain raw < and >. That made page rendering stop there.

The verification run checks for invalid characters in the backing CanvasContent1 field and highlights the affected pages in the progress log files. An easy solution is to delete and remigrate them.

Before recognizing that page content is simply not shown we assumed that page content had gone missing, which would be a blocker (and at the same time nearly impossible, since WikiTraccs already verifies the character count of transformed pages at the time of migration). It turned out that all page content was there, it was just not being displayed. But this initial assumption resulted in the verification run to also check for missing words. Note that updates to either the Confluence or the SharePoint page can also cause this check to be triggered.

In the future, the verification run might be extended with further checks or statistics collection.

Logging Improvements

Since the number of transformation modes is growing, WikiTraccs now shows the mode it is running in:


The log file and console also show the mode:


Possible values are:

  • MIG - Content migration
  • PRINCIPALS - Update ‘Created by’ & ‘Modified by’, as well as the dates
  • VERIFY - Verify page contents
  • PERM - Permission migration

WikiTraccs.GUI also contains several improvements for its progress bars.