Re: [legal] Bulk contribution barrier to entry

2005-10-29 Thread Mark Wielaard
Hi,

On Tue, 2005-10-11 at 08:52 -0500, Archie Cobbs wrote:
 Same with the FSF. E.g., Classpath hackers must sign a document
 granting the FSF copyright. This is so the FSF can be allowed to
 distribute Classpath without getting explicit permission from
 every author (which would be very unweildy). But the original
 authors still are allowed to distribute their own work too,
 even under a non-free license, if they want to.

Yes. The idea is that the contribution is a gift to the Free Software
community in the first place. So the standard contract has a clause that
permits you to use your code even in proprietary programs. The FSF does
ask to get a 30 days' notice so they know and have a record of all code
they distribute that a contributor also distributes under another
license. You don't need to invoke this clause in order to distribute
copies as free software under the GNU GPL, since everyone is allowed to
do that of course.

Cheers,

Mark

-- 
Escape the Java Trap with GNU Classpath!
http://www.gnu.org/philosophy/java-trap.html

Join the community at http://planet.classpath.org/


signature.asc
Description: This is a digitally signed message part


Mauve test suite (Was: Changes to bootjvm 0.0.0 coming soon)

2005-10-29 Thread Mark Wielaard
Hi Rodrigo,

On Mon, 2005-10-17 at 15:40 -0700, Rodrigo Kumpera wrote:
 For the rest I strongly suggest using Mauve, it can test a lot of the
 classlib and would be nice to have only one FOSS testsuite for
 classlibs.

Completely agreed. Mauve is a collaboration of several companies and
organisations started by Cygnus, Transvirtual, Hewlett-Packard and the
GNU project and is used by GNU Classpath, gcj, kaffe, ikvm, etc. Mauve
has several modules for testing different parts of the compilers,
runtimes and core library implementations. The main module has tests for
the core library, there is a module jacks for compiler tests, there is a
module verifier for byte code verifier tests, there is a visual tester
for testing AWT implementations, a module for rmic tests and a
serialization testsuite.  http://sourceware.org/mauve/

Cheers,

Mark

-- 
Escape the Java Trap with GNU Classpath!
http://www.gnu.org/philosophy/java-trap.html

Join the community at http://planet.classpath.org/


signature.asc
Description: This is a digitally signed message part


Re: Some questions about the architecture

2005-10-29 Thread Mark Wielaard
On Thu, 2005-10-20 at 17:56 -0500, Archie Cobbs wrote:
 Off tanget, but IMHO this is not strictly true: it depends on whether
 VM native code relies on finalize() to free up its (non-heap) memory.
 Here's an exmaple of this:
 
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4797189

That problem doesn't occur with GNU Classpath since our zip
implementation is written in java itself. But we have a similar example
in the mauve testsuite (one that I also observed while getting JBoss to
work with GNU Classpath and JamVM). There is a test that opens lots of
FileInputStreams and then expects the garbage collector to finalize
these and free up the open file descriptors. gcj explicitly handles this
by forcing a garbage collect and finalization pass when it cannot create
a new file descriptor. We currently don't have any convention for
marking VMObjects or finalizers as (scarce) holding native resources or
make the native code signal the runtime to do a finalization of such
objects.

Cheers,

Mark

-- 
Escape the Java Trap with GNU Classpath!
http://www.gnu.org/philosophy/java-trap.html

Join the community at http://planet.classpath.org/


signature.asc
Description: This is a digitally signed message part


Re: Some questions about the architecture

2005-10-29 Thread Mark Wielaard
Hi Rodrigo,

On Fri, 2005-10-21 at 18:07 -0200, Rodrigo Kumpera wrote:
 What happens when an exception is uncaught is, more or less, the following
 
 -The exception is passed to the thread's uncaughtExceptionHandler
 -The exception is passed to the ThreadGroup's uncaughtException method
 -The thread is terminated
 -If this was the last non-daemon thread, terminate the JVM.
 
 It's easy to have this stuff implemented in the class library, and not
 in the runtime, using Java a well smaller code. The class lib just
 make sure that no thread will ever have an uncaught exception of any
 possible kind.
 
 That's my point, at least.

