2003-04-24 Martin Baulig <martin@ximian.com>
[mono.git] / mono / metadata / ChangeLog
index 12b1987ad8a6923a42c3a7d9f7198be527bdbf3b..c92298838ca68700e0bf72e384b9ca1043b66763 100644 (file)
@@ -1,5 +1,378 @@
+2003-04-24  Martin Baulig  <martin@ximian.com>
+
+       * mono-debug-debugger.c: Moved all code which interacts with the
+       Mono Debugger here.
+
+       * debug-mono-symfile.c: This code now just deals with the symbol
+       file itself, the debugger code is now in mono-debug-debugger.c.
+
+2003-04-23  Martin Baulig  <martin@ximian.com>
+
+       * mono-debug.c (mono_debug_source_location_from_il_offset):
+       New method; like mono_debug_source_location_from_address(), but
+       takes an IL offset instead of a machine address.
+
+2003-04-23  Martin Baulig  <martin@ximian.com>
+
+       * debug-mono-symfile.h (MonoDebugLineNumberEntry): Removed the
+       `line' field; this is now computed by the debugger.
+
+2003-04-23  Martin Baulig  <martin@ximian.com>
+
+       * mono-debug.[ch]: New files.  This is the new debugging interface.
+
+       * mono-debug-debugger.[ch]: New files.  Moved all code which
+       interacts with the Mono Debugger here.
+
+2003-04-22  Dietmar Maurer  <dietmar@ximian.com>
+
+       * domain.c (mono_init): initialize mono_defaults.monitor_class
+
+2003-04-21  Miguel de Icaza  <miguel@ximian.com>
+
+       * reflection.c (method_encode_code): Add a spicy exception to help
+       future compiler authors.
+
+2003-04-21  Martin Baulig  <martin@ximian.com>
+
+       * icall.c
+       (ves_icall_System_Reflection_Assembly_GetReferencedAssemblies):
+       Make this work with relative pathnames; g_filename_to_uri() needs
+       an absolute filename.
+
+2003-04-18  Zoltan Varga  <vargaz@freemail.hu>
+
+       * icall.c: Track name changes in Object and ValueType.
+
+2003-04-18  Dietmar Maurer  <dietmar@ximian.com>
+
+       * metadata.c (mono_type_stack_size): size should be a multiple of
+       sizeof (gpointer)
+
+2003-04-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * gc.c:
+       (internal_domain_finalize): moved into mono_domain_finalize. No need
+       to create another thread because the finalizers will be run in the
+       finalizer thread.
+       
+       (ves_icall_System_GC_WaitForPendingFinalizers): implemented.
+       (finalizer_notify): if shutting down, wait 2 seconds for the finalizers
+       to be run (MS does this too).
+
+2003-04-17  Zoltan Varga  <vargaz@freemail.hu>
+
+       * object.c (mono_class_compute_gc_descriptor): Update comment.
+
+       * loader.h marshal.h marshal.c: Added synchronized method wrappers.
+
+       * image.h: Add synchronized wrapper cache.
+
+       * image.c (do_mono_image_open): Initialize cache.
+
+       * reflection.c (create_dynamic_mono_image): Initialize cache.
+
+2003-04-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * icall.c: patch by Jerome Laban <jlaban@wanadoo.fr> that fixes
+       ves_icall_System_Buffer_ByteLengthInternal.
+
+Tue Apr 15 13:56:55 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+       * reflection.c: setup klass->nested_in earlier. Allow
+       a dash in the assembly name.
+
+2003-04-15  Dietmar Maurer  <dietmar@ximian.com>
+
+       * metadata.c (mono_type_to_unmanaged): dont access
+       type->data.klass for MONO_TYPE_OBJECT
+       (mono_type_to_unmanaged): consider System.Delegate class
+
+Tue Apr 15 11:16:05 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+       * class.c: just setup supertypes in the proper place instead of
+       initializing the full element class for arrays.
+
+Tue Apr 15 11:03:25 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+       * class.c: ensure the element class of arrays is initialized.
+       Setup the supertype info for array classes, too.
+
+2003-04-14  Miguel de Icaza  <miguel@ximian.com>
+
+       * icall.c (ves_icall_Type_GetNestedType): Add new internal call.
+
+2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * Makefile.am: re-added -m option when running cygpath. This way,
+       MONO_ASSEMBLIES and MONO_CFG_DIR will contain '/' as directory
+       separator.
+       * mono-config.c: same codepath for locating mono config file for WIN32
+       and the rest.
+       * assembly.c: if mono_assembly_setrootdir is called, don't override
+       the value set.
+
+2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * Makefile.am: patch by Urs Muff <umuff@quark.com> that fixes
+       MONO_ASSEMBLIES variable.
+
+Fri Apr 11 12:44:15 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+       * icall.c: added Assembly::GetNamespaces() icall.
+
+2003-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * reflection.c: fix from Jaak <jaak@zd.com.pl>.
+
+2003-04-10  Lluis Sanchez Gual  <lluis@ideary.com>
+
+       * appdomain.c,appdomain.h,icall.c: Added internal method that returns the process guid
+       * object.c: fixed bug in the construction of vtable for proxies
+
+2003-04-10  Zoltan Varga  <vargaz@freemail.hu>
+
+       * object.c (mono_array_new): Mark mono_array_new as an icall.
+
+2003-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * class.c: fixed test for public method when overriding interfaces.
+       Closes bug #40970.
+
+Wed Apr 9 15:19:41 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+       * appdomain.h, domain.c: added mono_domain_foreach() to
+       be able to access the currently loaded appdomains.
+       * object.c: make string interning work across sppdomains.
+       Mark some functions for use as icalls.
+
+2003-04-09  Zoltan Varga  <vargaz@freemail.hu>
+
+       * class.c reflection.c: Fix memory leaks reported by ccmalloc.
+
+       * reflection.h reflection.c: Allocate long living data using 
+       GC_MALLOC_ATOMIC so the collector does not need to scan it.
+
+       * reflection.c: Double the allocation size in streams instead of
+       increasing it, to prevent unneccesary copying on large assemblies.
+       
+       * reflection.c (mono_reflection_create_runtime_class): Avoid vtable
+       creation if the assembly does not have the Run flag set.
+
+Tue Apr 8 11:19:53 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+       * class.h: avoid the C++ keywords in header files (Jerome Laban
+       spotted and fixed this).
+
+2003-04-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * object.c:
+       (mono_unhandled_exception): fill in the arguments for the
+       UnhandledException event. Only trigger that event for the default
+       domain (as MS does).
+
+2003-04-04  Zoltan Varga  <vargaz@freemail.hu>
+
+       * object.c: Improve typed allocation stuff based on suggestions from
+       Paolo. Also turn it on if the GC library supports it.
+
+2003-04-03  Zoltan Varga  <vargaz@freemail.hu>
+
+       * object.c object.h class.h: Added experimental typed allocation
+       facility using the interfaces in gc_gcj.h.
+
+       * os/gc_wrapper.h: Added new include files.
+       
+2003-04-03  Martin Baulig  <martin@ximian.com>
+
+       All the following changes are conditional to `WITH_INCLUDED_LIBGC'
+       which is not yet enabled by default.
+
+       * gc.c (mono_gc_init): Set the gc_thread_vtable to our thread
+       functions.
+       (mono_gc_lock, mono_gc_unlock): New static functions.
+
+       * threads.c (mono_gc_stop_world, mono_gc_start_world): New public
+       functions; stop/start the world for the garbage collector.  This
+       is using the windows API; we need to complete the SuspendThread()/
+       ResumeThread() implementation in the io-layer to make this work on Unix.
+       (mono_gc_push_all_stacks): New public function; tells the garbage
+       collector about the stack pointers from all managed threads.
+
+2003-04-03  Martin Baulig  <martin@ximian.com>
+
+       * object.h (MonoThread): Added `gpointer stack_ptr'.
+
+       * threads.c (start_wrapper): Save the stack pointer in `stack_ptr'.
+
+2003-04-03  Martin Baulig  <martin@ximian.com>
+
+       * Makefile.am: It's called `cygpath -w', not `cygpath -m'.
+
+2003-04-03  Zoltan Varga  <vargaz@freemail.hu>
+
+       * reflection.c (typebuilder_setup_fields): Initialize field.first and
+       field.last.
+
+2003-04-02  Miguel de Icaza  <miguel@ximian.com>
+
+       * loader.c (mono_lookup_internal_call): Report the corlib that is
+       out of sync.
+
+2003-03-05  Aleksey Demakov <avd@openlinksw.com>
+
+       * icall.c (ves_icall_type_GetTypeCode): fixed check for
+       System.DBNull (it's class not valuetype).
+
+Wed Apr 2 18:37:35 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+       * reflection.c: set table_idx in MonoReflectionArrayMethod object even 
+       if the array method was already assigned a token (fixes bug#40646).
+
+2003-04-02  Zoltan Varga  <vargaz@freemail.hu>
+
+       * reflection.c (mono_reflection_get_type): Attempt type resolve even
+       if no assembly is given.
+
+2003-04-01  Miguel de Icaza  <miguel@ximian.com>
+
+       * metadata.h: Added the new tables.
+
+       * row-indexes.h: Added definitions for new tables.
+
+       * metadata.c: Add schemas for new tables, and add support for
+       computing the sizes of them.
+
+       * class.c: Update for handling the new type cases.
+
+2003-04-01  Dietmar Maurer  <dietmar@ximian.com>
+
+       * metadata.h (MONO_TYPE_IS_VOID): new macro
+
+2003-03-31  Martin Baulig  <martin@ximian.com>
+
+       * threads.h (MonoThreadCallbacks): Added `thread_created'.
+
+       * threads.c (mono_thread_new_init): Call `thread_created' in the
+       mono_thread_callbacks.
+
+2003-03-31  Lluis Sanchez Gual <lluis@ideary.com>
+
+       * loader.h: added marshalbyrefobject_class to mono_defaults
+       * domain.c: added initialization of mono_defaults.marshalbyrefobject_class 
+       * icall.c: ves_icall_InternalExecute: fixed bug in field setter and in the
+         generation of output parameters.
+         ves_icall_Remoting_RealProxy_GetTransparentProxy: added support for interfaces.
+       * marshal.c: mono_remoting_wrapper(): avoided call through proxy when the type is
+         contextbound and the target object belongs to the context of the caller.
+       * object.h: added context and unwrapped_server variables in MonoRealProxy.
+       * object.c: Implemented support for interfaces and abstract classes
+         in mono_class_proxy_vtable. Fixed several methods to avoid unneeded calls through
+         proxy. Fixed problem when dealing with output parameters in mono_runtime_invoke_array.
+
+2003-03-30  Zoltan Varga  <vargaz@freemail.hu>
+
+       * class.h class.c (mono_class_is_subclass_of): New function.
+       
+       * icall.c (ves_icall_System_Array_FastCopy): Added optimized copy
+       routines for most common case (calls from ArrayList::ToArray).
+
+       * icall.c (ves_icall_System_Environment_Exit): Call profiler shutdown 
+       routine so programs which call Environment::Exit() can be profiled.
+
+       * icall.c (ves_icall_System_Reflection_FieldInfo_internal_from_handle): 
+       Added MONO_ARCH_SAVE_REGS.
+
+       * icall.c (ves_icall_type_is_subtype_of): Use new function.
+
+2003-03-29  Miguel de Icaza  <miguel@ximian.com>
+
+       * blob.h: Add a couple of new MonoType types definitions.
+
+       * tabledefs.h: Add a couple of new call convs.
+
+2003-03-27  Zoltan Varga  <vargaz@freemail.h>
+
+       * reflection.h (MonoReflectionDynamicAssembly): track changes in
+       the layout of the class.
+
+       * reflection.c (alloc_table): double the size on overflow to avoid
+       unnecessary copying.
+
+       * reflection.h reflection.c: If AssemblyBuilderAccess is Run, then
+       avoid filling out metadata tables and blobs. Also set mb->ilgen to
+       null so it can be garbage collected.
+       
+2003-03-27  Zoltan Varga  <vargaz@freemail.hu>
+
+       * reflection.c (mono_reflection_get_type): Return the resolved type
+       only if it is in the assembly we searched.
+
+       * reflection.c (ensure_runtime_vtable): Initialize method slots.
+
+       * class.c (mono_class_setup_vtable): Set the slot of the overriding
+       method.
+
+2003-03-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * appdomain.c:
+       (set_domain_search_path): allow 'file://blah'. It's an invalid URI,
+       the right one is 'file:///blah', but MS allows it.
+       * assembly.c:
+       (mono_assembly_open): allow 'file://blah'
+
+       Fixes bug #40306. Thanks to Mitko Iliev (imitko@openlinksw.co.uk).
+
+2003-03-26  Aleksey Demakov <avd@openlinksw.com>
+
+       * socket-io.c: fixes bug #40310.
+
+2003-03-25  Zoltan Varga  <vargaz@freemail.hu>
+
+       * reflection.c (mono_reflection_parse_type): handle deeply nested
+       types correctly.
+
+       * reflection.c (mono_image_create_token): Use unique token values
+       since they will be put into a hash table.
+
+       * class.c (mono_class_setup_vtable): If a method occurs in more than
+       one place in the vtable, and it gets overriden, then change the
+       other occurances too.
+
+       * marshal.c (mono_marshal_get_managed_wrapper): Added support for
+       object as return type.
+
+2003-03-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
+
+       * icall.c: Deleted "ToString" implementation for double and float
+       because they are full implemented in managed code.
+
+Wed Mar 19 18:05:57 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * reflection.c, reflection.h: implemented and exported functions
+       to retrieve info about custom attributes.
+
+2003-03-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * appdomain.c: moved Uri handling to assembly.c
+       * assembly.c: use g_filename_from_uri (). This makes assembly.LoadFrom
+       work when using a file Uri in *nix and windows.
+
+       * icall.c: fixed Assembly.CodeBase to return a valid Uri. The same for
+       GetReferencedAssemblies.
+
+2003-03-18  Dick Porter  <dick@ximian.com>
+
+       * icall.c: Rename a couple of internal calls
+
+       * threads.c: Set the thread state to Stopped when a thread exits.
+       Fixes bug 39377.
+
 2003-03-17  Zoltan Varga  <vargaz@freemail.hu>
 
+       * icall.c (ves_icall_System_Reflection_FieldInfo_internal_from_handle):
+       New icall.
+
        * object.c (mono_class_vtable): fix warning.
 
 2003-03-17  Zoltan Varga  <vargaz@freemail.hu> 
@@ -5055,3 +5428,4 @@ Tue Jul  3 18:33:32 CEST 2001 Paolo Molaro <lupus@ximian.com>
 
 
 
+