This wiki's URL has been migrated to the primary domain.Read more here


Forums: Index > Watercooler > 2012 software upgrade


A new version of the SMW and Semantic Forms software has recently (late June, 2012) been installed. I have noticed the following impacts:

  • whenever a new version is installed, the software loses track of the data types of all the properties, causing various things to break. The quick fix is to re-save all the property pages.
  • on a related note, the test for page existence used by {{showfacts tabs}} and to find sensor pages breaks. Similarly for the test for showing parents and spouses as links versus buttons. Re-saving all the subpages fixes this (I don't know if the passing of time fixes this one).
  • the datatype code has been changed, so that it is unsuitable for most of our uses: affected properties should be declared as type text instead. I have fixed _sources and _notes at least.
  • Semantic Forms now discard fields which are declared multiple times. I have fixed Form:Person, {{Form table-general info}} and {{Form table-event}} to remove most duplicates. In the process, I have exposed property:death_causes and property:death_event on the form, and restored the field labels.

Please test the form, and report any errors. Also note any other "funnies" that are observed.

Thurstan (talk) 03:53, July 6, 2012 (UTC)

Buffer Limits[]

The 1000-character limit has reappeared for the "replace" parser function. An example of a page that this breaks is Elisabeth Albertine von Sachsen-Hildburghausen (1713-1761)/descendants. Thurstan (talk) 04:39, July 20, 2012 (UTC)

Could we get it trebled without upsetting Wikia too much? Real nuisance. -- Robin Patterson (Talk) 02:33, November 6, 2013 (UTC)
I believe that someone (rtol?, Robin Patterson?) got it increased to 5000 the first year that they applied it, which seem to cover all our cases. Since then, the annual upgrade seems to sweep away any special changes that we have. One can but ask, as they say. Thurstan (talk) 02:39, November 6, 2013 (UTC)
It was probably rtol. If I'm to do the asking this time, I'd like to have read about "replace", which I see is one of our "Parser function hooks". Where can I read about it? -- Robin Patterson (Talk) 22:59, November 6, 2013 (UTC)
Help:Parser functions leads me (after a couple of steps) to here. A typical use for "replace" is to remove all the "[[" and "]]", so there are no links in the string. Thurstan (talk) 03:59, November 7, 2013 (UTC)
Thank you. But I can't find a relationship between that and "1000" or anything else about numerical buffer limits. may get you somewhere but not me. -- Robin Patterson (Talk) 05:31, November 7, 2013 (UTC)
I assume it is $wgStringFunctionsLimitReplace. See "Parameters" on the RHS infobox at [1]. So the wikia admins get to set it. Thurstan (talk) 05:42, November 7, 2013 (UTC)
I had read about that. The matching part of the text says: "This function replaces all occurrences of one string for another, which can be used to quickly generate very large amounts of data, and therefore makes the software more vulnerable to DoS attacks. This setting limits the maximum allowed length of the replacing string. The default value is 30 multibyte characters." - quite irrelevant to the above example, where the replacing string has zero length. I think I may look through our forum history. -- Robin Patterson (Talk) 08:23, November 7, 2013 (UTC)

This conversation seems familiar. Here says the variable is $wgPFStringLengthLimit. Thurstan (talk) 20:28, November 7, 2013 (UTC)

Ah, you've been thinking laterally and surfing. Their "Solution: Edited ParserFunctions.php directly, and changed $wgPFStringLengthLimit = 10000; (It was set to 1000 before)" could be what we should ask Wikia to do. It might also extend our occasionally restrictive "1000" limit on notes. -- Robin Patterson (Talk) 01:07, November 8, 2013 (UTC)

I've sent e rquest to Wikia for 10,000. -- Robin Patterson (Talk) 01:59, November 13, 2013 (UTC)
The latest "upgrade" seems to have given us 5000, so Elisabeth Albertine von Sachsen-Hildburghausen is okay now. The code "{{#replace:{{Lorem ipsum|7}}|e|E}}" in the Sandbox works, while "{{#replace:{{Lorem ipsum|8}}|e|E}}" produces the error "String exceeds 5,000 character limit." Thurstan (talk) 00:53, February 7, 2014 (UTC)