This blog post announces two major changes for SharpDevelop 3.2: a setup size reduction from 21.1MB down to 14.6MB (a clean 30% less than before), and an upgrade of Sandcastle Help File Builder support to version 126.96.36.199.
So how did we shrink the setup? Let's look at some sizes first:
Revision 5493 is before the upgrade of SHFB support (happened in 5499), and 5500 is the latest setup build - with additional tweaks. So what are the tweaks?
Basically, we had a look at feature usage. Like "How many people actually know that we are shipping the WiX *.chm documentation with SharpDevelop?" or "How many people actually generate documentation chm files from XML comments?". Turns out that the answer is "not too many".
The delta of 5499 to 5500 shows the effect of the WiX help documentation. And 5493 to 5499 the delta of the old release of SHFB.
Which brings me to the upgraded functionality: we had a 1.7 release in the box, and 188.8.131.52 uses a different project file format. We had to upgrade that for "Build documentation..." (project context menu) to work properly with the new release.
If you don't have SHFB on your computer (which is now the default after installing SharpDevelop), you will see the following dialog:
This dialog is now standardized (we haven't installed TortoiseSVN in the past either). Simply follow the link, install the latest version, and you are good to go (even without restarting SharpDevelop, we perform the "SHFB installed?" check on the fly):
Note that we produce a valid .shfbproj file with a reference to the project you just had open.
So why are we shipping some stuff in the box and some not? That mostly depends on how deeply integrated a feature is in the IDE (well, after all that is short for integrated development environment). We have to have control over certain tools and the version being used. In some cases we can leave it up to the user to install it if needed, like F# support, Subversion support, FxCop or StyleCop support, or now documentation generation.
Lean & mean is the new green.