[corlib] Improve CancellationTokenSource test
[mono.git] / mcs / class / System / System.CodeDom.Compiler / ChangeLog
old mode 100755 (executable)
new mode 100644 (file)
index 383caeb..add3550
@@ -1,3 +1,299 @@
+2010-04-13  Jonathan Pryor  <jpryor@novell.com>
+
+       * CodeGenerator.cs: Clear out the current member when beginning Type
+         generation.  This prevents "invalid" `#endregion`s; if the
+         CodeGenerator instance is reused for multiple types, the last member
+         of the first type has an EndDirective, then the EndDirectvies will
+         be generated before any members of the 2nd type.  Don't do that.
+
+2010-04-07  Jb Evain  <jbevain@novell.com>
+
+       * Executor.cs: make class static.
+
+2010-04-01  Jb Evain  <jbevain@novell.com>
+
+       * CodeDomProvider.cs, CompilerInfo.cs: add .net 4.0 overloads.
+
+2010-03-06  Marek Habersack  <mhabersack@novell.com>
+
+       * CompilerCollection.cs: in the 4.0 profile, the latest C#
+       standard is the compiler's default.
+
+2008-10-09  Marek Habersack  <mhabersack@novell.com>
+
+       * CompilerCollection.cs: use all the compiler information from
+       config file when adding new CompilerInfo. Fixes bug #433802
+
+2008-02-26  Marek Habersack  <mhabersack@novell.com>
+
+       * CompilerResults.cs: Output can be set internally.
+
+2008-02-10  Juraj Skripsky  <js@hotfeet.ch>
+
+       * CodeGenerator.cs: Mark CurrentClass internal for NET_1_1.
+       Add nested Visitor class and member. 
+       GenerateExpression, GenerateStatement, GenerateType: Use visitor.
+       GeneratePrimitiveExpression: Replace if-else chain with switch
+       on TypeCode. 
+
+2008-01-27  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * CodeGenerator.cs: Fixed ArgumentException argument names. Indent
+       expression list.
+
+2007-12-15  Marek Habersack  <mhabersack@novell.com>
+
+       * Compiler.cs: added support for the default collection of
+       <providerOption> child elements and corresponding public
+       properties (ProviderOptions and ProviderOptionsDictionary).
+
+       * CompilerInfo.cs: added ProviderOptions dictionary, to hold
+       values from the <providerOption> collection of the
+       system.codeDom/compilers/compiler/ element.
+       CodeDomProviderType throws an exception if the provider type
+       cannot be found, as per MSDN.
+       CreateProvider uses the new provider constructor which takes
+       provider options dictionary as its parameter, if found in the
+       provider type.
+
+       * CompilerCollection.cs: compiler defaults are initialized using
+       the provider options dictionary, with one option present -
+       "CompilerVersion" set to "2.0".
+       Two dictionaries to map languages and extensions to compiler
+       information objects added.
+
+       * CompilerProviderOption.cs: added - implements the
+       <providerOption> element.
+
+       * CompilerProviderOptionsCollection.cs: added - implements
+       collection for the 2.0sp1 <providerOption> child element of the
+       system.codeDom/compilers/compiler element.
+
+2007-03-05  Peter Dettman <peter.dettman@iinet.net.au>
+
+       * Codegenerator.cs: I noticed an `unreachable code' warning while
+       building Mono:
+
+       System.CodeDom.Compiler/CodeGenerator.cs(1229,42): warning CS0162:
+       Unreachable code detected
+
+       This turned out to be in the method
+       CodeGenerator.IsValidLanguageIndependentIdentifier, which was
+       broken.
+
+       The following patch contains a unit test to demonstrate the
+       problem (checked against MS.NET), and a fix to CodeGenerator.cs.
+
+2007-02-22  Marek Habersack  <grendello@gmail.com>
+
+       * CompilerCollection.cs: be case-insensitive with languages and
+       extensions when looking up the compiler.
+
+2007-01-22  Miguel de Icaza  <miguel@novell.com>
+
+       * CodeDomProvider.cs: Prevent Moma from getting confused.
+
+2006-11-17  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * TempFileCollection.cs : make it work under non-libc environment.
+
+2006-11-16  Marek Habersack  <grendello@gmail.com>
+
+       * Compiler.cs: ConfigurationElement to handle the <compiler>
+       sub-element of the <system.codedom> section
+
+       * CodeDomConfigurationHandler.cs: Reimplemented as a
+       ConfigurationSection. Made the class internal.
+
+       * CompilerCollection.cs: Collection of Compiler and CompilerInfo
+       objects. Uses List<CompilerInfo> as we need to be able to store
+       multiple entries for the same language, as .NET does.
+
+       * CodeDomProvider.cs: Changes to use the new
+       CodeDomConfigurationHandler class.
+
+2006-11-07  Marek Habersack  <grendello@gmail.com>
+
+       * CompilerInfo.cs: Implement the CreateDefaultCompilerParameters API.
+
+       * CodeDomConfigurationHandler.cs: WarningLevel of CompilerInfo
+       should default to -1 if it is absent from the config file, as per
+       MSDN.
+
+2006-11-06  Marek Habersack  <grendello@gmail.com>
+
+       * CodeDomProvider.cs: IsDefinedLanguage should return true if
+       CompilerInfo for the specified language exists.
+
+       * CodeDomConfigurationHandler.cs: add an instance of CompilerInfo
+       separately for each language name defined in the compiler's
+       definition.
+
+2006-09-15  LLuis Sanchez Gual  <lluis@novell.com>
+
+       * TempFileCollection.cs: Create files in a temporary subdirectory,
+       for security reasons.
+       * CodeCompiler.cs: Let TempFileCollection choose the temp dir.
+
+2006-05-04  LLuis Sanchez Gual  <lluis@novell.com>
+
+       * TempFileCollection.cs: Make sure generated file names
+         are unique. Fixes bug #76125 and #78230.
+
+2006-04-20  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * CodeGenerator.cs: Output empty line between types if 
+       BlankLinesBetweenMembers option is set.
+
+2006-03-24  Chris Toshok  <toshok@ximian.com>
+
+       * CompilerInfo.cs (Init): make this internal as well, so
+       CodeDomConfigurationHandler can call it.
+
+       * CodeDomConfigurationHandler.cs (ReadCompilers): we need to call
+       CompilerInfo.Init after setting CompilerInfo.TypeName.
+
+2006-03-11  Miguel de Icaza  <miguel@novell.com>
+
+       * CodeDomConfigurationHandler.cs: Comment out unused methods. 
+
+       * TempFileCollection.cs: Implement explicitly some interface
+       methods to get rid of the "!" errors on CorCompare.
+
+2006-02-19  Zoltan Varga  <vargaz@gmail.com>
+
+       * CodeDomProvider.cs: Fix the [ToolboxItem] attribute. Fixes #77513.
+
+2005-12-07  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * CodeGenerator.cs: Modified GeneratePrimitiveExpression to throw 
+       ArgumentException for sbyte value, use GenerateSingleFloatValue for 
+       float, GenerateDecimalValue for decimal and GenerateDoubleValue for
+       double. Modified exception message for non-primitive types to match
+       MS.NET.
+       * ICodeCompiler.cs: Set eol-style to native.
+       * CodeCompiler.cs: Set eol-style to native.
+       * CodeDomConfigurationHandler.cs: Set eol-style to native.
+       * CodeDomProvider.cs: Set eol-style to native.
+       * CodeGeneratorOptions.cs: Set eol-style to native.
+       * CodeParser.cs: Set eol-style to native.
+       * CompilerError.cs: Set eol-style to native.
+       * CompilerErrorCollection.cs: Set eol-style to native.
+       * CompilerInfo.cs: Set eol-style to native.
+       * CompilerParameters.cs: Set eol-style to native.
+       * CompilerResults.cs: Set eol-style to native.
+       * Executor.cs: Set eol-style to native.
+       * GeneratorSupport.cs: Set eol-style to native.
+       * ICodeGenerator.cs: Set eol-style to native.
+       * ICodeParser.cs: Set eol-style to native.
+       * LanguageOptions.cs: Set eol-style to native.
+       * TempFileCollection.cs: Set eol-style to native.
+
+2005-11-30  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * CodeGenerator.cs: Corrected line endings. Set eol-style to native.
+       * IndentedTextWriter.cs: Indent can no longer become negative.
+
+2005-11-04  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * CodeCompiler.cs: Compile now use the Executor class (instead of the
+       Process class). Fixed JoinStringArray.
+       * CompilerResults.cs: Load assembly only when the property is called.
+
+2005-11-02  Sebastien Pouliot  <sebastien@ximian.com> 
+
+       * Executor.cs: Reworked (for permissions) and fixed ExitCode (must be 
+       called before Close).
+
+2005-11-01  Sebastien Pouliot  <sebastien@ximian.com> 
+       * CodeGenerator.cs: Added/stubbed missing 2.0 stuff.
+
+2005-11-01  Sebastien Pouliot  <sebastien@ximian.com>
+
+       CodeDomProvider.cs: Added missing 2.0 methods. Added CAS permissions.
+       Added protection against NullReferenceException when no config is
+       available.
+
+2005-10-29  Sebastien Pouliot  <sebastien@ximian.com>
+
+       CodeDomProvider.cs: Stubbed a few 2.0 methods to fix API errors in 
+       derived classes.
+
+2005-10-25  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * CompilerError.cs: Added LinkDemand for Unrestricted before 2.0.
+       * CompilerErrorCollection.cs: Added LinkDemand for Unrestricted before
+       2.0.
+
+2005-10-25  Sebastien Pouliot  <sebastien@ximian.com> 
+       * CodeGenerator.cs: Fixed OutputAttributeArgument not to assume the
+       default value is null (it's String.Empty).
+
+2005-10-25  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * CompilerParameters.cs: Added [ComVisible(false)] on the new (2.0)
+       EmbeddedResources and LinkedResources properties.
+       * TempFileCollection.cs: Changed BasePath property to use Path.
+       GetTempPath (Environment check) and added the PathDiscovery check on
+       the combined result. Fixed TempDir so it's value never change (i.e. 
+       imply that it doesn't need any permissions). Fixed SyncRoot to always 
+       return null.
+
+2005-10-24  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * CodeGeneratorOptions.cs: Fixed how properties are kept inside the
+       IDictionary (which is just like System.Web.dll).
+       * CompilerError.cs: Added [Serializable] attribute for 2.0.
+       * CompilerInfo.cs: Added LinkDemand for Unrestricted. Stubbed new 
+       (2.0) CreateDefaultCompilerParameters method.
+       * CompilerParameters.cs: Added LinkDemand and InheritanceDemand for
+       Unrestricted. Added Demand for ControlEvidence to Evidence property.
+       Added new (2.0) EmbeddedResources and LinkedResources properties.
+       * CompilerResults.cs: Added LinkDemand and InheritanceDemand for 
+       Unrestricted. Added Demand for ControlEvidence to Evidence property.
+       * Executor.cs: Added LinkDemand for Unrestricted. Added support for 
+       userToken (impersonation).
+       * GeneratedCodeAttribute.cs: New. 2.0 attribute for code generated by 
+       tools.
+       * IndentedTextWriter.cs: Added LinkDemand and InheritanceDemand for 
+       Unrestricted.
+
+2005-10-04  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * TempFileCollection.cs: Added a call to GC.SuppressFinalize in 
+       Dispose.
+
+2005-07-30 Gert Driesen <drieseng@users.sourceforge.net>
+
+       * CodeGenerator.cs: In OutputMemberScopeModifier, only output 
+       "new" modifier in 2.0 profile.
+
+2005-07-24 Gert Driesen <drieseng@users.sourceforge.net>
+
+       * CodeGenerator.cs: Threat delegates like any other type.
+
+2005-07-21 Gert Driesen <drieseng@users.sourceforge.net>
+
+       * CodeGenerator.cs: Fixed IsCurrentClass to return false for delegate.
+
+2005-06-28 Gert Driesen <drieseng@users.sourceforge.net>
+
+       * CodeGenerator.cs: On 2.0 profile, internal members are also marked
+       virtual. Fixed access modifier for FamilyAndAssembly to match
+       MS.NET.
+
+2005-06-25 Gert Driesen <drieseng@users.sourceforge.net>
+
+       * CodeGenerator.cs: Fixed bug #75190, GenerateCodeFromCompileUnit
+       generates no code for CodeSnippetCompileUnit.
+
+2005-06-04 Gert Driesen <drieseng@users.sourceforge.net>
+
+       * IndentedTextWriter.cs: also output tabs in WriteLine () to
+       match MS.NET
+
 2005-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
 
        * CodeDomProvider.cs: implemented IsDefined* and GetCompilerInfo.