Correct. There is also the issue of Threads wanting to join() another
Thread. All this can be handled by the core class library. See
java/lang/VMThread.java in vm/reference for a default implementation
that should work with most runtimes.

Cheers,

Mark

-- 
Escape the Java Trap with GNU Classpath!
http://www.gnu.org/philosophy/java-trap.html

Join the community at http://planet.classpath.org/


signature.asc
Description: This is a digitally signed message part


Re: Get involved on Harmony

2005-10-29 Thread Mark Wielaard
Hi Geir,

On Wed, 2005-10-26 at 05:09 -0400, Geir Magnusson Jr. wrote:
 we want to be able to use GNU Classpath right now because  
 they are really so far advanced.

Thanks. Everything you need should be described in the GNU Classpath
Virtual Machine Integration Guide.

  http://www.gnu.org/software/classpath/docs/vmintegration.html

Cheers,

Mark

-- 
Escape the Java Trap with GNU Classpath!
http://www.gnu.org/philosophy/java-trap.html

Join the community at http://planet.classpath.org/


signature.asc
Description: This is a digitally signed message part


Re: Compilers and configuration tools

2005-10-29 Thread Mark Wielaard
Hi Rivaaj,

On Tue, 2005-10-25 at 17:07 +0200, Rivaaj Jumna wrote:
 This may be a bit off topic but what does a harmony developers desktop look
 like? My reason for asking is that I've been groomed on developing using an
 ide in the windows environemnt, Visual Studio 6.0 and the like.
 
 What sort of tools would one use on a Linux environment, eclipse cdt
 perhaps? I'm not afraid of command lines, :-) but they're a barrier to entry
 for someone like myself who would just like to explore the code base.

To be honest most of us GNU/Linux hackers just use GNU Emacs as the true
editor/ide/kitchen sink. But since we are now able to provide support
for large applications like Eclipse some people have started to use that
as dog food for hacking on GNU Classpath, Mauve and JamVM.

Tom Tromey wrote a couple of guides of how to do that.
  eclipse, jamvm, and classpath
  http://lists.gnu.org/archive/html/classpath/2005-09/msg00073.html
  mauve testing with eclipse
  http://lists.gnu.org/archive/html/classpath/2005-09/msg00074.html

Native eclipse now comes with several GNU/Linux distributions like
Fedora, Ubuntu and Debian (unstable).

Cheers,

Mark

-- 
Escape the Java Trap with GNU Classpath!
http://www.gnu.org/philosophy/java-trap.html

Join the community at http://planet.classpath.org/


signature.asc
Description: This is a digitally signed message part


Re: [dev-process] Coding Style Guide

2005-10-29 Thread Mark Wielaard
Hi David,

On Fri, 2005-10-21 at 16:58 +0200, David Tanzer wrote:
 I'm not worried about Java code we write, because I assume everyone
 agrees to use the Java Coding Conventions from Sun [1] here. Much of the
 development in Harmony is done in C at the moment, and we need a coding
 style guide here too.

I have never seen that coding convention. But for GNU Classpath we use a
coding convention that mimics the standard (GNU) C and C++ coding
convention as closely as possible. This has as advantage that code
written in different programming languages looks similar across the
projects. I would recommend that other projects adopt that since we have
written so much code that conforms to this standard already. See
http://www.gnu.org/software/classpath/docs/hacking.html#SEC8

I do note that coding conventions are something that lots of people have
an opinion on. And in general they quickly turn into bike shed (*)
discussions. So I would just state one convention and stick with it.

Cheers,

Mark

(*)
http://www.freebsd.org/doc/en_US.ISO8859-1/books/faq/misc.html#BIKESHED-PAINTING


-- 
Escape the Java Trap with GNU Classpath!
http://www.gnu.org/philosophy/java-trap.html

