Re: [Mono-dev] Suggestion: Mono.Collection really useful
Hello Francisco, I think you may be more interested in the mono-list (for those using mono/C#), as this is the mono-devel-list for internal development of the mono framework/platform. First, regarding compatibility, C# and the .Net CLI are ECMA and ISO standards at this point, so it is important to maintain that as a base/minimum level. Beyond this, the most widely used implementation is Microsoft's, which does include segments other than what was submitted to ECMA and ISO. Some of these extensions are more important than others to the mono framework (ex: ASP.Net support). There are some things you may or may not agree with inside the core system, but the fact is, compatibility is pretty important as .Net (MS, Mono, dot-gnu etc) lends itself to cross-platform development. Though most of what will be developed in mono will probably center around Linux development. Many (myself included) would like to see more projects work across varied platforms without issue, or at least with less issue. Even though .Net started as a Microsoft standard, we should at least respect the core of the standard... MS has a history of breaking accepted standards, I don't think it would benefit mono to follow that path. Moreover, if there is more there than you need, so be it, better than there being less than you need. I find it very handy that most collections can be used like arrays in code (foreach is my friend). I've used this for strings/chars quite a bit. It tends to keep the app-level code a bit cleaner, and easier to understand, even if it doesn't fit the separation in your mind. Francisco Modesto wrote: Hi, I'm new with Mono and C#. I come from java world. I think you are doing a great job, congratulations! I've to admit that mono (C#) language are more powerful than java. Events is one thing I miss in high level languages. I did'n understand some things. Why the effort for be 100% compatible with Microsoft, if they did'nt want to be compatibles with nothing??? Specially with assemblies. I think there is many good things in Java than C#. Why re-code the wheel? C# assemblies are all but friendly and are designer by [EMAIL PROTECTED] I know it's not your fault. Someone can explain why System.Collection.IList has Item[] A list is not an array Maybe ToArray() method that returns an array? I miss a lot of classes, specially Collections class. List, Map, Set... I think the main power of Java is that you as programmer only have to worrier about your own problem, not implementing a lot of common stuff code. I'm not sure if I'm in the right mail-list, sorry if I'm wrong. -- Michael J. Ryan - tracker1(at)theroughnecks(dot)com - www.theroughnecks.net icq: 4935386 - AIM/AOL: azTracker1 - Y!: azTracker1 - MSN/Win: (email) ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Maybe a System.Data.OracleClient.dll bug
I have started (finally!) to work on this bug. The test I am currently using fails, with or without patch... although in an unexpected way. On mono, it breaks with: Failures: 1) MonoTests.System.Data.OracleClient.Oci.OciDefineHandleTest.TrimsWideUnicodeStringsTest : Directly passed value mismatched String lengths are both 25. Strings differ at index 2. expected:chㄼar入act本ers插 utf8 l日ong but was:ch?ar?act?ers? utf8 l?ong -^ (If your PC does not render east-asian fonts - upper line contains some japanese and chinese glyphs, in the lower they are replaced by question marks.) The string doesn't get trimmed. I suppose this is a problem with the setup of my Oracle database. To verify, I tried to run the code on MS.Net 1.1. It breaks... with OracleException Ora 12571:TNS:packket writer failure. Any sugestions? I attach the regression for bug 78840. OciDefineHandleTest.cs Description: Binary data ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] COM Interop Patch
Hello, Other than that, I think this is ok to check in. About the reorg: we have way too many way too big files, so this will be useful, but I'm not sure this is the right time to do it, since 1.2 is close. But if we do it after the big release, then we will have problems merging changes back. I think that as long as the split is done and maintained by Jon, that is OK. So if he wants to split some stuff into cominterop.c, and expose a handful of internals in an internal.h file, that should be fine. Miguel. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Build mono from svn on Solaris Express x86
Hello, configure error building mono from svn on solaris x86 /configure: line 22795: syntax error near unexpected token `BASE_DEPENDENCIES,'./configure: line 22795: ` PKG_CHECK_MODULES(BASE_DEPENDENCIES, glib-2.0 = $GLIB_REQUIRED_VERSION)' This looks like you are missing the pkg-config installation on your system, or you have not set ACLOCAL_FLAGS to include the -I and the path where aclocal can find it. You will drastically reduce the number of dependencies in your build, if you use a tarball instead of SVN which has none of these problems. Miguel ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Problem with compiling using MySQL library
The compiler won't use the GAC installed library as a reference. You need to give it dll in the current directory or a full path to a specific dll, to make sure which version of a library you are referencing (the GAC can contain many different versions of the same library). Copy the MySQl.Data.dll library to the directory your sources are or reference it with a relative or absolute path like: cd src gmcs -r:../lib/MySQL.Data.dll mysource.cs The above example assumes sources on ./src and referenced libs on ./lib. The System.* libs doesn't need to be copied to be referenced as the compiler finds them not because they also are in the GAC but because they are installed in the same directory as the compiler. :) On 10/2/06, Kenneth Jensen [EMAIL PROTECTED] wrote: Hello, I am trying to compile a small hello-program which will open a connection to a MySQL database, but the mcs compiler fails because it can't find the MySQL library ( I am running Fedora 5 Linux). I have installed the MySql.Data.dll into the GAC, using gacutil -i MySql.Data and I can even confirm its existence and version: [EMAIL PROTECTED] w5]$ gacutil -l MySql.Data The following assemblies are installed into the GAC: MySql.Data, Version=1.0.7.30073, Culture=neutral, PublicKeyToken=8e323390df8d9ed4 Number of items = 1 [EMAIL PROTECTED] w5]$ mcs MySqlExample.cs -r:System.Data -r:MySql.Data error CS0006: Cannot find assembly `MySql.Data' Log: Compilation failed: 1 error(s), 0 warnings [EMAIL PROTECTED] w5]$ I'm quite new to Mono, so forgive me if I have missed something obvious, but should I do anything else besides installing new modules into the GAC, for the compiler and runtime to be able to reference them? --- Cheers, Kenneth ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- Rafael Monoman Teixeira --- The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man. George Bernard Shaw ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Offtopic: C5 and class design
Jonathan Pryor wrote: Look at the Mono.C5 assembly, which contains many of these special collections classes. Though I don't see what's wrong with the System.Collections System.Collections.Generic types. Sure, there's no SetT, but DictionaryK,V suffices, just use the keys as a set. I've never seen that library before. What a wacky collection! Has anyone noticed how a lot of projects, when designing object-oriented frameworks, tend to ignore principles of keep-it-simple? I'm all for powerful classes, but I try to keep them small. I could write volumes about the errors of frameworks like Crystal Space or OGRE (game engines). C5 is better off than most libraries, but I still see them using protected fields (ick!), and there's something to be said for consistent naming. --Brian ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Maybe a System.Data.OracleClient.dll bug
Yeah, I tried looking at it the other day, but I have no idea how to test unicode stuff. Maybe eno on GimpNet IRC #mono can help you. He may not be able to help with Oracle, but he knows unicode very well. jonp is another good person to to talk to. If possible, write a Windows.Forms application with a rich text box or a Gtk# application with a TextView and output your result there. This is so unicode characters will show up for you. When looking at the output in a MS DOS Command Prompt, all I get is ? (question marks) as well. Also, Oracle SQL Developer is a good oracle GUI tool which is free to download and use. It uses JDK 1.5 (JRE 1.5 will not work). This tool shows the unicode characters. --- Leszek Ciesielski [EMAIL PROTECTED] wrote: I have started (finally!) to work on this bug. The test I am currently using fails, with or without patch... although in an unexpected way. On mono, it breaks with: Failures: 1) MonoTests.System.Data.OracleClient.Oci.OciDefineHandleTest.TrimsWideUnicodeStringsTest : Directly passed value mismatched String lengths are both 25. Strings differ at index 2. expected:chã¼arå ¥actæ¬ersæ utf8 læ¥ong but was:ch?ar?act?ers? utf8 l?ong -^ (If your PC does not render east-asian fonts - upper line contains some japanese and chinese glyphs, in the lower they are replaced by question marks.) The string doesn't get trimmed. I suppose this is a problem with the setup of my Oracle database. To verify, I tried to run the code on MS.Net 1.1. It breaks... with OracleException Ora 12571:TNS:packket writer failure. Any sugestions? I attach the regression for bug 78840. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Maybe a System.Data.OracleClient.dll bug
On 10/2/06, Daniel Morgan [EMAIL PROTECTED] wrote: Yeah, I tried looking at it the other day, but I have no idea how to test unicode stuff. Maybe eno on GimpNet IRC #mono can help you. He may not be able to help with Oracle, but he knows unicode very well. jonp is another good person to to talk to. If possible, write a Windows.Forms application with a rich text box or a Gtk# application with a TextView and output your result there. This is so unicode characters will show up for you. When looking at the output in a MS DOS Command Prompt, all I get is ? (question marks) as well. Also, Oracle SQL Developer is a good oracle GUI tool which is free to download and use. It uses JDK 1.5 (JRE 1.5 will not work). This tool shows the unicode characters. --- Leszek Ciesielski [EMAIL PROTECTED] wrote: I have started (finally!) to work on this bug. The test I am currently using fails, with or without patch... although in an unexpected way. On mono, it breaks with: Failures: 1) MonoTests.System.Data.OracleClient.Oci.OciDefineHandleTest.TrimsWideUnicodeStringsTest : Directly passed value mismatched String lengths are both 25. Strings differ at index 2. expected:chㄼar入act本ers插 utf8 l日ong but was:ch?ar?act?ers? utf8 l?ong -^ (If your PC does not render east-asian fonts - upper line contains some japanese and chinese glyphs, in the lower they are replaced by question marks.) The string doesn't get trimmed. I suppose this is a problem with the setup of my Oracle database. To verify, I tried to run the code on MS.Net 1.1. It breaks... with OracleException Ora 12571:TNS:packket writer failure. Any sugestions? I attach the regression for bug 78840. My mistake, a followin mail didn't make it to the list. So: Gr8. At least I know why I have problems getting this to work on MS.Net: it won't work. (see http://support.microsoft.com/default.aspx?scid=kb;en-us;322158# ) I'd have to use their exact versions of Oracle8, none other are basicly supported... so cross-testing this problem on windows is not possible. On the other hand - after reading other people's mail, it seems to me that all who experience the trimming have Oracle database setup as UTF8. Mine works in EEMSWIN1250 (you can check this with SELECT value FROM nls_database_parameters WHERE parameter='NLS_CHARACTER_SET';). This, however, should not be an issue, as NVARCHAR2 is meant for storing Unicode data even when the database does not operate in UTF8 (consult http://www.stanford.edu/dept/itss/docs/oracle/10g/server.101/b10749/ch6unicode.htm#i1007039). So there is ANOTHER bug, this one presenting only with non-UTF8 databases... Oh shit. Somewhere before the string gets inserted, mono (or OCI) replaces all non-ascii chars with character number 63 (yes, the question mark). [btw - I read the results through nunit gui runner, or KDE Konsole, both of which display UTF8 fine.] ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] [PATCH] DataTable.WriteXml
I've implemented the WriteXml method for System.Data.DataTable. Since writing a table is similar to writing a DataSet, it leverages many of the methods used to write DataSets. Included with the patch are a successful unit test for the new WriteXml functionality and a failing unit test for ReadXml, which has not yet been implemented. The patch caused no regressions in the System.Data net_2_0 test suite. The patch applies against the mcs/class/System.Data folder in the latest SVN revision (66162 as of this message). This is my first substantial contribution, so I'm happy to get feedback on it. Thanks. Patrick Earl Index: Test/System.Data/ChangeLog === --- Test/System.Data/ChangeLog (revision 66162) +++ Test/System.Data/ChangeLog (working copy) @@ -1,3 +1,9 @@ +2006-09-28 Patrick Earl [EMAIL PROTECTED] + + * DataTableReadWriteXml.cs: Added new tests for the DataTable's + ReadXml and WriteXml methods. These tests assume proper + functioning of the DataSet ReadXml and WriteXml methods. + 2006-09-18 Boris Kirzner [EMAIL PROTECTED] * DataViewTest.cs : fix compilation error. Index: Test/System.Data/DataTableReadWriteXmlTest.cs === --- Test/System.Data/DataTableReadWriteXmlTest.cs (revision 0) +++ Test/System.Data/DataTableReadWriteXmlTest.cs (revision 0) @@ -0,0 +1,373 @@ +// Author: +// Patrick Earl [EMAIL PROTECTED] +// +// Copyright (c) 2006 +// +// Permission is hereby granted, free of charge, to any person obtaining +// a copy of this software and associated documentation files (the +// Software), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to +// permit persons to whom the Software is furnished to do so, subject to +// the following conditions: +// +// The above copyright notice and this permission notice shall be +// included in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, +// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// + +#if NET_2_0 +using System; +using System.Data; +using System.IO; +using System.Text.RegularExpressions; +using System.Xml; +using NUnit.Framework; + +namespace MonoTests.System.Data +{ +[TestFixture] +public class DataTableReadWriteXmlTest +{ +void StandardizeXmlFormat(ref string xml) +{ +XmlDocument doc = new XmlDocument(); +doc.LoadXml(xml); +StringWriter sw = new StringWriter(); +doc.Save(sw); +xml = sw.ToString(); +} + +void GenerateTestData(out DataSet ds, + out DataTable dtMainInDS, + out DataTable dtChildInDS, + out DataTable dtMain) +{ +ds = new DataSet(MyDataSet); + +// Create a primary table and populate it with some data. Make a +// copy of the primary table and put it into the dataset. +dtMain = new DataTable(Main); +dtMain.Columns.Add(new DataColumn(ID, typeof(int))); +dtMain.Columns.Add(new DataColumn(Data, typeof(string))); + +DataRow row = dtMain.NewRow(); +row[ID] = 1; +row[Data] = One; +dtMain.Rows.Add(row); + +row = dtMain.NewRow(); +row[ID] = 2; +row[Data] = Two; +dtMain.Rows.Add(row); + +row = dtMain.NewRow(); +row[ID] = 3; +row[Data] = Three; +dtMain.Rows.Add(row); + +dtMainInDS = dtMain.Copy(); +ds.Tables.Add(dtMainInDS); + +// Create a child table. Make a copy of the child table and put +// it into the dataset. +dtChildInDS = new DataTable(Child); +dtChildInDS.Columns.Add(new DataColumn(ID, typeof(int))); +dtChildInDS.Columns.Add(new DataColumn(PID, typeof(int))); +dtChildInDS.Columns.Add(new DataColumn(ChildData, typeof(string))); + +row = dtChildInDS.NewRow(); +row[ID] = 1; +row[PID] = 1; +row[ChildData] = Parent1Child1; +dtChildInDS.Rows.Add(row); + +row = dtChildInDS.NewRow(); +row[ID] =
[Mono-dev] Mono Meeting: Venue Update, second update.
Hello, Folks, we found a cheaper hotel to organize the event for the Mono Meeting, so it will now be hosted closer to the Novell offices in Cambridge (close to the original location). The updated location is: Royal Sonesta Hotel Cambridge MA This is the hotel: http://www.royalsonestaboston.com/ Miguel. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] SPAM-LOW: Mono Meeting: Venue Update, second update.
I'm still undecided about attending. I'd be curious to hear from others to know whether there will be many mono application developers, as opposed to mono developers, at the meeting. Charlie -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Miguel de Icaza Sent: Monday, October 02, 2006 2:24 PM To: mono-list@lists.ximian.com; Mono Announce; mono-devel-list@lists.ximian.com Subject: SPAM-LOW: [Mono-dev] Mono Meeting: Venue Update, second update. Hello, Folks, we found a cheaper hotel to organize the event for the Mono Meeting, so it will now be hosted closer to the Novell offices in Cambridge (close to the original location). The updated location is: Royal Sonesta Hotel Cambridge MA This is the hotel: http://www.royalsonestaboston.com/ Miguel. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Build mono from svn on Solaris Express x86
Thanks miguel. That helped. I am using subversion because I like to build it myself so I can make changes to it. :-) export ACLOCAL_FLAGS=-I /usr/share/aclocal I used these links to help me: http://home.comcast.net/~jonel.rienton/2005/04/solaris-10-x86-and-mono.html http://www.genunix.org/wiki/index.php/How_to_build_Mono_on_Solaris Mono 1.1.13.8 and its dependencies are available for Solaris 10/x86 via http://www.blastwave.org. However, there is no new verison though. You download pkg-get and install it. Then you use pkg-get to get mono. It downloads and installs mono and its dependencies. /opt/csw is where blastwave.org installs its packages. /usr/sfw is where you find some GNU tools like gcc /usr/ccs is where you find tools like ar export PATH=/usr/sfw/bin:/opt/csw/bin:$PATH:/usr/sbin:/sbin:/usr/X/bin:/usr/ccs/bin export LD_LIBRARY_PATH=/usr/sfw/lib:/opt/csw/lib:$LD_LIBRARY_PATH:/usr/lib:/usr/X/lib:/usr/ccs/lib export PKG_CONFIG_PATH=/opt/csw/lib/pkgconfig export ACLOCAL_FLAGS=-I /usr/share/aclocal And of course, I used the bash shell. How I ran autogen.sh: CC=/usr/sfw/bin/gcc ./autogen.sh --prefix=$HOME/monosvn/monoinstall --with-libs=/opt/csw/lib --with-includes=/opt/csw/include How I ran gmake: CC=/usr/sfw/bin/gcc CFLAGS='-D_POSIX_PTHREAD_SEMANTICS' gmake However, I did make a change to configure.in for tls by adding with_tls=pthread and I commented with_nptl. *-*-solaris*) platform_win32=no CPPFLAGS=$CPPFLAGS -DGC_SOLARIS_THREADS -DGC_SOLARIS_PTHREADS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_MMAP -DUSE_MUNMAP need_link_unlink=yes libmono_cflags=-D_REENTRANT libgc_threads=pthreads # This doesn't seem to work on solaris/x86, but the configure test runs # with_nptl=no with_tls=pthread ;; I know this works for Solaris Express and Solaris 10, but not sure about versions prior to 2.10. --- Miguel de Icaza [EMAIL PROTECTED] wrote: Hello, configure error building mono from svn on solaris x86 /configure: line 22795: syntax error near unexpected token `BASE_DEPENDENCIES,'./configure: line 22795: ` PKG_CHECK_MODULES(BASE_DEPENDENCIES, glib-2.0 = $GLIB_REQUIRED_VERSION)' This looks like you are missing the pkg-config installation on your system, or you have not set ACLOCAL_FLAGS to include the -I and the path where aclocal can find it. You will drastically reduce the number of dependencies in your build, if you use a tarball instead of SVN which has none of these problems. Miguel __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Problem with compiling using MySQL library
mandag 02 oktober 2006 16:46 skrev Rafael Teixeira: The compiler won't use the GAC installed library as a reference. You need to give it dll in the current directory or a full path to a specific dll, to make sure which version of a library you are referencing (the GAC can contain many different versions of the same library). While I understand this, is there absolutely no way to tell the compiler that a specific library needs to be a specific version? Or, can it only be handled by -L and -r:/some/path/to/a/lib? The reason I am asking is, that some csproj files generated by VS NET 2005, contains includes that looks like a generic strongname specification, which seems a bit weird. Regards, Mads -- Med venlig hilsen/Regards Systemudvikler/Systemsdeveloper cand.scient.dat, Ph.d., Mads Bondo Dydensborg Dansk BiblioteksCenter A/S, Tempovej 7-11, 2750 Ballerup, Tlf. +45 44 86 77 34 ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list