1 2007-07-18 Jb Evain <jbevain@novell.com>
3 * Mono.Linker/ResolutionException.cs:
4 Mono.Linker.Steps/MarkStep.cs:
5 Throw a resolution exception when a metadata item
6 can not be resolved in external assemblies.
8 * Mono.Linker/AssemblyResolver.cs:
9 Use the assembly name only as a key for the
12 2007-07-05 Jb Evain <jbevain@novell.com>
14 * Mono.Linker/Driver.cs
15 Mono.Linker/Pipeline.cs:
16 Add a way to install steps in the pipeline
19 2007-07-03 Jb Evain <jbevain@novell.com>
21 * Mono.Linker/Driver.cs:
22 Add support for @files
24 * Mono.Linker/Driver.cs:
25 Add a way to add search directories to the resolver.
27 2007-06-18 Jb Evain <jbevain@novell.com>
29 * Mono.Linker.Steps/MarkStep.cs:
30 Mark generic parameter constraints.
32 * Mono.Linker.Steps/MarkStep.cs:
33 Mark modifiers of modtype.
35 2007-06-15 Jb Evain <jbevain@novell.com>
37 * Mono.Linker/Driver.cs,
38 Mono.Linker/I18nAssemblies.cs,
39 Mono.Linker.Steps/LoadI18nAssemblies.cs:
40 Copy the i18n assemblies when running Mono.
42 * Mono.Linker/CustomResolver.cs => AssemblyResolver.cs,
43 Mono.Linker/Annotations.cs,
44 Mono.Linker/LinkContext.cs,
45 Mono.Linker.Steps/ResolveFromXmlStep.cs:
46 Clean up the assembly reference system.
47 Fixes bug where the linker have multiple
48 time the same assembly in its cache.
50 2007-06-13 Jb Evain <jbevain@novell.com>
52 * Mono.Linker.Steps/OutputStep.cs:
53 Copy .config files alongs with assemblies.
55 * Mono.Linker.Steps/CleanStep.cs:
56 Clean memberref that are not used anymore.
58 2007-06-12 Jb Evain <jbevain@novell.com>
60 * Mono.Linker.Steps/AdjustVisibilityStep.cs,
61 Mono.Linker.Steps/ResolveFromApiInfoStep.cs,
62 Mono.Linker/Drivers.cs:
63 Adjust the visibility depending on the data
64 gathered in the api-info.
66 * Mono.Linker.Steps/ResolveFromApiInfoStep.cs:
67 Mono.Linker/Driver.cs:
68 Started working on linking from api-info.
70 2007-06-08 Jb Evain <jbevain@novell.com>
72 * Descriptors/System.Drawing.xml,
73 Mono.Linker.Steps/BlackListStep.cs:
74 Add preserve infos for System.Drawing.
76 * Mono.Linker.Steps/MarkStep.cs:
77 Tests/TestsCases/Linker/Generics/*:
78 Also walk through generic instances to
81 2007-06-07 Jb Evain <jbevain@novell.com>
83 * Mono.Linker.Steps/MarkStep.cs:
84 Mark types used in some marshal specs.
86 * Mono.Linker.Tests/MarkStep.cs
87 Tests/Mono.Linker.Tests/XmlLinkingTestFixture.cs
88 Tests/TestCases/Linker/ReferenceInAttributes/*:
89 Mark fields and setters used in custom attribute
90 instantiation. Mark also types used in custom attribute
95 Add a small profiler that outputs the xml format
96 that the linker can resolve.
98 By running an application with the profiler, one
99 can help the linker gather data. Especially for dynamic
100 cases like assembly loading an dynamic type resolving.
102 2007-06-06 Jb Evain <jbevain@novell.com>
104 * Mono.Linker.Steps/MarkStep.cs:
105 Mono.Linker/CustomResolvercs:
106 Try to find types in custom attributes to mark them.
108 * Mono.Linker.Steps/MarkStep.cs:
109 Mark default constructor for serializable types.
110 Mark the special serialization constructor as well.
112 * Mono.Linker/LinkContext.cs:
113 Mono.Linker.Steps/LoadReferences.cs:
114 Use the name of the assembly as a key
115 instead of the fullname.
117 * Mono.Linker/CustomResolver.cs:
118 When a method is not found, go down
119 the class hierarchy to find it.
121 2007-06-05 Jb Evain <jbevain@novell.com>
123 * Tests/Mono.Linker.Tests/IntegrationTestFixture.cs:
124 Tests/TestCases/Integration/*
126 Start the integration tests.
128 2007-06-04 Jb Evain <jbevain@novell.com>
130 * Mono.Linker.Steps/MarkStep.cs
131 Mark the custom attributes on the assemblies
134 * Mono.Linker.Steps/ResolveFromXmlStep.cs
135 Descriptors/corlib.xml:
136 Preserve the whole S.S.Crypto namespace.
138 * rename back from mink to monolinker.
140 2007-06-01 Jb Evain <jbevain@novell.com>
142 * configure, config.make, mink.in: added
144 * AUTHORS, MIT.X11, man/mink.1: added
146 2007-05-31 Jb Evain <jbevain@novell.com>
149 monolinker.exe.sources: moved to mink.exe.sources
150 Makefile, Mono.Linker.csproj: emit a mink.exe
152 * Mono.Linker/LinkContext.cs:
153 A resolved assembly is not always the one requested,
156 * Tests/Mono.Linker.Tests/AbstractLinkingTestFixture.cs
157 Mono.Linker.Steps/OutputStep.cs
158 Mono.Linker.Steps/LoadReferencesStep.cs
159 Mono.Linker.Steps/CleanStep.cs
160 Mono.Linker.Steps/ResolveFromAssemblyStep.cs
161 Mono.Linker.Steps/SweepStep.cs
162 Mono.Linker.Steps/BlacklistStep.cs
163 Mono.Linker.Steps/MarkStep.cs
164 Mono.Linker.Steps/BaseStep.cs
166 Mono.Linker/Driver.cs:
167 Add a new abstract BaseStep to be extends by most
169 Add a new LoadReferences step to force all referenced
170 assemblies to be resolved before the mark step.
172 * Mono.Linker/CustomResolver.cs
173 Mono.Linker/LinkContext.cs:
174 Register entry assembly.
176 2007-05-30 Jb Evain <jbevain@novell.com>
178 * Mono.Linker/MarkStep.cs:
179 Fix regression: do not mark GenericParameters that are
180 part of a typespec, like T[] or T*.
182 2007-05-28 Jb Evain <jbevain@novell.com>
184 * Big refactoring. Get rid of the markers, use the annotations
187 * Mono.Linker/Marker.cs
188 Mono.Linker/MarkStep.cs
189 Mono.Linker/SweepStep.cs:
190 Use annotations to mark wether or not we should
193 2007-05-23 Jb Evain <jbevain@novell.com>
195 * Mono.Limker/CleanStep.cs:
196 Stop doing hackish stupid things because
197 Cecil suddenly handles MemberRef much better.
199 2007-05-19 Jb Evain <jb@nurv.fr>
201 * Mono.Linker/ResolveFromXmlStep.cs
202 Mono.Linker/AssemblyMarker.cs
203 Mono.Linker/MarkStep.cs
204 Mono.Linker/ResolveFromAssemblyStep.cs:
205 Process correctly the marker selected in the resolve phases.
207 2007-05-17 Jb Evain <jb@nurv.fr>
209 * Mono.Linker/CleanStep.cs
210 Mono.Linker/SweepStep.cs
211 Mono.Linker/MarkStep.cs:
212 Link only when necessary.
214 * Tests/Mono.Linker.Tests/AbstractLinkingTestFixture.cs
215 Tests/Mono.Linker.Tests/AbstractTestFixture.cs
217 Mono.Linker/ResolveFromXmlStep.cs
218 Mono.Linker/AssemblyMarker.cs
219 Mono.Linker/Marker.cs
220 Mono.Linker/MarkStep.cs
221 Mono.Linker/TypePreserve.cs
222 Mono.Linker/Pipeline.cs:
223 Deal with preserve and required infos, make last test pass.
225 * Tests/Mono.Linker.Tests/XmlLinkingTestFixture.cs
226 Tests/Mono.Linker.Tests/AbstractLinkingTestFixture.cs
227 Tests/TestCases/Linker/PreserveFieldsRequired
228 Tests/TestCases/Linker/PreserveFieldsRequired/Library.cs
229 Tests/TestCases/Linker/PreserveFieldsRequired/desc.xml
230 Tests/TestCases/Linker/PreserveFieldsRequired/Makefile
231 Tests/TestCases/Linker/PreserveFieldsRequired/Library.dll:
232 Add a new (failing for now) test case for preserve and required.
234 2007-05-16 Jb Evain <jb@nurv.fr>
236 * Tests/Mono.Linker.Tests/AbstractTestFixture.cs
238 Mono.Linker/CoreAction.cs
239 Mono.Linker/Driver.cs
240 Mono.Linker/LinkContext.cs:
241 Simplify the command line options.
243 * Tests/Mono.Linker.Tests/AbstractTestFixture.cs
245 Mono.Linker/CleanStep.cs
246 Mono.Linker/ResolveFromXmlStep.cs
247 Mono.Linker/Driver.cs
248 Mono.Linker/OutputStep.cs
249 Mono.Linker/ResolveFromAssemblyStep.cs
250 Mono.Linker/LinkContext.cs
251 Mono.Linker/BlacklistStep.cs
252 Mono.Linker/Pipeline.cs:
253 Working on black list support.
255 * Descriptors/corlib.xml
256 Descriptors/system.xml
257 Descriptors/system.web.xml:
258 First audit of the core.
260 2007-04-23 Jb Evain <jb@nurv.fr>
262 * Mono.Linker/CleanStep.cs:
263 Clean some special cases of MemberRef.
265 2007-03-19 Jb Evain <jbevain@gmail.com>
267 * Fix a bug when an assembly references two
268 versions of an assembly with the same name.
269 * do some refactorings
271 2007-03-16 Jb Evain <jbevain@gmail.com>
273 * rename linker.exe to monolinker.exe
275 2006-11-08 Jb Evain <jbevain@gmail.com>
277 * Mono.Linker/AssemblyMarker.cs:
278 Fix a bug in method resolution.
279 * Mono.Linker/Driver.cs:
280 Fix a bug in assembly action processing.
282 2006-11-02 Jb Evain <jbevain@gmail.com>
284 * check-in patches adapted from contributions by:
285 Alex Prudkiy <prudkiy@mail.ru>
287 2006-08-21 Jb Evain <jbevain@gmail.com>
289 * mark types used within the runtime
291 2006-08-20 Jb Evain <jbevain@gmail.com>
293 * mark the custom attributes from the assemblies, modules and
296 * mark the methods used by an event
298 * mark the custom attributes on the properties and the events
301 * preserve the fields of the value types
303 * clean also nested types in a proper way.
305 * clean events as well
307 2006-08-17 Jb Evain <jbevain@gmail.com>
311 2006-08-16 Jb Evain <jbevain@gmail.com>
313 * work on generics assemblies linking
315 * use the resolver from Cecil.
317 * when marking a type, also mark its virtual methods
319 2006-08-15 Jb Evain <jbevain@gmail.com>
323 * mark interfaces as well
325 * work in progress + unit tests.
327 2006-07-27 Jb Evain <jbevain@gmail.com>
329 * begin work on the sweep step.
331 2006-07-20 Jb Evain <jbevain@gmail.com>
334 draft implementation of the mark phase of the linker.