Join the community at http://planet.classpath.org/


signature.asc
Description: This is a digitally signed message part


Re: Get involved on Harmony

2005-10-29 Thread Mark Wielaard
Hi João,

On Fri, 2005-10-21 at 11:41 -0200, [EMAIL PROTECTED] wrote:
 My name is João,  i work on AMS here on IBM Brasil and i have very 
 much interest in work (developing) on your incubation project Harmony. I 
 don´t know how i could do that, because i'm not a current ASF commiter - i 
 don't have the commiter/member status.
 
 Please tell me what you think, and how  i could get involved (if i 
 could).

Welcome. Harmony is a collaboration of lots of projects that want to see
a Free Software alternative to the proprietary j2se. That means that
there is lots to do. Here is a list of things/projects you can work on:

- Core Class Libraries
  http://article.gmane.org/gmane.comp.java.classpath.devel/5522
  http://developer.classpath.org/mediation/ClasspathFirstSteps
- Compilers
  http://gcc.gnu.org/java/
  http://gcc.gnu.org/wiki/GCJX
- Runtimes:
  http://www.kaffe.org/ http://www.ikvm.net/ http://jamvm.sf.net/
  http://jcvm.sf.net/ and lots more listed at:
  http://www.gnu.org/software/classpath/stories.html
  Dan is even writing a new one from scratch now.
- javadoc replacement:
  gjdoc http://www.gnu.org/software/classpath/cp-tools/
- browser plug-in:
  gcjwebplugin and gcjappletviewer http://www.nongnu.org/gcjwebplugin/
- Test suite:
  http://www.sourceware.org/mauve/

And there are obvious other projects that I forgot that are interesting
to work on to make harmony a reality. Please let us know what your
interest is and we will find the project that you might like to hack on!

Cheers,

Mark

-- 
Escape the Java Trap with GNU Classpath!
http://www.gnu.org/philosophy/java-trap.html

Join the community at http://planet.classpath.org/


signature.asc
Description: This is a digitally signed message part


Re: Get involved on Harmony

2005-10-29 Thread Mark Wielaard
Hi Graham,

On Thu, 2005-10-27 at 10:03 +0100, Graham Smith wrote:
 I've been a Java developer (web applications mostly) for a longer than I care 
 to think about while sober but wouldn't know C from Perl. This makes me think 
 that, at present at least, I probably won't be able to have much input. 
 
 AIUI though harmony will eventually write it's own core class libraries 
 (java.util, java.sql, javax.swing, etc etc ) which is where I think I could 
 be most productive.
 
 What I suppose I am trying to ask is what area(s) do you think I would be 
 most 
 useful working in? What I am hoping is that someone with a good understanding 
 of the project will be able to point me in the direction of an overview or 
 towards areas that best fit my current skills which will help get me started. 
 I've not worked on a project this large before and it's quite daunting to be 
 faced with the whole project all at once.

OK, let me try to get you started.

Since you know things about web applications you might want to help out
testing large scale application servers. We got Jonas and JBoss working
now. See the links on http://gnu.wildebeest.org/diary/index.php?p=126 

But most of us are just low-level compiler/runtime/library hackers and
don't really know how to properly test it all. So someone experienced
with these kind of tools could find things that don't yet work as
expected and work with the library/runtime hackers to figure out why.
That would be excellent. For Jonas you will have to try out Fedora Core
RawHide (ask [EMAIL PROTECTED]), JBoss isn't packaged
yet, but should now kind of startup with jamvm (1.3.1) and GNU Classpath
from CVS (we will make a new developer snapshot release next week), or
you can try something smaller like Tomcat which has been packaged for
both Fedora and Debian (ask debian-java@lists.debian.org) these days and
should work with any GNU Classpath based runtime now.

