Release Notes

Build 8.5.0 (Final)

* Visual Studio 2022 support.
* Added support for .NET 4.8. You can now reference .NET 4.8 assembly references.
* Updated Visual Studio Keyboard shortcuts. Control+Alt+G, Control+Alt+E launches Template Explorer, Control+Alt+G, Control+Alt+U outputs ActiveSnippet usage, Control+Alt+G, Control+Alt+G expands an ActiveSnippet.
* Updated PostgreSQLSchemaProvider Ngpsql dependency to the latest version.
* Removed DB2zOSSchemaProvider as the dependencies are no longer available.
* Fixed a missing dependency with the command line tools NuGet package.
* Fixed a bug where calling TemplateEngine.Compile(path, true) was not using the cache in SDK applications.
* The Customer Experience Improvement Program is turned off by default and can be configured in options.
* Many more minor bug fixes.

Build 8.0.1 (Final)

* Added a new PostgreSQLSchemaProvider (Contrib Paul Welter).
* Added additional error handling around saving documents in visual studio.
* Fixed a bug where extracting samples could fail without retrying.
* Many more minor bug fixes.

Build 8.0.0 (Final)

* Added support for C# 6 and VB 14 language features.
* Added support for .NET 4.7. You can now reference .NET 4.7 assembly references.
* Added support for Visual Studio 2017. Visual Studio support can be installed as a VSIX from the Visual Studio marketplace and can be automatically updated.
* Added official CodeSmith Generator NuGet packages for SDK scenarios.
* Added new CodeSmith.Generator.Task NuGet package which enables generate on build functionality. This package also includes the cs.exe command line executable as well.
* Added the ability to specify a license key via the Generator:License environment variable or in code CodeSmithLicense.SetLicenseKey(key). Allows for easy build server and CI usage.
* Added High DPI support.
* Added support for JavaScript merge regions.
* Fixed breaking issue where non blocked if statements wouldn't be rendered correctly.
* Fixed an issue where Template Editor would no longer work after using an SDK application.
* Added support for <code> blocks to be used in doc comments to support rendering of code snippets within a summary section.
* Added support for newer snippets that could contain shortcuts that begin with the # character.
* Improved Property Grid editing experience for Byte, Date, Int16, Single and Time data types.
* Improved the IntelliPrompt for properties to include accessors, making it possible to see whether a property is read-only.
* Improved document tab management with Pin Document, Close All Documents and Close Other Documents when right clicking on a document tab.
* Improved document docking to be much more flexible.
* Updated cut/copy/paste/drag/drop editor actions to all support block and full line flags compatible with Visual Studio.
* Fixed a bug where a document with many sequential whitespace lines and indentation guides visible could affect editing performance.
* Fixed a bug in certain cultures where negative numbers using currency format wouldn't display properly.
* Fixed a few theme rendering issues that could occur on Windows 10.
* Fixed various colorization issues with the Visual Studio Editor.
* Updated User interface components to work better with mouse, touch, pen and other input devices.
* Updated the DB2zOSSchemaProvider to support newer versions of DB2 (> 10.1)
* Updated all samples.
* Many more minor bug fixes and performance improvements.

Build 7.1.0 (Final)

* Added SchemaSelector to allow easier selection of schema objects.
* Added support for VS 2015.
* Added new TypeScript templates.
* Updated SqlCodeTemplate to handle new SQL Server native types.
* Fixed a bug where multiple unrelated dialog editors couldn't be used in the propertygrid.
* Fixed a bug where the SQLAnywhereSchemaProvider didn't differentiate functions from stored procedures.
* Fixed a bug where the Visual Studio General window could be removed.
* Fixed a bug where The Visual Studio addin may throw an exception when saving user preferences.
* Many more minor bug fixes.

