1 2007-07-20 Jb Evain <jbevain@novell.com>
3 * Mono.Linker.Steps/AdjustVisibilityStep.cs:
4 Don't change the visibility of the members if the type
7 2007-07-18 Jb Evain <jbevain@novell.com>
9 * Mono.Linker/ResolutionException.cs:
10 Mono.Linker.Steps/MarkStep.cs:
11 Throw a resolution exception when a metadata item
12 can not be resolved in external assemblies.
14 * Mono.Linker/AssemblyResolver.cs:
15 Use the assembly name only as a key for the
18 2007-07-05 Jb Evain <jbevain@novell.com>
20 * Mono.Linker/Driver.cs
21 Mono.Linker/Pipeline.cs:
22 Add a way to install steps in the pipeline
25 2007-07-03 Jb Evain <jbevain@novell.com>
27 * Mono.Linker/Driver.cs:
28 Add support for @files
30 * Mono.Linker/Driver.cs:
31 Add a way to add search directories to the resolver.
33 2007-06-18 Jb Evain <jbevain@novell.com>
35 * Mono.Linker.Steps/MarkStep.cs:
36 Mark generic parameter constraints.
38 * Mono.Linker.Steps/MarkStep.cs:
39 Mark modifiers of modtype.
41 2007-06-15 Jb Evain <jbevain@novell.com>
43 * Mono.Linker/Driver.cs,
44 Mono.Linker/I18nAssemblies.cs,
45 Mono.Linker.Steps/LoadI18nAssemblies.cs:
46 Copy the i18n assemblies when running Mono.
48 * Mono.Linker/CustomResolver.cs => AssemblyResolver.cs,
49 Mono.Linker/Annotations.cs,
50 Mono.Linker/LinkContext.cs,
51 Mono.Linker.Steps/ResolveFromXmlStep.cs:
52 Clean up the assembly reference system.
53 Fixes bug where the linker have multiple
54 time the same assembly in its cache.
56 2007-06-13 Jb Evain <jbevain@novell.com>
58 * Mono.Linker.Steps/OutputStep.cs:
59 Copy .config files alongs with assemblies.
61 * Mono.Linker.Steps/CleanStep.cs:
62 Clean memberref that are not used anymore.
64 2007-06-12 Jb Evain <jbevain@novell.com>
66 * Mono.Linker.Steps/AdjustVisibilityStep.cs,
67 Mono.Linker.Steps/ResolveFromApiInfoStep.cs,
68 Mono.Linker/Drivers.cs:
69 Adjust the visibility depending on the data
70 gathered in the api-info.
72 * Mono.Linker.Steps/ResolveFromApiInfoStep.cs:
73 Mono.Linker/Driver.cs:
74 Started working on linking from api-info.
76 2007-06-08 Jb Evain <jbevain@novell.com>
78 * Descriptors/System.Drawing.xml,
79 Mono.Linker.Steps/BlackListStep.cs:
80 Add preserve infos for System.Drawing.
82 * Mono.Linker.Steps/MarkStep.cs:
83 Tests/TestsCases/Linker/Generics/*:
84 Also walk through generic instances to
87 2007-06-07 Jb Evain <jbevain@novell.com>
89 * Mono.Linker.Steps/MarkStep.cs:
90 Mark types used in some marshal specs.
92 * Mono.Linker.Tests/MarkStep.cs
93 Tests/Mono.Linker.Tests/XmlLinkingTestFixture.cs
94 Tests/TestCases/Linker/ReferenceInAttributes/*:
95 Mark fields and setters used in custom attribute
96 instantiation. Mark also types used in custom attribute
101 Add a small profiler that outputs the xml format
102 that the linker can resolve.
104 By running an application with the profiler, one
105 can help the linker gather data. Especially for dynamic
106 cases like assembly loading an dynamic type resolving.
108 2007-06-06 Jb Evain <jbevain@novell.com>
110 * Mono.Linker.Steps/MarkStep.cs:
111 Mono.Linker/CustomResolvercs:
112 Try to find types in custom attributes to mark them.
114 * Mono.Linker.Steps/MarkStep.cs:
115 Mark default constructor for serializable types.
116 Mark the special serialization constructor as well.
118 * Mono.Linker/LinkContext.cs:
119 Mono.Linker.Steps/LoadReferences.cs:
120 Use the name of the assembly as a key
121 instead of the fullname.
123 * Mono.Linker/CustomResolver.cs:
124 When a method is not found, go down
125 the class hierarchy to find it.
127 2007-06-05 Jb Evain <jbevain@novell.com>
129 * Tests/Mono.Linker.Tests/IntegrationTestFixture.cs:
130 Tests/TestCases/Integration/*
132 Start the integration tests.
134 2007-06-04 Jb Evain <jbevain@novell.com>
136 * Mono.Linker.Steps/MarkStep.cs
137 Mark the custom attributes on the assemblies
140 * Mono.Linker.Steps/ResolveFromXmlStep.cs
141 Descriptors/corlib.xml:
142 Preserve the whole S.S.Crypto namespace.
144 * rename back from mink to monolinker.
146 2007-06-01 Jb Evain <jbevain@novell.com>
148 * configure, config.make, mink.in: added
150 * AUTHORS, MIT.X11, man/mink.1: added
152 2007-05-31 Jb Evain <jbevain@novell.com>
155 monolinker.exe.sources: moved to mink.exe.sources
156 Makefile, Mono.Linker.csproj: emit a mink.exe
158 * Mono.Linker/LinkContext.cs:
159 A resolved assembly is not always the one requested,
162 * Tests/Mono.Linker.Tests/AbstractLinkingTestFixture.cs
163 Mono.Linker.Steps/OutputStep.cs
164 Mono.Linker.Steps/LoadReferencesStep.cs
165 Mono.Linker.Steps/CleanStep.cs
166 Mono.Linker.Steps/ResolveFromAssemblyStep.cs
167 Mono.Linker.Steps/SweepStep.cs
168 Mono.Linker.Steps/BlacklistStep.cs
169 Mono.Linker.Steps/MarkStep.cs
170 Mono.Linker.Steps/BaseStep.cs
172 Mono.Linker/Driver.cs:
173 Add a new abstract BaseStep to be extends by most
175 Add a new LoadReferences step to force all referenced
176 assemblies to be resolved before the mark step.
178 * Mono.Linker/CustomResolver.cs
179 Mono.Linker/LinkContext.cs:
180 Register entry assembly.
182 2007-05-30 Jb Evain <jbevain@novell.com>
184 * Mono.Linker/MarkStep.cs:
185 Fix regression: do not mark GenericParameters that are
186 part of a typespec, like T[] or T*.
188 2007-05-28 Jb Evain <jbevain@novell.com>
190 * Big refactoring. Get rid of the markers, use the annotations
193 * Mono.Linker/Marker.cs
194 Mono.Linker/MarkStep.cs
195 Mono.Linker/SweepStep.cs:
196 Use annotations to mark wether or not we should
199 2007-05-23 Jb Evain <jbevain@novell.com>
201 * Mono.Limker/CleanStep.cs:
202 Stop doing hackish stupid things because
203 Cecil suddenly handles MemberRef much better.
205 2007-05-19 Jb Evain <jb@nurv.fr>
207 * Mono.Linker/ResolveFromXmlStep.cs
208 Mono.Linker/AssemblyMarker.cs
209 Mono.Linker/MarkStep.cs
210 Mono.Linker/ResolveFromAssemblyStep.cs:
211 Process correctly the marker selected in the resolve phases.
213 2007-05-17 Jb Evain <jb@nurv.fr>
215 * Mono.Linker/CleanStep.cs
216 Mono.Linker/SweepStep.cs
217 Mono.Linker/MarkStep.cs:
218 Link only when necessary.
220 * Tests/Mono.Linker.Tests/AbstractLinkingTestFixture.cs
221 Tests/Mono.Linker.Tests/AbstractTestFixture.cs
223 Mono.Linker/ResolveFromXmlStep.cs
224 Mono.Linker/AssemblyMarker.cs
225 Mono.Linker/Marker.cs
226 Mono.Linker/MarkStep.cs
227 Mono.Linker/TypePreserve.cs
228 Mono.Linker/Pipeline.cs:
229 Deal with preserve and required infos, make last test pass.
231 * Tests/Mono.Linker.Tests/XmlLinkingTestFixture.cs
232 Tests/Mono.Linker.Tests/AbstractLinkingTestFixture.cs
233 Tests/TestCases/Linker/PreserveFieldsRequired
234 Tests/TestCases/Linker/PreserveFieldsRequired/Library.cs
235 Tests/TestCases/Linker/PreserveFieldsRequired/desc.xml
236 Tests/TestCases/Linker/PreserveFieldsRequired/Makefile
237 Tests/TestCases/Linker/PreserveFieldsRequired/Library.dll:
238 Add a new (failing for now) test case for preserve and required.
240 2007-05-16 Jb Evain <jb@nurv.fr>
242 * Tests/Mono.Linker.Tests/AbstractTestFixture.cs
244 Mono.Linker/CoreAction.cs
245 Mono.Linker/Driver.cs
246 Mono.Linker/LinkContext.cs:
247 Simplify the command line options.
249 * Tests/Mono.Linker.Tests/AbstractTestFixture.cs
251 Mono.Linker/CleanStep.cs
252 Mono.Linker/ResolveFromXmlStep.cs
253 Mono.Linker/Driver.cs
254 Mono.Linker/OutputStep.cs
255 Mono.Linker/ResolveFromAssemblyStep.cs
256 Mono.Linker/LinkContext.cs
257 Mono.Linker/BlacklistStep.cs
258 Mono.Linker/Pipeline.cs:
259 Working on black list support.
261 * Descriptors/corlib.xml
262 Descriptors/system.xml
263 Descriptors/system.web.xml:
264 First audit of the core.
266 2007-04-23 Jb Evain <jb@nurv.fr>
268 * Mono.Linker/CleanStep.cs:
269 Clean some special cases of MemberRef.
271 2007-03-19 Jb Evain <jbevain@gmail.com>
273 * Fix a bug when an assembly references two
274 versions of an assembly with the same name.
275 * do some refactorings
277 2007-03-16 Jb Evain <jbevain@gmail.com>
279 * rename linker.exe to monolinker.exe
281 2006-11-08 Jb Evain <jbevain@gmail.com>
283 * Mono.Linker/AssemblyMarker.cs:
284 Fix a bug in method resolution.
285 * Mono.Linker/Driver.cs:
286 Fix a bug in assembly action processing.
288 2006-11-02 Jb Evain <jbevain@gmail.com>
290 * check-in patches adapted from contributions by:
291 Alex Prudkiy <prudkiy@mail.ru>
293 2006-08-21 Jb Evain <jbevain@gmail.com>
295 * mark types used within the runtime
297 2006-08-20 Jb Evain <jbevain@gmail.com>
299 * mark the custom attributes from the assemblies, modules and
302 * mark the methods used by an event
304 * mark the custom attributes on the properties and the events
307 * preserve the fields of the value types
309 * clean also nested types in a proper way.
311 * clean events as well
313 2006-08-17 Jb Evain <jbevain@gmail.com>
317 2006-08-16 Jb Evain <jbevain@gmail.com>
319 * work on generics assemblies linking
321 * use the resolver from Cecil.
323 * when marking a type, also mark its virtual methods
325 2006-08-15 Jb Evain <jbevain@gmail.com>
329 * mark interfaces as well
331 * work in progress + unit tests.
333 2006-07-27 Jb Evain <jbevain@gmail.com>
335 * begin work on the sweep step.
337 2006-07-20 Jb Evain <jbevain@gmail.com>
340 draft implementation of the mark phase of the linker.