1 2007-07-05 Jb Evain <jbevain@novell.com>
3 * Mono.Linker/Driver.cs
4 Mono.Linker/Pipeline.cs:
5 Add a way to install steps in the pipeline
8 2007-07-03 Jb Evain <jbevain@novell.com>
10 * Mono.Linker/Driver.cs:
11 Add support for @files
13 * Mono.Linker/Driver.cs:
14 Add a way to add search directories to the resolver.
16 2007-06-18 Jb Evain <jbevain@novell.com>
18 * Mono.Linker.Steps/MarkStep.cs:
19 Mark generic parameter constraints.
21 * Mono.Linker.Steps/MarkStep.cs:
22 Mark modifiers of modtype.
24 2007-06-15 Jb Evain <jbevain@novell.com>
26 * Mono.Linker/Driver.cs,
27 Mono.Linker/I18nAssemblies.cs,
28 Mono.Linker.Steps/LoadI18nAssemblies.cs:
29 Copy the i18n assemblies when running Mono.
31 * Mono.Linker/CustomResolver.cs => AssemblyResolver.cs,
32 Mono.Linker/Annotations.cs,
33 Mono.Linker/LinkContext.cs,
34 Mono.Linker.Steps/ResolveFromXmlStep.cs:
35 Clean up the assembly reference system.
36 Fixes bug where the linker have multiple
37 time the same assembly in its cache.
39 2007-06-13 Jb Evain <jbevain@novell.com>
41 * Mono.Linker.Steps/OutputStep.cs:
42 Copy .config files alongs with assemblies.
44 * Mono.Linker.Steps/CleanStep.cs:
45 Clean memberref that are not used anymore.
47 2007-06-12 Jb Evain <jbevain@novell.com>
49 * Mono.Linker.Steps/AdjustVisibilityStep.cs,
50 Mono.Linker.Steps/ResolveFromApiInfoStep.cs,
51 Mono.Linker/Drivers.cs:
52 Adjust the visibility depending on the data
53 gathered in the api-info.
55 * Mono.Linker.Steps/ResolveFromApiInfoStep.cs:
56 Mono.Linker/Driver.cs:
57 Started working on linking from api-info.
59 2007-06-08 Jb Evain <jbevain@novell.com>
61 * Descriptors/System.Drawing.xml,
62 Mono.Linker.Steps/BlackListStep.cs:
63 Add preserve infos for System.Drawing.
65 * Mono.Linker.Steps/MarkStep.cs:
66 Tests/TestsCases/Linker/Generics/*:
67 Also walk through generic instances to
70 2007-06-07 Jb Evain <jbevain@novell.com>
72 * Mono.Linker.Steps/MarkStep.cs:
73 Mark types used in some marshal specs.
75 * Mono.Linker.Tests/MarkStep.cs
76 Tests/Mono.Linker.Tests/XmlLinkingTestFixture.cs
77 Tests/TestCases/Linker/ReferenceInAttributes/*:
78 Mark fields and setters used in custom attribute
79 instantiation. Mark also types used in custom attribute
84 Add a small profiler that outputs the xml format
85 that the linker can resolve.
87 By running an application with the profiler, one
88 can help the linker gather data. Especially for dynamic
89 cases like assembly loading an dynamic type resolving.
91 2007-06-06 Jb Evain <jbevain@novell.com>
93 * Mono.Linker.Steps/MarkStep.cs:
94 Mono.Linker/CustomResolvercs:
95 Try to find types in custom attributes to mark them.
97 * Mono.Linker.Steps/MarkStep.cs:
98 Mark default constructor for serializable types.
99 Mark the special serialization constructor as well.
101 * Mono.Linker/LinkContext.cs:
102 Mono.Linker.Steps/LoadReferences.cs:
103 Use the name of the assembly as a key
104 instead of the fullname.
106 * Mono.Linker/CustomResolver.cs:
107 When a method is not found, go down
108 the class hierarchy to find it.
110 2007-06-05 Jb Evain <jbevain@novell.com>
112 * Tests/Mono.Linker.Tests/IntegrationTestFixture.cs:
113 Tests/TestCases/Integration/*
115 Start the integration tests.
117 2007-06-04 Jb Evain <jbevain@novell.com>
119 * Mono.Linker.Steps/MarkStep.cs
120 Mark the custom attributes on the assemblies
123 * Mono.Linker.Steps/ResolveFromXmlStep.cs
124 Descriptors/corlib.xml:
125 Preserve the whole S.S.Crypto namespace.
127 * rename back from mink to monolinker.
129 2007-06-01 Jb Evain <jbevain@novell.com>
131 * configure, config.make, mink.in: added
133 * AUTHORS, MIT.X11, man/mink.1: added
135 2007-05-31 Jb Evain <jbevain@novell.com>
138 monolinker.exe.sources: moved to mink.exe.sources
139 Makefile, Mono.Linker.csproj: emit a mink.exe
141 * Mono.Linker/LinkContext.cs:
142 A resolved assembly is not always the one requested,
145 * Tests/Mono.Linker.Tests/AbstractLinkingTestFixture.cs
146 Mono.Linker.Steps/OutputStep.cs
147 Mono.Linker.Steps/LoadReferencesStep.cs
148 Mono.Linker.Steps/CleanStep.cs
149 Mono.Linker.Steps/ResolveFromAssemblyStep.cs
150 Mono.Linker.Steps/SweepStep.cs
151 Mono.Linker.Steps/BlacklistStep.cs
152 Mono.Linker.Steps/MarkStep.cs
153 Mono.Linker.Steps/BaseStep.cs
155 Mono.Linker/Driver.cs:
156 Add a new abstract BaseStep to be extends by most
158 Add a new LoadReferences step to force all referenced
159 assemblies to be resolved before the mark step.
161 * Mono.Linker/CustomResolver.cs
162 Mono.Linker/LinkContext.cs:
163 Register entry assembly.
165 2007-05-30 Jb Evain <jbevain@novell.com>
167 * Mono.Linker/MarkStep.cs:
168 Fix regression: do not mark GenericParameters that are
169 part of a typespec, like T[] or T*.
171 2007-05-28 Jb Evain <jbevain@novell.com>
173 * Big refactoring. Get rid of the markers, use the annotations
176 * Mono.Linker/Marker.cs
177 Mono.Linker/MarkStep.cs
178 Mono.Linker/SweepStep.cs:
179 Use annotations to mark wether or not we should
182 2007-05-23 Jb Evain <jbevain@novell.com>
184 * Mono.Limker/CleanStep.cs:
185 Stop doing hackish stupid things because
186 Cecil suddenly handles MemberRef much better.
188 2007-05-19 Jb Evain <jb@nurv.fr>
190 * Mono.Linker/ResolveFromXmlStep.cs
191 Mono.Linker/AssemblyMarker.cs
192 Mono.Linker/MarkStep.cs
193 Mono.Linker/ResolveFromAssemblyStep.cs:
194 Process correctly the marker selected in the resolve phases.
196 2007-05-17 Jb Evain <jb@nurv.fr>
198 * Mono.Linker/CleanStep.cs
199 Mono.Linker/SweepStep.cs
200 Mono.Linker/MarkStep.cs:
201 Link only when necessary.
203 * Tests/Mono.Linker.Tests/AbstractLinkingTestFixture.cs
204 Tests/Mono.Linker.Tests/AbstractTestFixture.cs
206 Mono.Linker/ResolveFromXmlStep.cs
207 Mono.Linker/AssemblyMarker.cs
208 Mono.Linker/Marker.cs
209 Mono.Linker/MarkStep.cs
210 Mono.Linker/TypePreserve.cs
211 Mono.Linker/Pipeline.cs:
212 Deal with preserve and required infos, make last test pass.
214 * Tests/Mono.Linker.Tests/XmlLinkingTestFixture.cs
215 Tests/Mono.Linker.Tests/AbstractLinkingTestFixture.cs
216 Tests/TestCases/Linker/PreserveFieldsRequired
217 Tests/TestCases/Linker/PreserveFieldsRequired/Library.cs
218 Tests/TestCases/Linker/PreserveFieldsRequired/desc.xml
219 Tests/TestCases/Linker/PreserveFieldsRequired/Makefile
220 Tests/TestCases/Linker/PreserveFieldsRequired/Library.dll:
221 Add a new (failing for now) test case for preserve and required.
223 2007-05-16 Jb Evain <jb@nurv.fr>
225 * Tests/Mono.Linker.Tests/AbstractTestFixture.cs
227 Mono.Linker/CoreAction.cs
228 Mono.Linker/Driver.cs
229 Mono.Linker/LinkContext.cs:
230 Simplify the command line options.
232 * Tests/Mono.Linker.Tests/AbstractTestFixture.cs
234 Mono.Linker/CleanStep.cs
235 Mono.Linker/ResolveFromXmlStep.cs
236 Mono.Linker/Driver.cs
237 Mono.Linker/OutputStep.cs
238 Mono.Linker/ResolveFromAssemblyStep.cs
239 Mono.Linker/LinkContext.cs
240 Mono.Linker/BlacklistStep.cs
241 Mono.Linker/Pipeline.cs:
242 Working on black list support.
244 * Descriptors/corlib.xml
245 Descriptors/system.xml
246 Descriptors/system.web.xml:
247 First audit of the core.
249 2007-04-23 Jb Evain <jb@nurv.fr>
251 * Mono.Linker/CleanStep.cs:
252 Clean some special cases of MemberRef.
254 2007-03-19 Jb Evain <jbevain@gmail.com>
256 * Fix a bug when an assembly references two
257 versions of an assembly with the same name.
258 * do some refactorings
260 2007-03-16 Jb Evain <jbevain@gmail.com>
262 * rename linker.exe to monolinker.exe
264 2006-11-08 Jb Evain <jbevain@gmail.com>
266 * Mono.Linker/AssemblyMarker.cs:
267 Fix a bug in method resolution.
268 * Mono.Linker/Driver.cs:
269 Fix a bug in assembly action processing.
271 2006-11-02 Jb Evain <jbevain@gmail.com>
273 * check-in patches adapted from contributions by:
274 Alex Prudkiy <prudkiy@mail.ru>
276 2006-08-21 Jb Evain <jbevain@gmail.com>
278 * mark types used within the runtime
280 2006-08-20 Jb Evain <jbevain@gmail.com>
282 * mark the custom attributes from the assemblies, modules and
285 * mark the methods used by an event
287 * mark the custom attributes on the properties and the events
290 * preserve the fields of the value types
292 * clean also nested types in a proper way.
294 * clean events as well
296 2006-08-17 Jb Evain <jbevain@gmail.com>
300 2006-08-16 Jb Evain <jbevain@gmail.com>
302 * work on generics assemblies linking
304 * use the resolver from Cecil.
306 * when marking a type, also mark its virtual methods
308 2006-08-15 Jb Evain <jbevain@gmail.com>
312 * mark interfaces as well
314 * work in progress + unit tests.
316 2006-07-27 Jb Evain <jbevain@gmail.com>
318 * begin work on the sweep step.
320 2006-07-20 Jb Evain <jbevain@gmail.com>
323 draft implementation of the mark phase of the linker.