-
Notifications
You must be signed in to change notification settings - Fork 3.8k
/
NEWS
1080 lines (745 loc) · 33.6 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Happy new year!
The Mono team is proud to release Mono 0.18, with plenty of bug
fixes and improvements. If you are a happy 0.17 user, this
release is a happiness extension release. Many bugs in the
runtime, class libraries and C# compiler have been fixed.
Also, our special envoy in Japan has reported that there is
some naming confussion about the naming of Mono, as can be
seen in the following documentary material:
Atsushi Enomoto shows the source of confussion:
http://primates.ximian.com/~duncan/gallery/Duncan-in-Tokyo/DSCN0702
Nick and Duncan echo it:
http://primates.ximian.com/~duncan/gallery/Duncan-in-Tokyo/DSCN0703
* Availability
Mono 0.18 packages and source code is available for download from:
http://www.go-mono.com/download.html
Those using Red Carpet on Linux can install Mono 0.18 from
the Mono channel. The packages have already been pushed for
you.
At release time we have packages for Red Hat 8.0, 7.3,
7.2 and 7.1 and Mandrake 8.2.
* Contributors to this release
This release is brought to you by:
Alejandro Sanchez, Alp Toker, Atsushi Enomoto, Cesar Octavio
Lopez Netaren, Daniel Lopez (mod_mono), Daniel Morgan, Dennis
Hayes, Dick Porter, Dietmar Maurer, Duncan Mak, Eduardo
Garcia, Gaurav Vaish, Gonzalo Paniagua, Jackson Harper, Jaime
Anguiano, Jeroen Janssen, Johannes Roith, Jonathan Pryor, Juli
Mallett, Lluis Sanchez, Marco Ridoni, Martin Baulig, Miguel de
Icaza, Nick Drochak, Paolo Molaro, Patrik Torstensson, Piers
Haken, Rachel Hestilow, Rafael Teixeira, Ravi Pratap,
Sebastian Pouliot, Tim Coleman, Tim Hayes, Ville Palo, Zoltan
Varga.
* New in this release
VB.NET compiler:
Many improvements to the Mono VB.NET compiler.
ASP.NET:
Plenty of bug fixes in ASP.NET. Larger applications
can now be run with it. The authentication system has
been deployed, most changes are from Gonzalo.
We have a modified IBuySpy running (without Xslt)
If you want to run ASP.NET you can run it with either
our XSP proof-of-concept server, or with Daniel's
Apache module that can be fetched from CVS (module
name: mod_apache)
Type Reflector:
A Console, Gtk# and Windows.Forms tool to browse
compiled assemblies and examine the types on it, from
Jonathan Pryor.
Moving to NUnit 2.0
Nick continues the work on moving our test suite to NUnit 2.0
Mobile.Controls:
Gaurav has started work on the Mobile controls, which
are required to run some of the reference applications
in full-mode like IBuySpy.
Remoting:
The remoting infrastructure has got a big boost from
Lluis in this release.
System.Data/XML
Ville has been working on improving our System.Data
classes in the XML assembly.
Crypto:
Plenty of new crypto from Sebastien as well. A new
web page in our site can be used to track this.
http://www.go-mono.com/crypto.html
----------------------------------------------------------------------
Hello!
Version 0.17 of Mono has been released.
There are plenty of new features, bug fixes, new classes,
performance improvements, optimizations and much more
available in this release.
* Stats
2605 cvs commits to the Mono repository since October 1st, an
average of 37 commits per day including weekends.
212 commits to the Mono module.
1438 commits to the MCS module.
* Mono Improvements:
Work has begun to make the runtime run a finalizer thread and
invoke all the finalizers from this thread. This is the same
behavior as Java and the Microsoft runtime, but it is disabled
on this build.
Integrated the s390 work from Neale Ferguson.
Beginning of the work for pre-compiling code (Ahead of time
compilation) for Mono (based on the early work of Zoltan).
New option `--noboundscheck' for benchmark purposes, it
disables array bound checks.
Uses mmap instead of SysV shared memory for the Windows API
emulation layer.
Plenty of bug fixes, improvements and integration with the
upper layer class libraries.
New exception handling code uses the GCC native support for
stack-walking if available and gives big performance boost
(15% on mcs bootstrap).
A lot of the work in the new release of Mono is required for
the Mono Debugger (which will be released separately). The
Mono debugger is interesting, because it can debug both
managed and unmanaged applications, but it only supports the
JITer for debugging.
Dick, Dietmar, Gonzalo, Martin and Paolo were in charge of
most of these changes.
* Compiler improvements:
Many bug fixes as usual, better C# compliancy.
Performance improvements. The new release of the Mono C#
compiler is 37% faster than the previous version (self-compile
is down to 8 seconds). On my P4 1.8Ghz machine, the Mono C#
compiler compiles (342,000 lines per minute).
Thanks to go Ravi and Martin for helping out with the bug
fixing hunt.
* Cryptography and Security classes
Sebastien Pouliot and Andrew Birkett were extremely busy
during the past two months working on the cryptography
classes, many of the crypto providers are now working
Jackson on the other hand helped us with the security
classes, he said about those:
`Writing security classes is the most exciting thing I have
ever done, I can not wait to write more of them'.
* ASP.NET:
We have now moved the code from the XSP server (which was our
test bed for ASP.NET) into the right classes inside
System.Web, and now any web server that was built by using the
System.Web hosting interfaces can be used with Mono.
The sample XSP server still exists, but it is now just a
simple implementation of the WorkerRequest and ApplicationHost
classes and can be used to test drive ASP.NET. A big thanks
goes to Gonzalo who worked on this night and day (mostly
night).
Gaurav keeps helping us with the Web.Design classes, and
improving the existing web controls.
* ADO.NET:
New providers are available in this release. The relentless
System.Data team (Brian, Dan, Rodrigo, Tim and Ville) are
hacking non-stop on the databse code. Improving existing
providers, and new providers.
The new providers on this release:
* Oracle
* MS SQL
* ODBC
* Sybase
* Sqlite (for embedded use).
Many regression tests have been added as well (Ville has been
doing a great job here).
Brian also created a DB provider multiplexor (The ProviderFactory)
Stuart Caborn contributed Writing XML from a DataSet.
Luis Fernandez contributed constraint handling code.
Also there is new a Gtk# GUI tool from Dan that can be used to
try out various providers.
* System.XML:
Atsushi has taken the lead in fixing and plugging the missing
parts of the System.XML namespace, many fixes, many
improvements.
* CodeDom and the C# provider.
Jackson Harper has been helping us with the various interface
classes from the CodeDOM to the C# compiler, in this release
a new assembly joins us: Cscompmgd. It is a simple assembly,
and hence Microsoft decided not to waste an entire "System"
"dot" on it.
* Testing
Nick Drochak has integrated the new NUnit 2.0 system.
* Monograph:
Monograph now has a --stats option to get statistics on
assembly code.
CVS Contributors to this release:
Alejandro Sanchez, Alp Toker, Andrew Birkett, Atsushi Enomoto,
Brian Ritchie, Cesar Octavio Lopez Nataren, Chris Toshok,
Daniel Morgan, Daniel Stodden, Dennis Hayes, Dick Porter,
Diego Sevilla, Dietmar Maurer, Duncan Mak, Eduardo Garcia,
Ettore Perazzoli, Gaurav Vaish, Gonzalo Paniagua, Jackson
Harper, Jaime Anguiano, Johannes Roith, John Sohn, Jonathan
Pryor, Kristian Rietveld, Mads Pultz, Mark Crichton, Martin
Baulig, Martin Willemoes Hansen, Miguel de Icaza, Mike
Kestner, Nick Drochak, Nick Zigarovich, Paolo Molaro, Patrik
Torstensson, Phillip Pearson, Piers Haken, Rachel Hestilow,
Radek Doulik, Rafael Teixeira, Ravi Pratap, Rodrigo Moya,
Sebastien Pouliot, Tim Coleman, Tim Haynes, Ville Palo,
Vladimir Vukicevic, and Zoltan Varga.
(Am sorry, I could not track everyone from the ChangeLog
messages, I apologize in advance for the missing
contributors).
------------------------------------------------------------------------
Hello!
Version 0.16 of Mono has been released! This is mostly a bug
fix release, a lot of work has been going on to make existing
features more robust and less buggy. Also, contributions are
too varied, so it is hard to classify them in groups.
* Stats
795 commits to mono and mcs since August 23rd.
* News
The changes that got in this releases are mostly
bugfixes. Miguel, Martin and Ravi attacked lots of bugs in the
compiler, Dick fixed a bunch of bugs related to processes and
threads. Mark Crichton resumed his work on the SPARC port and
made lots of progress there. Juli Mallett has been working on
making sure Mono also builds on BSD systems. As usual, Dietmar
and Paolo supplied their continuous stream of fixes to the
runtime.
Dietmar has completed the work on the runtime side for
remoting support and we ship now with a sample channel, the
System.Runtime.Remoting.Sample. This can be used as a
reference implementation for anyone interested in implementing
other channels (like a CORBA channel).
Duncan got preliminary XSLT support done by using
libxslt.
Gonzalo (with some help from Patrik) has been working hard
making our ASP.NET implementation work on both Mono and MS by
migrating the existing xsp code to the class library. Gaurav
started working on the classes in System.Design.dll and Chris
Toshok checked in Mono.Directory.LDAP, which will be the
foundation to implement the System.DirectoryServices assembly.
Various fixes from Kral, Jason, Piers and Gonzalo were
committed to System.Xml; Martin Algiers reports that the
upcoming NAnt release will be fully compatible with Mono.
Miguel imported Sergey Chaban's Mono.PEToolkit and ilasm code
to CVS. Nick, as always, continues to refine our testing
framework by improving our tests. Andrew Birkett continues to
improve the implementation of our security/cryptographic
classes. Jonathan Pryor contributed type-reflector the our
list of tools.
* Other News From Behind de Curtain.
While the above is pretty impressive on its own, various other
non-released portions of Mono have been undergoing: Adam Treat
has been leading the effort to document our class libraries
and produce the tools required for it.
Martin Baulig has been working on the Mono Debugger which is
not being released yet. This debugger allows both native
Linux application as well as CIL applications to be debugged
at the same time (and in fact, you can use this to debug the
JIT engine). The debugger is written in C# with some C glue
In the meant A new JIT engine is under development, focused on
adding more of the high-end optimizations which will be
integrated on an ahead-of-time-compiler. Dietmar and Paolo
have been working on this.
* Contributors to this release
* Non-Ximian developers: Adam Treat, Andrew Birkett, Dennis
Hayes, Diego Sevilla, Franklin Wise, Gaurav Vaish ,Jason
Diamond, Johannes Roith, John Sohn, Jonathan Pryor, Juli
Mallett, Kral Ferch, Mike Crichton, Nick Drochak, Nick
Zigarovich, Piers Haken, Rafael Teixeira, Ricardo Fernandez
Pascual, Sergey Chaban, Tim Coleman.
* Ximian developers: Dietmar, Paolo, Dick, Duncan, Ravi,
Miguel, Martin, Chris, Joe, Gonzalo, Rodrigo.
---------------------------------------------------------------------------------
* Sergey Chaban added thread-safe support to
System.Collections.SortedList.
* Fixes to the compiler by Andrew Birkett.
* Tim Coleman contributed the OleDb provider for System.Data and started
work on System.Web.Services.
* Radek fixed a lot of problems on the PPC side. [*]
* Miguel and Martin committed the new type lookup system.
* Dietmar rewrote the marshalling code. [*]
* Peter Williams and Martin contributed the new Makefiles, with help
from Alp Toker as well.
* Contributors to this release:
* Non-Ximian developers: Nick Drochak, Martin Baulig, Tim
Coleman, Mike Kestner, Alp Toker, Jonathan Pryor, Jaime
Anguiano, Piers Haken, Rafael Teixeira, Mark Crichton,
Sergey Chabon, Ajay Kumar Dwivedi, Andrew Birkett, Dennis
Hayes (SWF), Adam Treat, Johannes Roith and Lawrence Pit.
* Ximian developers: Duncan, Ravi, Dick, Dietmar, Paolo,
Gonzalo, Rachel, Radek, Rodrigo, Jeff, Peter Williams and
Miguel.
Special thanks to Duncan for helping me put this release together.
Hello!
A new version of Mono (0.12), is out.
Mono is an open source implementation of the Microsoft.NET
Framework, and ships with a C# compiler, a runtime engine
(with a JIT on x86 cpus) and a set of class libraries.
Mono is know to work on a number of platforms:
x86/Linux, x86/Windows, x86/FreeBSD; sparc/solaris;
linuxppc/linux; strongarm/linux.
There have been many changes since the last release of Mono in
late April, thanks to Duncan for assembling the list of new
features, any omissions are my fault.
Changes since 0.11:
It is hard to keep track of the changes, as there are 1632
patches that were posted to the mailing list. One third of
the total number of patches since we opened mono-patches
list. I am sure I missed some stuff and probably missed some
contributors. I apologize in advance.
Runtime:
Paolo: New Reflection.Emit generation code generates
code that can be executed in Windows. Now binaries
generated by Mono/MCS will run on Windows.
Paolo got Activator.CreateInstance to work.
Sergey's CPU-optimization for CPBLK.
Many many bug fixes to the runtime from Dick, Dan
Lewis, Dietmar, Gonzalo, Martin, Paolo, Radek and Sergey,
Compiler:
Many bug fixes: The compiler can now compile Gtk#,
Vorbis#, System.Data assembly and System.Xml assembly
which previously did not work (Dietmar, Miguel, Paolo,
Piers, Ravi, Miguel). Thanks to all the bug
reporters.
Class Libraries:
Mike started work on System.Xml.XPath
Christian, Dennis, Daniel and friends got more stubs
for System.Windows.Forms in.
Ajay revamped System.Xml.Schema. And Jason and Duncan
updated System.Xml
Daniel also checked in a working CodeDOM
implementation and a C# provider.
Many bug fixes by everyone. Thanks to Daniel, Duncan,
Jonathan, Lawrence, Martin Mike, Nick and Piers. I am
missing a lot of contributors that should be listed.
ASP.NET support
A lot of work from Gonzalo allows some small and
modest ASP.NET applications to run (you still need the
unreleased XSP code though).
System.Data:
Integrated the MySQL provider from Brad Merryl.
Lots of work by Dan, Rodrigo, Tim.
Microsoft.VisualBasic runtime support
Rafael and Chris have been working on the VisualBasic
runtime support DLLs
Hello everyone!
Mono 0.11 is out!
This new version has new features:
* Massive:
* Ultrich Kunitz implemented the whole calendar set of
classes. Yes, thats right. The whole thing, with a
complete test suite. Thanks Ultrich!
* JIT/runtime features:
* Martin's debugging framework is included (see web
site for details on how to use it). (Martin)
* Transparent Proxy has been implemented for the
runtime (lets you run/debug/hack on remoting for Mono) (Dietmar)
* Inline and constant folding/propagation support
in the JIT engine (Dietmar)
* Profiling support for the JIT engine (--profile).
* Cool runtime hacks, that made our compiler twice as fast:
* New string rewrite: faster, speedier, leaner, cooler!
Paolo had been talking about a new string rewrite,
and super hacker Patrik Torstensson started the
implementation, Dietmar then switched the object
layout and the Mono team helped iron out a few of
the details.
* New array reprensetation: Dan Lewis contributed a new
faster and smaller array implementation.
* Improved Reflection.Emit: Paolo improved our
reflection emit code.
* ADO.NET
* Daniel Morgan, Rodrigo Moya have some pieces of the
Sql classes ready to run. he first signs of life
this week (we can connect, insert rows; do transactions:
commit/rollback; SQL errors and exceptions work).
* Http Runtime
* The HTTP runtime (to be used by our ASP.NET implementation)
was contributed by Patrik Torstensson. Patrik not only
contributed a massive ammount of classes, but he immediately
went on to implement ThreadPools and then helped out with the
new String rewrite.
* XML improvements:
* Kral Ferch and Duncan Mak contributed more
improvements to the XML implementation.
* Work on Xml Serialization from John Donagher.
* Documentation:
* MonoDoc ships for the first time!
(John Barnette, Adam Treat and John Sohn)
* New documentation stubs ready to be filled, and translated
included (thanks to our doc team!)
* General fixes:
* Piers Haken fixed many of our attributes and many
little problems that were exposed by his CorCompare tool
* Many Mono C# compiler bug fixes.
* Other improvements:
* NUnit works on Linux! (Patrik Torstensson)
* More NUnit tests (Nick Drochak)
* Windows.Forms progress: Dennis Hayes and Christian
Meyer have been contributing stubs for the
Windows.Forms work.
* Full Parse implementations and bug fixing by Gonzalo
* Dan Lewis contributed some missing classes for the
Regexp implementation.
* Jonathan's trace classes
* This Month's Mono is brought to you by:
Adam Treat, Chris Podugriel, Christian Meyer, Daniel Lewis,
Daniel Morgan, Dennis Hayes, Dick Porter, Dietmar Maurer,
Duncan Mak, Guarav Vaish, Gonzalo Paniagua, Jaime Anguiano,
Jason Diamond, Joe Shaw, John Barnette, John Donagher, John
Sohn, Jonathan Pryor, Kral Ferch, Martin Baulig, Miguel de
Icaza, Mike Kestner, Nick Drochak, Paolo Molaro, Patrik
Tostensson, Piers Haken, Ravi Pratap, Rodrigo Moya, Sergey
Chanben, Ultrich Kunitz, Wictor Wilen.
I know that I missed some features, there is a lot of work
that happens in a month. I apologize in advance for any
features I omited by accident.
Special thanks go to Duncan for helping out with all those
little details in the project. And also Nick who has been
keeping us in good shape by maintaining and helping new
contributors provide more test suites.
* Reporting bugs
If you find a bug in Mono, please file a bug here:
http://bugzilla.ximian.com
That way we wont loose your bug report, and will be able to
follow up properly with it. Also try to provide simple test
cases whenever possible and try as hard as possible to
identify the root of a problem (compiler, runtime, class
libraries).
* Forum
The mono-list-request@ximian.com mailing list is open for
those of you who want to discuss the future of Mono.
Hello everyone!
Mono "Self Hosting" 0.10 is out! (Alex insisted I used the
<blink> tag for "Self Hosting", but was dissapointed when he
realized most mailers dont support this).
Too many things have happened since the the 0.9 release,
almost an entire month. The big news is that we are shipping
a the self-hosting Mono C# compiler. This has been tested on
Linux/x86 only.
Also, we delayed the release for one reason or other, but it
turns out that as a extra bonus, Paolo fixed the last
outstanding bug in the JIT engine, so the compiler now runs in
the JIT engine instead of the interpreter.
The mono-0.10 release includes the libraries required to run
the compiler as well as assorted .NET programs [1].
* What is new
There is so much stuff in this release that is hard to keep
track of it.
Jason, Kral and Duncan have done an amazing job with
System.Xml, up to the point that it is even being used by
gtk-sharp's code generator (and it all comes with great test
suites to verify that it works!). Ajay's XmlSchema code is
also shipped.
Martin worked on our debugging infrastructure (the JIT can
load dwarf files, and our class libraries now generate dwarf
debugging info; we are in the process of adding this to the
compiler, the patch did not make it to this release though).
For the first time the System.Web assembly has built without
all the excludes, so you can get your hands on Gaurav and
Lee's massive code base.
Lots of new tests to the runtime, class libraries and compiler
are included. As always, big thanks go to Nick for continued
guidance to new developers, and writing new tests.
Dan removed the System.PAL dependency, we now have moved to an
internalcall setup for all the System.IO calls, and dropped
the MonoWrapper shared library.
Porting wise: Sergey's StrongARM port is included now; Jeff's
SPARC port and Radek's PowerPC port have been updated to
reflect the new changes in the engine.
Runtime wise: Dietmar also got us asyncronous delegates
implemented. Dick continues his work on our foundation
classes, and has resumed his work on the IO layer.
Paolo is the hero behind self hosting on Linux. Send your
congrats (and wine) to him.
And without the help from Mike, Duco, David, Piers, Nick,
Sergey, Mark, Jonathan, John, Adam and Dennis this release
would have not been possible.
This release is mostly ECMA compatible. I did not expect this
to happen so soon. I am very grateful to everyone who has
made this happen
* The goods
The runtime sources and binaries to the compiler/libraries:
http://www.go-mono.com/archive/mono-0.10.tar.gz
The class and compiler sources:
http://www.go-mono.com/archive/mcs-0.10.tar.gz
* Requirements:
You still need glib-2, and pkg-config. If you plan on
compiling large applications, getting the Boehm GC is a plus
(we will integrate this in a future version, for now it is an
external requirement).
Boehm GC is available in packaged format for Debian and Red
Hat systems.
* To compile on Linux
Do your regular chores with mono-0.10.tar.gz, you know the
drill. In the end, after you reach the `make install' phase,
now you can do some cool stuff.
If you want to compile the compiler (just to try it out),
untar the sources to the compiler (mcs-0.10.tar.gz) and do
manually:
cd mcs-0.10
(cd jay; make)
(cd mcs; make monomcs)
Now you will end up with a nice mcs4.exe in the mcs/mcs
directory, that is the compiler. If you want to use that,
replace the mcs.exe we distribute with the mcs4.exe you got.
* Gadgets
Man pages for mcs, mono and mint are included for your
enjoyment.
Particularly of interest is `mint --profile' which is awesome
to profile your application, the output is very useful.
Also, if you want to impress your friends, you might want to
run the JIT with the `-d' flag, that shows you how the JITer
compiles the code (and shows the basic blocks and the forst of
trees as it goes).
* Next steps
More classes are missing. These are required so we can run
nant and nunit natively. Once we achieve that, we will be
able to ship a complete environment that compiles on Linux.
Currently our makefiles still use csc, as we still need
nunit/nant to work.
[1] Of course, .NET programs that try to use classes we have not yet
implemented, will be left wondering `why did this happen to me?'.
Hello!
I have just uploaded Mono 0.9 to the web server, you can get
the goodies here:
http://www.go-mono.com/archive/mono-0.9.tar.gz
http://www.go-mono.com/archive/mcs-0.9.tar.gz
mono-0.9.tar.gz contains the source code to the runtime (JIT
and interpreter) as well as a pre-compiled version of the
compiler (mcs.exe) and the class libraries.
To compile the compiler and the class libraries, you still
need Windows with the .NET SDK, as our runtime can not host
the compiler completely yet.
* Improved Build System
You can check http://www.go-mono.com/download.html for the
new and fresh compilation instructions. Same requirements as
the last version (pkg-config, glib 1.3.xx need to be
installed).
* What is new:
Compiler can compile about 75% of our regression test suite
on Linux. Most of this work is on the class libraries and
Paolo has been the magician behind the work here.
JIT can run the compiler now (Dietmar)
Mint works on Windows now (Dick).
Application Domains have been implemented (Dietmar)
* Two modes of operation are available, depending on
your needs: share code, or maximize speed (does not
share code). This is described by the the
LoaderOptimization enumeration in .NET.
Corlib no longer has references to mscorlib (Daniel Lewis)
Ports:
PowerPC has been updated (Radek Doulik)
New SPARC port (Jeffrey Stedfast)
Documentation system:
Adam Treat has been working on finishing the Doctools
to maintain the Mono class library documentation. We
still need a GUI editor though.
Tracking progress:
Nick's new tools to track progress are included in
this release.
Many new more regression tests for the class library
(David Brandt, Mark Crichton, Nick Drochak, Bob Doan,
Duco Fijma).
Lots of new code:
Gaurav Vaish (the hacking god behind System.Web),
Chris Podugriel (System.Data) and Mark Crichton (Crypto)
Runtime:
Socket layer is finished (Dick Porter)
Compiler has full support for unsafe code now (Miguel)
Still a few things missing: constant folding is not
finished everywhere and access permissions are not
enforced yet.
Many many many bug fixes everywhere from everyone on the team:
Paolo Molaro, Daniel Lewis, Daniel Stodden, Dietmar
Maurer, Jeff Stedfast, Nick Drochak, Duco Fijma, Ravi Pratap,
Dick Porter, Duncan Mak, Jeff Stedfast and Miguel de Icaza.
I am sorry if I left a major component out of the
announcement, this were some intense 11 days of work.
* What is obviously missing
Currently our System.Reflection.Emit is lacking array and
pointer support, which is why many programs still do not
compile, but this should be taken care of next week.
* How can you help
There are many ways to help the project, check the details
documentation in:
http://www.go-mono.com/contributing.html
You might also want to stop by our IRC channel on
irc.gnome.org, channel #mono if you are interested in
contributing.
Have a happy weekend!
Miguel.
Hey guys!
Mono 0.7 has been released.
It has been a long time since the last release of Mono (almost
three weeks). We have made an incredible ammount of work in the past
three weeks.
* Highlights of this release:
* The monoburg: BURS-instruction selector implemented (for our
portable JIT engine).
* JIT engine works for very simple programs (Fibonacci works
for instance). It is about 30% faster running than the
equivalent code compiled with Kaffe.
The interesting part is that this was accomplished with the
a minimum register allocator, and very simple monoburg
rules, so there is a *lot* of room to improve here.
* The Interpreter has madured a lot. Value Types are fully
supported now; We dropped the FFI dependency, as we now
have our own code generator.
* The runtime has been expanded and extended as to support
real file I/O (including console I/O). So Hello World works
in there.
* The compiler can generate code for most statements now; It
also performs semantic analysis on most expressions.
Creation of new objects is supported, access to parameters,
fields and local variables works. Method invocation works.
Implicit type conversions, assignments and much more.
Operator overloading is implemented, but broken on this
release, hopefully this will be fixed soon.
Delegates and Attributes are now declared and passed around,
but no code generation for those exist yet.
* More classes (look for details). Sergey and Paolo have been
working on various classes in System.Reflection.Emit to get
the compiler self-hosting.
* NUnit is now part of the distribution, so it should be
trivial to write test cases (and if you want to help out,
this is one way to do it, we really need more tests cases).
I am going to try to switch to Nick's JB for C# this week or next
week. But the excitement of having the compiler deal with real C#
programs is too much to be contained, and I can not keep my hands of
the code generation in the compiler.
* Availability:
http://www.go-mono.com/archive/mono-0.7.tar.gz
http://www.go-mono.com/archive/mcs-0.7.tar.gz
* Details
Class Library Changes:
Many enumerations have been revamped to have the same value
definitions as those in .NET as those cause problems. They were also
missing the [Flags] attributes, so we got that right too.
* System
SerializableAttribute impl (Miguel)
String updates (Jeff)
System.Char (Ravi)
* System.Configuration
ConfigurationSettings impl (Christopher Podurgiel)
SingleTagSectionHandler impl (Christopher Podurgiel)
DictionarySectionHandler impl (Christopher Podurgiel)
* System.Collections.Specialized
NameObjectCollectionBase impl (Nick Drochak)
* System.Diagnostics
StackFrame stubs (alexk)
StackTrace stubs (alexk)
* System.IO
File stubs (Jim Richardson)
IOException impl (Paolo)
StreamWriter impl (Dietmar)
StreamReader stubs (Dietmar)
* System.Net
ConnectionModes (Miguel)
ProxyUseType (Miguel)
WebStatus (Miguel)
* System.Reflection
Assembly (stubs) (Paolo)
MethodBase (Paolo)
MethodInfo (Paolo)
* System.Reflection.Emit
EventToken (Sergey)
FieldToken (Sergey)
FlowControl (Sergey)
ILGenerator (stubbed) (Paolo)
Label (Paolo)
MethodToken (Sergey)
OpCode.cs (Sergey)
OpCodeType (Sergey)
OpCodes.cs (Sergey)
OperandType (Sergey)
PEFileKinds (Paolo)
PackingSize (Sergey)
ParameterToken (Sergey)
PropertyToken (Sergey)
SignatureToken (Sergey)
StackBehaviour (Sergey)
StringToken (Sergey)
TypeToken (Sergey)
* System.Threading
Most classes stubbed out by Dick Porter (Dick)
* System.Web
HttpWorkerRequest stubs (Bob Smith)
* System.Web.Hosting (Bob Smith)
AppDomainFactory stubs (Bob Smith)
ApplicationHost stubs (Bob Smith)
IAppDomainFactory stubs (Bob Smith)
IISAPIRuntime stubs (Bob Smith)
ISAPIRuntime stubs (Bob Smith)
SimpleWorkerRequest stubs (Bob Smith)
* System.Web.UI
LiteralControl implemented (Bob Smith)
HtmlContainerControl bugfixes (Bob Smith)
BuildMethod
BuildTemplateMethod
HtmlTextWriterAttribute
HtmlTextWriterStyle
HtmlTextWriterTag
IAttributeAccessor
IDataBindingsAccessor
INamingContainer
IParserAccessor
IPostBackDataHandler
IPostBackEventHandler
IStateManager
ITagNameToTypeMapper
ITemplate
IValidator
ImageClickEventHandler
OutputCacheLocation
PersistanceMode
StateItem
* System.Web.UI.HtmlControls
HtmlAnchor impl (Leen Teolen)
HtmlTextArea impl (Leen Teolen)
* System.Web.UI.WebControls
WebControl.cs (Gaurav Vaish)
* System.XML
Lots of enumerations (Miguel)
(will add later)
* Add loads of enumerations throughout (Sergey)
(will add later)
Compiler Changes:
* Assignment (Miguel)
* expression semantic analysis (Miguel)
* constructor creation, chaining (Miguel)
* Unified error reporting (Ravi)
* initial attribute support (Ravi)
* calling convention support (Miguel)