2007-02-21 Lluis Sanchez Gual * MonoDevelop.Projects/DotNetProjectConfiguration.cs: If the output assembly name already has an extension, don't add a new one. * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: When an assembly is being parsed, ignore file modification checks. Fixes bug #80704. 2007-02-19 Ankit Jain * MdsFileFormat.cs (WriteFile): Write to a temp file first, and only overwrite the intended file if writing succeeds. * MdpFileFormat.cs (WriteFile): Likewise. 2007-02-16 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/SimpleCodeCompletionDatabase.cs: Add corlib reference to single file code completion databases. 2007-02-16 Lluis Sanchez Gual * MonoDevelop.Projects/MdpFileFormat.cs, MonoDevelop.Projects/PrjxFileFormat.cs: Don't use the file service for temporary file deletes, since it may have side effects. * MonoDevelop.Projects.addin.xml: Change add-in versions to 0.13. 2007-02-15 Lluis Sanchez Gual * MonoDevelop.Projects.mdp: Copy the config file together with the dll. 2007-02-15 Lluis Sanchez Gual * MonoDevelop.Projects.mdp: Disabled building through makefile. Added missing file. 2007-02-15 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectService.cs: Reset the NeedsReload flag just after loading a project. * MonoDevelop.Projects/CombineEntry.cs: Added methods for checking if a combine entry needs to be reloaded (that is, the underlying file has been modified). * MonoDevelop.Projects/Combine.cs, MonoDevelop.Projects/CombineEntryCollection.cs: Implemented support for reloading a combine entry. * MonoDevelop.Projects/UnknownCombineEntry.cs: Added property for storing the error message that generated this unknown entry. * MonoDevelop.Projects/CmbxFileFormat.cs: If a combine entry can't be loaded, generate an UnknowCombineEntry object, which will be shown in the project pad with an error message. * MonoDevelop.Projects.mdp: Flush. 2007-02-12 Lluis Sanchez Gual * MonoDevelop.Projects.Serialization/ClassDataType.cs: Added missing null check. 2007-02-11 Lluis Sanchez Gual * MonoDevelop.Projects/DotNetProject.cs: Allow referencing non-dot net projects from dot net projects (it will be a build dependency). * Makefile.am: Flush. 2007-02-08 Lluis Sanchez Gual * MonoDevelop.Projects/CustomCommandCollection.cs, MonoDevelop.Projects/CustomCommand.cs: If an execution context is provided, use it. * MonoDevelop.Projects/CombineEntry.cs: Provide the execution context when running the Execute script. * MonoDevelop.Projects/Combine.cs, MonoDevelop.Projects/Project.cs: Properly launch Execute and Clean scripts. 2007-02-07 Lluis Sanchez Gual * MonoDevelop.Projects.mdp, Makefile.am, MonoDevelop.Projects.Parser/Abstract*: Renamed Abstract* files to Default*, to track changes in class names. 2007-02-07 Lluis Sanchez Gual * MonoDevelop.Projects/CustomCommandType.cs, MonoDevelop.Projects/CustomCommandCollection.cs, MonoDevelop.Projects/CombineEntry.cs, MonoDevelop.Projects/CustomCommand.cs, MonoDevelop.Projects/AbstractProjectConfiguration.cs, MonoDevelop.Projects/AbstractConfiguration.cs: Implemented support for custom commands in projects and combines. * MonoDevelop.Projects/ProjectServiceExtension.cs, MonoDevelop.Projects/ProjectService.cs, MonoDevelop.Projects/Combine.cs, MonoDevelop.Projects/UnknownCombineEntry.cs, MonoDevelop.Projects/BuildTool.cs: The clean method now takes a progress monitor as parameter. * MonoDevelop.Projects/GenericProjectBinding.cs, MonoDevelop.Projects/GenericProject.cs: Implemented new generic project type, which can contain any kind of file. * MonoDevelop.Projects/Project.cs: Use the new custom command stuff. Removed the extensible build pipeline, since the new project service extensions already allow extending the build process. * MonoDevelop.Projects.Serialization/ClassDataType.cs: Don't serialize empty collections. * MonoDevelop.Projects.addin.xml: Registered new project type. * MonoDevelop.Projects.mdp, Makefile.am: Updated. * MonoDevelop.Projects.Parser/DefaultParserService.cs: Add support for aliases in the resolver. 2007-02-05 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectServiceExtension.cs, MonoDevelop.Projects/ProjectService.cs: Added IsCombineEntryFile to the extension chain. 2007-02-02 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/AbstractClass.cs: An instantiated generic type is not generic anymore. * MonoDevelop.Projects.Parser/DefaultParserService.cs, MonoDevelop.Projects.Parser/IParser.cs, MonoDevelop.Projects.Parser/IParserService.cs: Removed IsAsResolve, as it is c# specific and handled in the c# binding. 2007-02-02 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/ProjectCodeCompletionDatabase.cs, MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: When a file is removed from a project, remove subclass references of all classes it contains and fire the class change event. * MonoDevelop.Projects.Parser/ReflectionMethod.cs, MonoDevelop.Projects.Parser/ReflectionProperty.cs: virtual, abstract and sealed flags are now transfered in the ReflectionMethod.GetModifiers method. 2007-02-01 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Added missing null check. 2007-01-31 Lluis Sanchez Gual * MonoDevelop.Projects.CodeGeneration/CodeRefactorer.cs: Catch errors thrown by refactorer implementations. Fixes bug #80691. 2007-01-31 Lluis Sanchez Gual * MonoDevelop.Projects/Combine.cs: Added new events which are fired when an entry is added to a combine hierarchy. 2007-01-30 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/DefaultParserService.cs: When resolving a class, make sure it includes System.Object as base class if it has no other base class. Fixes bug #80087. 2007-01-30 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/ProjectCodeCompletionDatabase.cs: Always check the version of mscorlib after loading the parser database. 2007-01-30 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/DefaultParserService.cs: When searching class info, there is no need to explicitely look into the CoreDB, since databases already have references to the corresponding corlib. Fixes bug #79316. 2007-01-30 Lluis Sanchez Gual * MonoDevelop.Projects.Text/TextFileReader.cs: Added getter for the source encoding. * MonoDevelop.Projects.Parser/AbstractReturnType.cs: Implemented method for comparing types. 2007-01-30 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/ReflectionClass.cs, MonoDevelop.Projects.Parser/ReflectionMethod.cs: Include overloaded operators in the reflected classes. 2007-01-29 Lluis Sanchez Gual * MonoDevelop.Projects.Text/TextFile.cs: Added method for getting the encoding of a file. 2007-01-29 Lluis Sanchez Gual * Makefile.am: Forgot to add one file. 2007-01-29 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectService.cs: In GetNeedsBuilding, use a cache to temporarily store results. It avoids recursively checking the same projects multiple times. * MonoDevelop.Projects.mdp, Makefile.am: Updated. * MonoDevelop.Projects.Text/TextEncoding.cs: Added code page field. * MonoDevelop.Projects.Text/TextFileReader.cs: New TextFileReader which automatically detects the file encoding. * MonoDevelop.Projects.Parser/AbstractDecoration.cs, MonoDevelop.Projects.Parser/ReflectionClass.cs, MonoDevelop.Projects.Parser/PersistentMethod.cs, MonoDevelop.Projects.Parser/PersistentProperty.cs, MonoDevelop.Projects.Parser/AbstractIndexer.cs, MonoDevelop.Projects.Parser/AbstractMember.cs, MonoDevelop.Projects.Parser/ReflectionEvent.cs, MonoDevelop.Projects.Parser/ReflectionField.cs, MonoDevelop.Projects.Parser/PersistentEvent.cs, MonoDevelop.Projects.Parser/PersistentField.cs, MonoDevelop.Projects.Parser/AbstractEvent.cs, MonoDevelop.Projects.Parser/AbstractNamedEntity.cs, MonoDevelop.Projects.Parser/AbstractField.cs, MonoDevelop.Projects.Parser/AbstractProperty.cs, MonoDevelop.Projects.Parser/ReflectionMethod.cs, MonoDevelop.Projects.Parser/ReflectionProperty.cs, MonoDevelop.Projects.Parser/ReflectionIndexer.cs, MonoDevelop.Projects.Parser/PersistentIndexer.cs, MonoDevelop.Projects.Parser/AbstractMethod.cs: Don't store the whole fully qualified name in class members, store only the name. The full name can be constructed from the declaring class full name. * MonoDevelop.Projects.Parser/MemberCollectionBase.cs, MonoDevelop.Projects.Parser/MethodCollection.cs, MonoDevelop.Projects.Parser/EventCollection.cs, MonoDevelop.Projects.Parser/FieldCollection.cs, MonoDevelop.Projects.Parser/TypedCSharpCollection.cs, MonoDevelop.Projects.Parser/PropertyCollection.cs: Assign the declaring class to members when they are added to a member collection. * MonoDevelop.Projects.Parser/PersistentClass.cs, MonoDevelop.Projects.Parser/AbstractClass.cs: Store the class name as namespace + name. It saves memory since the namespace string can be shared. Added support for instantiated generic types. * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: Fix warning. * MonoDevelop.Projects.Parser/AbstractReturnType.cs: Factorized some code. Implemented ToString. * MonoDevelop.Projects.Parser/CompoundClass.cs: Added null check. * MonoDevelop.Projects.Parser/NamespaceEntry.cs, MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Implemented support for instantiated generic types. Added information about subclasses of a type in the database, that's needed to improve the performance in some code completion cases. * MonoDevelop.Projects.Parser/DefaultParserService.cs, MonoDevelop.Projects.Parser/IParserService.cs: Allow providing type parameters when getting a generic type. It will return the instantiated type. Implemented support for getting the list of subclasses of a type. Updated the shared string table. * MonoDevelop.Projects.Parser/PersistentReturnType.cs: The creation of the resolved type is now done by ITypeResolver, in this way it can be reused by the code that creates instantiated generic types. * MonoDevelop.Projects.Parser/IMember.cs: Members don't need a namespace. * MonoDevelop.Projects.Parser/ClassEntry.cs, MonoDevelop.Projects.Parser/ClassWrapper.cs: Replicated some information from IClass into ClassEntry. Will take a bit more memory, but code completion will perform much faster, since all information it needs can be taken from ClassEntry and no other database access will be needed. The new ClassWrapper class helps on this by making ClassEntry look like an IClass. * MonoDevelop.Projects.Parser/ClassType.cs: A byte is enough for this. 2007-01-25 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: Revert last change, it is causing the same libraries to be loaded from several different places. 2007-01-22 Lluis Sanchez Gual * MonoDevelop.Projects/CombineEntry.cs: Dispose data in the extended properties dictionary. * MonoDevelop.Projects/Project.cs: Added some new deployment infrastructure, which allows a project to specify which files need to be deployed and where (based on a patch by Michael Hutchinson). * MonoDevelop.Projects.addin.xml: Registered new deployment targets. * MonoDevelop.Projects.Deployment.Extensions/IFileCopyHandler.cs, MonoDevelop.Projects.Deployment/DeployService.cs, MonoDevelop.Projects.Deployment/LocalFileCopyConfiguration.cs, MonoDevelop.Projects.Deployment/UnknownFileCopyConfiguration.cs, MonoDevelop.Projects.Deployment/LocalFileCopyHandler.cs, MonoDevelop.Projects.Deployment/FileCopyConfiguration.cs, MonoDevelop.Projects.Deployment/IFileReplacePolicy.cs, MonoDevelop.Projects.Deployment/FileCopyHandler.cs: New infrastructure which provides pluggable files copiers. The default implementation allows copying files to local filesystem. Based on a patch by Michael Hutchinson. * MonoDevelop.Projects.Deployment.Extensions/IDeployHandler.cs: Moved from MonoDevelop.Projects.Deployment * MonoDevelop.Projects.mdp, Makefile.am: Updated. * MonoDevelop.Projects.Deployment/DirectoryDeployHandler.cs, MonoDevelop.Projects.Deployment/DirectoryDeployTarget.cs: Use the new file copy infrastructure to copy files. * MonoDevelop.Projects.Deployment/InstallDeployHandler.cs, MonoDevelop.Projects.Deployment/InstallDeployTarget.cs: New deploy target which install files on the provided installation prefix. * MonoDevelop.Projects.Deployment/CommandDeployHandler.cs, MonoDevelop.Projects.Deployment/CommandDeployTarget.cs: New deployment target. Allows executing a command. * MonoDevelop.Projects.Deployment/DeployHandler.cs: Track changes. * MonoDevelop.Projects.Deployment/CombinedDeployHandler.cs, MonoDevelop.Projects.Deployment/CombinedDeployTarget.cs: New deployment target. Allows executing a sequence of other deployment targets. * MonoDevelop.Projects.Deployment/DeployFile.cs: Added some new deployment infrastructure, which allows a project to specify which files need to be deployed and where. Based on a patch by Michael Hutchinson. * MonoDevelop.Projects.Deployment/DeployTarget.cs: Some minors improvements. * MonoDevelop.Projects.Deployment/IDeployHandler.cs: Moved to MonoDevelop.Projects.Deployment.Extensions * MonoDevelop.Projects.Deployment/FileDeployTarget.cs: Removed. Replaced by DirectoryDeployTarget. * MonoDevelop.Projects.Parser/GenericParameter.cs: Removed unused namespace. * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: When looking for assembly references, look for assemblies in the local directory, before trying to do a global search. * MonoDevelop.Projects.Parser/CompoundClass.cs: Added null check. * MonoDevelop.Projects.Parser/ReflectionParameter.cs: Track changes in the Cecil api. 2007-01-20 Ankit Jain * ProjectService.cs (OnFormatExtensionChanged): Add null check. 2007-01-19 Marek Sieradzki * MonoDevelop.Projects/MdpFileFormat.cs, MonoDevelop.Projects/UnknownProjectVersionException.cs, MonoDevelop.Projects/Combine.cs, MonoDevelop.Projects/MdsFileFormat.cs, MonoDevelop.Projects/PrjxFileFormat.cs, MonoDevelop.Projects/Project.cs, MonoDevelop.Projects/CmbxFileFormat.cs: Removed redundant String.Format (). * MonoDevelop.Projects/BuildTool.cs: Removed unreachable " return 1". * MonoDevelop.Projects.Parser/NamespaceEntry.cs: Changed obsolete CaseInsensitiveHashCodeProvider to StringComparer.CurrentCultureIgnoreCase. (maybe it should use invariant culture?) 2007-01-15 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectServiceExtension.cs, MonoDevelop.Projects/ProjectService.cs, MonoDevelop.Projects/CombineEntry.cs, MonoDevelop.Projects/Project.cs: Simplified the handling of the buildReferences parameter for the Build method of projects. Now this parameter is handled by the Project class. Project service extenders only have to override the Build (ClassEntry) method, which will be called once for every project to be built. 2007-01-15 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectServiceExtension.cs, MonoDevelop.Projects/ProjectService.cs, MonoDevelop.Projects/CombineEntry.cs, MonoDevelop.Projects/Project.cs: Fixed some issues with project extensions when building projects. When building a project with buildReferences=true, the references were not built through the build extension chain. * MonoDevelop.Projects/DefaultCompilerResult.cs, MonoDevelop.Projects/ICompilerResult.cs: Implemented methods for adding warnings and errors to a compiler result object. * MonoDevelop.Projects/BuildTool.cs: Implemented clean command. * MonoDevelop.Projects.mdp, Makefile.am, MonoDevelop.Projects.Parser/SharpAssemblyParameter.cs, MonoDevelop.Projects.Parser/SharpAssemblyMethod.cs, MonoDevelop.Projects.Parser/SharpAssemblyEvent.cs, MonoDevelop.Projects.Parser/SharpAssemblyField.cs, MonoDevelop.Projects.Parser/ClassProxyCollection.cs, MonoDevelop.Projects.Parser/SharpAssemblyReturnType.cs, MonoDevelop.Projects.Parser/SharpAssemblyProperty.cs, MonoDevelop.Projects.Parser/SharpAssemblyClass.cs, MonoDevelop.Projects.Parser/ClassProxy.cs, MonoDevelop.Projects.Parser/SharpAssemblyIndexer.cs, MonoDevelop.Projects.Parser/SharpAssemblyAttribute.cs: Removed unused classes. * MonoDevelop.Projects.Parser/IClass.cs, MonoDevelop.Projects.Parser/AbstractClass.cs, MonoDevelop.Projects.Parser/CompoundClass.cs: Added property for getting all parts of a class. * MonoDevelop.Projects.Parser/PersistentClass.cs, MonoDevelop.Projects.Parser/DefaultParserService.cs, MonoDevelop.Projects.Parser/IParserService.cs: Added method for checking if a project is loaded in a parser database. * MonoDevelop.Projects.Parser/AssemblyInformation.cs, MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Don't include nested types in the class list when parsing an assembly. Nested types will be included as children of the declaring class. Updated pidb file version. 2007-01-08 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectService.cs, MonoDevelop.Projects/IProjectService.cs: Removed the ReadFile and WriteFile methods. CombineEntry objects can now be loaded using the ReadCombineEntry method and saved by calling the CombineEntry.Save instance method. * MonoDevelop.Projects/CombineEntry.cs: Don't call OnSaved from inside OnSave, since that method may never be called when overriden by an extension. * MonoDevelop.Projects/Combine.cs, MonoDevelop.Projects/BuildTool.cs, MonoDevelop.Projects/CmbxFileFormat.cs, MonoDevelop.Projects/Project.cs: Use the new ReadCombineEntry method. 2006-12-18 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectService.cs, MonoDevelop.Projects/ProjectsServices.cs, MonoDevelop.Projects/CombineEntry.cs, MonoDevelop.Projects/Combine.cs, MonoDevelop.Projects/UnknownCombineEntry.cs, MonoDevelop.Projects/Project.cs, MonoDevelop.Projects/ProjectServiceExtension.cs: Load, Save, Build, Clean and Execute project operations are now executed through the ProjectService, which supports a new kind of extension: ProjectServiceExtension. This kind of extension can override the default behavior of those operations. * MonoDevelop.Projects.addin.xml: Created new extension point for project service extensions. * Makefile.am, MonoDevelop.Projects.mdp: Added ProjectServiceExtension.cs. 2006-12-17 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectReference.cs, MonoDevelop.Projects/MdpFileFormat.cs, MonoDevelop.Projects/ProjectPathItemPropertyAttribute.cs, MonoDevelop.Projects/CombineEntry.cs, MonoDevelop.Projects/DotNetProject.cs, MonoDevelop.Projects/PrjxFileFormat.cs, MonoDevelop.Projects/CmbxFileFormat.cs, MonoDevelop.Projects.Deployment/DirectoryDeployHandler.cs, MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs, MonoDevelop.Projects.Parser/DefaultParserService.cs: Track changes in FileService API. * MonoDevelop.Projects/Project.cs: Use the file service for copying files. * MonoDevelop.Projects.mdp: Updated. * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Use the file service for file operations. 2006-12-14 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/AbstractDecoration.cs, MonoDevelop.Projects.Parser/AbstractClass.cs, MonoDevelop.Projects.Parser/AbstractReturnType.cs, MonoDevelop.Projects.Parser/AbstractIndexer.cs, MonoDevelop.Projects.Parser/AbstractComment.cs, MonoDevelop.Projects.Parser/AbstractAttribute.cs, MonoDevelop.Projects.Parser/AbstractMember.cs, MonoDevelop.Projects.Parser/AbstractParameter.cs, MonoDevelop.Projects.Parser/AbstractEvent.cs, MonoDevelop.Projects.Parser/AbstractField.cs, MonoDevelop.Projects.Parser/AbstractProperty.cs, MonoDevelop.Projects.Parser/AbstractCompilationUnit.cs, MonoDevelop.Projects.Parser/AbstractMethod.cs: Renamed Abstract* classes to Default*. Provided default implementations for all abstract methods and properties, so those classes can be directly used by language bindings without having to create subclasses. * MonoDevelop.Projects.Parser/SharpAssemblyParameter.cs, MonoDevelop.Projects.Parser/SharpAssemblyMethod.cs, MonoDevelop.Projects.Parser/SharpAssemblyEvent.cs, MonoDevelop.Projects.Parser/ReflectionClass.cs, MonoDevelop.Projects.Parser/SharpAssemblyField.cs, MonoDevelop.Projects.Parser/PersistentClass.cs, MonoDevelop.Projects.Parser/PersistentMethod.cs, MonoDevelop.Projects.Parser/PersistentProperty.cs, MonoDevelop.Projects.Parser/SharpAssemblyReturnType.cs, MonoDevelop.Projects.Parser/DefaultParserService.cs, MonoDevelop.Projects.Parser/PersistentAttribute.cs, MonoDevelop.Projects.Parser/ReflectionParameter.cs, MonoDevelop.Projects.Parser/ReflectionEvent.cs, MonoDevelop.Projects.Parser/ReflectionField.cs, MonoDevelop.Projects.Parser/PersistentParameter.cs, MonoDevelop.Projects.Parser/PersistentEvent.cs, MonoDevelop.Projects.Parser/PersistentReturnType.cs, MonoDevelop.Projects.Parser/PersistentField.cs, MonoDevelop.Projects.Parser/PersistentAttributeSection.cs, MonoDevelop.Projects.Parser/SharpAssemblyProperty.cs, MonoDevelop.Projects.Parser/ReflectionMethod.cs, MonoDevelop.Projects.Parser/ReflectionProperty.cs, MonoDevelop.Projects.Parser/SharpAssemblyClass.cs, MonoDevelop.Projects.Parser/ReflectionIndexer.cs, MonoDevelop.Projects.Parser/PersistentIndexer.cs, MonoDevelop.Projects.Parser/ReflectionReturnType.cs, MonoDevelop.Projects.Parser/SharpAssemblyIndexer.cs, MonoDevelop.Projects.Parser/SharpAssemblyAttribute.cs: Track changes in the api. 2006-12-14 Lluis Sanchez Gual * Makefile.am: Updated. * MonoDevelop.Projects.Parser/CompoundClass.cs, MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Added support for partial classes. * MonoDevelop.Projects.Parser/NamespaceEntry.cs: Added method for getting all classes in a namespace. * MonoDevelop.Projects.Parser/FileEntry.cs, MonoDevelop.Projects.Parser/ClassEntry.cs: A class can now be implemented in several files, so the linked list built by ClassEntry.NextInFile has been changed to an array of ClassEntry in FileEntry. * MonoDevelop.Projects.Parser/ProjectCodeCompletionDatabase.cs: Set the initialFileCheck flag at the end of the constructor, since CheckModifiedFiles may be called during the construction by the base constructor. * MonoDevelop.Projects.Parser/ModifierEnum.cs: Added VisibilityMask member. 2006-12-13 Jacob Ilsø Christensen * MonoDevelop.Projects/DotNetProjectBinding.cs: Remember to set ProjectBasePath. Fixes bug #79825. * MonoDevelop.Projects/ProjectCreateInformation.cs: Use Path.Combine. 2006-12-12 Ankit Jain * MonoDevelop.Projects/ProjectFile.cs (ResourceId): New. ResourceId for embedded resources. * MonoDevelop.Projects/Project.cs (DefaultNamespace): New. (GetDefaultResourceId): New. 2006-11-20 Ankit Jain * MonoDevelop.Projects/ProjectFile.cs (IsExternalToProject): Use the absolute path for comparison. 2006-11-16 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Added null check. 2006-11-15 David Makovský (Yakeen) * MonoDevelop.Projects.Parser/DefaultParserService.cs: added checks for empty Monodevelop.TaskListTokens property 2006-11-15 David Makovský (Yakeen) * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: added checks for loaded file entry type, enabling code 2006-11-14 Lluis Sanchez Gual * MonoDevelop.Projects/Project.cs: When copying files to output directory, make sure the directory exists. * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Disabled UpdatedCommentTasks call until hang is fixed. 2006-11-13 David Makovský (Yakeen) * MonoDevelop.Projects.mdp: * Makefile.am: updated * MonoDevelop.Projects.Parser/CommentTasksChangedEventHandler.cs: added * MonoDevelop.Projects.Parser/FileEntry.cs: enhaced by CommentTasks property * MonoDevelop.Projects.Parser/DefaultParserService.cs: * MonoDevelop.Projects.Parser/SimpleCodeCompletionDatabase.cs: * MonoDevelop.Projects.Parser/IParserService.cs: * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: * MonoDevelop.Projects.Parser/ProjectCodeCompletionDatabase.cs: added functionality for Comment Tags 2006-11-06 Lluis Sanchez Gual * MonoDevelop.Projects/Projects.cs: Reset the isDirty flag after loading the project. 2006-09-21 Lluis Sanchez Gual * MonoDevelop.Projects/BuildEventArgs.cs: New event handler which replaces ProjectCompileEventHandler. * MonoDevelop.Projects/Project.cs: Cancel de build if cancellation is requested. * MonoDevelop.Projects.Parser/ProjectCodeCompletionDatabase.cs: * MonoDevelop.Projects.Parser/FileEntry.cs: * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: Check for .exe extensions when looking for an assembly. * MonoDevelop.Projects.mdp: * Makefile.am: Updated. 2006-09-18 Jacob Ilsø Christensen * .: Added svn:ignore for MonoDevelop.Projects.pidb. 2006-09-12 Jacob Ilsø Christensen * .: Added svn:ignore for MonoDevelop.Projects.dll.config. 2006-09-12 Levi Bard * MonoDevelop.Projects/ProjectService.cs: Win32 URI workaround. 2006-09-12 Jacob Ilsø Christensen * MonoDevelop.Projects.Ambience/Ambience.cs: Added Convert method for LocalVariable instances. * MonoDevelop.Projects.Ambience/NetAmbience.cs: Track changes in Ambience. 2006-09-04 Lluis Sanchez Gual * MonoDevelop.Projects/Project.cs: Workaround Mono bug. The watcher seems to stop watching if an exception is thrown in the event handler. 2006-08-30 Lluis Sanchez Gual * MonoDevelop.Projects.Text/TextFile.cs: Workaround a mono bug (FileInfo.OpenRead is not using Read share). * MonoDevelop.Projects.mdp: Updated. 2006-08-22 Lluis Sanchez Gual * MonoDevelop.Projects/CombineEntry.cs: Removed obsolete code. * MonoDevelop.Projects/Combine.cs: Properly bind combine configurations to project configurations. Fixes bug #79108. Removed some unused code. 2006-08-21 Lluis Sanchez Gual * MonoDevelop.Projects/MdsFileFormat.cs: Improve the error message when a project can't be loaded. * MonoDevelop.Projects.Parser/DefaultParserService.cs: * MonoDevelop.Projects.Parser/FileEntry.cs: * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: When unloading a database, remove pending parse jobs belonging to that database. Fixes bug #79101. 2006-08-08 Lluis Sanchez Gual * MonoDevelop.Projects.Ambience/AmbienceService.cs: Added GetAmbienceForFile method. 2006-08-07 Philip Turnbull * MonoDevelop.Projects/DotNetProject.cs: * MonoDevelop.Projects/Project.cs: Added Ambience property. * MonoDevelop.Projects.Ambience/Ambience.cs: Added ShowClassModifiers and ShowGenericParameters flags to ConversionFlags. Refactored IAmbience interface into Ambience class. * MonoDevelop.Projects.Ambience/AmbienceReflectionDecorator.cs: * MonoDevelop.Projects.Ambience/AbstractAmbience.cs: * MonoDevelop.Projects.Ambience/IAmbience.cs: Removed unused class. * MonoDevelop.Projects.Ambience/AmbienceService.cs: Refactored AmbienceService class. * MonoDevelop.Projects.Ambience/AbstractAmbience.cs: * MonoDevelop.Projects.Ambience/NetAmbience.cs: Track API changes in Ambience. * MonoDevelop.Projects/MonoDevelop.Projects.addin.xml: Fixed classname of NetAmbience. * MonoDevelop.Projects.Ambience/CodeDOMGeneratorUtility.cs: Renamed and made CodeGeneratorOptions static. 2006-08-08 Lluis Sanchez Gual * MonoDevelop.Projects/CombineEntry.cs: Added DefaultDeployTarget property. * MonoDevelop.Projects.addin.xml: Registered the new directory deploy target handler. * MonoDevelop.Projects.Deployment/DeployTarget.cs: Report exceptions while deploying. * Makefile.am: * MonoDevelop.Projects.mdp: Updated. 2006-08-04 Lluis Sanchez Gual * MonoDevelop.Projects/Combine.cs: Removed unused variable. * MonoDevelop.Projects.Text/TextEncoding.cs: New file. Text encoding support based on g_convert. * MonoDevelop.Projects.Text/TextFile.cs: Added methods for reading and writting files using specific encodings. * MonoDevelop.Projects.Parser/DefaultParserService.cs: Properly load combines in the parser database. * MonoDevelop.Projects.dll.config.in: New file. * Makefile.am: * MonoDevelop.Projects.mdp: Updated. 2006-07-30 Matej Urbas * MonoDevelop.Projects.Parser/GenericParameter.cs: Changed the access level of some commonly needed fields in GenericParameter to protected. Added the forgotten license. * MonoDevelop.Projects.Parser/PersistentReturnType.cs: Corrected a very nasty typo. * MonoDevelop.Projects.Parser/ReturnTypeList.cs: * MonoDevelop.Projects.Parser/GenericParameterList.cs: * MonoDevelop.Projects.Parser/PersistentGenericParamater.cs: Added the forgotten license. 2006-07-28 Matej Urbas * MonoDevelop.Projects.Ambience/AbstractAmbience.cs: Added 'ShowGenericParameters' property for the new ambience flag. * MonoDevelop.Projects.Ambience/IAmbience.cs: Added the 'ShowGenericParameters' flag. 2006-07-27 Matej Urbas * MonoDevelop.Projects.Parser/ReflectionReturnType.cs: Added generics support and entirely changed the process of visiting Mono.Cecil return types. * MonoDevelop.Projects.Parser/ReflectionMethod.cs: * MonoDevelop.Projects.Parser/ReflectionClass.cs: Added generics support - now generic types get correctly parsed from Mono assemblies. * MonoDevelop.Projects.Parser/ReflectionParameter.cs: Changed the way we figure out if the parameter is passed ByRef. * MonoDevelop.Projects.Parser/IReturnType.cs: Added the ByRef property which tells whether the type is passed by reference (as a method parameter). * MonoDevelop.Projects.Parser/AbstractReturnType.cs: Added ByRef implementation. * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Increased the version number. * MonoDevelop.Projects.Parser/GenericParameter.cs: GenericParameter now uses special constraints as provided by Mono.Cecil - it is much cleaner so. * MonoDevelop.Projects.Parser/PersistentMethod.cs: Added support for generic methods. * MonoDevelop.Projects.Parser/PersistentReturnType.cs: Added generics support and implemented ByRef (de)serialization. With special thanks to Jb Evain (author of Cecil). * MonoDevelop.Projects.Parser/PersistentGenericParamater.cs: Added this file to the project. It handles (de)serialization of generic parameters from/to the code completion databases. * MonoDevelop.Projects.mdp: Added a new file to the build process. * Makefile.am: Added a new file to the build process. 2006-07-25 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: * MonoDevelop.Projects.Parser/IParserService.cs: * MonoDevelop.Projects.Parser/DefaultParserService.cs: Added an UpdateDatabase method to IParserContext. This method will parse all modified files of the parser context. It does not use the parsing queue, so it will block until done. * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: Override IsFileModified instead of CheckModifiedFiles. 2006-07-25 Lluis Sanchez Gual * MonoDevelop.Projects/Combine.cs: When disposing the combine, dispose all combine entries. * MonoDevelop.Projects.Parser/IParserService.cs: * MonoDevelop.Projects.Parser/DefaultParserService.cs: Added properties and events that give information about when the parser database is parsing code or assemblies. * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Added a check when loading the database, which will avoid allocation huge arrays if the file format is corrupted. * MonoDevelop.Projects.Parser/ProjectCodeCompletionDatabase.cs: Fixed a bug which was causing some databases to be marked as modified, when they were not. 2006-07-17 Lluis Sanchez Gual * MonoDevelop.Projects/DotNetProject.cs: Copy files with BuildAction.FileCopy. * MonoDevelop.Projects/Project.cs: Removed old deployment classes. * MonoDevelop.Projects/ProjectFile.cs: Added new build action: copy to output directory. * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: From now on, assemblies which belong to a package will only be reparsed when the package version changes, not when the assembly timestamp changes. * Makefile.am: Removed unused files. * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Bump db version. 2006-07-12 Lluis Sanchez Gual * MonoDevelop.Projects/Project.cs: In CheckNeedsBuild, always check for modified files. We can't rely on the watcher for now, since it's not scanning project subdirectories. * MonoDevelop.Projects.Parser/LocalVariable.cs: Added Region property. 2006-07-11 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectCreateInformation.cs: The bin directory should be relative to the project directory, not the combine directory. * MonoDevelop.Projects/Project.cs: In Clean(), delete the referenced assemblies as well as the generated assembly. Fixes bug #78447. 2006-07-10 Alexandre Miguel Pedro Gomes * MonoDevelop.Projects.Extensions/LanguageBindingCodon.cs: Fix typo. 2006-07-10 Lluis Sanchez Gual * MonoDevelop.Projects/Combine.cs: * MonoDevelop.Projects/Project.cs: * MonoDevelop.Projects/ProjectReference.cs: Added null checks. * MonoDevelop.Projects/DefaultCompilerResult.cs: Implemented method for adding errors to a DefaultCompilerResult. * MonoDevelop.Projects/DotNetProject.cs: Report an error if a project referenced by a reference can't be found. 2006-07-10 Lluis Sanchez Gual * MonoDevelop.Projects.CodeGeneration/BaseRefactorer.cs: Fixed crash when locating the position for a new method. Fixes bug #78798. * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: After successfully parsing an assembly, reset the error retry count. * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: * MonoDevelop.Projects.Parser/SimpleCodeCompletionDatabase.cs: * MonoDevelop.Projects.Parser/ProjectCodeCompletionDatabase.cs: UpdateClassInformation does not flush the database anymore, so it has to be explicitely called. 2006-07-06 Lluis Sanchez Gual * MonoDevelop.Projects/DotNetProjectConfiguration.cs: Added fallback type for the compilation parameters property. * MonoDevelop.Projects/DotNetProject.cs: Don't crash if the specified language binding can't be found. * MonoDevelop.Projects/CmbxFileFormat.cs: Fix warning. * MonoDevelop.Projects.Serialization/ItemPropertyAttribute.cs: * MonoDevelop.Projects.Serialization/ClassDataType.cs: Allow specifying a fallback type in the ItemProperty attribute. 2006-07-05 Matej Urbas * MonoDevelop.Projects.Utility/DiffUtility.cs: Changed the comparison methods to allow comparison between null and non-null arguments. * MonoDevelop.Projects.Parser/IClass.cs: * MonoDevelop.Projects.Parser/IMethod.cs: * MonoDevelop.Projects.Parser/IReturnType.cs: * MonoDevelop.Projects.Parser/AbstractClass.cs: * MonoDevelop.Projects.Parser/AbstractReturnType.cs: * MonoDevelop.Projects.Parser/ClassProxy.cs: * MonoDevelop.Projects.Parser/AbstractMethod.cs: Extended all above interfaces and classes to provide generics support. * MonoDevelop.Projects.Parser/GenericParameter.cs: * MonoDevelop.Projects.Parser/GenericParameterList.cs: * MonoDevelop.Projects.Parser/ReturnTypeList.cs: Added above files to the project. * MonoDevelop.Projects.CodeGeneration/CodeRefactorer.cs: Updated to use ReturnType as BaseTypes in IClass instances. * MonoDevelop.Projects.mdp: Added new files to the build process. * Makefile.am: Added new files to the build process. 2006-07-03 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectReference.cs: Remove the DataItemAttribute, since the name property wasn't used at all, and now it is. Added serialization fallback type. Replaced TypeLib reference type by Custom. Replaced GetReferencedFileName() by GetReferencedFileNames(). A Reference may now reference several files. * MonoDevelop.Projects/CombineConfiguration.cs: * MonoDevelop.Projects/AbstractProjectConfiguration.cs: * MonoDevelop.Projects/DeployInformation.cs: Remove the DataItemAttribute, since the name property wasn't used at all, and now it is. * MonoDevelop.Projects/ProjectService.cs: Throw an exception when a serializable type can't be found. * MonoDevelop.Projects/IConfiguration.cs: * MonoDevelop.Projects/CombineEntry.cs: Added serialization fallback type. * MonoDevelop.Projects/IDotNetLanguageBinding.cs: * MonoDevelop.Projects/DotNetProject.cs: Removed obsolete GenerateMakefiles method. * MonoDevelop.Projects/CmbxFileFormat.cs: Some changes to support version tolerant serialization of combines. * MonoDevelop.Projects/Project.cs: Added serialization fallback type. Track API changes in ProjectReference. * MonoDevelop.Projects.Serialization/DataType.cs: * MonoDevelop.Projects.Serialization/DataContext.cs: * MonoDevelop.Projects.Serialization/DataCollection.cs: * MonoDevelop.Projects.Serialization/ClassDataType.cs: * MonoDevelop.Projects.Serialization/DataSerializer.cs: * MonoDevelop.Projects.Serialization/DataItemAttribute.cs: Implemented support for serialization fallback types. That is, when the serializer is deserializing an object, if the type of the object cannot be found (for example, because it was created by an add-in not installed in the system), then it will create a replacement object. The property FallbackType can be used to specify the type of the replacement object. * MonoDevelop.Projects.addin.xml: Registered two new types of deployment targets. Updated add-in version and references. * MonoDevelop.Projects.Deployment/DeployTarget.cs: Added fallback type. Added a new CombineEntry property. * MonoDevelop.Projects.Deployment/DeployHandler.cs: * MonoDevelop.Projects.Deployment/IDeployHandler.cs: Moved Deploy method from DeployTarget class to IDeployHandler. * MonoDevelop.Projects.CodeGeneration/BaseRefactorer.cs: Make sure parse information for files is updated before running refactory operations. * MonoDevelop.Projects/Makefile.am: Updated. * MonoDevelop.Projects.Parser/IParserService.cs: * MonoDevelop.Projects.Parser/DefaultParserService.cs: Added a public UpdateFile method to IParserDatabase, which updates the parser information of a file. * MonoDevelop.Projects.Parser/ProjectCodeCompletionDatabase.cs: Track api changes in ProjectReference. 2006-06-29 Michael Hutchinson * MonoDevelop.Projects/DotNetProjectConfiguration.cs: Make CompileTarget overridable. * MonoDevelop.Projects/Project.cs: * MonoDevelop.Projects/DotNetProject.cs: Add SupportedLanguages array, allowing multiple languages. * MonoDevelop.Projects/ProjectFile.cs: Remove redundant entries from Subtype enum. 2006-06-19 Scott Ellington * MonoDevelop.Projects/CombineEntry.cs: add a Version property * MonoDevelop.Projects/Combine.cs: overload GetAllBuildableEntries to allow them to be returned sorted in building order. 2006-06-15 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectsServices.cs: Added DeployService. * MonoDevelop.Projects/CombineEntry.cs: Added a list of deploy targets. * MonoDevelop.Projects.addin.xml: Registered new deploy service and extension point. * MonoDevelop.Projects.mdp: * Makefile.am: Added new files. * MonoDevelop.Projects.Deployment/DeployHandler.cs: * MonoDevelop.Projects.Deployment/DeployService.cs: * MonoDevelop.Projects.Deployment/DeployTarget.cs: * MonoDevelop.Projects.Deployment/IDeployHandler.cs: New files. 2006-06-15 Lluis Sanchez Gual * MonoDevelop.Projects/LanguageBindingService.cs: * MonoDevelop.Projects/ProjectService.cs: Use the new extension listeners to read extensions. * MonoDevelop.Projects/Project.cs: Don't cache build steps since they may change if new add-ins are activated. * MonoDevelop.Projects.addin.xml: * MonoDevelop.Projects.Extensions/DataTypeCodon.cs: New codon used to specify serializable types. * Makefile.am: * MonoDevelop.Projects.mdp: Updated. 2006-06-08 Lluis Sanchez Gual * MonoDevelop.Projects/DotNetProject.cs: GetDefaultNamespace now removes invalid characters from the project name. Fixes bug #78552. 2006-06-02 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/DefaultParserService.cs: Fixed a bug in CleanUnusedDatabases. Some 'used' databases were unloaded. * MonoDevelop.Projects.Parser/ProjectCodeCompletionDatabase.cs: avoid notifying changes in references while the project database is being created. 2006-05-22 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/ICompilationUnitBase.cs: * MonoDevelop.Projects.Parser/AbstractCompilationUnit.cs: * Makefile.am: Removed ICSharpCode.SharpRefactory dependency. 2006-05-12 Lluis Sanchez Gual * MonoDevelop.Projects/Combine.cs: Renamed GetProjectEntryContaining to a more coherent GetProjectContainingFile. 2006-05-05 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: Use GetAssemblyManifest instead of GetAssembly, which is faster. * MonoDevelop.Projects.addin.xml: Added some descriptions. 2006-05-05 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: Added LoadError error property, which is set to true if the assembly can't be found. * MonoDevelop.Projects.Parser/DefaultParserService.cs: In GenerateAssemblyDatabase, throw an exception if the assembly can't be found. This avoids an infinite reparsing loop. * MonoDevelop.Projects.Parser/AssemblyInformation.cs: Don't catch exceptions, since they are cached by the caller. 2006-05-04 Lluis Sanchez Gual * MonoDevelop.Projects.addin.xml: Updated versions. * MonoDevelop.Projects.mdp: Updated. 2006-05-04 Lluis Sanchez Gual * MonoDevelop.Projects/Combine.cs: Fix nullref in Clean. 2006-04-24 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: Don't crash if an assembly can't be found. It can be a dependency not yet installed. Fixes bug #78172. * MonoDevelop.Projects.Parser/DefaultParserService.cs: Log some exceptions. 2006-04-21 Lluis Sanchez Gual * MonoDevelop.Projects.CodeGeneration/BaseRefactorer.cs: Fix hang when adding a new line. 2006-04-21 Lluis Sanchez Gual * MonoDevelop.Projects/DotNetProjectConfiguration.cs: Added property for ClrVersion. * MonoDevelop.Projects/ProjectReference.cs: Removed setter for the Reference property, and the ReferenceChanged event. Removed also some unused code. * MonoDevelop.Projects/CombineEntry.cs: Added Modified and Saved events. * MonoDevelop.Projects/Combine.cs: Fire change events when the combine changes. Chain on entrie's Modified and Saved events. * MonoDevelop.Projects/DotNetProject.cs: Added property for ClrVersion. * MonoDevelop.Projects/Project.cs: Fire change events when the project changes. * MonoDevelop.Projects.Ambience/AmbienceReflectionDecorator.cs: Commented unused code. * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: Use Cecil and SystemAssemblyService to get information about assemblies. * MonoDevelop.Projects.Parser/DefaultParserService.cs: Added some null checks. Factorized some code. * MonoDevelop.Projects.Parser/ProjectCodeCompletionDatabase.cs: Added support for different CLR versions. * MonoDevelop.Projects.Parser/ReflectionClass.cs: * MonoDevelop.Projects.Parser/ReflectionParameter.cs: * MonoDevelop.Projects.Parser/ReflectionEvent.cs: * MonoDevelop.Projects.Parser/ReflectionMethod.cs: * MonoDevelop.Projects.Parser/ReflectionProperty.cs: * MonoDevelop.Projects.Parser/ReflectionIndexer.cs: * MonoDevelop.Projects.Parser/ReflectionField.cs: * MonoDevelop.Projects.Parser/ReflectionReturnType.cs: * MonoDevelop.Projects.Parser/AssemblyInformation.cs: Use Cecil instead of reflection to read assembly data. * MonoDevelop.Projects.mdp: * Makefile.am: Added reference to Mono.Cecil. 2006-04-18 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/DefaultParserService.cs: Fix warning. * MonoDevelop.Projects.mdp: Removed unneeded dependency. 2006-04-11 Lluis Sanchez Gual * TextFile.cs: In InsertText, insert the text in the text field, not in the text parameter. Patch by Tom Stephenson. 2006-04-07 David Makovský (Yakeen) * MonoDevelop.Projects.Extensions/FileFormatCodon.cs: Renamed XML attribute 2006-04-07 Lluis Sanchez Gual * MonoDevelop.Projects.Extensions/FileFormatCodon.cs: * MonoDevelop.Projects.Extensions/LanguageBindingCodon.cs: * MonoDevelop.Projects.Extensions/ProjectBindingCodon.cs: * MonoDevelop.Projects.Extensions/ItemPropertyCodon.cs: * MonoDevelop.Projects.Extensions/FileFilterCodon.cs: * MonoDevelop.Projects.addin.xml: Add documentation. 2006-04-04 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/DefaultParserService.cs: More null checks. 2006-04-03 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/DefaultParserService.cs: Added null check for BodyRegion (delegates don't have it). 2006-03-31 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/DefaultParserService.cs: Added some null checks. 2006-03-31 Lluis Sanchez Gual * MonoDevelop.Projects.addin.xml: Break compatibility with old versions. 2006-03-30 Lluis Sanchez Gual * MonoDevelop.Projects/Combine.cs: Added null check for combine configuration entries. It may happen in projects with inconsistent data. 2006-03-29 Lluis Sanchez Gual * MonoDevelop.Projects/CombineConfiguration.cs: * MonoDevelop.Projects/Combine.cs: Update the active configuration of projects when the configuration structure changes. 2006-03-24 Lluis Sanchez Gual * MonoDevelop.Projects.mdp: Updated. * Makefile.am: Use an unified format. Patch by Matze Braun. * MonoDevelop.Projects.addin.xml: Updated add-in versions. 2006-03-23 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectReference.cs: When creating or loading a gac reference, if the exact assembly version is not installed, try to find a superior one. This should avoid build errors when loading a project with references to old gtk# assemblies. It also fixes bug #70645. 2006-03-17 Jacob Ilsø Christensen * MonoDevelop.Projects.Parser/DefaultParserService.cs: * MonoDevelop.Projects.Parser/IParser.cs: * MonoDevelop.Projects.Parser/IParserService.cs: Removed unused MonodocResolver. 2006-03-16 Jacob Ilsø Christensen * MonoDevelop.Projects/ProjectsServices.cs: * MonoDevelop.Projects.Documentation: * MonoDevelop.Projects.Documentation/IDocumentationService.cs: * Makefile.am: * MonoDevelop.Projects.Parser/ReflectionClass.cs: Use new DocumentationService. 2006-03-08 Lluis Sanchez Gual * MonoDevelop.Projects.Text/TextFile.cs: Some small improvements. * MonoDevelop.Projects.CodeGeneration/IRefactorer.cs: In MemberReference, added TextLine property that holds the text of the line where the reference was found. * MonoDevelop.Projects.CodeGeneration/CodeRefactorer.cs: Implemented FindDerivedClasses method. * MonoDevelop.Projects.Parser/DefaultParserService.cs: make sure GetEnclosingLanguageItem returns fully resolved classes. * MonoDevelop.Projects.Parser/AbstractIndexer.cs: * MonoDevelop.Projects.Parser/AbstractAttribute.cs: * MonoDevelop.Projects.Parser/AbstractMember.cs: * MonoDevelop.Projects.Parser/Namespace.cs: * MonoDevelop.Projects.Parser/AbstractEvent.cs: * MonoDevelop.Projects.Parser/AbstractField.cs: * MonoDevelop.Projects.Parser/AbstractProperty.cs: * MonoDevelop.Projects.Parser/ClassProxy.cs: * MonoDevelop.Projects.Parser/ILanguageItem.cs: * MonoDevelop.Projects.Parser/LocalVariable.cs: * MonoDevelop.Projects.Parser/AbstractMethod.cs: * MonoDevelop.Projects.Parser/AbstractParameter.cs: * MonoDevelop.Projects.Parser/AbstractClass.cs: * MonoDevelop.Projects.Parser/AbstractReturnType.cs: * MonoDevelop.Projects.Parser/AbstractDecoration.cs: Several fixes in CompareTo, and implemented Equals and GetHashCode. 2006-03-08 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: Avoid creating a MonodocService instance. Instead, add a MonoDevelop.Documentation dependency to the external process. 2006-03-07 Lluis Sanchez Gual * MonoDevelop.Projects/MdpFileFormat.cs: Catch exceptions thrown while opening the file. * MonoDevelop.Projects/ProjectFileCollection.cs: Added Remove overload. * MonoDevelop.Projects/Project.cs: * MonoDevelop.Projects/ProjectFile.cs: * MonoDevelop.Projects/Combine.cs: Added new event fired when the properties of a project file change. 2006-03-06 Lluis Sanchez Gual * MonoDevelop.Projects/MonoDevelop.Projects/DotNetProject.cs: Added a more user friendly error message to show when loading a project of an unknown language. Fixes bug #77467. 2006-03-03 Jacob Ilsø Christensen * MonoDevelop.Projects/Combine.cs: Make sure that solutions added to an existing solution will inherit the configurations from the parent. 2006-03-02 Lluis Sanchez Gual * MonoDevelop.Projects/DotNetProject.cs: Added GetDefaultNamespace overridable. * MonoDevelop.Projects.Parser/ProjectCodeCompletionDatabase.cs: Parse files added to projects. * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: AddFile now returns the added FileEntry. 2006-02-28 Jacob Ilsø Christensen * MonoDevelop.Projects/Project.cs: Fixed plural issue. 2006-02-24 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: Notify assembly changes. * MonoDevelop.Projects.Parser/IParserService.cs: * MonoDevelop.Projects.Parser/DefaultParserService.cs: Added support for loading assemblies. Implemented a new GetAssemblyContext method in IParserDatabase, which provides access to assembly parser information. * MonoDevelop.Projects.Parser/AssemblyInformationEventHandler.cs: New event handler. * MonoDevelop.Projects.mdp: * Makefile.am: Updated. 2006-02-16 Lluis Sanchez Gual * MonoDevelop.Projects.Extensions/ItemPropertyCodon.cs: * MonoDevelop.Projects/ProjectService.cs: Added new extension point where custom properties can be registered. * MonoDevelop.Projects/Combine.cs: Added new GetAllProjects overload which returns the projects in the order they need to be built. * MonoDevelop.Projects/IBuildStep.cs: * MonoDevelop.Projects/Project.cs: Added yet another extension point for Project. There is now a build pipeline which can be extended by add-ins to perform custom actions before or after the main build. * MonoDevelop.Projects.CodeGeneration/XmlCodeDomReader.cs: properly deserialize CodeTypeReference. * MonoDevelop.Projects.Parser/PropertyCollection.cs: * MonoDevelop.Projects.Parser/EventCollection.cs: Added indexer which looks for a member by name. * MonoDevelop.Projects.addin.xml: Declared new extension points. * MonoDevelop.Projects.mdp: * Makefile.am: Updated. 2006-02-10 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/DatabaseGeneratorTool.cs: added tool for generating parser databases (replaces dbgen). * MonoDevelop.Projects.Parser/DefaultParserService.cs: GenerateAssemblyDatabase now returns the name of the generated DB. * MonoDevelop.Projects.addin.xml: Registered the new tool. * Makefile.am: * MonoDevelop.Projects.mdp: Updated. 2006-01-30 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/LanguageItemCollection.cs: * MonoDevelop.Projects.mdp: * Makefile.am: Added LanguageItemCollection.cs. * MonoDevelop.Projects.Parser/IParser.cs: * MonoDevelop.Projects.Parser/IParserService.cs: * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: * MonoDevelop.Projects.Parser/DefaultParserService.cs: Use LanguageItemCollection instead of ArrayList. * MonoDevelop.Projects.Parser/Namespace.cs: Added constructor. 2006-01-26 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/Namespace.cs: * MonoDevelop.Projects.mdp: * Makefile.am: Added Namespace class. 2006-01-24 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectCreateInformation.cs: Added CombineName property, since it may be different from the project name. 2006-01-18 Lluis Sanchez Gual * MonoDevelop.Projects/DotNetProjectBinding.cs: * MonoDevelop.Projects/ProjectService.cs: * MonoDevelop.Projects/IProjectService.cs: * MonoDevelop.Projects/IProjectBinding.cs: Added CanCreateSingleFileProject() method to all those classes. It checks if a single file project can be created from a given file. 2006-01-14 Andrés G. Aragoneses * MonoDevelop.Projects/MdsFileFormat.cs: Replaced 'Combine' by 'Solution'. * MonoDevelop.Projects/CmbxFileFormat.cs: Replaced 'Combine' by 'Solution'. 2006-01-13 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/AssemblyCodeCompletionDatabase.cs: Properly handle errors found when parsing an assembly. When there is an error, make sure the assembly is reparsed the next time MD starts. * MonoDevelop.Projects.Parser/FileEntry.cs: Added DisableParse property. * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: In Write(), close the file in case of error. Also flush the binary writer before writing the index offset. 2006-01-10 Mart Roosmaa * MonoDevelop.Projects/Combine.cs: Updated an using statement. 2006-01-10 Lluis Sanchez Gual * MonoDevelop.Projects.Text/TextFile.cs: Added Modified property. * MonoDevelop.Projects.CodeGeneration/RefactorerContext.cs: Don't save files that have not been modified. * MonoDevelop.Projects.CodeGeneration/IRefactorer.cs: In MemberReferenceCollection, properly sort the references before renaming, to make sure that position values are always correct. Added file and column to MemberReference. * MonoDevelop.Projects.CodeGeneration/CodeRefactorer.cs: Class scope is actualy File scope. * MonoDevelop.Projects.CodeGeneration/BaseRefactorer.cs: Find members in the correct class. * MonoDevelop.Projects.Parser/PersistentClass.cs: Added SerializeObject and DeserializeObject in PersistentHelper. * MonoDevelop.Projects.Parser/AbstractAttribute.cs: * MonoDevelop.Projects.Parser/PersistentAttribute.cs: * MonoDevelop.Projects.Parser/IAttribute.cs: Use CodeDom expressions to store attribute parameters. * MonoDevelop.Projects.Parser/IExpressionFinder.cs: Updated from SharpDevelop. * MonoDevelop.Projects.Parser/IParser.cs: Added ResolveIdentifier. Replaced ExpressionFinder property by a CreateExpressionFinder method. * MonoDevelop.Projects.Parser/IParserService.cs: UpdateFile now returns the parsed information. Added ResolveIdentifier and GetEnclosingLanguageItem methods to the interface. * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Bump file version. * MonoDevelop.Projects.Parser/DefaultParserService.cs: Implemented ResolveIdentifier and other helper methods. UpdateFile now reads the file from disc if the file content is not provided as parameter. * Makefile.am: Added ExpressionContext.cs. * MonoDevelop.Projects.mdp: Updated. 2005-12-19 Lluis Sanchez Gual * Makefile.am: Added RefactorerContext.cs. 2005-12-19 Lluis Sanchez Gual * MonoDevelop.Projects.CodeGeneration/IRefactorer.cs: * MonoDevelop.Projects.CodeGeneration/CodeRefactorer.cs: * MonoDevelop.Projects.CodeGeneration/BaseRefactorer.cs: Created generic methods for generating member code, instead of having specific methods for field, method, event, etc. Implemented most of refactoring operations for all member types, but it's mostly untested. * MonoDevelop.Projects.CodeGeneration/IRefactorerContext.cs: Removed. Using RefactorerContext insted. * MonoDevelop.Projects.CodeGeneration/RefactorerContext.cs: New class. 2005-12-13 Lluis Sanchez Gual * MonoDevelop.Projects.CodeGeneration/CodeRefactorer.cs: Removed anonymous methods. 2005-12-13 Lluis Sanchez Gual * MonoDevelop.Projects/DotNetProject.cs: * MonoDevelop.Projects/PrjxFileFormat.cs: * MonoDevelop.Projects/DotNetProjectBinding.cs: Use the new IDotNetLanguageBinding subclass of ILanguageBinding. * MonoDevelop.Projects.Parser/IParser.cs: * MonoDevelop.Projects/IDotNetLanguageBinding.cs: * MonoDevelop.Projects/ILanguageBinding.cs: Created a subclass of ILanguageBinding for .net languages. Moved some methods from ILanguageBinding and IParser there. * MonoDevelop.Projects/LanguageBindingService.cs: Moved here some methods from ParserService. Added support for IRefactorer. * MonoDevelop.Projects.Parser/ILanguageItem.cs: * MonoDevelop.Projects.Parser/LocalVariable.cs: Some new support classes needed by refactoring. * MonoDevelop.Projects.Parser/PersistentAttribute.cs: New classes needed to support persistence of attributes. * MonoDevelop.Projects.CodeGeneration/BaseRefactorer.cs: * MonoDevelop.Projects.CodeGeneration/CodeRefactorer.cs: * MonoDevelop.Projects.CodeGeneration/IRefactorer.cs: * MonoDevelop.Projects.CodeGeneration/IRefactorerContext.cs: * MonoDevelop.Projects.CodeGeneration/RefactorOperations.cs: * MonoDevelop.Projects.CodeGeneration/XmlCodeDomReader.cs: Initial refactoring support. * MonoDevelop.Projects.Text/IEditableTextFile.cs: * MonoDevelop.Projects.Text/ITextFile.cs: * MonoDevelop.Projects.Text/ITextFileProvider.cs: * MonoDevelop.Projects.Text/TextFile.cs: New classes to support parsing and refactoring in different kinds of text buffers. * MonoDevelop.Projects.Parser/IMember.cs: * MonoDevelop.Projects.Parser/AbstractNamedEntity.cs: * MonoDevelop.Projects.Parser/IDecoration.cs: * MonoDevelop.Projects.Parser/AbstractDecoration.cs: * MonoDevelop.Projects.Parser/IClass.cs: Moved Name property to IDecoration. Moved Documentation to ILanguageItem. * MonoDevelop.Projects.Parser/PersistentIndexer.cs: * MonoDevelop.Projects.Parser/AbstractMember.cs: * MonoDevelop.Projects.Parser/PersistentEvent.cs: * MonoDevelop.Projects.Parser/PersistentField.cs: * MonoDevelop.Projects.Parser/PersistentProperty.cs: * MonoDevelop.Projects.Parser/PersistentMethod.cs: * MonoDevelop.Projects.Parser/PersistentClass.cs: Properly set the DeclaringType property. Read/Write attributes and body location. * MonoDevelop.Projects.Parser/FieldCollection.cs: Added indexer. * MonoDevelop.Projects.Parser/AbstractAttribute.cs: * MonoDevelop.Projects.Parser/IAttribute.cs: Added Region property. * MonoDevelop.Projects.Parser/DefaultParserService.cs: Moved parser management to the language service. * MonoDevelop.Projects.Parser/AbstractParameter.cs: * MonoDevelop.Projects.Parser/IParameter.cs: Now it's a ILanguageItem. Added DeclaringMethod property. * MonoDevelop.Projects.Parser/IParserService.cs: Added support for parsing from text buffers, not only from files or strings. * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Updated file version. * MonoDevelop.Projects/MonoDevelop.Projects.mdp: Updated. 2005-11-18 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/PersistentClass.cs: Fix write order. * MonoDevelop.Projects.Parser/PersistentMethod.cs: Serialize the body region. * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Bump db version. 2005-11-04 Lluis Sanchez Gual * MonoDevelop.Projects/Combine.cs: Fix a warning and a NRE. * MonoDevelop.Projects/BuildTool.cs: Added some minimal help. 2005-10-25 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/ProjectCodeCompletionDatabase.cs: * MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs: Don't lock the database while parsing files. 2005-10-13 Lluis Sanchez Gual * MonoDevelop.Projects.Ambience/AmbienceService.cs: Cache AmbienceReflectionDecorator objects created in CurrentAmbience. 2005-10-11 John Luke * Makefile.am: remove SharpAssembly stuff from build * MonoDevelop.Projects.Ambience/NetAmbience.cs: comment out SharpAssembly stuff 2005-10-11 Mart Roosmaa * MonoDevelop.Projects.Parser/DefaultParserService.cs: Fixed a typo. 2005-10-11 Lluis Sanchez Gual * MonoDevelop.Projects/BuildTool.cs: Basic implementation of build tool. * MonoDevelop.Projects.addin.xml: Fixed addin header information. Use "id" attribuet instead of "name" to identify addins. 2005-10-06 Lluis Sanchez Gual * MonoDevelop.Projects/ProjectService.cs: Get serializable types from the addin tree. * MonoDevelop.Projects.addin.xml: Register serializable classes. 2005-10-04 Lluis Sanchez Gual * MonoDevelop.Projects.Parser/DefaultParserService.cs: * MonoDevelop.Projects/LanguageBindingService.cs: * MonoDevelop.Projects.Ambience/AmbienceService.cs: * MonoDevelop.Projects/ProjectService.cs: Use new addin API. * MonoDevelop.Projects/BuildTool.cs: Added build tool class (still empty). * MonoDevelop.Projects.addin.xml: Added addin dependencies. Registered build tool. 2005-10-04 Lluis Sanchez Gual * Makefile.am: Install the assembly in the AddIns directory. 2005-09-28 Lluis Sanchez Gual Created new assembly. Old ChangeLog entries can be found in the MonoDevelop.Ide ChangeLog.