Since 0.5.1 almost all know code-completion bugs have been fixed. If you have C# code that you think should be completing but isn't please file a bug with a small example. We also fixed many of our non-wishlist or feature request bugs. These will be in our 0.6 release.
I posted what I know to not work at the MonoDevelop list. A recap:
Things I know about:
If no serious bugs come up with completion, I plan to start looking into adding C# 2 support to the parser which could involve going a few different directions.
Since 0.6 was branched, I have mostly finished the C# port of the docking widget and we have enabled that. This should make building simpler, and will allow us to be self-hosting.
10 Jan 2005 (updated 10 Jan 2005 at 21:11 UTC) »
My main beefs are the callback-based adding of the widgets seem to force me to playing with PackStart/PackEnd tricks and that adding non-button ToolItems seems to take an extra step.
I think the second might be able to be "fixed" in a similar way as [Glade.Widget].
I do hope they actually start using Java instead of Python, however. I am confident that I will be able to run those programs via mono (IKVM kicks ass) at some point anyways. Will you ever be able to say the same for the other way?
I will agree that debating the language can take a definite back seat to more important reasons that I would favor an ECMA 334 and 335 based environment for adoption in GNOME.
This is what the masses of internal IT departments and 3rd party developers want. As far as I can tell, these groups are adopting .NET (both C# and VB.NET) in great numbers, in particular through the colleges and universities. I don't think it would be wise to underestimate this effect if you intend to be statistically significant in desktop market or mind share.
Then again, if they don't see the language as very important why do they insist on making it harder for me as an independent person to do what I want with free software. I'm not going around telling them they can't use Java or Python. Hopefully, we can go back to moving forward instead of ignoring the issue entirely. It's extremely disconcerting that I even feel compelled to have to argue about this.
I'm probably wasting my time just writing this.
I also recently did some more work on monocop, and I think it is ready to be released to the public.
26 Oct 2004 (updated 26 Oct 2004 at 04:13 UTC) »
However, I thought why not just slap a little command-line driver in front of it and then everyone can use it. So that is what I did. Temporarily called monocop (because AssemblyAnalyzer was too long, and I haven't bothered to think of a real name yet). It can output either plain text or xml. It should work with make, nant, others fairly well in an automatable way.
It works like this. You specify an assembly or assemblies to analyze, and it will warn you of possible design and naming problems. It also supports custom rules and looks to be fairly easy to add more. It only has about 87 rules right now.
Some example output: $ monocop -xml -output:results.xml hello.exe
<?xml version="1.0" encoding="utf-8"?> <Assembly Path="hello.exe"> <Resolution Certainty="95" Priority="Error"> <Item>/home/jluke/hello.exe</Item> <Description>Assemblies should be strong named</Description> <Details>Assemblies with a strong name can be placed in the GAC. Furthermore only strong named assemblies can be referenced by a strong named assembly (Your assembly cannot be used by a strong named assembly if you do not sign it).</Details> <Text>Sign the assembly hello.exe with a strong name.</Text> </Resolution> ....
Things an application may need to do during installation:
For example, MonoDevelop needs to add a few mime types and occasionally syntax definition to gtksourceview to work fully. It works without installing (unpack it and type make run), but just enough is missing to potentially make things harder on you.
For some reason GNOME and others seem to increasing the dependence on $prefix and path specific files for the above things. You put a .desktop file here, an app.xml file there and run update-mime-database /some/path/, put a gconf schema here and do something else. Then if PATH, LD_LIBRARY_PATH, PKG_CONFIG_PATH aren't set right or you don't have root permission it doesn't quite work.
It really seems like there should be a better way. Here are some options:
I used to think we would be lucky if we could get to the point where autopackage was widely accepted in addition to rpm/deb. Now I am hoping for more. In particular, bundles seem rather appealing without me having had the chance to play with the Mac and discover its shortcomings. It certainly seems doable to me.
18 Oct 2004 (updated 18 Oct 2004 at 01:31 UTC) »
My TV broke, but luckily things like tvtime and mythtv exist.
I watched the VP debate which was lackluster at best, still wish each party didn't conflict with themselves so much. I guess it is much easier to find faults, than fix them.
Laszlo sounds interesting without me really reading anything about it, sort of Flash MX-ish but now open source. If it only didn't require the hopelessly complicated J2EE. Looks like they plan to integrate with Eclipse (only speculation on my part because they chose the same license).
I messed with some more bite-sized mcs stuff today, small error fixes and stuff. Most of the test failures now seem to be where mcs reports a generic parser error, instead of a more specific one, which would be nice to fix but probably not a high priority. I think I am getting to the point that I understand (most) of the process now, but not enough to write a compiler yet.
4 Oct 2004 (updated 4 Oct 2004 at 06:20 UTC) »
I just spent 10 minutes writing a tool to generate a Makefile for a directory of .cs files, I have to wonder why I didn't do so a very long time ago.
Updated: I didn't assume anything and I am not naive. Just mentioning a related fact in case anyone believes the conspiracy theories going around that Bush and/or Republicans are secretly planning what Democrats are doing in plain sight. In any case, (most) politicians are members of a party in which they both have influence and are influenced by, so it is related to the presidential vote.
FOAF updates: Trust rankings are now exported, making the data available to other users and websites. An external FOAF URI has been added, allowing users to link to an additional FOAF file.
Keep up with the latest Advogato features by reading the Advogato status blog.
If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!