{
	"0: data": {
		"srcIndexStart": "0", 
		"file": "docssrc/docs.Dev.DevScripts.tmpl", 
		"parseTreeMode": "true", 
		"srcLength": "5255", 
		"source": "[$name|DevScripts$]
[$title|Scripts for Developers$]
[$frame|HTMLPage.tmpl$]

<ul>
<li>[$pageLink|#makeBuiltinStaticLangs| makeBuiltinStaticLangs $]</li>
<li>[$pageLink|#makeDocs|               makeDocs               $]</li>
<li>[$pageLink|#makePackage|            makePackage            $]</li>
<li>[$pageLink|#runTests|               runTests               $]</li>
<li>[$pageLink|#updateServerDocs|       updateServerDocs       $]</li>
</ul>

<p>
There are a few scripts included to aid in Goldie's development.
All of these are available in both Unix shell script and Windows batch file.
All of these should be run from the main Goldie directory.
</p>

<a name=\"makeBuiltinStaticLangs\" />
<h3>makeBuiltinStaticLangs</h3>
<p>
Goldie comes with two [$pageLink|StatVsDyn|static-style$] languages already generated and built-in:
[$link| https://bitbucket.org/Abscissa/goldie/src/v0.8/src/samples/calculatorStatic/calc | calc $]
and
[$link| https://bitbucket.org/Abscissa/goldie/src/v0.8/src/goldie/langs/grm | grm $].
Run this script to automatically regenerate them if you've modified their
grammars, [$pageTitle|StaticLang$], or relevant portions of [$pageLink|APIRef|GoldieLib$].
</p>
<p>
Note that this script does not automatically compile the [$code|inline|.grm$] grammar definitions
into [$pageLink|CGT|CGT$] files. So if you modify their [$code|inline|.grm$] definitions,
you'll have to recompile
[$link| https://bitbucket.org/Abscissa/goldie/src/v0.8/lang | their CGT files $]
yourself via either [$pageTitle|GRMC$]
or [$pageLink|OtherTools#GOLD|GOLD Parser Builder$]
before running this script.
</p>

<a name=\"makeDocs\" />
<h3>makeDocs</h3>
<p>
This is explained on the [$pageTitle|GenDocs$] page.
</p>

<a name=\"makePackage\" />
<h3>makePackage</h3>
<p>
Exports the latest Goldie and SemiTwistDTools masters fresh out of version control,
builds them, and generates ready-to-distribute [$pageLink|Install#7z|.7z$]
packages, just like the ones on the
[$link| http://www.semitwist.com/download/goldie/ | Goldie downloads page $].
The Unix shell script version also generates a source-only package.
</p>

<p>
All work is done in [$code|inline| ./release/ $]. If that directory already exists,
it will be <em>completely erased</em> first. If it does not exist, it will be created.
</p>

<a name=\"runTests\" />
<h3>runTests</h3>
<p>
Exports the latest Goldie and SemiTwistDTools masters fresh out of version control
and into [$code|inline| ./test-cache/ $]. Then with each supported D compiler,
attempts to build everything and run all unittests (all done inside
[$code|inline| ./test/ $]).
</p>

<p>
This tool requires that you have
[$pageLink|Requires#dvm|DVM (D Version Manager)$]
installed, and that you have used DVM to install all versions of DMD
supported by Goldie (You can check inside the
[$code|inline|runTests$] script to see which versions these are).
</p>

<p>
It's highly recommended to log the output of runTests, because it's unlikely
to all fit on one command line screen, even with scrolling.
If you're not sure how to do this, see the article
[$link| https://www.semitwist.com/articles/article/view/tee-time-logging | 'tee' Time Logging$].
</p>

<a name=\"updateServerDocs\" />
<h3>updateServerDocs</h3>
<p>
Goldie's documentation is laid out like this:
</p>
[$code|plain|[:http://www.semitwist.com/goldie/*             <-- Most recent version
http://www.semitwist.com/goldie/v{version}/*  <-- Specific version archives:]$]

<p>
If you're maintaining a copy of Goldie's documentation, you can use this
tool to automatically merge in a new version. It's split into two components:
</p>

<ol style=\"list-style-type: decimal\">
<li>
The core implementation written in D: [$code|inline|./bin/goldie-updateServerDocs$]
</li>
<li>
An optional user-specific shell script frontend
(examples are in
[$link| https://bitbucket.org/Abscissa/goldie/src/v0.8/updateServerDocs-example | ./updateServerDocs-example $]
and
[$link| https://bitbucket.org/Abscissa/goldie/src/v0.8/updateServerDocs-example.bat | ./updateServerDocs-example.bat $]).
</li>
</ol>

<p>
Run either one with no arguments to see usage information.
</p>

<p>
To use this, make sure the documentation you want to merge in is at [$code|inline|./release/PublicDocs/docs$]
(it will already be put there by [$pageLink|#makePackage|makePackage$]).
Then, run the updateServerDocs tool and give it the version number you're merging in. Examples:
</p>
<div class=\"code-plain\">[:$:][$code|user|./updateServerDocs-example 0.6$]
[:$:][$code|user|goldie-updateServerDocs 0.6 /mnt/my-server-via-sshfs/www/goldie$]

&gt;[$code|user|updateServerDocs-example 0.6$]
&gt;[$code|user|goldie-updateServerDocs 0.6 C:\\Inetpub\\wwwroot\\goldie$]</div>

<p>
If you want to merge in more than one version, make sure you merge them in order
from oldest to newest. Otherwise, the automatic creation of \"this page no longer exists\"
pages will get messed up.
</p>

<p>
To compile the D-based portion of updateServerDocs, you'll need at least DMD 2.054.
If you have that, then compile with:
</p>
<div class=\"code-plain\">&gt;[$code|user|semitwist-stbuild updateServerDocs$]</div>
", 
		"0: name": {
			"srcIndexStart": "0", 
			"data": "DevScripts", 
			"srcLength": "19", 
			"0: data": {
				"srcIndexStart": "7", 
				"data": "DevScripts", 
				"srcLength": "10"
			}
		}, 
		"1: data": {
			"srcIndexStart": "19", 
			"data": "
", 
			"srcLength": "2"
		}, 
		"2: title": {
			"srcIndexStart": "21", 
			"data": "Scripts for Developers", 
			"srcLength": "32", 
			"0: data": {
				"srcIndexStart": "29", 
				"data": "Scripts for Developers", 
				"srcLength": "22"
			}
		}, 
		"3: data": {
			"srcIndexStart": "53", 
			"data": "
", 
			"srcLength": "2"
		}, 
		"4: frame": {
			"srcIndexStart": "55", 
			"data": "HTMLPage.tmpl", 
			"srcLength": "23", 
			"0: data": {
				"srcIndexStart": "63", 
				"data": "HTMLPage.tmpl", 
				"srcLength": "13"
			}
		}, 
		"5: data": {
			"srcIndexStart": "78", 
			"data": "

<ul>
<li>", 
			"srcLength": "14"
		}, 
		"6: pageLink": {
			"srcIndexStart": "92", 
			"param 0": "#makeBuiltinStaticLangs", 
			"data": "makeBuiltinStaticLangs", 
			"srcLength": "61", 
			"0: data": {
				"srcIndexStart": "127", 
				"data": "makeBuiltinStaticLangs", 
				"srcLength": "24"
			}
		}, 
		"7: data": {
			"srcIndexStart": "153", 
			"data": "</li>
<li>", 
			"srcLength": "11"
		}, 
		"8: pageLink": {
			"srcIndexStart": "164", 
			"param 0": "#makeDocs", 
			"data": "makeDocs", 
			"srcLength": "61", 
			"0: data": {
				"srcIndexStart": "185", 
				"data": "makeDocs", 
				"srcLength": "38"
			}
		}, 
		"9: data": {
			"srcIndexStart": "225", 
			"data": "</li>
<li>", 
			"srcLength": "11"
		}, 
		"10: pageLink": {
			"srcIndexStart": "236", 
			"param 0": "#makePackage", 
			"data": "makePackage", 
			"srcLength": "61", 
			"0: data": {
				"srcIndexStart": "260", 
				"data": "makePackage", 
				"srcLength": "35"
			}
		}, 
		"11: data": {
			"srcIndexStart": "297", 
			"data": "</li>
<li>", 
			"srcLength": "11"
		}, 
		"12: pageLink": {
			"srcIndexStart": "308", 
			"param 0": "#runTests", 
			"data": "runTests", 
			"srcLength": "61", 
			"0: data": {
				"srcIndexStart": "329", 
				"data": "runTests", 
				"srcLength": "38"
			}
		}, 
		"13: data": {
			"srcIndexStart": "369", 
			"data": "</li>
<li>", 
			"srcLength": "11"
		}, 
		"14: pageLink": {
			"srcIndexStart": "380", 
			"param 0": "#updateServerDocs", 
			"data": "updateServerDocs", 
			"srcLength": "61", 
			"0: data": {
				"srcIndexStart": "409", 
				"data": "updateServerDocs", 
				"srcLength": "30"
			}
		}, 
		"15: data": {
			"srcIndexStart": "441", 
			"data": "</li>
</ul>

<p>
There are a few scripts included to aid in Goldie's development.
All of these are available in both Unix shell script and Windows batch file.
All of these should be run from the main Goldie directory.
</p>

<a name=\"makeBuiltinStaticLangs\" />
<h3>makeBuiltinStaticLangs</h3>
<p>
Goldie comes with two ", 
			"srcLength": "330"
		}, 
		"16: pageLink": {
			"srcIndexStart": "771", 
			"param 0": "StatVsDyn", 
			"data": "static-style", 
			"srcLength": "35", 
			"0: data": {
				"srcIndexStart": "792", 
				"data": "static-style", 
				"srcLength": "12"
			}
		}, 
		"17: data": {
			"srcIndexStart": "806", 
			"data": " languages already generated and built-in:
", 
			"srcLength": "44"
		}, 
		"18: link": {
			"srcIndexStart": "850", 
			"param 0": "https://bitbucket.org/Abscissa/goldie/src/v0.8/src/samples/calculatorStatic/calc", 
			"data": "calc", 
			"srcLength": "98", 
			"0: data": {
				"srcIndexStart": "940", 
				"data": "calc", 
				"srcLength": "6"
			}
		}, 
		"19: data": {
			"srcIndexStart": "948", 
			"data": "
and
", 
			"srcLength": "7"
		}, 
		"20: link": {
			"srcIndexStart": "955", 
			"param 0": "https://bitbucket.org/Abscissa/goldie/src/v0.8/src/goldie/langs/grm", 
			"data": "grm", 
			"srcLength": "84", 
			"0: data": {
				"srcIndexStart": "1032", 
				"data": "grm", 
				"srcLength": "5"
			}
		}, 
		"21: data": {
			"srcIndexStart": "1039", 
			"data": ".
Run this script to automatically regenerate them if you've modified their
grammars, ", 
			"srcLength": "88"
		}, 
		"22: pageTitle": {
			"srcIndexStart": "1127", 
			"data": "StaticLang", 
			"srcLength": "24", 
			"0: data": {
				"srcIndexStart": "1139", 
				"data": "StaticLang", 
				"srcLength": "10"
			}
		}, 
		"23: data": {
			"srcIndexStart": "1151", 
			"data": ", or relevant portions of ", 
			"srcLength": "26"
		}, 
		"24: pageLink": {
			"srcIndexStart": "1177", 
			"param 0": "APIRef", 
			"data": "GoldieLib", 
			"srcLength": "29", 
			"0: data": {
				"srcIndexStart": "1195", 
				"data": "GoldieLib", 
				"srcLength": "9"
			}
		}, 
		"25: data": {
			"srcIndexStart": "1206", 
			"data": ".
</p>
<p>
Note that this script does not automatically compile the ", 
			"srcLength": "71"
		}, 
		"26: code": {
			"srcIndexStart": "1277", 
			"param 0": "inline", 
			"data": ".grm", 
			"srcLength": "20", 
			"0: data": {
				"srcIndexStart": "1291", 
				"data": ".grm", 
				"srcLength": "4"
			}
		}, 
		"27: data": {
			"srcIndexStart": "1297", 
			"data": " grammar definitions
into ", 
			"srcLength": "27"
		}, 
		"28: pageLink": {
			"srcIndexStart": "1324", 
			"param 0": "CGT", 
			"data": "CGT", 
			"srcLength": "20", 
			"0: data": {
				"srcIndexStart": "1339", 
				"data": "CGT", 
				"srcLength": "3"
			}
		}, 
		"29: data": {
			"srcIndexStart": "1344", 
			"data": " files. So if you modify their ", 
			"srcLength": "31"
		}, 
		"30: code": {
			"srcIndexStart": "1375", 
			"param 0": "inline", 
			"data": ".grm", 
			"srcLength": "20", 
			"0: data": {
				"srcIndexStart": "1389", 
				"data": ".grm", 
				"srcLength": "4"
			}
		}, 
		"31: data": {
			"srcIndexStart": "1395", 
			"data": " definitions,
you'll have to recompile
", 
			"srcLength": "41"
		}, 
		"32: link": {
			"srcIndexStart": "1436", 
			"param 0": "https://bitbucket.org/Abscissa/goldie/src/v0.8/lang", 
			"data": "their CGT files", 
			"srcLength": "80", 
			"0: data": {
				"srcIndexStart": "1497", 
				"data": "their CGT files", 
				"srcLength": "17"
			}
		}, 
		"33: data": {
			"srcIndexStart": "1516", 
			"data": "
yourself via either ", 
			"srcLength": "22"
		}, 
		"34: pageTitle": {
			"srcIndexStart": "1538", 
			"data": "GRMC", 
			"srcLength": "18", 
			"0: data": {
				"srcIndexStart": "1550", 
				"data": "GRMC", 
				"srcLength": "4"
			}
		}, 
		"35: data": {
			"srcIndexStart": "1556", 
			"data": "
or ", 
			"srcLength": "5"
		}, 
		"36: pageLink": {
			"srcIndexStart": "1561", 
			"param 0": "OtherTools#GOLD", 
			"data": "GOLD Parser Builder", 
			"srcLength": "48", 
			"0: data": {
				"srcIndexStart": "1588", 
				"data": "GOLD Parser Builder", 
				"srcLength": "19"
			}
		}, 
		"37: data": {
			"srcIndexStart": "1609", 
			"data": "
before running this script.
</p>

<a name=\"makeDocs\" />
<h3>makeDocs</h3>
<p>
This is explained on the ", 
			"srcLength": "111"
		}, 
		"38: pageTitle": {
			"srcIndexStart": "1720", 
			"data": "GenDocs", 
			"srcLength": "21", 
			"0: data": {
				"srcIndexStart": "1732", 
				"data": "GenDocs", 
				"srcLength": "7"
			}
		}, 
		"39: data": {
			"srcIndexStart": "1741", 
			"data": " page.
</p>

<a name=\"makePackage\" />
<h3>makePackage</h3>
<p>
Exports the latest Goldie and SemiTwistDTools masters fresh out of version control,
builds them, and generates ready-to-distribute ", 
			"srcLength": "201"
		}, 
		"40: pageLink": {
			"srcIndexStart": "1942", 
			"param 0": "Install#7z", 
			"data": ".7z", 
			"srcLength": "27", 
			"0: data": {
				"srcIndexStart": "1964", 
				"data": ".7z", 
				"srcLength": "3"
			}
		}, 
		"41: data": {
			"srcIndexStart": "1969", 
			"data": "
packages, just like the ones on the
", 
			"srcLength": "39"
		}, 
		"42: link": {
			"srcIndexStart": "2008", 
			"param 0": "http://www.semitwist.com/download/goldie/", 
			"data": "Goldie downloads page", 
			"srcLength": "76", 
			"0: data": {
				"srcIndexStart": "2059", 
				"data": "Goldie downloads page", 
				"srcLength": "23"
			}
		}, 
		"43: data": {
			"srcIndexStart": "2084", 
			"data": ".
The Unix shell script version also generates a source-only package.
</p>

<p>
All work is done in ", 
			"srcLength": "105"
		}, 
		"44: code": {
			"srcIndexStart": "2189", 
			"param 0": "inline", 
			"data": "./release/", 
			"srcLength": "28", 
			"0: data": {
				"srcIndexStart": "2203", 
				"data": "./release/", 
				"srcLength": "12"
			}
		}, 
		"45: data": {
			"srcIndexStart": "2217", 
			"data": ". If that directory already exists,
it will be <em>completely erased</em> first. If it does not exist, it will be created.
</p>

<a name=\"runTests\" />
<h3>runTests</h3>
<p>
Exports the latest Goldie and SemiTwistDTools masters fresh out of version control
and into ", 
			"srcLength": "273"
		}, 
		"46: code": {
			"srcIndexStart": "2490", 
			"param 0": "inline", 
			"data": "./test-cache/", 
			"srcLength": "31", 
			"0: data": {
				"srcIndexStart": "2504", 
				"data": "./test-cache/", 
				"srcLength": "15"
			}
		}, 
		"47: data": {
			"srcIndexStart": "2521", 
			"data": ". Then with each supported D compiler,
attempts to build everything and run all unittests (all done inside
", 
			"srcLength": "109"
		}, 
		"48: code": {
			"srcIndexStart": "2630", 
			"param 0": "inline", 
			"data": "./test/", 
			"srcLength": "25", 
			"0: data": {
				"srcIndexStart": "2644", 
				"data": "./test/", 
				"srcLength": "9"
			}
		}, 
		"49: data": {
			"srcIndexStart": "2655", 
			"data": ").
</p>

<p>
This tool requires that you have
", 
			"srcLength": "51"
		}, 
		"50: pageLink": {
			"srcIndexStart": "2706", 
			"param 0": "Requires#dvm", 
			"data": "DVM (D Version Manager)", 
			"srcLength": "49", 
			"0: data": {
				"srcIndexStart": "2730", 
				"data": "DVM (D Version Manager)", 
				"srcLength": "23"
			}
		}, 
		"51: data": {
			"srcIndexStart": "2755", 
			"data": "
installed, and that you have used DVM to install all versions of DMD
supported by Goldie (You can check inside the
", 
			"srcLength": "119"
		}, 
		"52: code": {
			"srcIndexStart": "2874", 
			"param 0": "inline", 
			"data": "runTests", 
			"srcLength": "24", 
			"0: data": {
				"srcIndexStart": "2888", 
				"data": "runTests", 
				"srcLength": "8"
			}
		}, 
		"53: data": {
			"srcIndexStart": "2898", 
			"data": " script to see which versions these are).
</p>

<p>
It's highly recommended to log the output of runTests, because it's unlikely
to all fit on one command line screen, even with scrolling.
If you're not sure how to do this, see the article
", 
			"srcLength": "247"
		}, 
		"54: link": {
			"srcIndexStart": "3145", 
			"param 0": "https://www.semitwist.com/articles/article/view/tee-time-logging", 
			"data": "'tee' Time Logging", 
			"srcLength": "95", 
			"0: data": {
				"srcIndexStart": "3219", 
				"data": "'tee' Time Logging", 
				"srcLength": "19"
			}
		}, 
		"55: data": {
			"srcIndexStart": "3240", 
			"data": ".
</p>

<a name=\"updateServerDocs\" />
<h3>updateServerDocs</h3>
<p>
Goldie's documentation is laid out like this:
</p>
", 
			"srcLength": "127"
		}, 
		"56: code": {
			"srcIndexStart": "3367", 
			"param 0": "plain", 
			"data": "http://www.semitwist.com/goldie/*             &lt;-- Most recent version
http://www.semitwist.com/goldie/v{version}/*  &lt;-- Specific version archives", 
			"srcLength": "165", 
			"0: data": {
				"srcIndexStart": "3380", 
				"data": "http://www.semitwist.com/goldie/*             <-- Most recent version
http://www.semitwist.com/goldie/v{version}/*  <-- Specific version archives", 
				"srcLength": "150"
			}
		}, 
		"57: data": {
			"srcIndexStart": "3532", 
			"data": "

<p>
If you're maintaining a copy of Goldie's documentation, you can use this
tool to automatically merge in a new version. It's split into two components:
</p>

<ol style=\"list-style-type: decimal\">
<li>
The core implementation written in D: ", 
			"srcLength": "253"
		}, 
		"58: code": {
			"srcIndexStart": "3785", 
			"param 0": "inline", 
			"data": "./bin/goldie-updateServerDocs", 
			"srcLength": "45", 
			"0: data": {
				"srcIndexStart": "3799", 
				"data": "./bin/goldie-updateServerDocs", 
				"srcLength": "29"
			}
		}, 
		"59: data": {
			"srcIndexStart": "3830", 
			"data": "
</li>
<li>
An optional user-specific shell script frontend
(examples are in
", 
			"srcLength": "82"
		}, 
		"60: link": {
			"srcIndexStart": "3912", 
			"param 0": "https://bitbucket.org/Abscissa/goldie/src/v0.8/updateServerDocs-example", 
			"data": "./updateServerDocs-example", 
			"srcLength": "111", 
			"0: data": {
				"srcIndexStart": "3993", 
				"data": "./updateServerDocs-example", 
				"srcLength": "28"
			}
		}, 
		"61: data": {
			"srcIndexStart": "4023", 
			"data": "
and
", 
			"srcLength": "7"
		}, 
		"62: link": {
			"srcIndexStart": "4030", 
			"param 0": "https://bitbucket.org/Abscissa/goldie/src/v0.8/updateServerDocs-example.bat", 
			"data": "./updateServerDocs-example.bat", 
			"srcLength": "119", 
			"0: data": {
				"srcIndexStart": "4115", 
				"data": "./updateServerDocs-example.bat", 
				"srcLength": "32"
			}
		}, 
		"63: data": {
			"srcIndexStart": "4149", 
			"data": ").
</li>
</ol>

<p>
Run either one with no arguments to see usage information.
</p>

<p>
To use this, make sure the documentation you want to merge in is at ", 
			"srcLength": "166"
		}, 
		"64: code": {
			"srcIndexStart": "4315", 
			"param 0": "inline", 
			"data": "./release/PublicDocs/docs", 
			"srcLength": "41", 
			"0: data": {
				"srcIndexStart": "4329", 
				"data": "./release/PublicDocs/docs", 
				"srcLength": "25"
			}
		}, 
		"65: data": {
			"srcIndexStart": "4356", 
			"data": "
(it will already be put there by ", 
			"srcLength": "35"
		}, 
		"66: pageLink": {
			"srcIndexStart": "4391", 
			"param 0": "#makePackage", 
			"data": "makePackage", 
			"srcLength": "37", 
			"0: data": {
				"srcIndexStart": "4415", 
				"data": "makePackage", 
				"srcLength": "11"
			}
		}, 
		"67: data": {
			"srcIndexStart": "4428", 
			"data": ").
Then, run the updateServerDocs tool and give it the version number you're merging in. Examples:
</p>
<div class=\"code-plain\">", 
			"srcLength": "131"
		}, 
		"68: data": {
			"srcIndexStart": "4559", 
			"data": "$", 
			"srcLength": "5"
		}, 
		"69: code": {
			"srcIndexStart": "4564", 
			"param 0": "user", 
			"data": "./updateServerDocs-example 0.6", 
			"srcLength": "44", 
			"0: data": {
				"srcIndexStart": "4576", 
				"data": "./updateServerDocs-example 0.6", 
				"srcLength": "30"
			}
		}, 
		"70: data": {
			"srcIndexStart": "4608", 
			"data": "
", 
			"srcLength": "2"
		}, 
		"71: data": {
			"srcIndexStart": "4610", 
			"data": "$", 
			"srcLength": "5"
		}, 
		"72: code": {
			"srcIndexStart": "4615", 
			"param 0": "user", 
			"data": "goldie-updateServerDocs 0.6 /mnt/my-server-via-sshfs/www/goldie", 
			"srcLength": "77", 
			"0: data": {
				"srcIndexStart": "4627", 
				"data": "goldie-updateServerDocs 0.6 /mnt/my-server-via-sshfs/www/goldie", 
				"srcLength": "63"
			}
		}, 
		"73: data": {
			"srcIndexStart": "4692", 
			"data": "

&gt;", 
			"srcLength": "8"
		}, 
		"74: code": {
			"srcIndexStart": "4700", 
			"param 0": "user", 
			"data": "updateServerDocs-example 0.6", 
			"srcLength": "42", 
			"0: data": {
				"srcIndexStart": "4712", 
				"data": "updateServerDocs-example 0.6", 
				"srcLength": "28"
			}
		}, 
		"75: data": {
			"srcIndexStart": "4742", 
			"data": "
&gt;", 
			"srcLength": "6"
		}, 
		"76: code": {
			"srcIndexStart": "4748", 
			"param 0": "user", 
			"data": "goldie-updateServerDocs 0.6 C:\\Inetpub\\wwwroot\\goldie", 
			"srcLength": "67", 
			"0: data": {
				"srcIndexStart": "4760", 
				"data": "goldie-updateServerDocs 0.6 C:\\Inetpub\\wwwroot\\goldie", 
				"srcLength": "53"
			}
		}, 
		"77: data": {
			"srcIndexStart": "4815", 
			"data": "</div>

<p>
If you want to merge in more than one version, make sure you merge them in order
from oldest to newest. Otherwise, the automatic creation of \"this page no longer exists\"
pages will get messed up.
</p>

<p>
To compile the D-based portion of updateServerDocs, you'll need at least DMD 2.054.
If you have that, then compile with:
</p>
<div class=\"code-plain\">&gt;", 
			"srcLength": "384"
		}, 
		"78: code": {
			"srcIndexStart": "5199", 
			"param 0": "user", 
			"data": "semitwist-stbuild updateServerDocs", 
			"srcLength": "48", 
			"0: data": {
				"srcIndexStart": "5211", 
				"data": "semitwist-stbuild updateServerDocs", 
				"srcLength": "34"
			}
		}, 
		"79: data": {
			"srcIndexStart": "5247", 
			"data": "</div>", 
			"srcLength": "8"
		}
	}
}