Build 7.0.2 (Final)
* Added Gang of Four Design Pattern templates (Contrib Martin Hart Turner).
* Added a new SQLAnywhereSchemaProvider (Contrib Steven Hyde).
* Added support for json serialization of schema objects.
* Many usability improvements and bug fixes were made to improve the editor, docking and property grid experiences.
* Fixed a bug where project file default properties were not applied in some scenarios.
* Fixed a bug where the CodeTemplate State property was not being properly set when generating from a project file.
* Fixed a bug where the protected keyword wasn't specified in the CSharpKeywordEscape mapping file.
* Fixed a bug where xml properties wouldn't be created on the CodeTemplate instance if a schema file path was not specified.
* Fixed a bug where map directives with a relative source path may not be resolved properly.
* Fixed a bug where the dark theme was not being displayed properly in Visual Studio 2013.
* Fixed a bug where template errors would not be shown in the Visual Studio error window.
* Fixed a bug where the PostgreSQLSchemaProvider could return duplicate view columns.
* Various updates to the PLINQO and CSLA Frameworks.
* The PLINQO-EF templates now have beta support for MySQL and SQL Anywhere and EF6 (there is a flag to turn EF6 generation on in the edmx template).
* Many more minor bug fixes.
Build 7.0.1 (Final)
* Fixed an issue with case sensitive databases in SqlSchemaProvider.
* Fixed a bug where an exception would be thrown when trying to access Extended Properties when using SQL Azure with the SqlSchemaProvider.
* Fixed a bug where Visual Studio integration could fail due to an assembly binding failure.
* Many more minor bug fixes.
Build 7.0.0 (Final)
* Added the ability to control the current theme from Generator Explorer.
* Added the ability to reset the docking layout from Generator Studio.
* Added the ability to open the options dialog from Generator Explorer.
* Fixed a bug that was preventing Template Explorer to be themed in some circumstances.
* Fixed a bug where a crash could occur when trying to regenerate a saved generated document.
* Fixed a bug where template and generated documents were not being opened or saved with the correct encoding.
* The CodeTemplate ResponseEncoding attribute has been deprecated as it doesn't make sense to have two encoding attributes. We will continue to fallback to any defined ResponseEncoding attribute values for backwards compatibility.
* Fixed a bug where a reloaded source document from disk could be shown as an empty document.
* Fixed a bug where fixed template errors would not be removed from the error window until the template was recompiled.
* Fixed a bug where template errors were not being highlighted for in memory documents.
* Fixed a bug where StringUtil ToPlural and ToSingular methods were not respecting the input strings casing.
* Fixed a bug where StringUtil IsPlural and IsSingular methods returned incorrect results if the input was not lower cased.
* Added method overloads to StringUtil IsPlural and IsSingular that allows you to specify a plural overrides MapCollection.
* Updated the SQLAnywhereSchemaProvider to also return user database tables and views.
* Many more minor bug fixes.
Build 7.0.0 (Beta)
* Added support for VS 2013.
* Added support for SQL Azure.
* Added bracket matching functionality to the Template Editor.
* Added support for a native Windows 8 metro theme.
* Added support for Delimiter Auto-Complete and Curly Brace Auto-Indent.
* Added IntelliSense support for Array Indexers, Xml and XSD files.
* Added IntelliSense support for the new C# 5.0 and VB 11.0 syntax. Please note that templates are still compiled as .NET 4.0. If you wish to use the async / await functionality, you must add a template reference to Microsoft.CompilerServices.AsyncTargetingPack.
* Added the ability to Control+Click to go to definition including support for the ability to open code behinds.
* Added 13 Bootstrap 3.0 ActiveSnippets.
* Added a new TypeScript ActiveSnippet that will generate TypeScript classes from a json document.
* Server License now allows access to the user interface components.
* Major usability improvements to the Find and Replace dialogs.
* Improved performance of parsing templates. Some very large templates can see up to a 2500% improvement. NetTiers parsing is 30% faster.
* Added support for Format Document and Format Selection.
* Added Syntax Highlighting for the following Languages: Assembly, INI, Lua, Markdown, MSIL, PowerShell, Ruby, RTF, VBScript, XAML.
* Added file extension mapping for the following file types: ColdFusion, CoffeeScript, Command, Dart, Erlang, F#, JSON, LESS, TypeScript, XSD and XSLT.
* Added the ability to open recent files from within the Generator Studio File menu.
* Added the ability to open the properties window using the F4 key inside of Studio.
* Added SchemaExplorer to the default list of assembly references for code behind files.
* Added the ability to consume merged MapCollections. StringUtil.ToPlural() and StringUtil.ToSingular() now use merged a MapCollection.
* Fixed a backwards compatibility bug where a template would not compile if the file name started with a digit.
* Updated the default file extensions that a document could be created with based on the valued defined in the templates TargetLanguage attribute value.
* Improved IntelliSense support in many areas including code snippets.
* Updated the code navigation drop downs by adding support for modifiers, method parameters and property parameters.
* Fixed a bug where the DataObjectBase.FullName property was only returning the Name (E.G., ColumnName) value. FullName now includes the owner information (E.G., Owner.Table.ColumnName).
* Improved the startup time of the Generator Studio and Visual Studio integration.
* Fixed a performance bug in SqlSchemaProvider.
* Fixed a threading bug in SqlSchemaProvider where an incorrect major version number could be returned causing the wrong script to be executed.
* Updated the find next dialog to behave like the Visual Studio Find dialog (F3 keyboard support, Escape to close and more).
* Fixed a bug where Property Directive descriptions do not appear in IntelliPrompt.
* Fixed a bug where the Editor font and colors would be displayed incorrectly after changing the Visual Studio theme in Visual Studio 2012 and 2013.
* Fixed a bug where the execute template dialog would allow a user to generate a template that was unable to compile.
* Fixed a bug where Quick Info and IntelliPrompt fonts were displayed incorrectly.
* Fixed a bug where the Template Editor would not receive focus when switching between documents.
* Fixed a bug where renaming a file in Template Explorer did not update the file path inside of the template editor.
* Fixed a bug where tabs inside of Template Editor did not properly display the files read-only status.
* Fixed a bug where an Unauthorized Access Exception could be thrown when trying to save a generated document.
* Fixed a bug where calling the Save method on MapCollection was not ensuring that the directory was created before saving the file to an invalid file path.
* Fixed a bug where an XmlProperty with invalid XSD schema's would throw an unhandled exception.
* Fixed a few bugs where the Indention features would not work as expected.
* Fixed a bug where the Property Grid could throw an exception when the multiply key was pressed.
* Fixed a bug where a Generator Project File could be saved with the incorrect file extension if the file name contained a period.
* Fixed a bug where the Template Explorer wouldn't automatically refresh in some scenarios.
* Fixed a bug where calling SaveAs multiple times on a single document would cause Generator Studio to become unresponsive.
* Fixed a bug where the DB2zOSSchemaProvider would only return views if the FilterViews property was specified in configuration.
* Fixed a bug where ActiveSnippetConfiguration may not be initialized when a new instance of ActiveSnippetGenerator was created.
* Fixed a bug where MapCollection.ToString() returned an empty string instead of the actual content.
* Fixed a formatting bug where PropertySet.ToString() wasn't being indented.
* Fixed various bugs with StringUtil where IsPlural, IsSingular, ToSpacedWords was not handling null or empty strings properly.
* Fixed a bug where StringUtil ToPascalCase and ToCamelCase methods were not returning the correct results for strings that contained single character words (E.G., a_b_c_MyMethod).
* Many more minor bug fixes.
* Updated the PLINQO and CSLA Frameworks to target .NET 4.5 and VS 2012/2013.
Build 6.5.6 (Final)
* Fixed a bug in xheo licensing component that caused licensing issues after upgrading Windows to version 8.1.
Build 6.5.5 (Final)
* Updates to the Customer Improvement Program.
Build 6.5.4 (Final)
* Fixed a bug where SaveAs would cause the editor to become unresponsive when saving code behind files.
* Fixed a bug where Find in current document was not working in Visual Studio 2012.
* Fixed a bug where Go To Line wasn't working on Visual Studio 2012.
* Fixed a bug where SchemaExplorer objects may not be refreshed properly.
* Fixed a bug where database schema information may be retrieved twice while restoring template properties from a CodeSmith Generator Project file.
* Fixed a bug where CommandSchema Functions saved in a CodeSmith Generator Project file would not be loaded.
* Added the ability to escape a single quote in an attribute value using two quotes in a row (E.G., "").
* Many more minor bug fixes.
Build 6.5.3 (Final)
* Improved XmlProperty IntelliSense.
* Fixed a bug where a NullReferenceException could be thrown when the XmlProperty Schema attribute value was empty.
* Added the ability for the Server edition to consume the Generator API.
Build 6.5.2 (Final)
* Added beta support for Visual Studio 2012 themes.
* Fixed a bug where the Template Editor font size would be displayed incorrectly inside of Visual Studio 2012.
* Fixed a bug where the Visual Studio 2012 snippets were not being detected by the Template Editor.
* Fixed a bug where templates weren't being loaded from cache in some circumstances.
* Fixed a bug where the returned ComplileTemplateResult.IsFromCache could return an incorrect value.
* Fixed a bug where the the Base Sample Directory could be set to an incorrect value.
* Updated the IEngineHost interface's GetContent methods to accept an optional parameter overload that controls how content is returned (from source or from memory).
* Fixed a bug where templates template code's background color wasn't being shown if you didn't have MVC 3.0+ installed. This is now falls back to the 'Highlighted Reference' font and color settings.
* Fixed a bug where SqlCodeTemplate was treating any column that ended in TypeCode as an enumeration.
* Fixed a bug where the Visual Studio MSBuild integration wasn't displaying messages in the output window.
* Fixed a bug where the progress bar could show 100% after generating through Manage Outputs in Visual Studio.
* Fixed a bug where an error would be thrown when attempting to compile the a specific template on multiple processes at the same time.
* Fixed a bug where the Template Editor would show invalid parse error messages for Visual Basic templates that contain XmlProperties.
* Many more minor bug fixes.
Build 6.5.1 (Final)
* Added DB2 zOS Schema Provider (contrib. David Logan and Blake Niemyjski).
* Added the ability to change a templates template code's background color.
* Added the ability the ability to disable or enable current line highlighting.
* Added a new whitespace collapsing rule to collapse the last line terminator node if there is only collapsible nodes after it.
* Fixed a bug where the update file associations dialog could be hidden behind other windows.
* Fixed a bug where Visual Studio template editor syntax highlighting styles could be improperly applied.
* Fixed a bug where an exception would be thrown when adding a new XmlProperty to a template.
* Fixed a bug where the Find and Replace tool windows Find button could be disabled in Generator Studio.
* Fixed a bug where some legacy UITypeEditors would not be shown in the Property Grid.
* Fixed a bug where the about dialog would be rendered incorrectly on localized versions of Windows.
* Fixed a bug in the ISeriesSchemaProvider where Primary keys may not be resolved correctly.
* Fixed a bug where a run-time exception would occur when opening Generator Studio or Template Explorer on Windows XP/ Server 2003 over Remote Desktop.
* Updated ExtendedPropertyNames to support even more extended property names.
* Updated the installer to verify that Visual Studio has been closed before installing.
* Updated the installer to add read / write permissions for the user's template samples folder.
* Fixed a bug where an exception could occur when doing a Go To Definition operation on a Lambda expression.
* Fixed a bug where samples could be extracted at the same time in different processes.
* Fixed a bug where an Exception could be thrown while extracting samples over samples that previously failed to extract.
* Many more minor bug fixes.
Build 6.5.0 (Final)
* Added code snippet support to the Template Editor (beta).
* Added IntelliSense support for XmlProperty.
* Added Build and Generate buttons to the Windows 7 preview window.
* Added VistaDB 4.x Schema Provider.
* Added SQL Compact 4.0 Schema Provider.
* Updated the PostgreSchemaProvider and SQLAnywhereSchemaProvider libraries to .NET 4.0.
* Updated all folder browser pickers to use the native Windows 7 and Windows Vista Folder browser.
* Added a Close all windows but this feature.
* Added the ability to handle external editor document changes.
* Added the ability to open files by dropping them onto the Template Editor.
* Added the ability to open multiple files at once.
* Fixed a bug where converting tabs to spaces wasn't working correctly.
* Fixed a bug where CodeSmith Generator could crash on Windows XP when trying to set a windows icon (Windows XP icon file limitations).
* Fixed a bug where a new blank template would be created with a syntax error.
* Fixed a bug where errors could be added to the error window without a file path.
* Fixed a bug where Code Document errors were not being removed from the Error Window in specific cases.
* Fixed a bug where Cached Configuration Settings may be persisted in memory indefinitely.
* Fixed a bug that didn't underline some errors in the Template Editor.
* Fixed a bug where you needed to restart Generator after updating with the Oracle Schema Provider and the ISeries Schema Provider Configuration to take effect.
* Updated the Configuration descriptions for the Oracle Schema Provider and the ISeries Schema Provider.
* Fixed a bug in the SQL Compact Schema Providers where money data types were not being translated to DbType.Currency.
* Fixed a bug where the JumpList Recent Items list wasn't being populated.
* Fixed a bug where some whitespace was not being shown correctly when 'View Visible Whitespace' was enabled.
* Fixed a bug where the Properties tool window would be reset when switching between tool windows.
* Fixed a bug where the output window could steal focus while using the Template Editor.
* Fixed a bug where renaming a template inside of Visual Studio would save a duplicate template file under the previous name.
* Fixed a bug where a NullReferenceException could be thrown from Visual Studio 2010's Add New File wizard.
* Fixed a bug where the Template Engine would throw a StackOverflowException while trying to add recursive references. A parser error is now added and displayed in the error window.
* Fixed a bug where the Progress bar would not be cleared after generation errors.
* Fixed a bug where the Property Grid did not let you search for properties.
* Fixed a bug where the JumpList wasn't being updated after you saved a in memory document.
* Fixed a bug where the View Visible Whitespace feature wasn't working in the Visual Studio Template Editor.
* Fixed a bug where a opening a UITypeEditor could crash the Template Editor if the property setting threw an exception.
* Many more minor bug fixes.
* Updated the PLINQO for NHibernate templates to version 1.2.
* Updated the PLINQO for Entity Framework templates to version 1.2.
* Updated the CSLA templates to version 4.0.
Build 6.5.0 (Release Candidate)
* Updated all Schema Explorer and Generator icons.
* Improved IntelliSense support for VB and lambda expressions.
* Added support for Visual Studio 11.
* Added support for showing trace messages to the output window when generating.
* Added support for in memory editor documents.
* Added SaveAs support to rename template editor documents.
* Added JumpList support to the Template Editor.
* Added a splash screen to the stand alone template editor.
* Added IntelliSense support for CSharp and Visual Basic code behind files.
* Added the ability to clear and copy the output window contents.
* Added Cut, Copy and Paste context menu items across the board.
* Updated the experience when opening a template document inside of the editor.
* Updated the Schema Explorer tool window to show folders for Tables, Commands and Views. It also will display an icon for the following scenarios: Composite Keys, Clustered Indexes and Parameter direction.
* Renamed Template Editor stand alone application to CodeSmith Generator Studio.
* Improved the status updates when opening and saving a templates.
* Updated the stand alone template editor to ensure that only one instance of the editor is open at all times.
* Changed the default editor application to be the stand alone template editor.
* Changed the save and close behavior of generated documents inside of the template editor.
* Updated the Go To Line dialog to have a default enter experience.
* Large amount of updates to the Error Window for an better editing experience.
* Fixed a bug where template comments were generating a new line.
* Fixed a bug where text inside of the Visual Studio Template Editor may be displayed incorrectly.
* Fixed a large number of performance related bugs dealing with initializing Template Editor documents.
* Fixed a threading bug where an exception could be thrown while retrieving cached property values.
* Fixed a bug where ManageOutputs could be hidden behind the Template Editor when double clicking on a file in Template Explorer.
* Fixed a bug where ValidationErrors were being reported as a warning in the Error Window.
* Fixed a bug where a UnauthorizedAccessException could occur while trying to open or save a file inside of the Template Editor.
* Fixed a bug where the Template Explorer Top Most Window mode could be enabled from within Visual Studio and the Template Editor.
* Fixed a bug where project references and generated items wouldn't be added to a solution if there was an error during generation.
* Fixed a bug where a NullReferenceException would be thrown while pressing generate on a non generated code document.
* Fixed a bug where a NullReferenceException would occur when text was selected during a go to definition operation.
* Fixed a bug that could crash the application when closing a CodeSmith Generator Project Progress dialog while generating.
* Fixed a bug where the template editor was not checking to see if a file had permissions to edit a file.
* Fixed a bug where an exception could occur while trying to see if the extracted samples were up to date.
* Fixed a bug where a FormatException could occur while updating the Output Window.
* Fixed a bug where the Template Explorer create new text file menu item didn't work.
* Fixed a bug where a NullReferenceException would occur when trying to remove a template shortcut in Template Explorer.
* Fixed a bug where web documents would be loaded into the template editor instead of launching in a browser.
* Fixed a bug where right click execute on a template in the template explorer would edit the template in the Template Editor.
* Fixed a bug where the CodeSmith Generator assemblies were not showing up in the Visual Studio Add New References dialog.
* Fixed a bug where the CodeSmith Generator XSD schema's were not being registered properly with Visual Studio.
* Fixed a bug where a deadlock could occur while resetting or refreshing the Property Grid.
* Fixed a bug where property values may not be applied to the Property Grid.
* Fixed a bug where a InvalidOperationException could be thrown in some cases when closing the Generator Project File Generation Progress Dialog before generation has completed.
* Fixed a bug where the Find tool window wasn't working in some scenarios.
* Fixed a bug where the stand alone editor user interface may not be displayed correctly after initial launch.
* Fixed a bug where an Exception may be thrown while trying to access the Registry for settings without ensuring the registry keys exist.
* Fixed a bug with the About window displaying very large text.
* Renamed RegisterInMemoryContent to RegisterContent and GetFileContent to GetContent (BREAKING CHANGE).
* Updated the CSLA, PLINQO for NHibernate and PLINQO for Entity Framework to the latest nightly builds.
* Many more minor bug fixes and performance improvements.
Build 6.5.0 (Beta)
* Added a standalone Template Editor application.
* Added theme support to the standalone editor.
* Added ability to import editor styles from VS in the standalone editor.
* Added smart indent feature to the template editor.
* Added initial LINQ completion support.
* Added current line highlighting feature.
* Improved GoTo Definition.
* Added Print support.
* Added colored tabs to identify generated content. (Not implemented in VS yet)
* Added ability to close all generated documents. (Not implemented in VS yet)
* Added ability to re-generate while viewing the previously generated document. (Not implemented in VS yet)
* Added ability to change properties and re-generate without switching back to the template. (Not implemented in VS yet)
* Fixed a bug where assemblies were not being resolved correctly when Visual Studio 11 was installed.
* Fixed a bug where Visual Studio 2010 integration would become corrupt when Visual Studio 11 or .NET 4.5 was installed.
* Fixed a bug where an exception may be thrown while retrieving Visual Studio configuration settings.
* Fixed a bug in the SqlSchemaProvider where CS_Description ExtendedProperty values would be truncated. The MS_Description ExtendedProperty value now takes precedence.
* Fixed a bug where show license dialog was shown when you tried to uninstall.
* Fixed a bug where a line break would be rendered after a script block.
* Many more minor bug fixes and performance improvements.
Build 6.0.5 (Final)
* Fixed a bug where assemblies were not being resolved correctly when Visual Studio 2012 / .NET 4.5 was installed.
Build 6.0.4 (Final)
* Fixed a bug that could cause a XamlParseException during start up.
Build 6.0.3 (Final)
* Added CopyTo Overload for backwards compatibility.
* Fixed a bug where the Environment.CurrentDirectory wasn't being set to the current template directory during Generation which broke backwards compatibility in some templates.
* Added PropertiesLoaded and PropertiesSaved events to CodeTemplate. This allows for the ability to be notified when all template properties have been saved or loaded.
* Fixed a bug where a NullReferenceException could occur while retrieving Visual Studio settings.
* Fixed a bug where a NullReferenceException could occur when accessing a class that deriving from ColumnSchema via interfaces.
* Fixed a bug where an error could occur while configuring Generate On Build when using TFS Source Control.
* Fixed a bug where a NullReferenceException would occur while rendering a template if you called the CopyPropertiesTo(true) overload.
* Added the ability to exclude specific properties from being copied to a sub template.
* Fixed a bug where the JsonPropertySerializer wasn't loading Interfaced property values.
* Added an detailed error message when the InsertClassMergeStrategy is unable to insert content.
* Fixed a bug where the Privacy Policy link would throw an exception during the registration process.
* Fixed a bug where the MSBuild integration could throw a NullReferenceException.
* Updated the Template Editor look and feel to feel more like the Visual Studio Editor.
* Many more minor bug fixes.
Build 6.0.2 (Final)
* Many performance and memory improvements pertaining to the Template Editor.
* Added IntelliSense Support for Anonymous Types.
* Added additional information to the IntelliSense Parameter Information.
* Added a Help menu to the Generator Menu inside of Visual Studio.
* Fixed a bug where a StackOverflowException would occur with any template that was recursively called.
* Fixed a bug where a StackOverflowException could occur when retrieving IntelliSense for complex types.
* Fixed a bug where a NullReferenceException could occur if a sub template had more than 25 errors.
* Fixed a bug where an Exception could be thrown after closing an editor document.
* Fixed a bug where CodeTemplate.GetProperties(bool) could return invalid results.
* Restored the non-generic DataObjectBaseCollection for backwards compatibility.
* Fixed a bug where the TableSchema's DataObjects property wasn't being set correctly.
* Fixed a bug that could prevent samples from being extracted to the location you choose while installing Generator.
* Fixed a bug that caused SchemaExplorer Collections to be incorrectly serialized.
* Fixed a bug where ActiveSnippets could be saved in an invalid state.
* Fixed a bug where ActiveSnippets were not being upgraded properly.
* Fixed a bug where the Data Source Manager could throw an exception when a provider couldn't be resolved.
* Fixed a bug where the CommandResultSchema.DataObjects property wasn't being populated.
* Fixed a bug where an Exception could be thrown while trying to parse a template that uses an include file multiple times.
* Fixed a bug where Validation Errors could be removed prematurely from the Error Window.
* Fixed a bug where a FileNotFound exception could occur if a previously open template document no longer existed when launching Visual Studio.
* Breaking Change: The Merge Strategies API Merge() method signature has been updated to include a MergeContext which provides additional contextual information.
* Fixed a bug where the TemplateContext might not be available when loading properties from a CSP.
* Fixed a bug where the CodeTemplate.RenderToFile(OutputFile, bool) overload was not calling OnPostRender.
* Fixed a bug where SDK Licenses would not be picked up in certain circumstances.
* Fixed a bug where Configuration may not be initialized properly when using SDK Integration.
* Fixed a performance bug in the SqlSchemaProvider where parsing Extended Property values could take an excessive amount of time due to Regex backtracking.
* Fixed a few PropertyGrid issues dealing with focusing and custom UITypeEditors.
* Fixed a bug where one could not uncomment Template comments when the selection had any trailing or leading spaces.
* Fixed a bug where sub template errors could be show error squiggles in the master template.
* Fixed a bug where a Data Source might throw an exception while loading and not be shown in the Data Source Manager.
* Added a user friendly message when generating against template resources that are marked as blocked. See http://go.microsoft.com/fwlink/?LinkId=179545 for more information.
* Fixed a bug where the editor didn't respect your tab preferences.
* Fixed a bug that could cause the editor to not use valid cached compile results.
* Fixed a bug that could cause a crash when saving a template while it is being parsed.
* Fixed a bug where template samples might not be extracted in some scenarios.
* Updated all of the Visual Studio Item templates descriptions and names.
* All newly created Generator Files (E.G., Templates, Generator Project Files...) and Generated documents are saved as UTF unless specified in the CodeTemplate Directives Encoding attribute.
* Updated all of the Generator Template Frameworks to the latest version.
* Fixed a bug where the Intellisence Auto Completion windows would not show up in some scenarios.
Build 6.0.1 (Final)
* Fixed a bug where an exception could occur while loading saved CodeSmith Generator Project File Settings.
* Fixed a bug where the Editors' font colors were unreadable.
* Fixed a bug where an exception could be thrown when trying to update the editors FontFamily.
* Fixed a bug where an exception could be thrown while writing to the Visual Studio Activity Log.
* Fixed a locking issue that could occur if you closed an editor document while it was being parsed.
* Fixed a threading bug where an InvalidOperationException could occur when using multiple document windows.
* Fixed a bug where the ColumnSchemaCollection UI Picker didn't allow a user to select multiple items.
* Fixed a bug where an COMException could occur when switching document windows.
* Fixed a bug where Template Explorer runtime exception messages would not be displayed.
* Fixed a bug where an unhandled exception would occur when loading a CodeSmith Generator Project File that was saved in Unicode format.
* Improved the error message that is shown when templates are using assemblies that are compiled against old versions of CodeSmith Generator.
* Updated the CodeSmith Generator Documentation start menu link location.
* Many more minor bug fixes.
Build 6.0.0 (Final)
* Fixed a bug where Template Source would not be available when debugging.
* Added F5 (Generate a template), F6 (Build a Template), F7 (View Code) Editor Shortcuts.
* Added support for Xml Documentation to the IntelliSense prompts.
* Updated how a generated document window is updated after the initial generation.
* Updated Go to Definition support to navigate to the type/member instead of searching for it.
* Fixed a bug where template documents where not being saved before being compiled or generated.
* Editor now checks out a template from source control as soon as you start typing or save a document (Tested with TFS 2010).
* Fixed a bug where a NullReferenceException could occur after a template editor is closed.
* Fixed a bug where Template Explorer Folders would get out of sync.
* Added a LoadFromName method to the Map class which try's to resolve a map file from the current executing CodeTemplate's Directory.
* Fixed a bug where Generator would crash when an error occurred while extracting samples.
* Fixed an issue where the PropertyGrid Collection Items were being collapsed after a property was modified on the item.
* Fixed a bug where an NullReferenceException could occur in SchemaExplorer due to Schema Object Names being trimmed.
* Updated all Template Framework .NET 3.5 Item Templates to not prompt a user to upgrade the projects when opening Visual Studio.
* Fixed a bug with the TabularObjectBase and TabularObjectBaseCollection UITypeEditors not displaying any TabularObjectBase objects.
* Fixed a bug with the DataObjectSerializer where a parent TabularObjectBase was not being detected properly.
* Fixed a bug where the property value could cause the process to crash due to any exception that would be thrown by a Property Getter. These exceptions are logged to the output window.
* Fixed a NullReferenceException that could occur when closing multiple open Template Explorer Windows of the same template.
* Fixed a bug where the GetFileName() Validation rules were run when RenderToFile() was called. This behavior broke backwards compatibility.
* Fixed a bug where loading an empty CSP file to restore PropertyGrid values would throw an exception.
* Fixed a bug where The Template Explorer sample folders were not being added to configuration after the samples were extracted.
* Many more minor bug fixes.
Build 6.0.0 (Release Candidate)
* Many editor performance and memory improvements.
* Updated Go To Definition support to check for In Memory document and code behind changes.
* Added F12 keyboard shortcut for Go To Definition.
* Added the ability to access SchemaExplorer from within Visual Studio.
* Added GetCustomValidationErrors() method to CodeTemplate which allows a developer to add custom Template Validation Rules during the validation process. This change introduced a breaking change to CodeTemplate's Validate method as it is no longer marked as virtual (Breaking Change). One should now update there existing code to use GetCustomValidationErrors().
* Updated CodeTemplate to issue an Validation Error when GetFileName() is Invalid or an exception occurs while a template is validating.
* Added a new property called PropertyName to the ValidationError object.
* Updated the ValidationErrorCollection to derive from List<T> instead of Collection<T>.
* Updated the Visual Studio Build Template button to force a recompile of the template.
* Fixed a bug where an exception would occur when using the ViewColumnSchemaCollection PropertyGrid Editor.
* Fixed a bug where MemberColumnSchemas Parent property was never being set.
* Fixed the Code Navigation Drop Down menu's to include the selected image.
* Fixed a bug where Visual Studio Shortcuts like Control+Tab were being ignored.
* Updated the start menu help shortcut location.
* Many more minor bug fixes.
Build 6.0.0 (Beta 3)
* The Template Editor no longer locks assembly references.
* Added Go to Definition support.
* Added Code Navigation support.
* Added View Source context menu item to view a templates code behind file.
* Many performance and memory optimizations across CodeSmith Generator.
* Added TryGetValue Extension Methods for ExtendedProperties in namespace SchemaExplorer.Extensions.
* Added the ability to create new files and folders to Template Explorer and Windows Explorer
* Added a start menu link to the online help and API documentation.
* Added support for refreshing cached PropertyGrid values (E.G., DatabaseSchema).
* Major updates to the ActiveSnippet Configuration dialog that includes validation and much more.
* Fixed a bug where a dark Visual Studio theme would not be formatted properly.
* Fixed a bug where the PropertyGrid was not refreshing property values that were updated dynamically.
* Added ExtendedPropertyNames class which gives quick access to all defined ExtendedProperty Names.
* Updated all providers to use the new utility class for ExtendedProperty Names.
* Updated the ADOXSchemaProvider to use the new Microsoft ADOX ConnectionString Designer.
* Updated the OracleSchemaProvider to use the new Microsoft Oracle ConnectionString Designer.
* PostgreSQLSchemaProvider's and SqlSchemaProvider's CommandSchema and ColumnSchema ExtendedProperty name for CS_IsScalarFunction now share the same name (maintained backwards compatibility).
* Fixed an issue where Enumerations with defined base types could lock up the PropertyGrid.
* Updated the TemplateSession to refresh the CodeTemplate's instance when clicking generate.
* Fixed a StackOverFlowException that could occur if an error occurred while showing the output window.
* Fixed an issue where a file could be opened from the Template Explorer Window in a new Visual Studio Instance.
* Update the about us dialog to include lines generated.
* Fixed a bug where Visual Studio could crash at launch due to an corrupt visual style.
* Updated the Template Editor to apply the default Visual Studio Fonts and Colors when opening a template.
* Fixed a bug where Error Window would be out of date when switching between templates.
* The Error Window is now cleared when you close a template editor.
* Fixed a bug where Template and Compiler Errors were not taking priority over Warnings when being merged.
* Fixed a bug where the CompileTemplateResult would return an incorrect result when any CompileWarnings existed.
* Updated the TemplateEditorDocument to refresh the errors when a parse error occurs when the generate button is clicked.
* Fixed a bug where Manage Outputs would not properly save an output when a template existed on a different hard drive.
* Fixed a bug where Template Explorer wasn’t properly saving or loading a CodeSmith Generator Project File.
* Fixed a bug where the installer would write to an incorrect registry hive on 64bit machines.
* Fixed a bug where the Name Attribute Value on a Property Directive wouldn't be valid if it had a space as the leading or ending character.
* Updated the GetHashCode() for all of SchemaExplorer's implementations.
* Fixed a Stack Overflow Exception that was occurring in MemberColumnSchemaCollection's IndexOf method.
* Fixed a bug where Custom UITypeEditor’s were showing up with non-default formatting styles.
* Fixed a bug where Custom UITypeEditor’s Dropdown Menus were not behaving correctly due to a focus issue.
* Samples are now kept up-to-date on an end users machine without overwriting any modified templates upon extraction.
* Updated all of the CodeSmith Generator Sample Projects.
* Fixed bug where Add Output and Generate Outputs context menus didn't work in all scenarios.
* Many more minor bug fixes.
Build 6.0.0 (Beta 2)
* Change RenderToFile to not modify a file if the contents would be the same. Helps with exclusive checkouts.
* Fixed template includes so that all templates should work now.
* Fixed issue with collapsing code behind items in solution explorer after generating.
* New property grid editors for common data types.
* Added a new TemplateContext.Current that allows getting access to the currently executing template.
* Double clicking template inside of CodeSmith explorer in VS will now open the file for editing.
* Massive SchemaExplorer refactor including interfaces for all schema objects and better designer and serializer support.
* Improved error messages and more robust checks during template parsing.
* Improved the error window behavior for templates.
* Fixed various licensing bugs.
* Fixed bugs where schema providers were not being found properly.
* Better support for old UITypeEditors.
* Added new TemplateSourceGenerator custom tool for .cst files that enables better template debugging support.
* Fixed parser bug that wasn't parsing <% // some comment %> correctly.
* Fixed an issue where an Exception would occur when trying to load a template marked as read-only.
* Added initial code navigation drop downs to the top of the template editor.
* Fixed issue with being able to copy text from the output window.
* Many more minor bug fixes.
Build 6.0.0 (Beta 1)
* Brand new template editor integrated right into Visual Studio 2010!
* Vastly improved IntelliSense with even more improvements to come before the final release. Support for directives, extension methods, lambdas, generics, and more!
* Brand new parsing engine that should provide much better template errors as well as a great foundation to build on for the future.
* .NET 4.0 support in templates.
* SchemaExplorer collections have been updated to use generic collections that give a bunch of new features like LINQ support. *Breaking change that requires only a recompile of existing templates.
* PropertyGrid has been updated to allow property filtering, collection editing, default instance creation, auto expanding of objects and much more.
* New default property serializer that will enable serialization of just about any object and not require custom property serializers to be written. You can now just create an object in the template and use it as a property type.
* Brand new Template Explorer that provides complete shell context menus and other features. If you are using something like Tortoise for version control, you will now have access to those features right inside of Template Explorer.
* 64bit assembly support.
* Most of the engine is multi-threaded and should make better use of multiple core machines.
* Updated the ISeriesSchemaProvider to include filters to allow wild cards % and _ in the filters.
* Added ISeriesSchemaProvider configuration setting to control the CommandTimeout on large schema's.
* Fixed a bug that caused Configuration to call LoadDefault multiple times.
* Many other small improvements and bug fixes.
Build 5.3.5 (Final)
* Fixed a bug where Generating on Build would fail with a reserved item meta-data ArgumentException on select machines.
* Fixed a bug where an NotSupportedException would be thrown by third party project types (E.G., PHP, Setup and Oracle) while generating.
* Fixed a bug where the ReturnValueParameter would always be set to null.
* Updated the SQLAnywhereSchemaProvider to be compatible with SQLAnywhere 12.x.
* Fixed a bug where a cached configuration setting would not be refreshed when the value was changed.
* Fixed a bug in the SqlSchemaProvider where the ReturnValueParameter would not be null for SQL Server 2000 Functions.
* Fixed a bug in the OracleSchemaProvider where the native type could have size information.
* Fixed a bug in the PostgreSQLSchemaProvider where view alias columns would consist of incorrect data.
Build 5.3.4 (Final)
* Fixed a bug in the SqlSchemaProvider which caused a command parameters ExtendedProperty collection to be lazy loaded. This fix will restore previous performance levels when generating against stored procedures.
* When compiling a template in CodeSmith Generator Studio, the build and run menus are disabled until the Build has completed.
* Fixed a bug with the SqlSchemaProvider where CommandResultSchema's would not be populated when a parameter contained a UserDefinedType.
* Added CS_IsUserDefinedTableType as an ExtendedProperty to the SqlSchemaProviders ParameterSchema object. This will return true if the type is a User-Defined Table Type.
* Added support for Function-Based Indexes in the OracleShcemaProvider.
* Added CS_IndexType and CS_ColumnExpression as an ExtendedProperty to the OracleSchemaProviders IndexSchema object.
* Fixed a bug in the OracleSchemaProvider where the HasExtendedProperty call could return a false positive, thus leading to an error when trying to create ExtendedProperty Table.
* Fixed a bug where Configuration could return the default value on complex properties.
* Fixed a bug where a NullReference exception could occur while attempting to open the trial dialog.
* Fixed a bug where the Show Code-Behind Dialog could be hidden behind the CodeSmith Generator Studio Splash Screen.
* NHibernate - Updated to version 1.2.1.
Build 5.3.3 (Final)
* Fixed a bug that could cause a "The Generator API can't be used in custom applications" error to occur when using CodeSmith Generator Standard.
* Fixed an IntelliSense bug that could cause an Unable to load one or more of the requested type's exception to be thrown.
* Fixed a bug where Clicking Register in the About Dialog twice could throw a NullReferenceException.
* Fixed a bug where Visual Studio 2005 integration could cause a project not to load due to an incompatibility with parsing the CodeSmith Generator targets file.
* Updated the Extraction folder text to help explain the best place to extract the sample templates to.
* Added the ability to save property enumerations that do not have a default value of 0 defined.
* Added better support for handling enumerations that have been saved in a CodeSmith Generator Project File and are no longer a valid enumeration value.
* Fixed a bug where corrupt version information stored in the registry could throw an exception while upgrading from an existing version of CodeSmith Generator.
* Fixed a bug where the IntelliSense could throw an exception while trying to resolve member names.
* Fixed a bug in the PostgreSQLSchemaProvider where duplicate TableKeys could be added.
* Fixed a bug where the SQLiteSchemaProvider would throw a NotSupportedException when calling GetTableData() and GetViewData().
* Updated the PostgreSQLSchemaProvider GetExtendedProperties query to look up the table name from the table_catalog column.
* Updated the PostgreSQLSchemaProvider GetExtendedProperties query to ignore the sequence and Identity Information as it does not work in all scenarios due to a limitation in PostgreSQL.
Build 5.3.2 (Final)
* Fixed many bugs in the PostgreSQLSchemaProvider dealing with query results as well as improperly detected foreign keys and other relational data.
* Improved the PostgreSQLSchemaProvider performance when populating schema information.
* Updated the DbType and native type mappings in the PostgreSQLSchemaProvider.
* Added initial support for GetExtendedProperties and GetCommandResultSchemas to the PostgreSQLSchemaProvider.
* Changed and added additional ExtendedProperty key names in the PostgreSQLSchemaProvider to match the SqlSchemaProvider. This adds greater support for generating existing templates.
* Added the SQLAnywhereSchemaProvider. This has been tested against Sybase IAnywhere 11.0.
* Added the ISeriesSchemaProvider. Requires iSeries OS v5.4 or greater and has been tested against v6.1.
* Updated the trial experience to only show one trial dialog once after launching CodeSmith Generator.
* Added Flash support to the CodeSmith Generator Studio browser.
* Added the ability to silently uninstall CodeSmith Generator using the /quiet flag.
* Fixed a bug in the OracleSchemaProvider where the ExtendedProperties Table was being improperly detected if ShowOnlyMySchema was disabled.
* Fixed a bug in the OracleSchemaProvider where a query would always be executed to see if the ExtendedProperties Table existed. This is information is now cached.
* Fixed a bug in the OracleSchemaProvider where a NullReferenceException could be thrown with Relationships between different schemas.
* Fixed a bug where "Generate on Build" could be improperly set and would not Generate on Build.
* Updated the error message with download information when the System.Data.SQLite assembly is not found when using the SQLiteSchemaProvider.
* Updated the ADOXSchemaProvider error handling to better support Microsoft Visual FoxPro 9.0.
* Fixed a bug where a NullReferenceException could be thrown while turning off Generate on Build.
* Fixed a bug in the Property Explorer which could prevent Property Explorer from loading.
* Fixed a bug where the ApplicationConfigurationDirectory would be improperly set the first time using Visual Studio Integration. This could cause errors while using Visual Studio Integration.
* Fixed a NullReferenceException that could occur while saving a NameValueCollection using the CodeSmith Generator NameValueCollection property designer.
* Fixed a NullReferenceException that could occur while parsing a template in CodeSmith Generator Studio.
* Fixed a rare bug where a template would fail to load inside of CodeSmith Generator Studio.
* Improved the error handling when trying to set Clipboard data (E.G. Template Output or Property values).
* Fixed a bug where SchemaProviders from previous versions of CodeSmith Generator would not be cleaned up during uninstall and would throw an exception when attempted to be initialed during runtime.
* Fixed a bug where an invalid folder shortcut could crash CodeSmith Generator Studio or CodeSmith Generator Explorer.
* Fixed a NullReferenceException that could occur while displaying an executable icon in the Template Explorer.
* Fixed various spelling errors in the API documentation and informational messages.
* Fixed an exception that could happen in Visual Studio 2010 when loading Generator Resources.
* Fixed a SecurityException that could occur when using Active Snippets in Visual Studio 2010.
* Renamed the "Template Editor" menu item in CodeSmith Generator Explorer to "Configure Template Editor".
* Renamed the VistaDBSchemaProvider Name property to VistaDBSchemaProvider.
* Updated to the latest CodeSmith Insight client.
* PLINQO - Updated to version 5.0.3
* NHibernate - Updated to version 1.1.7.
* Various other minor changes.
Build 5.3.1 (Final)
* Fixed a scenario where the Windows Installer could improperly register the CodeSmith Generator Visual Studio 2010 Integration.
Build 5.3.0 (Final)
* Renamed CodeSmith Generator to CodeSmith Generator and updated product logos, license agreements and start page.
* Added MSBuild 4.0 support and full Visual Studio 2010 Integration.
* Improved the support for compiling templates that start with a number or contain malformed namespaces.
* Fixed the ambiguous reference compiler issues when using Visual Studio 2010.
* Fixed a bug where you could only configure one ActiveSnippet inside of Visual Studio.
* Updated the Microsoft Connection String Designers to the latest version.
* Fixed a NullReferenceException when using new Visual Studio 2010 Setup and Deployment project types.
* Fixed a bug were an InvalidParameterException could be thrown when setting a CodeSmith Generator Project File to Generate on Build.
* Improved the process for setting the "Generate on Build" action. You now only have to set select the action once to enable.
* Renamed the CodeSmith Generator Template folder to My Templates in the Template Explorer.
* Templates and samples are now extracted to the CodeSmith Generator "My Documents" folder.
* Fixed a bug where saving a CodeSmith Generator Project File could throw an exception.
* Fixed a threading bug in the licensing component which could cause CodeSmith Generator to close.
* Fixed a bug where clicking cancel on a Trial dialog form when invoked from the Data Source Manager would throw an exception.
* Fixed a template compile bug where configuration was ignoring the application directory for resolving assemblies.
* Improved the error handling and display of the "Access to the registry key 'HKEY_CLASSES_ROOT\.cst' is denied." exception.
* Fixed a bug where a Requested registry access is not allowed exception could occur.
* Fixed a bug where a NullReferenceException could be thrown with a complex property getter.
* Fixed a bug where an InvalidOperationException could be thrown when opening a template with CodeSmith Generator Studio.
* Updated the CodeSmith Generator Studio browser control for improved website rendering.
* Fixed a bug where CodeSmith Generator Studio's Start Page could throw a "Root Element is missing" Exception.
* Fixed an IntelliSense bug in CodeSmith Generator Studio which would throw a "Could not load file or assembly" exception.
* Fixed a cross threading exception that could occur while displaying the CodeSmith Generator Studio Splash Screen.
* Fixed a bug where the Extracting Samples dialog could be hidden behind the splash screen.
* Fixed a bug in the SqlCodeTemplate where GetSqlParameterStatement would return a size for image columns.
* Updated the SqlCompactSchemaProvider to return the correct float, money and real data types.
* Updated the SqlSchemaProvider to support Table UDT's as a ParameterSchema.
* Fixed a bug in the SqlSchemaProvider where invalid results would be returned for Replication on SQL 2000 databases.
* Fixed a bug where the SchemaExplorer serializers could throw an error when parsing a MySQL data source which doesn't specify an owner.
* Updated the OracleSchemaProvider to return a Decimal when the DbType is a Number and the scale and precision is set to 0.
* Updated to the latest CodeSmith Insight client.
* Updated Tip of The Day content
* CSLA - Updated to version 3.0.2
* PLINQO - Updated to version 5.0.1
* Various other minor changes.
Build 5.2.2 (Final)
* Fixed a localization bug in Visual Studio 2010 where CodeSmith Generator would cause Visual Studio 2010 to crash.
* Fixed a bug where Blocked assemblies (template nightly builds downloaded from the internet) were not able to build or generate.
* Added support for removing CodeSmith Generator Visual Studio project dependencies when you disable Generate on Build.
* Added support for SDK users to disable CodeSmith Insight Integration.
* Fixed a bug in Visual Studio 2010 where it was unable to load the Database Designers.
* Numerous performance fixes for how Assemblies are loaded, this fixed many performance bugs in VS2010 with other third party add-ins.
* Fixed a bug where a user was unable to create a new text file in the Template Explorer.
* Fixed a bug where GetSqlParameterStatement was returning a Size for timestamp.
* Added GetSqlParameterStatement support for escaping known symbols in column / table names.
* Fixed a bug in the OracleSchemaProvider where multiple foreign keys with the same name could be returned.
* Fixed a bug in the OracleSchemaProvider where Turkish characters could cause it to throw an exception.
* Added the ExtendedProperty CS_UserDefinedType to the OracleSchemaProvider CommandSchema to specify the name of the UDT
* PLINQO - Updated to version 5.0
* Various other minor changes.
Build 5.2.1 (Final)
* Fixed an issue with DeepLoad that would cause only a partial schema result set to be returned.
* Fixed a caching issue that caused CodeSmith Generator to slow down over time and caused CodeSmith Generator to freeze while saving a template.
* Updated the Template Explorer to properly detect folders that have been deleted or missing during runtime.
* Updated the installer to support adding samples to an existing install.
* Fixed a bug which would cause CodeSmith Generator Studio not to load due to missing templates.
* Updated the zip compression levels and updated the zip component for increased performance.
* Fixed an Assembly Reference that caused an issue between TypeMock and CodeSmith.
* When upgrading CodeSmith, only add folders to the Template Explorer that exist.
* Fixed a bug in the Options Manager where if you were using Visual Studio none of the options would be loaded.
* Fixed Help documentation logic so when you are running in Visual Studio you can launch the help documentation.
* Fixed two COM related bugs in the ADOXSchemaProvider which would occur when using it with an Access database.
* Updated the MySQLSchemaProvider's Namespaces.
* Fixed an Overflow exception in the MySQLSchemaProvider call to GetViewColumns.
* Updated the OracleSchemaProvider GetDbType detection to better handle Number DataTypes.
* Added the ExtendedProperty CS_UserDefinedType to the OracleSchemaProvider CommandSchema to specify the name of the UDT.
* CSLA - Updated to version 2.0
* PLINQO - Updated to version 4.0.1
* NHibernate - Updated to version 1.1.6.
* Various other minor changes.
Build 5.2.0 (Final)
* Added Visual Studio 2010 Beta 2 Support (Beta).
* Added option to the installer to choose a different sample folder.
* Fixed a bug where the following error would occur: Unable to cast object of type 'SchemaExplorer.ADOXSchemaProvider' to type 'SchemaExplorer.IDbSchemaProvider'.
* Fixed a bug where multiple licenses would not be deactivated during deactivation.
* Added upgrade support for previous versions of CodeSmith.
* Fixed a bug where an exception would be thrown when an invalid connection string would be passed into any connection string editor.
* Fixed a bug where optional merged properties in a Class Library were not being marked as optional.
* Fixed a bug where selecting a blank DataSource from a UI Picker would throw a NullReferenceException.
* Added a detailed error message to FileNameEditor, it will now let the user know that there GetFileName override is throwing an exception.
* Fixed an issue where the property grid would be blank but as soon as you clicked on the property it would appear.
* Fixed a rare bug where CodeSmith Generator Studio couldn't resolve a template's referenced assemblies on the very first load.
* Fixed a bug where the Property Grid wouldn't refresh properties that had been changed in an assembly.
* Fixed a bug where the Splash Screen would attempt to be closed during a race condition causing an Exception.
* Fixed a bug where the Uninstaller would not close the registry key it opened.
* Fixed a bug where a Required Property would be ignored when generating from CodeTemplateGenerator.
* Added an option to the tool bar in CodeSmith Generator Studio to add a new blank template.
* Updated CodeTemplateGenerator to use the template cache when clicking the build button.
* Fixed a bug where clicking Build in the CodeTemplateGenerator dialog would discard property data.
* Added a notification to the CodeTemplateGenerator when generating a template that's OutPutType is set to none.
* Added support for SQL Functions (table-valued and scalar-valued).
* Added IncludeFunctions Property to SchemaObjectBase, setting this to true enables SQL Function support.
* Fixed a bug in DatabaseSchemaSerializer where a changed property would never be changed back to true (DeepLoad).
* Added Filtering support to all Command UI dialogs.
* Added support to set the Command UI DataSource based on the IncludeFunctions property.
* Fixed various memory leaks greatly reducing CodeSmith's footprint.
* Fixed a bug where cached data would be deleted prematurely.
* Fixed a bug where renaming a folder shortcut to a previous name would throw a NullReferenceException.
* Added overloads for CommandResultColumnSchema and ParameterSchema to GetVBVariableType and GetCSharpVariableType in the SQLCodeTemplate and VBSqlCodeTemplate.
* Fixed a bug that prevented the Visual Studio Integration from unlocking referenced assemblies.
* Fixed a bug where the Active Snippets configuration dialog was not working as expected.
* Fixed a bug where the Active Snippets Configuration would throw an OutOfRangeException when arranging Arguments.
* Fixed a bug where one could not activate CodeSmith Generator inside of Visual Studio.
* Fixed a bug where generating a file to a directory outside of the Visual Studio Solution would throw an exception.
* Fixed a bug where closing Visual Studio during generation would throw a NullReferenceException.
* Fixed a bug where an XML Namespace error would occur in Visual Studio when generating .NET 3.5 console applications.
* Fixed a bug where Saving a Setup Project file during generation would throw a COMException.
* Fixed a bug where the DataSource manager would throw an exception when loading up the VistaDBSchemaProvider.
* Fixed a bug in the SqlSchemaProvider where the where logic of the command queries would return incorrect results.
* Removed the permissions (id) check in SqlSchemaProvider GetCommand's queries.
* Fixed a bug in the SqlSchemaProvider where GetCommandResultSchemas was not correctly handling temp tables.
* Fixed a bug in the SqlSchemaProvider could throw a NullReferenceException on invalid extended table data.
* Fixed a bug in the SqlSchemaProvider where connecting to a replicated database would cause a timeout to occur.
* Fixed a bug in the PostgreSchemaProvider where multicolumn indexes were not handled correctly.
* Updated the PostgreSQLSchemaProvider assembly references to the latest version.
* Fixed a bug in the SqlCompactSchemaProvider where ROWGUIDCOL was not included in the GetTableColumns().
* Fixed a performance bug in MySQLSchemaProvider, where DataReader.NextResult() or DataAdapter.Fill() would take 10-20 seconds to return data.
* Fixed a bug in the OracleSchemaProvider where the HasExtendedProperties Table could return a false positive.
* Updated the custom property examples: added a Collection and Drop Down example.
* Updated the Command Wrapper templates to support SQL Functions as well they can be used in Visual Studio integration.
* Added an HTML photo gallery example.
* The Kinetic Framework - Updated to latest version.
* CSLA - Updated to version 1.1.1.
* PLINQO - Updated to version 4.0.
* NHibernate - Updated to version 1.1.5.
* Updated the CodeSmith Generator documentation.
* Various other minor changes.
Build 5.1.6 (Final)
* Improved performance with caching optimizations.
* Overhauled configuration making CodeSmith Generator related tasks complete faster.
* Added Rebuild Support to CodeSmith Generator Studio, Templates are now loaded from cache by default.
* Enabled tooltip support for Template Explorer.
* Fixed a bug where leaving the Manage Output's dialog open for an extended period of time would throw an exception.
* Fixed a bug where an Exception could be thrown during the launch of CodeSmith.
* Fixed a bug where a DivisionByZeroException could be thrown by the progress bar.
* Fixed a bug where Binary columns in a SqlCodeTemplate would not get the size appended to the type.
* Removed unused dependencies like SQLite and Zip support. They are no longer needed as a reference for SDK Integration.
* Fixed a bug where the CodeSmith Generator Explorer icon was missing inside of Visual Studio.
* Updated Visual Studio Integration to unlock assemblies after generation.
* Fixed a bug in the OracleSchemaProvider where returning multiple cursors would throw an IndexOutOfRangeException.
* Fixed a bug in the OracleSchemaProvider where a procedure inside of a package would throw an exception.
* Fixed a bug in the PostgreSQLSchemaProvider where it would handle Primary Key Member columns incorrectly.
* NHibernate - Updated to version 1.1.3.
* Various other minor changes.
Build 5.1.5 (Final)
* Fixed a bug in Manage Outputs where an Enable/Disabled output menu item could not be selected.
* Fixed a bug where opening the about dialog could throw a DivisionByZeroException.
* Fixed a bug where CodeSmith Generator Studio would crash if you generated an open file and it needed to be reloaded.
* Fixed a bug where CodeSmith Generator Studio would fail to open with an XmlSyntaxException.
* Fixed a bug where Configuration could not be loaded when CodeSmith Generator is run under IIS.
* CSLA - Updated to version 1.1.
* NHibernate - Updated to version 1.1.2.
* Various other minor changes.
Build 5.1.4 (Final)
* Fixed a bug in GetTemplateHashCode where passing in null into file dependencies or assembly dependencies would cause a runtime error.
* Fixed a bug where a NullReferenceException could happen during runtime if someone specified a malformed XmlProperty.
* Fixed a bug in Template Explorer where renaming a folder or creating a folder could cause an ArgumentException due to illegal characters in path.
* Fixed a bug where an exception would occur when trying to view the extended properties of an off line database.
* Fixed a bug where a FileLoadException would be thrown in the in the data source manager UI.
* Fixed a bug that would cause CodeSmith Generator Professional to throw a DirectoryNotFoundException on startup.
* Fixed a bug where expanding an ActiveSnippet on a Visual Studio virtual document would throw an ArgumentException (Value does not fall within the expected range).
* Fixed a bug where nothing would be displayed when selecting Output ActiveSnippet usage.
* Fixed various trial related bugs in CodeSmith Generator Standard, CodeSmith Generator Professional and Visual Studio integration.
* Fixed a bug where a NullReferenceException would occur when generating a Web project.
* Fixed a bug where generating any project type not supported (PHP projects) would throw an exception.
* Fixed a bug where the error "A project cannot have more than one link to the same file." would be thrown.
* Fixed a bug in the Visual Studio integration where a COMException would be thrown when writing to the console.
* Added support for new data types (year, enum, set, binary, varbinary, tinyblob, longblob) to the MySQLSchemaProvider.
* Fixed a bug in the SQLiteSchemaProvider where views would never be returned.
* CSLA - Updated to version 1.0.
* PLINQO - Updated to version 3.1.
* Added CSLA and PLINQO Sample applications to the Projects\Framework-Samples folder.
* Updated VBKeywordEscape map and Added VB6KeywordEscape map.
* Various other minor changes.
Build 5.1.3 (Final)
* Fixed an event log bug that would crash CodeSmith Generator on start up.
* Fixed a bug in the installer which would allow two installs of the same minor version.
* Added option for SDK users to specify the assembly that has the embedded license.
* CSLA - Updated to version 1.0RC.
* Various template bug fixes.
* Various other minor changes.
Build 5.1.2 (Final)
* Fixed a bug in Visual Studio where a duplicated reference could be added.
* Fixed a bug in the SqlCompactSchemaProvider where owner information was displayed in the UI.
* Fixed a bug in the SqlCompactSchemaProvider where indexes with the letters “sys” are not included in the returned schema.
* Fixed a bug where users who upgraded to Windows 7 could not activate.
* Fixed a bug where quickly closing the options dialog after resizing could cause the application to crash.
* Fixed a bug in PreserveRegionsMergeStrategy where whitespace could cause unexpected behavior.
* Fixed a few performance bugs with Configuration.
* Updated documentation for IndentLevel, IndentValue, and Indent().
* The CodeSmith Generator executable is now digitally signed.
* Added SqlCompact support to .netTiers.
* CSLA - Added Foreign Key support
* CSLA - Fixed a bug in the detection of RowVersion columns.
* PLINQO - Versioned the Assemblies.
* PLINQO - Added support for ignoring user defined associations.
* PLINQO - Added support for passing in null values for parameters in query extensions.
* NHibernate - Updated to version 1.0.19.
* Various template bug fixes.
* Various other minor changes.
Build 5.1.1 (Final)
* Fixed a bug in Managed Outputs where an Ambiguous Exception could be thrown.
* Fixed a localization bug where Configuration would throw the following error "Input string was not in a correct format.".
* Fixed a localization bug where CodeSmith Generator Studio would have an unreadable font size.
* The CodeSmith Generator installers are now digitally signed.
* Various other minor changes.
Build 5.1.0 (Final)
* Updated installer to launch CodeSmith Generator after install.
* Loading a CodeSmith Generator Project File on a new machine with a new connection string will cause TableSchema's UI to be blank.
* Fixed a bug where removing a data source from Database Explorer wouldn't permanently remove the data source.
* Fixed a threading error when removing a data source from Database Explorer.
* Fixed a bug where CodeSmith Generator would throw an exception when it couldn't access the systems registry.
* Fixed a bug where Copy Properties would throw an exception when called on an unsaved template.
* Fixed a bug where the SqlCompactSchemaProvider connection string builder class could corrupt additional connection string options.
* Fixed a bug where the SqlCompactSchemaProvider timestamp/RowVersion columns were returning a "RowVersion" native type name, should be "timestamp".
* Added CodeSmith Generator Customer Improvement Program.
* Various other minor changes.
Build 5.1.0 (Beta)
* Updated StringUtil to handle more cases.
* Fixed a bug where Generate Outputs would throw an error if a Visual Studio Solution contained a Setup and Deployment project.
* Various minor updates to Visual Studio's Integration.
* Updated Visual Studio Integration to unlock assemblies after generation.
* Fixed a bug where a CodeSmith Generator Project File in Solution folder causes ERROR: Object reference not set to an instance of an object.
* CodeSmith Generator Studio now requires that .NET 3.5 SP1 to be installed.
* Fixed a bug where CodeSmith Generator Studio would attempt to save a CodeSmith Generator Project File for an unsaved template.
* Fixed a bug where a NullReferenceException would be thrown when toggling the properties window when no template properties existed.
* Fixed a bug where extracting mapping files could cause an exception.
* Added Widening, Narrowing, Like, Let, CUInt, CULng, CUShort, and Operator to the VB.NET keyword list.
* Added var to the C# keyword list.
* Fixed a bug when using IntelliSense and Math. or some variable names would throw an ArgumentOutOfRangeException.
* Updated CodeSmith Generator Options dialogs.
* Added support to give feedback and send detailed error information from within CodeSmith.
* Updated Menu in CodeSmith Generator Explorer, Users can now view the mapping editor, submit feedback, help, or configure options.
* Updated Manage Outputs and child dialogs to save the window dimensions.
* Added IndexedEnumerable, this is used to smartly enumerate collections and get an IsEven, IsLast, IsFirst property.
* Added Linq Querying support to all SchemaExplorer Collections.
* Added MergeProperty functionality for parsing properties from a CodeTemplate that inherits from an assembly.
* Added Insert Class Merge Strategy.
* Added CodeParser.
* Added support to detect an embedded SDK License.
* CodeSmith Generator Configuration no longer uses xml files.
* Updated the documentation for IDbSchemaProvider and DataObjectBase.
* Fixed a bug in OracleSchemaProvider where AllowDBNull would always be set to true for view columns.
* Fixed a bug in OracleSchemaProvider where the TableSchema.PrimaryKeys collection wasn't being populated correctly.
* Updated OracleSchemaProvider's configuration to be configurable via the options dialog.
* Added SQL CLR Support to the SqlSchemaProvider. To see if a command is a CLR procedure check the "CS_IsCLR" ExtendedProperty.
* Fixed a bug in SqlSchemaProvider where an xml index would be set to null after upgrading a SQL Server 2005 database to SQL Server 2008.
* Fixed a bug in SqlSchemaProvider where the ExtendedData query was missing the PropertyBaseType and Minor columns when querying SQL Server 2000 ExtendedData.
* Added PostgreSQLSchemaProvider, SqlCompactSchemaProvider, SQLiteSchemaProvider and VistaDBSchemaProvider.
* Updated .netTiers to version 2.3 RTM.
* Updated PLINQO to version 3.0.
* Added CSLA Beta templates.
* Various other minor changes.
Build 5.0.5 (Final)
* Updated the MySQLSchemaProvider to support more data types.
* Updated the MySQLSchemaProvider to support more ExtendedProperties.
* Updated the MySQLSchemaProvider to use generics and .NET 2.0 best practices.
* Added Designer Support for ViewColumnSchema and ViewColumnSchemaCollection.
* Fixed a bug where CodeSmith Generator Studio becomes unresponsive when Schema Explorer tries connecting to an off line database when other applications are active.
* Fixed a bug where a NullReferenceException would be thrown in the Schema Explorer when calling InvokeRequired.
* Fixed a rare bug where an InvalidOperationException might be thrown when starting up CodeSmith.
* Fixed a bug where a BadCrcException and ZipException would occur on startup.
* Various other minor changes.
Build 5.0.4 (Final)
* Fixed a bug where a CodeSmith Generator Project would throw an error when trying to render a default output.
* Fixed a bug where the CompilerVersion attribute was not case insensitive.
* Fixed a bug in OracleSchemaProvider where it would not filter out the Recycle Bin items.
* Fixed a bug in OracleSchemaProvider where it would not show a friendly database name if using a TNS connection string.
* Fixed a bug in OracleSchemaProvider where a Timestamp data type would not be handled correctly.
* Updated SqlCodeTemplate to support ViewColumnSchema and DbType.
* Updated SqlCodeTemplate to not display mapping properties in the properties window.
* Added VBSqlCodeTemplate which inherits from SqlCodeTemplate and overrides all C# specific methods.
* Updated ParameterSchema to show the correct underlying native type of a UDT, To check to see if a parameter is a UDT check the following ExtendedProperty (CS_UserDefinedType).
* Fixed a bug where CodeTemplate would throw a NullReferenceException when trying to instantiate.
* Fixed a bug where deleting a new row in the Map Editor would throw an InvalidOperationException.
* Fixed a bug where clicking in the name and value columns of the Map Editor would throw a NullReferenceException.
* Fixed a bug where the start page news section might not update.
* Fixed a rare bug where an Exception might be thrown when starting up CodeSmith.
* Updated CodeSmith Generator so sample templates extract in the background on first startup.
* Added the CompilerVersion attribute on new templates, the new templates will default to .Net 3.5.
* Updated Manage Outputs to allow the sorting outputs, this also changes the execution order of outputs.
* Added ASP.NET sample templates for CSharp and VB.
* Updated .netTiers templates to version 2.3.0 Beta2 (now supports Oracle). For more information visit http://community.CodeSmithtools.com/blogs/blake/archive/2008/11/30/nettiers-2-3-0-beta-2.aspx
* Various Updates to NHibernate templates.
* Updated CSLA.NET templates to the latest version on http://www.codeplex.com/CSLAcontrib.
* Updated various Mapping files to support more data types and fixed various incorrect values.
* Updated CommandWrapper templates to inherit from SqlCodeTemplate and VBSqlCodeTemplate respectively.
* Various other minor changes.
Build 5.0.3 (Final)
* Fixed a licensing bug where a Windows 2000 machine could not activate.
* Changed the license activation to be more tolerant of changes.
* Fixed a bug where clicking the Privacy Policy link would display the get trial window.
* Made target language view designer load its data sources asynchronous so that the UI would not lock.
* Fixed error when Auto Hide All is called.
* Fixed error when Schema Explorer was undocked.
* Fixed a bug where clicking on the more maps link would open in an external browser.
* Fixed a bug where Visual Studio would show the incorrect version of CodeSmith.
* Fixed a bug when adding references to Visual Studio project from MSBuild.
* Fixed a bug when adding project files to a Visual Studio project from MSBuild wouldn't keep the Parent Child relationship.
* Fixed a bug when setting a CodeSmith Generator Project to "Generate on Build" would need to be set 2 or more times.
* Fixed error when executing a CodeSmith Generator Project and the output did not exist.
* Fixed error when executing a CodeSmith Generator Project would compile the disabled output.
* Fixed error when executing a CodeSmith Generator Project output that has a relative path may throw an error.
* Fixed a bug in ResolveAssemblyPath.
* Fixed a bug in SqlSchemaProvider when dealing with duplicate foreign key names.
* Fixed a bug where GetReaderMethod would return incorrect values.
* Updated the OracleSchemaProvider full ExtendedProperty support to include more defaults on columns, tables, views and commands.
* Updated the OracleSchemaProvider ExtendedProperty to support CommandResultColumnSchema.
* Fixed a bug where OracleSchemaProvider would not ever create the ExtendedProperty Tables.
* Fixed error in OracleSchemaProvider's GetCommandResultSchemas method where an InputOutput parameter would throw an exception. They are now treated as Output parameters.
* Fixed error in OracleSchemaProvider where CreateExtendedPropertyTable would not check to see if the ExtendedProperty Tables had already been created.
* Implemented GetCommandText in the OracleSchemaProvider.
* Updated PLINQO templates to version 2.0.
* Updated .netTiers to the latest 2.3 release.
* Fixed a bug in the NHibernate templates that deals with Composite Foreign Keys.
* Removed APOSA Templates, They now can be found on the community site.
* Fixed bug in AllCommandWrappers.cst where 'ResultSchemaEnum' could not be found.
* Fixed the default property values in VB's AllCommandWrappers.cst and CommandWrapperClass.cst so they are in sync with the C# version.
* Fixed a bug where the MergeSamples.csp was pointing to the old merge sample templates.
* Removed Code-Behind to TypedDataSet.cst, it had its own implementation of SqlCodeTemplate.
* Fixed runtime errors in the DbSnapshot templates.
* Removed reference to System.Data in newly created templates.
* Various minor updates to documentation.
* Various other minor changes.
Build 5.0.2 (Final)
* Included the latest version of the NuSoft templates.
* Updated the SqlCodeTemplate base class to use CodeSmith Generator Mapping Files where appropriate.
* Added support for new SQL 2008 data types.
* Added stop on error to CodeSmith Generator Project settings.
* Fixed bug with overriding default property values.
* Fixed error when cs /resetconfig is called.
* Fixed a bug when exception reports were too big.
* Possible fix for rare cases of activation codes not working.
* Changed the license activation to be more tolerant of changes.
* Various other minor changes.
Build 5.0.1 (Final)
* Made target language view grouping case insensitive.
* Fixed bug where starting studio with a standard license it would just disappear and not say why.
* Fixed a performance regression with template explorer. It was doing full parses just to show the file list.
* Fixed a bug if an invalid CompilerVersion attribute was specified in the CodeTemplate directive.
* Fixed an issue with CodeSmith Generator being really slow on 64 bit machines and using huge amounts of memory.
* Fixed a licensing issue in Standard where it was giving an error about not being able to use the API.
* Changed the installer to properly upgrade the beta version without uninstalling first.
Build 5.0.0 (Final)
* Added a tab for editing variables in the CodeSmith Generator Project settings dialog.
* Made it so that any CodeSmith Generator Project File variables are automatically used when there is a string matching the variable value in the property values.
* Made it so that variables are automatically created for connection strings stored in CodeSmith Generator Project Files so that the connection string isn't repeated.
* If you choose to remove all settings during uninstall, it will automatically try to deactivate your license.
* Added more info about the current license to the about dialog.
* Made schema explorer designers load their data sources asynchronous so that the UI would not lock.
* Fixed bug where wrong data source was selected when the designer was opened.
* Fixed error when adding references to Visual Studio project.
Build 5.0.0 (Beta 2)
* Changed all SchemaExplorer designers to display in Object (Owner) format so that you can type the first couple letters to jump to the object you are looking for.
* Added ability to override plural/singular forms of words to the StringUtil.ToPlural and StringUtil.ToSingular methods.
* Added ability to specify Filter="SomeTableSchemaProperty" on ColumnSchema directives which will filter the list of columns in the designer based on the table selected in the specified property.
* Added new RegisterReference method to CodeTemplate to indicate which assemblies your generated code relies on so that they can be automatically added in Visual Studio.
* Performance improvements in adding files to the project system in Visual Studio.
* Added a menu item for managing data sources to the Visual Studio CodeSmith Generator menu.
* Added step to the uninstall process to remove all samples and configuration files. It will also automatically deactivate your license so you can use it on another machine.
* Added syntax highlighting for the VB keyword "Infer".
* Various improvements to the OracleSchemaProvider including full ExtendedProperty support.
* Made deleting items in the CodeSmith Generator Mapping editor more intuitive.
* Changed ColumnSchema designer to use a TreeView so that all columns for all tables aren't loaded at once.
* Fixed issue with duplicate CodeSmith Generator Project File item templates in the C# project system and missing in VB project system.
* Fixed error with editing empty CodeSmith Generator Project Files.
* Fixed issue with beta license that was causing the application to freeze on startup when behind a firewall.
* Fixed a bug with email addresses in the bug report form.
Build 5.0.0 (Beta)
* Added ability to deep load all schema information at once which results in huge performance improvements. This is used by setting the DeepLoad attribute on any SchemaExplorer property in your template. This would typically be used when you know you are going to use all of the schema information from a database.
* Ability to use .net 3.5 features in templates including LINQ. This is accomplished by setting the CompilerVersion attribute on CodeTemplate to "v3.5".
* CodeSmith Generator Projects now have a single file output mode to generate all template outputs into a single file.
* Added Ability to generate individual project outputs.
* Changed Manage Outputs dialog to make it easier to manage outputs and added an options dialog for changing project settings.
* Made it so that files being generated from a CodeSmith Generator Project are checked out of source control before being edited.
* Improved the custom tool upgrade process so that it works 100% in all scenarios without having to make manual changes afterward.
* CodeSmith Generator Projects can now add files to Visual Studio as code behind files to other generated files.
* CodeSmith Generator Projects can now set a generated files build action.
* Added ability to resolve assemblies located in paths relative to the template now using Path attribute. The AssemblyResolver now looks in template folder and bin folder by default..
* Optimized template caching algorithm allows for much improved performance.
* Templates use partial classes now so you can have partial class code behinds and have access to template properties from the code behind file.
* Added template metadata caching.
* Added GetPropertyAttribute and SetPropertyAttribute to CodeTemplate.
* Property attribute values are added for any non-recognized attributes on Property, XmlProperty and CodeTemplate directives.
* Made all SchemaExplorer objects serializable.
* Fixed bug with refreshing SchemaExplorer objects where it would not show all extended properties of the object after refresh.
* Re-organized all sample templates and projects into a more logical folder structure.
* Added new NHibernate templates in both C# and Visual Basic.
* Made various improvements to the PLINQO templates.
* .netTiers updated to the 2.3 Beta version of the templates.
* Added VB versions of many sample templates and projects.
* Added a couple new maps and ActiveSnippets.
* Included the latest version of the NuSoft framework templates.
Build 4.1.4 (Final)
* Fixed a content encoding issue in the CodeSmith Generator Studio start page.
* Fixed a bug in the SQL schema provider that was preventing some default parameter values from being parsed.
* Fixed MySQL schema provider to use any version of the MySQL binaries.
* Various bug fixes.
Build 4.1.3 (Final)
* Various improvements to the PLINQO templates.
* Made some improvements to the StringUtil.ToPlural and StringUtil.ToSingular methods.
* Save all documents and projects before running the Generate Outputs command.
* Fixed a rare CodeSmith Generator Studio crash when loading additional files outside of the IDE.
* Added SqlNativeType-SqlDbType.csmap.
* Added Stack Trace to error messages resulting from attempting to generate a project.
* Updated to the latest version of the syntax editor control which fixes several issues.
* Changed CodeSmith Generator engine to use the application / system configuration to figure out which CodeDOM provider to use. This makes it possible to use other template languages.
* Fixed a bug with the default parameter regex in SqlSchemaProvider not recognizing parameters defined with the AS keyword.
Build 4.1.2 (Final)
* Fixed issue with CodeSmith Generator Project files in some Visual Studio configurations that was crashing during generation.
* Added CS_ObjectID ExtendedProperty to tables, views, and commands.
* The PLINQO templates have been updated with several enhancements and bug fixes.
Build 4.1.1 (Final)
* Updated LINQ templates to work with Visual Studio 2008 Beta 2.
* Added a Close All But This menu to the document tabs and File menu.
* Fixed bug in CodeSmith Generator Studio that was assuming that a user wouldn't rapidly open multiple documents or change documents while compiling.
* Fixed crash in Add Output when template fails to compile.
* Fixed error message when reading metadata from project in Visual Studio Package.
Build 4.1.0 (Final)
* Changed CodeSmith Generator to auto refresh property values every time a template is run except inside CodeSmith Generator Studio where there is an option to enable this behavior.
* Added new "Auto Refresh Properties" option to CodeSmith Generator Studio that will cause properties to refresh their values before every run.
* Added new "Refresh Properties" button to the property grid in CodeSmith Generator Studio to force a property value refresh.
* Added new PropertyRefresher attribute that can be used to specify how CodeSmith Generator should refresh a property's value.
* Added new RefreshProperties method to CodeTemplate used to force the properties on a template to refresh their values.
* Added PropertyRefresher support to all SchemaExplorer objects.
* Added PropertyRefresher support to XmlProperty.
* Added support for Visual Studio 2008 (Orcas).
* Added NoWarn attribute to CodeTemplate to allow ignoring warnings.
* Added new Linq-to-SQL templates.
* Added new APOSA templates for the book "Advanced Patterns of Enterprise Architecture".
* Added a new IDbConnectionStringEditor interface to SchemaExplorer for providers to support connection string editing.
* Added support for the new IDbConnectionStringEditor interface to the SqlSchemaProvider.
* Added support for the new IDbConnectionStringEditor interface to the ADOXSchemaProvider.
* Added Indexes and Keys to the SchemaExplorer tool window in CodeSmith Generator Studio.
* Added OracleSchemaProvider to CodeSmith Generator installation. (Thanks to Geoff McElhanon)
* Added MySQLSchemaProvider to CodeSmith Generator installation. (Thanks to David Neal)
* Added source code for the SqlSchemaProvider to the sample projects folder.
* Added a MapSample.cst template.
* Added some merge sample templates.
* Fixed bug where self-referencing foreign key was not being correctly added to the PrimaryKeys collection.
* Fixed null reference bug in SqlSchemaProvider GetExtendedProperties.
* Fixed ActiveSnippets bug that was throwing an exception when the user deletes all the templates and clicks OK.
* Fixed a bug in the CommandWrapperClass.cst template.
* Fixed a bug that was causing TableSchema to not refresh correctly after calling Refresh.
* Fixed a bug in the Visual Studio package that was causing the trial license to be shown before any CodeSmith Generator functionality was accessed.
* Fixed bug in the ActiveSnippet configuration form that caused Visual Studio to crash.
* Fixed bug with SchemaExplorer control where data sources were not being refreshed correctly.
Build 4.0.4 Final
* Updated to DockableWindow 2.0.209 to fix a docking window issue under vista aero.
* Changed SqlSchemaProvider to properly pull back varchar(max) and other data types in SQL 2005 for command parameter data types.
* Fixed a bug in CSMAP's where they would sometimes not use the correct map settings.
* Fixed a licensing bug introduced with 4.0.3.
Build 4.0.3 (Final)
* Added several new map files for various type conversions.
* Fixed issue with the Standard trial install acting like the Professional version.
* Fixed bug in the SampleCustomProperties sample project causing the property values to not restore.
Build 4.0.2 (Final)
* Corrected a versioning issue.
* Fixed a form layout bug.
Build 4.0.1 (Final)
* Fixed some bugs in the API help where member return types and names weren't being displayed.
* Made it so that the sysdiagram tables are ignored in SqlSchemaProvider.
* Fixed a bug in XmlProperty when using the RootElement attribute.
* Fixed a bug that was causing CodeSmith Generator to not work in configurations where the "My Documents" folder was a UNC path.
* Fixed a licensing bug in CodeSmith Generator Standard that was not allowing the console client to be used on CodeSmith Generator Project Files.
* Fixed a couple other minor internal bugs.
Build 4.0.0 (Final)
* Added ctrl-space support to Studio.
* Add support for CodeSmith Generator Project File in web projects.
* Fix bug where CodeSmith Generator Project Files didn't work in the solution items project.
* Studio semantic parser changes to improve performance.
* Make semantic parsing work better in code behind files.
* XmlProperty now shows as a file name in the property grid and can be modified.
* User's Guide has been updated to document the new CodeSmith Generator 4.0 features.
* Added ContextData to CodeTemplate. The ContextData is now passed to sub-templates by default.
* Added a new CodeSmith Generator Project context menu item to template explorer.
* Changed the IPropertySerializer interface to use a PropertySerializerContext now so that it can get access to the object instance and so that new information can be added to it in the future without breaking things.
* Added a TemplateState.Initializing to CodeTemplate which is the state that a CodeTemplate will be in while it is being constructed or initialized.
* Performance improvements in SqlSchemaProvider by optimizing some of the SQL and moving everything to parameterized SQL.
* Updated the Tip of the Day contents.
* Made it so that if an empty CodeSmith Generator Project File is opened, it will create a blank project instead of crashing.
* Updated to the latest Actipro controls which includes numerous bug fixes and improvements.
* Fixed a bug in the Stored Procedure text template.
* Made CodeSmith Generator Studio the default editor for .cst files in Visual Studio.
* Fixed the 64bit licensing issue.
* Changed the PetShop sample connection string to specify Initial Catalog so that the database name isn't a long file path.
* Fixed a deadlock issue in TextBoxWriter and made it asynchronous.
* Made UNC paths work in the MRU list on the start page.
* Removed the user / machine name from the bug report information.
* Various bug / crash report service improvements.
* Made it so that hyperlinks with & and # in them are recognized in Studio.
* Fixed a bug in SqlSchemaProvider that was returning duplicate table columns on fields with multiple constraints.
* Added tooltips to the MRU items in the start page.
* Fixed a bug with the Add button on the manage outputs dialog being disabled in professional mode.
* Fixed a bug where changing a folder name outside of template explorer and then doing something with that folder in template explorer would cause a crash.
Build 4.0.0 (Beta 2)
* All CodeSmith Generator samples and documents are now stored in the user's "My Documents"folder.
* All configuration data is now stored in the user's profile directory.
* CodeSmith Generator should now work in non-admin scenarios 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 Generator Explorer that was causing it to do random full refreshes.
* Added drag and drop support to CodeSmith Generator Explorer control.
* Added PropertyChanged event to CodeTemplate.
* Added OnChanged attributes to Property and XmlProperty directives.
* Updated CSLA.NET templates to the newest versions targeting CSLA 2.0.
* Added DbSnapshot templates to the samples.
* Added NHibernate templates to the samples.
* Added recent news to the CodeSmith Generator Studio start page.
* Made CodeSmith Generator Mapping Files open in the map editor tool window when inside Studio.
* Changed CodeSmith Generator Mapping File double-click in Studio to open the map in the map editor tool window.
* Changed CodeSmith Generator Project File double-click in Studio to run the Manage Outputs 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 ExtendedProperty editor that would crash CodeSmith Generator 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 Documents\CodeSmith\Samples\v4.0\Data directory.
* Auto-retry on failed configuration 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 configuration data.
* Fixed several minor bugs in map editor.
* Fixed tab index on various forms.
Build 4.0.0 (Beta 1)
* CodeSmith Generator Project support (.csp files). This replaces property sets, the custom tool and the batch format.
- CodeSmith Generator Projects can be run from the command prompt, inside MSBuild, inside CodeSmith Generator 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 Generator 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 corresponding map entry is not found.
- Ability to return a default value if a corresponding map entry is not found.
- Ability to manage maps inside CodeSmith Generator Studio or from Windows Explorer.
* Ability to manage database schema ExtendedProperty values from inside of CodeSmith Generator 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 Generator Explorer control.
* Added csxsd.exe to allow manually creating shared XmlProperty assemblies.
* Ton of new system extended properties added to SchemaExplorer objects.
* Bunch of performance improvements here and there throughout CodeSmith.
* Bunch of bug fixes.
Build 3.2.7 (Final)
* Fixed a bug with SQL 2005 non-dbo tables.
* Fixed a bug with Windows XP 64-bit.
Build 3.2.6 (Final)
* Added xml type mapping for SqlSchemaProvider.
* Added new CodeSmith.CustomProperties.NameValueCollection property type.
* Added column size information to all column types in SqlSchemaProvider.
* Added support for setting various SQL settings in the connection string for the SqlSchemaProvider. (ARITHABORT, ANSI_NULLS, ANSI_WARNINGS, ARITHIGNORE, ANSI_DEFAULTS, ANSI_NULL_DFLT_OFF, ANSI_NULL_DFLT_ON, ANSI_PADDING, ANSI_WARNINGS)
* Added a reset and configure option to the about dialog for stats.
* Fixed a bug with Windows XP 64bit edition.
* Fixed a bug where the property set buttons would get repeated on the property grid toolbar.
* Added NameValueCollection with designer to the CustomProperties assembly.
* Fixed unlock by email issue on .NET 2.0 with XHEO.
Build 3.2.5 (Final)
* Made the installer check for .NET 2.0.
* Made it so that the registration dialog isn't shown the first time the application is started.
* Fixed a bug when restoring property set values.
* Fixed a schema explorer bug when using the Contains method.
* Added version information to the about dialog.
* Added new WixDirectory.cst sample template.
* Updated the XML entity sample templates to use merging.
Build 3.2.4 (Final)
* Fixed a bug in VS.NET integration.
Build 3.2.3 (Final)
* Added new CodeSmith Generator MSBuild task. A sample can be found in the SampleProjects\ConsoleSamples folder.
* Made some big performance improvements to the startup time of CodeSmith Generator Explorer and Studio.
* Various bug fixes.
Build 3.2.2 (RC2)
* Various bug fixes.
Build 3.2.1 (RC1)
* Compiled against .NET 2.0.
* New VS.NET 2005 integration package.
* New Wix based installer with separate installers for Professional and Standard.
* Various bug fixes and minor enhancements.
Build 3.1.6 (Final)
* Fixed a bug that would sometimes cause the template editor application to not load from inside of VS.NET.
* Made it so that licenses can be re-registered so that upgrading from Standard to Professional is just a matter of re-registering.
* Added generated code metric statistics to the about dialog.
* Added menu items to the tools menu in CodeSmith Generator Studio to copy, paste, load and save property sets.
* Fixed a bug where data sources could not be modified inside of VS.NET.
* Fixed a bug where template script directives were case sensitive.
* Fixed an escaping bug in template directive attributes.
* Fixed a bug with saving template output to a read only file.
* Fixed a bug with some foreign language keyboards.
* Added code to all network requests to use the default proxy settings and credentials.
Build 3.1.5 (Final)
* Added support for setting the encoding for a template using the ResponseEncoding attribute of the CodeTemplate directive.
* Made some improvements to the CommandWrapper_2.0.cst to make it support setting the desired ResultSchema type.
* Added HTML decoding to attribute values so that &qout; can be used to have " characters in attribute values.
* Fixed a bug that should keep some variables from forgetting their type and losing IntelliSense.
* Added some additional checks in the configuration files to resolve some crashes during loading and saving configuration files.
Build 3.1.4 (Final)
* Fixed SyntaxEditor licensing issue from 3.1.3 build.
* Made it so that the VS.NET Add-in is not loaded on startup.
* Added a NewLineOutput event to the TextBoxWriter class.
* Made the OutputControl activate the output ToolWindow when new lines are written to the output to make sure that the output ToolWindow stays activated when items are written.
Build 3.1.3 (Final)
* Made the XmlProperty directive support the Default attribute.
* Add ToPascalCase Method to StringUtility.
* Made StringUtility.ToCamelCase support changing TABLE_NAME to TableName.
* Fixed Register directive to include Editor, EditorBase, and Serializer when merging properties.
* Updated to the new SyntaxEditor 3.1 build which releases resources better so that CodeSmith Generator Studio doesn't run out of memory and cause the frozen document behavior.
* Updated the license agreement to allow for any type of custom template distribution including commercial templates.
* Added a XML and HTML region parser to the default configuration.
Build 3.1.2 (Final)
* Made it so that the IPropertySerializer's LoadProperty method is used in the SetProperty method of CodeTemplate.
* Made the XmlPropertySerializer support loading XmlProperty values from strings that are either XML content or a file path.
* Fixed bug in CommandResultSchema that was causing the ExtendedProperties collection to be null.
* Added additional unhandled exception handling code.
Build 3.1.1 (Final)
* Fixed a bug where configuration data was lost when upgrading from a 3.0 installation.
* Fixed a bug in SchemaExplorer where TableKeySchema was not using owner information to find the correct related tables.
* Added CS_CascadeDelete and CS_CascadeUpdate to the extended properties collection for SQL table keys.
* Made it so that if a template is in debug mode, it will never use the cache.
* Changed the console client to output debug and trace messages if the /verbose flag is used.
* Fixed a bug in the XmlPropertySerializer where it wasn't closing a file if an exception occurred.
Build 3.1.0 (Final)
* New professionally written help file written by Mike Gunderloy.
* Added designer support for ColumnSchema and ColumnSchemaCollection.
* Added an "Explore" menu option to folders in the CodeSmith Generator Explorer window.
* Added CTRL-PageUp and CTRL-PageDown support to Studio.
* Added an OnError virtual method to CodeTemplate.
* Added a ParseDefaultValue method to IPropertySerializer and made the ParseDefaultValue method of CodeTemplate use it.
* Added better error messages on the console client when /p was used to point to a PropertySet file.
* Fixed the command line client to properly pass the debug, temp files and verbose settings through to the code generators.
* Modified the CodeTemplateParser to work when the locale was set to Turkish.
* Changed the way the start page loads files into the IDE. This was causing issues on some computers.
* Added some better error reporting to the DataSource object.
* Changed the machine profile code for activation to weight things differently and provide more tolerance to hardware changes.
* Fixed a bug in the CodeTemplateInfo class that was causing template content to be cached incorrectly.
* Fixed a bug in the output window that was causing an exception when an error was double-clicked and the output window was floating.
* Made the browser control disable the forward and back buttons when they are invalid.
* Fixed bug in the StoredProcedures.cst template that was using the wrong collections for length checks.
* Made it so that the cache hash code includes referenced assemblies.
* Made it so that default values are parsed for all types that support conversion from string.
* Fixed bug with editor locking up in some situations with C# XML comments.
* Changed bug report to not list dynamic or template assemblies.
* Changed the support forum URL.
* Fixed bug in SchemaExplorer that was causing it to error inside of VS.NET.
* Added some error trapping code for machines where the performance counters are disabled.
* Added property serialization support to the sample custom properties project.
Build 3.0.7 (Final)
* Added property serialization support to the sample custom properties project.
* Re-added the GetCamelCaseName and GetSpacedName methods to SqlCodeTemplate for compatibility with 2.x.
* Added the ADOXSchemaProvider source code as a sample of building a schema provider.
* Fixed a startup bug where if the tip of the day was enabled and you were opening a template with a code behind file, CodeSmith Generator may appear to be locked up, but the tip of the day dialog is just in the background and causing the app to not respond.
* Made the MRU list store all file types instead of just templates.
* Increased the MRU list to 16 items on the start page.
* Added NonForeignKeyColumns and ForeignKeyColumns helper properties to TableSchema.
* Made it so that line modification markers turn green after a file has been saved.
* Made it so that all files are auto-saved on compile.
* Added IndentValue to the CodeTemplateWriter (Response) class.
* Made it so that bookmarks are preserved during compilation.
* Fixed bug where warnings were causing the compile to fail.
* Made it so that the FileAssociationManager will return more detailed error messages when it runs into a problem.
* Added sample of executing the EntityMaster.cst template from the command line.
* Fixed the command line usage formatting in cs.exe.
Build 3.0.5 (Final)
* Fixed CodeTemplate to not call OnPostRender twice when using a merge strategy and so that OnPostRender is called after the merge.
* Changed the default highlighting style of the C# language def to not make collapsed regions bold.
* Updated the license agreement to more accurately reflect the usage restrictions.
* Fixed bug in licensing code that was causing licenses to appear invalid when running on .NET 2.0.
* Updated installer to install the custom tool assembly if VS.NET 8.0 was found.
Build 3.0.4 (Final)
* The custom tool works with 2005, but the Add-in is going to require some more work.
* Fixed some spelling mistakes in several templates.
* Corrected some information in the template syntax reference about how assemblies are resolved.
* Fixed the escaped XML characters in the VBSortedList.cst template.
* Added VS.NET 2005 compatibility for the custom tool.
* Fixed some bugs in the ADOX schema provider.
* Made it so that the FullName properties in SchemaExplorer don't use an owner prefix if there isn't an owner.
Build 3.0.3 (Final)
* Changed the Entity.cst template around to use best practices for using sub-templates with XmlProperty.
* Made it so that the AssemblyHelper.dll is installed into the Add-ins directory.
* Fixed some editor crashes and made it so that warnings are underlined in blue and errors in red.
* Fixed a bug that was causing the editor to crash when an info tip was requested on a method with "by reference" parameters.
* Fixed activate by email form to allow for easily pasting in the entire unlock code.
* Cleaned up the entity map sample templates.
* Fixed a bug in the XmlProperty directive that was causing problems if the same XSD was referenced twice.
* Updated the EntityMap XmlProperty sample to use a new technique for passing elements down to a sub-template.
* Fixed a problem where the template explorer was refreshing during a rename.
* Update the purchase order sample to use the XmlProperty directive.
* Various bug fixes and performance improvements.
Build 3.0.2 (Final)
* Made the SetProperty method spit out better error messages.
* Fixed a bug in the ScriptUtility that was seeing GOTO's as GO's.
* Made it so that OnInit can actually be overridden.
* Made it so that the compiler labels warnings as such.
* Fixed compiler issue where the source had only a CodeTemplate directive and nothing else.
* Made it so that smart indenting works after a { character.
* Made it so that a template without a Language= attribute would not cause an error.
* Updated to the new SE build that should fix the editor hanging in certain situations.
* Removed the accidental reference to "C:\blah.xml" in the SyntaxLanguageManager class.
* Modified the activation dialog to indicate how the activation scheme really works.
* Fixed bug with studio where in memory changes weren't being used.
* Fixed data source UI bug that was making the schema provider not selected.
* Various bug fixes and performance improvements.
Build 3.0.1 (Final)
* Fixed the IntelliPrompt summaries option not being saved.
* Fixed SQL batch parser.
* Added numeric as a data type to the SQL language definition.
* Fixed cache issues.
* Fixed script utility not executing the last bit of content.
* Fixed parser not correctly adding XSD files as source dependencies.
* Fixed a bug where quick info would crash if it had an "&" character in it.
* Various bug fixes and performance improvements.
Build 3.0.0 (Final)
* Made it so that you can pass properties in from the command line.
* Added new preserve regions merge strategy.
* Added Register directive to make working with sub-templates much better.
* Added template caching.
* Added batch mode to the console client.
* Made it so that any merge strategy can be used from the console and from the batch format.
* Made it so that custom region types can be defined in the engine configuration file.
* Made it so that Assembly Src="" works.
* Added test button to data source dialog.
* Added copy button to data source manager.
* Added paste property set XML to the property grid control.
* Output can now be directed to more than one TextWriter at a time.
* Output can now be indented using Response.Indent(), Response.Unindent(), and Response.IndentLevel.
* Added IntelliSense to CodeSmith Generator Studio.
* Added an XmlProperty directive to make working with XML much easier.
* Added an includeHeader option to the custom tool XML format.
* Added a PropertySerializerAttribute that allows you to assign an IPropertySerializer type to any custom property types.
* Made it so that you don't have to recompile your custom assemblies every time a new version of CodeSmith Generator is released.
* Cleaned up the installation folder structure.
* Added script utility to CodeSmith.BaseTemplates project that allows execution of T-SQL scripts.
* Added PreRender and PostRender virtual methods on CodeTemplate. The PostRender method gets a parameter with the result of the template rendering.
* Added Progress object on CodeTemplate that can be used to report the progress of the template execution. This is most useful with master templates that take a while to render.
* Upgraded to the new 2.5 version of the SyntaxEditor control.
* Added a RenderToFileCodeTemplate class to the BaseTemplates project. Inheriting from this class in your templates will give your templates a
* Fixed bug with GetCompiledTemplateInstance where using the force recompile option would cause an exception if the template was already in cache.
Build 2.6.0 (Final)
* Fixed installer to properly register CodeSmithUserControlHost.dll.
* Made it so that --#region/--#endregion and --region/--endregion will create outline nodes in SQL.
* Fixed VB.NET language definition to properly highlight the Me keyword.
Build 2.6.0 (RC1)
* Added GetCodeTemplateInstance method to CodeTemplate. This can be used to compile and create an instance of another template.
* Added Toggle Template Code Expansion feature. This allows easy viewing of the static content in the template. (Shortcut CTRL-SHIFT-M)
* Fixed up the syntax highlighting editor dialog and made it persist the settings.
* Made it so that you can manually enter a delimited list of strings for StringCollection in the property grid.
* Added several options to the options dialog.
* Improved outlining.
* Fixed various minor bugs.
Build 2.5.18 (BETA)
* More performance improvements in the core CodeSmith Generator engine.
* Made it so that if you reselect the same schema object it will refresh the schema information.
* The enter key now opens the selected template in CodeSmith Generator Studio.
* Fixed bug with saving a property set file while overwriting an existing property set file that is set to read only.
* Made CodeSmith Generator Studio a single instance application.
* Fixed bug where trying to open a file that was already open would cause the file to re-compile itself.
* Fixed bug when compiling templates that have ( ) or ' in their file names.
Build 2.5.17 (BETA)
* Fixed issue with CodeSmith Generator Studio hanging sometimes when <% was typed.
* Made the VS.NET custom tool MUCH better. It now reports errors in much more detail.
* Added variable support to the VS.NET custom tool.
* Added default property support to the VS.NET custom tool.
* Made it so that GoTo line now expands the regions the line is on.
Build 2.5.16 (BETA):
* Made various performance improvements to the engine and CodeSmith Generator Studio.
* Added syntax highlighting to target languages.
* Added outlining support to CodeSmith Generator Studio.
* Added line modification markers to CodeSmith Generator Studio.
* Added auto copy output to clipboard option in CodeSmith Generator Studio.
* Fixed several find and replace bugs.
Build 2.5.15 (BETA):
* Added ToString override to the schema collections so that the names of the selected objects show up.
* Stopped indenting script blocks.
* Fixed highlighting issues with escaped template tags <%% %%>.
* Made register menu item hidden when already registered.
* Fixed bug where pressing F4 on Code-Behind causes exception.
* Changed RenderToFile using a merge strategy so that it creates a file if it doesn't exist.
* Changed the output encoding to UTF-8.
* Fixed bug in editor control where a black box was sometimes drawn.
* Fixed bug in editor control where a clipboard operation would sometimes cause an exception.
* Updated to the 1.5 version of Chris Nahr's collection templates.
* Various other minor bug fixes.
Build 2.5.14 (Final):
* Turned CodeSmith Generator Professional licensing on.
Build 2.5.13 (RC4):
* Fixed the check to see if a given file is already open (was case-sensitive).
* Fixed issue with setting properties programmatically if they were not an exact type match but were still related types.
* Disabled the replace and replace all buttons on the find dialog if a document is read only.
* Fixed the StoredProcedures.cst template to handle user defined types.
* Made it so that the explorer tree doesn't do a complete refresh on every file save.
* Fixed painting issues in the Highlighting Style Editor dialog.
* Fixed issue with the find function not always moving the find result into view.
* Fixed issue with CTRL-TAB and new documents.
* Fixed template parser to allow escaped "'s in the directive attributes.
Build 2.5.12 (RC3):
* Fixed bug in SqlSchemaProvider where tables with ".'s" in their name would cause an error.
* Changed SchemaExplorer to lazy load extended properties. This made a huge difference in databases with a lot of schema objects.
* Fixed bug with RenderToFile where the file handle was not being released if an error occurred during template execution.
* Added the awesome DBDocumenter templates to the samples.
* Added the C# CSLA.NET templates by Ricky Supit.
* Added the StoredProcedureDescriptions.cst template by Oskar Austegard.
* Fixed bug with save all button where not all documents would be saved.
* Added context menu to the output and compiled source editors.
* Fixed bug in the logo header of CodeSmith Generator Console.
* Fixed bug with determining if a file has been modified in CodeSmith Generator Studio.
* Fixed various issues with the GoTo line feature in CodeSmith Generator Studio.
* Fixed formatting issue with template comment tags.
* Fixed bugs with commands enabling and disabling in CodeSmith Generator Studio.
* Changed the F6 mapping in Studio to toggle between views of the current document.
* Changed build shortcut to CTRL-SHIFT-B.
* Fixed bug with external change modification notice. Whenever you closed a document and re-opened it you would then get errant external change modification notices.
* Fixed bug with CTRL-F sometimes causing a crash.
* Fixed various painting issues in the editor control.
* Added option to determine code behind open behavior in CodeSmith Generator Studio.
* Fixed issue with various menu item actions not updating the document title.
* Changed CTRL-TAB and CTRL-SHIFT-TAB to behave the same as VS.NET.
* Added ability to select template editor application from CodeSmith Generator Explorer.
* Made it so the template will recompile if the code behind file has been modified.
Build 2.5.11 (RC2):
* Fixed parser bug where whitespace would not be correctly handled in some scenarios.
* Fixed bug with custom assembly resolution.
* Fixed bug when closing multiple instances of Studio at the same time.
* Fixed bugs in a few sample templates.
* Fixed bug when using a \ in the find dialog.
Build 2.5.10 (RC1):
* Added some new help content. Thanks to James Avery.
* Updated to the latest collection and CSLA.NET templates.
* Added State (values: Default, Rendering, Validating, RestoringProperties, SavingProperties) property to CodeTemplate. This can be used to tell what the template is currently doing.
* Fixed bug when saving a newly created template.
* Made the close start page on open setting work for all ways of opening files.
* Fixed bug in collections where indexers threw an exception for items that did not exist. These indexers now return null if the item is not found.
* Added override for ToString() in CodeSmith.CustomProperties.StringCollection so that the items show up in the property grid instead of the type name.
* Fixed bug in RestorePropertiesFromHashtable where you get a NullReferenceException when trying to populate a property that has been removed since the last compile.
* Fixed bug in the about box where some names were being cut off.
* Fixed bug with Load Property Set XML in the stand-alone property grid.
* Fixed bug in CodeSmith Generator Explorer with template folders that no longer exist.
* Fixed bug in CodeSmith Generator Studio with opening files that no longer exist.
Build 2.5.9 (Beta):
* Added context menus to the document tabs.
* Added CopyPropertiesTo method to CodeTemplate. This can be used to copy all matching properties from one template instance to another.
* Dramatically improved compiler performance on large templates.
* Lots of improvements to the CodeSmith Generator Explorer control.
* Rebuilt all of the Schema Explorer collections using the awesome collection templates by Chris Nahr. These collections are now editable, although the instances returned by Schema Explorer are marked as read-only.
* Fixed bug where enum values were not being maintained during template compilation.
* Fixed bug where new files were not added to the MRU list.
* All configuration files have now been moved to the current user's ApplicationData folder. It should now be possible to run CodeSmith Generator as a non-Administrator user.
* Added folder monitoring to Explorer so that new files are automatically picked up.
* Added monitoring to all documents in CodeSmith Generator Studio so that external changes are picked up.
Build 2.2.8 (Beta):
* Added tool tip to document tabs in CodeSmith Generator Studio.
* Added keyboard shortcuts to almost everything in CodeSmith Generator Studio.
* Added ability to open any file type in CodeSmith Generator Studio.
* Added error underlines to the compiled template source when there are compilation errors. These also have tooltips to display the error message.
* Added Select All, Copy Output, Save Output, and Compile To Assembly menu items.
* Added Insert Content menu items and shortcuts.
* Added dialog to ask if you want to open the code behind for a template if it uses one. (This really should be another tab in the template editor.)
* Added F3 support and made various fixes to the find and replace operations.
* Added menu item to save output to file.
* Added Windows menu to CodeSmith Generator Studio.
* Added recent files menu to CodeSmith Generator Studio.
* Added context sensitive enabling/disabling of commands in CodeSmith Generator Studio.
* Added options dialog with various settings.
* Fixed parser bug where comments (<%-- --%>) would collapse a line with other content on it.
* Added ability to change language background color in the highlighting style editor dialog.
* Added start page / embedded web browser to CodeSmith Generator Studio.
Build 2.2.7 (Beta):
* The Schema Explorer tool window in CodeSmith Generator Studio works now (still need to have it let you manage your extended properties).
* The properties grid is now used to show properties on just about everything.
* Fixed bug when dropping a template onto the VS.NET Solution Explorer window.
* Updated to the latest version of the CSLA.NET templates.
* Created a new sample template CommandWrapperClass.cst. This template creates a C# wrapper class for a stored procedure.
* There is now a Description property on all schema objects. This is simply a shortcut to the CS_Description ExtendedProperty.
* Made the find dialog set the currently selected text as the find value instead of it being hard-coded to "int".
* Made the find dialog restore focus to the editor window when the dialog is closed.
* Fixed bug in Studio where the same instance of a template was being used for multiple generations.
* Added CS_IsComputed and CS_IsDeterministic extended properties to ColumnSchema and ViewColumnSchema.
* Added CS_Default ExtendedProperty to ParameterSchema.
* Added CTRL-TAB and CTRL-SHIFT-TAB support to CodeSmith Generator Studio.
* Fixed printing issue in CodeSmith Generator Studio where lines were not being wrapped.
* Fixed bug in parser that caused <% = expression %> (Space between <% and =) to be incorrectly parsed.
* Fixed bug in parser that caused multi-line template comments to be incorrectly parsed.
* Updated to version 1.3.1 of Chris Nahr's collection templates.
* Created CodeSmith101 sample templates.
Build 2.2.6 (Beta):
* Implemented cursor changes in CodeSmith Generator Studio when the application is working.
* Fixed bug in extended properties where ExtendedProperty value was NULL.
* Fixed several clipboard issues in CodeSmith Generator Studio.
* Added error trapping around template execution so that it's obvious the exception was from bad code in the template and not CodeSmith.
* Updated to version 1.3.0 of Chris Nahr's collection templates.
* Fixed bug in CodeSmith Generator Studio where template properties would be lost after a failed compilation.
* Added code to allow enum property types defined in multiple templates to be converted back and forth.
Build 2.2.5 (Beta):
* Added icons to the Visual Studio .NET tool window and command.
* Added a blank data source to all designers.
* Added context menu items to the property grid to copy, save and load the property set XML.
* Fixed bug with right-clicking in the property grid on a category cell.
* Made a lot of internal changes to clean up the way CodeSmith Generator was searching for assemblies.
* Replaced VSUserControlHost with CodeSmithUserControlHost. I believe this change will fix the infamous "Invalid VSUserControlHost" error message in Visual Studio.
* Added a ScriptTableData.cst sample template.
* Made CodeSmith Generator Studio persist highlighting style changes.
* Added Schema Explorer tool window to CodeSmith Generator Studio.
* Fixed highlighting bug where single line comments would over-ride the end of a template block (%>).
* Added highlighting support for template comments (<%-- %>).
* Implemented alternate method of retrieving command schema result information in certain scenarios where it would fail otherwise.
* Fixed bug with SQL7 and views.
* Added option to installer to select whether or not VS.NET support is installed.
* Made it so that Undo buffer is cleared right after document load.
Build 2.2.4 (Beta):
* Added GetProperties and GetRequiredProperties to CodeTemplate.
* Added AllInputParameters, AllOutputParameters, and NonReturnValueParameters to the CommandSchema object.
* Fixed various exceptions in CodeSmith Generator Studio.
* Added EngineSample (this was previously ConsoleSample).
* Added ConsoleSamples. This contains various samples of using the command line client.
* Added option to installer to include Visual Studio .NET 2003 support.
* Made CodeSmith Generator Studio handle saving to read-only files.
* Fixed issue with command parameters extended properties.
* Added new sample template that outputs all extended properties for a database.
Build 2.2.3 (Beta):
* Fixed parser bug where first literal line of template would be parsed incorrectly and discarded.
* Fixed parser bug where <script> tags were being incorrectly parsed.
* Fixed bug in Property directive Default attribute where defaults would only work with properly cased types.
* Added ParseDefaultValue to CodeTemplate. This method is called to parse the Property directive Default attribute value and assign the default value. The method is virtual and can be overridden to extend the supported data types.
* The Property directive Default attribute now supports enum values as well as all integer data types (was Int32 only before).
* Made it so that you can press delete on a folder in the CodeSmith Generator Explorer control to remove a folder. The full folder path is now shown when hovering over the folder.
Build 2.2.2 (Beta):
* Added merge capabilities (lets you merge into a region of an existing file) to CodeSmith Generator Console.
* Redesigned CodeSmith Generator Console parameters and switches.
* Added owner support to collections (indexer, Contains, IndexOf).
* Fixed issue with property sets not containing the owner information.
* Fixed bug where a SQL float type would be mapped to a Decimal instead of a Double.
Build 2.2.1 (Beta):
* Added CodeSmith Generator Studio.
* Added CommandSchema.CommandResults to allow for discovery of command results schema information.
* Added ViewSchema.ViewResult to allow for discovery of view result schema information.
* Added StringCollection to the CodeSmith.CustomProperties assembly. This class fully supports the CodeSmith Generator GUI and XmlProperty set.
* Added XmlSerializedTypeConvertor to the CodeSmith.CustomProperties assembly. This class allows conversion of XML serialized objects back and forth to the property set format.
* Added ability to save property set XML to file in the generator form.
* Added ability to load property set from XML file in the generator form.
* Added SavePropertiesToXmlFile and RestorePropertiesFromXmlFile to CodeTemplate.
* Added support for executing a template in CodeSmith Generator Console.
* Added more error handling support to CodeSmith Generator Console.
* Fixed bug with TableSchema extended properties.
* Made database extended properties populate.
* Fixed bug with version check.
* Added a custom exception dialog that can be expanded to show the stack trace in SchemaExplorer.
* Fixed problem with SchemaExplorer and non-dbo owners. The owner information is now displayed in the designers.
* Changed designers to default to the recently modified or added data source from the data source manager.
* Updated to version 1.2.1 of Chris Nahr's collection templates.
* Included CSLA.NET templates from Matt Altadonna.
* Made all fields required on the data source dialog.
* Modified XmlSerializedFilePicker to not require an attribute named type on the root element. It will now assume the type of the property.
* Made parser ignore duplicate import and assembly directives.
* Included some nice synchronization changes to the CSVector.cst template contributed by Joel Mueller.
* Changed CommandSchema.InputParameters to only return Input parameters. Previously it returned Input and InputOutput parameters.
* Changed CommandSchema.OutputParameters to only return Output parameters. Previously it returned Output and InputOutput parameters.
* Added CommandSchema.InputOutputParameters to return InputOutput parameters for the command.
* Added CommandSchema.ReturnValueParameter to provide a reference to the return value parameter of a command.
* Fixed bug with CommandSchema and copy property set XML.
Build 2.1.1270 (Release):
* Fixed bug with copy property set XML and null values.
* Added context menu to the property grid that allows clearing values and turning the help panel on and off.
* Added ViewText to the ViewSchema object.
* Implemented a workaround for the VB.NET on .NET 1.0 issue.
* Added designers for TableSchemaCollection, CommandSchemaCollection, and ViewSchemaCollection. These types can now be used as properties in the GUI and in the VS.NET custom tool.
* Changed all Schema Explorer collections to make use of the new value based Equals method when calling Contains and IndexOf.
* Added ability to select multiple root folders in CodeSmith Generator Explorer.
* Enabled the maximize button on the explorer and generator forms.
* Included the awesome C# collection templates built by Chris Nahr. Hopefully someone will be willing to convert these to VB.NET and they can be included too.
* Implemented the Equals and GetHashCode methods for each schema object. Equals will now check for value equality instead of reference equality.
* Made all schema explorer designers re-sizable and also made them bigger by default.
* Fixed various bugs in the generator form.
* Added CTRL-G to the generator form as a shortcut to the Generate button.
* Added CTRL-T to the generator form as a shortcut to the copy template output to clipboard button.
* Made it so that if you cancel out of a schema explorer designer, it will not null out your current selection.
* Made it so that if you had a previous selection the schema explorer designers will automatically select that item.
* Fixed a bug in the GUI where it would use the same instance of the template for each generation.
* Added CustomProperties sample. This sample demonstrates using the XmlSerializer to deserialize an object and use it as a property.
* Added ExtendedProperties collection to all schema objects. These can be used to hold any custom data.
* Made SqlSchemaProvider populate all extended properties from SQL 2000 into the ExtendedProperties collection on each schema object.
* Made SqlSchemaProvider populate five additional extended properties on each column: CS_IsIdentity, CS_IdentitySeed, CS_IdentityIncrement, CS_IsRowGuidCol, and CS_Default
* Added CommandText property to the CommandSchema object. This can be used to get the code for the command.
* Added IsDependantOf method to the TableSchema object. This will determine if a given table is a dependant of another table by crawling the ForeignKey hierarchy.
* Added TabledependencyComparer class. This can be used to sort tables in order of dependency.
* Made all Schema Explorer designers remember their last selected data source.
* Changed Indexes collection to include the primary key index. I was explicitly excluding this index before.
* Added IsUnique to ColumnSchema. This simply checks for a unique index on this column.
* Added IsPrimaryKey, IsUnique, and IsClustered properties to IndexSchema.
* Added DateCreated to TableSchema, ViewSchema, and CommandSchema.
* Added support for Debug attribute in the CodeTemplate directive. This must be set to true before you will be able to debug your templates.
* Fixed various bugs in the SqlSchemaProvider assembly.
* Added Ctrl-A support to the output panels.
* Added Ctrl-G (go to line) support on the Compiled Template Source panel.
* Added error handling to CodeSmith Generator Console and changed it to return a non-zero number if it fails.
* Added System.Data and System.Drawing as default assembly references.
* Added System.Data as a default namespace import.
* Fixed a couple of bugs in the StoredProcedures.cst and added the AllStoredProcedures.cst template. This new template will generate stored procedures for every table in the database.
* Added typed DataSet sample template and test application (TypedDataSetTester). These are a work in progress but I am hoping to get feedback.
* Fixed bug with SQL7 compatibility.
* Made further changes to the installer so that it will hopefully work for more people.
* Re-fixed a bug with command parameters. This accidentally got reverted.
Build 2.0.1245:
* Added SampleCustomProperties project. This project contains a sample of creating custom types and type editors for use as CodeSmith Generator properties.
* Included CodeSmith.rtf User Documentation written by Pete Davis.
* Fixed bug with ForeignKey collection. If foreign and primary key column names were different you would get an ArgumentNullException.
* Fixed bug with custom tool where assemblies in the same directory as the template could not be resolved.
* Fixed bug where installer wouldn't install if Visual Studio.NET wasn't installed.
Build 2.0.1222:
* Removed expiration.
* Created installer.
* Changed to a build system instead of going on and on forever with beta builds.
* Dropped support for Visual Studio .NET 2002. The Visual Studio features will only work with the final release of Visual Studio .NET 2003.
* Dropped RedRiver from all namespaces. If you have templates that refer to RedRiver, you will need to update them.
* Fixed problem where SchemaExplorer would fail if collation was different from the master database.
* Added view support to SchemaExplorer.
* Fixed problem with SQL7 compatibility and column descriptions.
* Added a designer for the DatabaseSchema object.
* Added Owner property to TableSchema, ViewSchema, and CommandSchema and fixed bug relating to tables, stored procedures and views were assuming dbo as an owner.
* Updated CollectionGen templates from the latest CollectionGen release.
* Added a Visual Basic Code Generator Sample (VBCodeGeneratorSample).
* Added CodeSmith Generator Console.exe to enable processing an XmlProperty file from the command line. (CSharpCodeGeneratorSample and VBCodeGeneratorSample folders)
Beta 6:
* Fixed bug where CodeSmith Generator Explorer context menu was shown for node types other than templates.
* Added ability to specify the application used to edit templates. Can be changed in the "CodeSmith.Gui.dll.config" (key "codetemplateexplorercontrol.editapplication") file.
* Fixed various bugs in SqlCodeTemplate.cs.
* Changed expiration to 7/1/2003.
* Separated the VS.NET Add-in and custom tool into separate assemblies. This should allow the custom tool to run in VS.NET 2002 and 2003.
* Changed ColumnSchema.DataType and ParameterSchema.DataType to DbType instead of SqlDbType.
* Fix bug with ColumnSchema.IsPrimaryKeyMember when no primary key exists.
Beta 5:
* Added a CodeSmith Generator VS.NET custom tool. This can be used to simulate generics (CSharpCodeGeneratorSample folder).
* Added a CodeSmith Generator Explorer tool window Add-in to VS.NET. This allows you to quickly generate code using drag and drop.
* Fixed a cosmetic parser bug (parser was eating too much white space after directives).
* Fixed a bug in drag and drop from CodeSmith Generator Explorer when the code generation was canceled.
Beta 4:
* Made necessary changes to allow Debugger.Break() to launch a debugger and step through the generated template code.
* Added ability to double-click compiler errors and go to the spot in the source code where this error was encountered.
* Added various additional error messages to the compiler.
* Added Response property to CodeTemplate so you can now use Response.Write statements in template code.
* Fixed file associations so that .cst files have a CodeSmith Generator icon now.
* Fixed bug with removing data sources.
* Added SetProperty and GetProperty helper methods to CodeTemplate.
* Added a simple latest version check to the about dialog. Also checks every 15 days (not yet configurable) when CodeSmith Generator Explorer is run.
* Fixed about dialog showing the wrong build number.
* Added an example of using CodeSmith.Engine programmatically (ConsoleSample folder).
* Fixed several sample template bugs.
Beta 3:
* Added ability to save template output to file.
* Added ability to save compiled template to an assembly.
* Schema Explorer API documentation is included.
* Fixed a bug in the schema explorer data source manager when edit is clicked with no data source selected.
* Fixed a bug with the IsForeignKey property of ColumnSchema and changed the property name to IsForeignKeyMember.
* Fixed bug for templates that have spaces in their file names.
* Fixed file association bug.
Beta 2:
* Fixed a bug with running CodeSmith Generator on .NET 1.0.
* Added line and column information to the compiled template source tab.
* Fixed bug where compiled template source would not be shown if there was an error in the template.
Beta 1:
* Initial public release.