CodeSmith 4.0 Change History

Build 4.0.0 (Beta 2)
* All CodeSmith samples and documents are now stored in the user’s My Documents folder.
* All config data is now stored in the user’s profile directory.
* CodeSmith should now work in non-admin scenerios and in Vista with UAC turned on.
* ActiveSnippets will now show usage information when you press CTRL-E, CTRL-R or when a template is invalid.
* ActiveSnippets now properly indents the output based on the indentation of the alias.
* Fixed various bugs in CodeSmith Explorer that were causing it to do random full refreshes.
* Added drag and drop support to CodeSmith Explorer control.
* Added PropertyChanged event to CodeTemplate.
* Added OnChanged attributes to Property and XmlProperty directives.
* Updated CSLA.NET templates to the newest versions targetting CSLA 2.0.
* Added DbSnapshot templates to the samples.
* Added NHibernate templates to the samples.
* Added recent news to the CodeSmith Studio start page.
* Made .csmap files open in the map editor tool window when inside Studio.
* Changed .csmap double-click in Studio to open the map in the map editor tool window.
* Changed .csp double-click in Studio to run the ManageOutputs dialog.
* Corrected WilsonORMapper/MappingFile.cst naming conflict
* Added Find More links to Map Editor and ActiveSnippet configuration form.
* Made it so that ColumnSchema is usable with ActiveSnippets.
* Fixed bug in extended property editor that would crash CodeSmith when right-clicking.
* ActiveSnippets has been updated to use file extensions to resolve aliases and works in all file types.
* Changed templates using StringUtility to use StringUtil instead.
* Set the |DataDirectory| variable for connection strings to the user’s My DocumentsCodeSmithSamplesv4.0Data directory.
* Auto-retry on failed config save attempts.
* Made the ActiveSnippetForm save propertyset values in the save method because the values weren’t always being updated correctly.
* Fixed various spelling mistakes.
* Made it so the splash form in Studio will not stay up over top of error messages making Studio look like it is locked up.
* Fixed a bug in configuration system where file handles weren’t being properly released and was causing problems trying to save config data.
* Fixed several minor bugs in map editor.
* Fixed tab index on various forms.

Build 4.0.0 (Beta 1)
* CodeSmith Project support (.csp files). This replaces property sets, the custom tool and the batch format.
– CodeSmith Projects can be run from the command prompt, inside MSBuild, inside CodeSmith Studio, and inside Windows Explorer.
– Inside of Visual Studio, any outputs that are generated will automatically be added to your project.
– If you build your project, your outputs will automatically be re-generated.
– Progress dialog is shown when running from Windows Explorer.
– GUI dialogs to easily manage your project file.
– Easily add new outputs where you select a template and specify the property values.
– You can also specify merge settings through the GUI to enable code merging support.
* ActiveSnippet support. This will allow you to type something like: "dbprops CodeSmithTools.dbo.Customer" inside of Visual Studio and then hit the expand key (CTRL-E-E by default) and it will expand out into a list of property getters/setters and member variables based on the fields and data types of the Customer table.
* CodeSmith Map support (.csmap files). This feature will allow you to create dictionary style maps of things like SQL to C# data type mappings.
– Example: <%@ Map Name="CSharpTypeAlias" Src="CSharpTypeAlias.csmap" Description="Maps system types to C# aliases." %>
– Ability to reverse the map and use the values as the map keys. This is useful for doing reverse lookups.
– Ability to return the key value if a cooresponding map entry is not found.
– Ability to return a default value if a cooresponding map entry is not found.
– Ability to manage maps inside CodeSmith Studio or from Windows Explorer.
* Ability to manage database schema extended property values from inside of CodeSmith Studio.
* XmlProperty support has been enhanced to handle more variations of XSD.
* Template property values are saved for templates so that each time you run them, you don’t have to reset the values manually.
* .netTiers 2.0 templates are included in the install.
* Added drag and drop file support to the CodeSmith Explorer control.
* Added PropertyChanged event to CodeTemplate.
* Added OnChanged attribute to the Property and XmlProperty directives to allow wiring up property change event handlers.
* Added csxsd.exe to allow manually creating shared XmlProperty assemblies.
* Ton of new system extended properties added to SchemaExplorer objects.
* CodeSmith has been updated to support non-admin users.
* Bunch of performance improvements here and there throughout CodeSmith.
* Bunch of bug fixes.