Another area where we are seeing a lot of progress these days is Free
Swing. We have setup a page of Free Software applications that need to
be tested against the latest runtimes. These
http://developer.classpath.org/mediation/FreeSwingTestApps
Setting up similar pages for other parts, like AWT, CORBA or beans
applications would be super. Then we can regularly test them against
kaffe, gcj/gij or another runtime like bootjvm when it starts working.

Unit/regression tests are always welcome of course. So if you want do
help out lower level then take a look at http://sourceware.org/mauve
Although mauve has now more then 35.000 core library tests it certainly
doesn't have full coverage for all of the core library.

If you want to help out on the core libraries then take a look at the
open tasks in the wiki:
http://developer.classpath.org/mediation/ClasspathOpenTasks
Please coordinate with the other developers on the classpath@gnu.org
list if you want to pick up one of these things.
In general the developer wiki has some nice information on what is being
done around the core library implementation:
http://developer.classpath.org/mediation/

Hope this gives some ideas where/how to start contributing.

Cheers,

Mark

-- 
Escape the Java Trap with GNU Classpath!
http://www.gnu.org/philosophy/java-trap.html

Join the community at http://planet.classpath.org/


signature.asc
Description: This is a digitally signed message part


Re: [BootJVM] configure

2005-10-29 Thread Jean-frederic Clere

[EMAIL PROTECTED] wrote:


Jean-Frederic,

The _first_ thin to do is:

 $ svn update
 $ rm -rf ./config
 $ ./config.sh

You will notice some changes, per harmony-commits@
list. 


The gmake complains about:
DIRNAME:=$(shell expr $(PWD) : '\(.*[^/]\)/*$' : '.*/\(..*\)')


After doing SVN update, removing the existing
configuration and starting _completely_ over will show
you where I have changed things.  The other thing
you could do would be,

 $ mv ./config ./config.save
 $ ./config.sh
 $ diff ./config.save ./config

This would show you what changed in the SVN update
in the results it produces.


Dan Lydick


-Original Message-
From: Jean-frederic Clere [EMAIL PROTECTED]
Sent: Oct 28, 2005 4:55 PM
To: [EMAIL PROTECTED] [EMAIL PROTECTED]
Subject: Re: [BootJVM] configure

[EMAIL PROTECTED] wrote:

 


Jean-Frederic,

Take a look at the new Makefiles in the top
level directory and each source directory.
These should provide all functionality that
I see for the time being with the exception
of distribution rules, whose requirements
may change over time.  Notice that one
important requirement is to be able to run
the documentation compiler 'doxygen',
which requires an explicit list of files.  The
current 'config.sh' provides these to both
the Makefiles and Doxygen (via 'bootjvm.dox')
as include files.


   


+++
[EMAIL PROTECTED]:~/harmony/enhanced/trunk/sandbox/contribs/bootjvm/bootJVM 
make

/bin/sh: -c: line 1: unexpected EOF while looking for matching `''
/bin/sh: -c: line 2: syntax error: unexpected end of file
MakeSetup:98: config/config_build_steps.mak: No such file or directory
Makefile:163: config/config_dox_setup.mak: No such file or directory
make: *** No rule to make target `config/config_dox_setup.mak'.  Stop.
+++
Ok: I see that configure have to create config/config_build_steps.mak 
and config/config_dox_setup.mak

/bin/sh: -c: line 1/2 strange.

 


I'll take a look at your configuration proposal
soon.


   


Great-

 


Dan Lydick


-Original Message-
From: Jean-frederic Clere [EMAIL PROTECTED]
Sent: Oct 28, 2005 4:17 PM
To: harmony-dev@incubator.apache.org
Subject: Re: [BootJVM] configure

Geir Magnusson Jr. wrote:



   


If you wish to contribute this, could you post it to a JIRA?
  

 


Until I get commit rights ;-)

It is now: http://issues.apache.org/jira/browse/HARMONY-10
Now I go for the Makefiles or the build.xml.
make is more strandard for C project but ant is probably before the 
harmony community.


Any commit?

Cheers

Jean-Frederic


   


...snip...





Dan Lydick