Re: Bypassing security manager checks (was: Re: Infinite loop)

2005-11-17 Thread Mark Wielaard
On Thu, 2005-11-17 at 13:42 +, Gary Benson wrote:
 You make it sound like an easy fix: is it?
 What needs to be done, and where?

Besides what Jeroen already said you also have to merge ClassLoader.
libgcj has a different version at the moment. In particular you want the
logic that createSystemClassLoader() has.

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


New GNU Classpath developer Gary Benson

2005-11-18 Thread Mark Wielaard
Hi all,

As you probably already noticed by reading classpath-patches Gary has
been working on the security framework. And has written several mauve
tests to back up his patches. He now has direct developer access to
speed up his work.

Gary, here are the rules:

The first rule of GNU Classpath is - you do not talk about GNU
Classpath, you write code. The second rule of Fight Club is -
you DO NOT talk about GNU Classpath, you write code. Third rule
of GNU Classpath, someone yells stop!, goes limp, taps out, your
patch is NOT approved. Fourth rule, a bug report is between just
two people, the reporter and the fixer. Fifth rule, one commit
at a time, or get CVS merge conflicts. Sixth rule, no shirt, no
shoes, just bare ASCII source. Seventh rule, fixes will go in as
long as they have to. And the eighth and final rule, if this is
your first night at GNU Classpath, you have to patch the AUTHORS
file. (*)

Please post a patch and ChangeLog entry to classpath-patches to add
yourself to the AUTHORS file. You can consider that patch pre-approved
of course.

Thanks,

Mark

(*) More formal rules are of course in the GNU Classpath Hackers guide:
http://www.gnu.org/software/classpath/docs/hacking.html

-- 
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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: JamVM does not startup

2005-11-19 Thread Mark Wielaard
Hi Isabella,

On Fri, 2005-11-18 at 15:32 -0800, Isabella Thomm wrote:
 I am new to this, so sorry about this simple question and it probably
 does not fit in here, but I'd be glad to solve this problem: 
 I have installed classpath 0.19, as described, (configure, make, make
 install...), and then jamVM 1.3.3 (configure with the
 --with-classpath-install-dir option, make etc.) and I get the following
 error, while trying to execute a simple with java compiled program: 
 Error initialising VM (initialiseMainThread). 

I think this is your --prefix option to classpath configure not matching
the --with-classpath-install-dir configure option for jamvm. I saw that
Robert wanted to to help offline. But please do post the solution to the
list so others having the same problem might find the solution on the
list later.

 I am using Debian unstable.

Note that Debian unstable should come with the latest classpath and
jamvm releases prepackaged.

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: New GNU Classpath developer Gary Benson

2005-11-19 Thread Mark Wielaard
Hi Ito,

On Fri, 2005-11-18 at 14:59 -0800, David Daney wrote:
 Ito Kazumitsu wrote:
  From: Mark Wielaard [EMAIL PROTECTED]
 
 long as they have to. And the eighth and final rule, if this is
 your first night at GNU Classpath, you have to patch the AUTHORS
 file. (*)
  
  I, Ito Kazumitsu, did not obey this rule, but I do not think I
  have to be listed in AUTHORS because I have fixed and will fix
  only simple bugs.
  
  Should I list myself in THANKYOU?
  
 If you have CVS commit privileges, you owe it to your self to do this. 
 It will bring you worldwide renown.

David is right. Please add yourself. We didn't have this rule in the
past, but from now on we should do this. And your work, testing,
reporting, fixing, retesting and discussing solutions for the various
issues you found are really appreciated. What seem like simple bugs to
you are hairy incomprehensible multi-byte character encoding issues to
others.

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Comparable in java.util.Calendar

2005-11-21 Thread Mark Wielaard
Hi Kendall,

On Mon, 2005-11-21 at 17:15 -0600, Kendall Bell wrote:
 I would like to implement Comparable in java.util.Calendar.

That seems like a nice start for a 1.5 addition. Please follow the
Hacking Guide for some general instructions and post a patch to
classpath-patches plus ChangeLog entry when you have something for
review. http://www.gnu.org/software/classpath/docs/hacking.html

I see you already sent the paperwork request forms. Thanks for that.

Happy hacking,

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


mailing list troubles

2005-11-25 Thread Mark Wielaard
Hi all,

I tried to warn about a couple of issues with the mailing lists and
savannah. But apparently I am one of the people trapped in some insane
spam fighting scheme. Attached are the messages I sent from my normal
email address. Unfortunately gnu.org currently doesn't accept email from
that address (because it is refusing to handle sender verification
through null reverse paths [mail from:  bounces]). I hope that some
people will at least get this message. If you are not receiving email,
or are not able to sent email to the various classpath mailing lists
please check the archives at
http://lists.gnu.org/archive/html/classpath/ or
http://news.gmane.org/gmane.comp.java.classpath.devel

This being a long thanksgiving weekend for some people makes it
impossible to predict how long this will be an issue. I try to keep you
updated.

Yes, I understand the irony of trying to sent email about email not
working... I'll try to post something on planet.classpath.org when I
know more.

Sigh,

Mark
---BeginMessage---
Hi all,

Seems my previous emails (forwarded below) have still not hit the
list :{ But the good news is that savannah is back up again:
http://savannah.gnu.org/forum/forum.php?forum_id=4136

Cheers,

Mark
---BeginMessage---
Hi all,

Seems this is a day that everything breaks down :{
My original email about the spamcop rbl block seems to have never
reached the list, so here it is attached again. And now savannah is
down. Several people have been paged to get the system back up, but
apparently everybody capable of doing that is located in an area
observing thanksgiving. So no ETA about when it will be available again.

Sorry for the bad news.

Cheers,

Mark
---BeginMessage---
Hi,

I am seeing a lot of list traffic bounce and/or people being
unsubscribed because spamcop.net has lists.gnu.org in its RBL. If you
are (indirectly through your ISP) using spamcop you will probably not
receive this email. But I post it anyway for people reading the archives
after they have discovered their mail server has been blocking any
gnu.org emails.

I asked the savannah-hackers and gnu.org sysadmins to investigate but
till it has been resolved it would be good to not use the spamcop RBL.

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
---End Message---


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


signature.asc
Description: This is a digitally signed message part
---End Message---
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: mauve comparison with tgolem

2005-11-25 Thread Mark Wielaard
Hi Cacao Team,

On Tue, 2005-11-22 at 12:33 +0100, Christian Thalinger wrote:
 http://www.cacaojvm.org/tgolem
 
 The mauve report is the comparison table.  The common column shows
 all PASSes and FAILs which are identical on all JVMs/architectures.
 Each machine is listed with PASS, FAIL and MISS.  MISSed mostly can have
 two reasons: the testlet crashed and the remaining test were not run or
 the testlet has been removed from mauve cvs.
 
 Maybe this helps someone.

This is definitely very useful! The common failures would be good to
investigate more closely by all GNU Classpath hackers. And possibly
write bug reports (or better patches for fixes) for. In principle the
mauve framework can support xfail files, although I don't believe
anybody used that for a long time. When all common failures are
inspected/identified correctly we could make a good xfails file so it is
more clear what issues are regressions and what issues are runtime
specific.

Would it be possible to split out the mauve results pages? Or at least
have a page with just a list of all common FAILS?

Any idea about the GUI (Free Swing/AWT) tests? Is there a specific
reason they are not enabled at the moment?

Thanks,

Mark



___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: mauve comparison with tgolem

2005-11-25 Thread Mark Wielaard
Hi Edwin,

On Fri, 2005-11-25 at 23:42 +0100, Edwin Steiner wrote:
  Would it be possible to split out the mauve results pages? Or at least
  have a page with just a list of all common FAILS?
 
 Absolutely possible. Are there any specific details I should include in
 such a page?

If it is in addition to what there is now already just the plain FAIL
lines would be ideal to have. No extras, just the facts! :)

Thanks,

Mark



___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: FreeSWTTestApps page added to wiki

2005-11-26 Thread Mark Wielaard
On Tue, 2005-11-22 at 16:29 +0100, Roman Kennke wrote:
 Am Dienstag, den 22.11.2005, 13:23 +0100 schrieb Egon Willighagen:
  Anyway, I added a FreeSWTTestApps to the Classpath wiki using the same 
  setup 
  as the FreeSwingTestApps page. 
 
 Very nice indeed!

To complete the Free GUI Toolkits set I also added a FreeAWTTestApps
page. Also linked from the frontpage now.
http://developer.classpath.org/mediation/FreeAWTTestApps
Currently it only lists MegaMek which is a bit big for a simple test
application. So additional simpler Free AWT Test Applications wanted!

It might be interesting if we also had pages for test applications that
use Generics or Graphics2D explicitly so people can concentrate on those
if they want.

BTW. If you add new applications please do add a little more info then
just a reference to some homepage. We want these pages to be good
starting points for developers wanting a little hacking challenge. So
please include specific download, build and run instructions whenever
possible. The FreeSwingTestApps page has a lot of references without any
indication what precisely should be tested or how at the moment.

Cheers,

Mark



___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: CACAO 0.93 released

2005-11-26 Thread Mark Wielaard
Hi Christian,

On Thu, 2005-11-24 at 01:38 +0100, Christian Thalinger wrote:
 CACAO 0.93 released.
 This is a major feature enhancement and bugfix release.

Wow this is an impressive release. Just tried it out and it seems really
nice and fast :) ./configure  make  make install and off you go!
Good work, and thanks for sharing under the GPL.

   * JIT codegenerators for Arm and MIPS (32-bit, -o32), currently
 closed-source

But this list is not for promoting non-free addons. Please keep the GNU
Classpath mailinglists themselves about sharing Free Software.
Proprietary software has enough other places to be promoted and
discussed.

Thanks,

Mark



___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Build, Test, Deliver

2005-11-26 Thread Mark Wielaard
Hi all,

For a long time we have needed a clear way to explain what we have been
doing, how we do it and what our goals and road map are. When I was in
Brazil a few months back David Wheeler discussed our progress,
development model and goals with Bruno, Dalibor and me. As an outsider
to our development community he was able to give us a clear picture of
what we were actually doing. He has a nice writeup of the whole event at
http://www.dwheeler.com/essays/fisl2005.html#javaimp
We discussed how to put down how we Build, Test and Deliver everything.
And I asked several people and groups for input. But it is hard to get
consensus on what are the essential things. Especially because we really
wanted to put it all down in just 2 pages so it could be used as a quick
reference for new people. Or used as a flyer at conferences.

Recently I spoke to various people who were happily surprised that
various things we helped build just worked in their latest Ubuntu and
Fedora Core installation. Their surprise made me realize that we have to
do a better job of communicating what we have done and how we are
delivering it. So I just updated the document that we started during
FISL to our current status and road map. I didn't get it down to 2
pages, but 3 pages isn't bad for a start. I cannot thank David enough
for his patience and SouJava for bringing us together. But all mistakes
in the final document are mine. This is clearly a first release, so
please send corrections, additions, better pictures, translations, etc.

A PDF and OpenOffice (sxw) version can be found at 
http://developer.classpath.org/support/
I tried to export it as XHTML, but the result was not very readable.
Help converting the document to other formats is highly appreciated.

I hope this document can be a basis for more specialized support and
marketing documents for our efforts. So please feel free to adapt it to
your own needs and audience.

Cheers,

Mark



___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Performance of java.awt.Graphics's methods

2005-11-27 Thread Mark Wielaard
Hi Theo,

On Mon, 2005-11-28 at 01:05 +0800, Theodore Thindenberg wrote:
 every new release I try of course many Swing applications as well as
 some apps using a custom toolkit which just uses AWT for lightweight
 drawing.
 All these applications run at VERY low speed, even the application
 using only lightweight drawing (and performs quite well on the
 Netscape-4.7-JVM which is really ugly, slow and buggy) is almost
 unuseable with the Gtk-based AWT peers.

What runtime are you using? Do you have an example program and
action/drawing that shows the speed being VERY slow? Is it similarly
slow when using a jit like kaffe or cacao, or when aot compiled with
gcj? How do these examples compare to the Free Swing Demo in GNU
Classpath examples?

 Is this a common problem, and if yes where is the time spent of e.g.
 drawLine or fillRect? Is it possible to profile GNU Classpath in any
 pratical way (like it is with the SUN jvm)?

When compiling to native with gcj you can just use something like
oprofile. Kaffe comes with some simple jvmpi support that might give you
some clues.

Cheers,

Mark



___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: mauve comparison with tgolem

2005-11-29 Thread Mark Wielaard
Hi Edwin,

On Mon, 2005-11-28 at 14:54 +0100, Edwin Steiner wrote:
 On Sat, Nov 26, 2005 at 02:01:53AM +0100, Mark Wielaard wrote:
  If it is in addition to what there is now already just the plain FAIL
  lines would be ideal to have. No extras, just the facts! :)
 
 You can now get a text-only list of common mauve fails at:
 
 
 http://www.complang.tuwien.ac.at/cacaojvm//tgolem/latest/mauve_common_fails.txt

Very interesting list. Thanks.

Quick analysis for those test that I know why they fail. Maybe others
can take a look at the failures and quickly see whether there is a
simple explanation or not for these failures.

FAIL: gnu.testlet.java.io.File.newFile: getname returns the argument (number 3)

Strange... I highly suspect that PlatformHelper is to blame since it
tries to bridge any windows vs posix style file path issues. In practice
is seems to fail miserably however...

FAIL: gnu.testlet.java.lang.Character.classify12 (number 1)
FAIL: gnu.testlet.java.lang.Character.getType (number 11)
FAIL: gnu.testlet.java.lang.Character.getType (number 20)
FAIL: gnu.testlet.java.lang.Character.getType (number 22)

These fail because GNU Classpath provides Character based on a newer
version of Unicode then what is being tested in Mauve.

FAIL: gnu.testlet.java.lang.Package.getPackage: checking package for 
'java.lang' (number 1)

Needs runtime support. See NEWS file:

* Changed implementation of VMClassLoader.getPackage(s) : new method
  VMClassLoader.getBootPackages should be implemented by the vm, and sould
  return a string array of boot package names (java.lang, java.net, ...).
  Feedback from vm implementors for usability and relevance of the
  getBootPackages method would be greatly appreciated.

FAIL: gnu.testlet.java.nio.channels.FileChannel.map (number 1)

Seems like a real bug, but fixing it (throwing the right exception)
seems to trigger another bug. Needs investigation.

FAIL: uncaught exception loading gnu.testlet.java.lang.Class.pkg.test1:
java.lang.IllegalAccessException: gnu.testlet.java.lang.Class.pkg.test1
has an inaccessible constructor
FAIL: uncaught exception loading gnu.testlet.java.lang.Class.pkg.test3:
java.lang.IllegalAccessException: gnu.testlet.java.lang.Class.pkg.test3
has an inaccessible constructor
FAIL: uncaught exception loading gnu.testlet.java.lang.Class.pkg.test4:
java.lang.IllegalAccessException: gnu.testlet.java.lang.Class.pkg.test4
has an inaccessible constructor

These are not tests and should be marked as such.
I'll submit a patch.

FAIL: uncaught exception loading gnu.testlet.java.lang.Number.NewNumber:
java.lang.IllegalAccessException: gnu.testlet.java.lang.Number.NewNumber
has an inaccessible constructor
FAIL: uncaught exception loading gnu.testlet.java.lang.reflect.Other:
java.lang.IllegalAccessException: gnu.testlet.java.lang.reflect.Other
has an inaccessible constructor

Likewise.

Hopefully we can analyze the others also in the near future. Comments
and suggestions appreciated.

Cheers,

Mark





___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: mauve comparison with tgolem

2005-12-01 Thread Mark Wielaard
Hi Christian,

On Tue, 2005-11-29 at 21:20 +0100, Christian Thalinger wrote:
 On Tue, 2005-11-29 at 15:04 +0100, Mark Wielaard wrote:
 * Changed implementation of VMClassLoader.getPackage(s) : new method
VMClassLoader.getBootPackages should be implemented by the vm, and sould
return a string array of boot package names (java.lang, java.net, 
  ...).
Feedback from vm implementors for usability and relevance of the
getBootPackages method would be greatly appreciated.
 
 Why isn't there a default implementation which returns the GNU classpath
 boot package names?  For CACAO, there are not others.

Probably because it was thought that it was easier for the runtime to
provide this list. Since GNU Classpath doesn't come with a default
bootstrap class loader (they are mostly different between runtimes)
there is no easy hook to collect them all. We could of course have a
little script that collects them all during configure/build time and
then makes them available somewhere in some generated source code. Can
you write something like that?

Cheers,

Mark



___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Generics Branch Merge Announcement: Classpath 0.19 - 2005/11/27

2005-12-01 Thread Mark Wielaard
Hi Andrew,

On Sun, 2005-11-27 at 22:12 +, Andrew John Hughes wrote:
 All patches from Classpath 0.19 through to this afternoon (2005/11/27)
 to HEAD have been merged to the generics branch. 
 
 Keep up the good work! :)

Same to you!
It is always a short announcement, but I know that with the amount of
code that people produce these days merging code bases is real work.
Thank you!

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Usage of RFC documentation for Javadoc

2005-12-01 Thread Mark Wielaard
Hi Wolfgang,

On Wed, 2005-11-30 at 20:03 +0100, Wolfgang Baer wrote:
 So the question comes to my mind if we also can use or
 maybe quote from the RFC documents in our javadocs.
 This would make documentation easier and as its the
 specification also correct in every detail.
 
 For your convenience I attached the full copyright
 statement of the RFC documents.
 
 Opinions ?

Yes, you can use the text of that RFC for the documentation of the
classes. If you look into our LICENSE file you see that the same is
already done for org/ietf/jgss using RFC 2853.

There are a couple of steps to follow when doing this.

- We need to inform FSF legal (licensing@) that we wish to incorporate
  such text. Can you give me the RFC numbers? Then I inform them and
  include the text from the RFC. (We need to double check since not all
  RFCs come with precisely the same permission text.)

- We need to add a similar note as already done for org/ietf/jgss to the
  LICENSE file. That file should list all legal text so the user has
  one place to review them all.

- Each file that includes documentation from the RFC should have the
  full permission statement as part of the first comment block just
  after the standard boilerplate. See for an example the file
  org/ietf/jgss/Oid.java. This makes sure each file as all notices
  covering the work so people can look it up even in isolation. And that
  way the text is automatically picked up by gjdoc -licensetext so that
  the generated documentation includes all notices automatically.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: [Fwd: [cp-patches] [RFC, Concept proposal]: Easing target dependency]

2005-12-02 Thread Mark Wielaard
Hi Guilhem,

 On Wed, 2005-11-30 at 20:31 +0100, Guilhem Lavaux wrote:
  So I am proposing to keep the 
  basic skeleton of the target layer but put the real code not in macro 
  but in real C functions. That way we will be able to add autoconf macros 
  without bothering the java interface and if some persons still want to 
  use the TARGET layer it is possible by simply using the macro inside the 
  C functions.

Everything that replaces the macros with real functions has my vote. I
have had to debug my way through the macros and it was a pain.

  So here is a patch which shows what I want to do. An idealistic 
  situation would be to put all these functions which are using syscalls 
  into a libjavasyscalls which will be implemented by VM writers (and of 
  course we will propose a default implementation).

My preference would be for one cp_io.c, cp_net.c file per core package.

  This is not the definite patch. So don't complain about missing 
  ChangeLog and so on ... I ask whether people agree on using that concept.

This makes the source much more readable for me so I am happy. The only
thing I would like to see changed is to explicitly start all functions
with cp_ ,to make clear that these symbols are part of the GNU Classpath
library (we have the same naming scheme with the gtk+ awt peer native
implementation).

Thanks,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: gnu_java_awt_peer_gtk_GdkFontPeer.c (initStaticState): missing NewGlobalRef?

2005-12-03 Thread Mark Wielaard
Hi Christian,

I finally read the paper and took a look at the list. But you already
fixed all the obvious things related to class fields. So the remaining
things left seem to be jmethodIDs that are cached, but where we don't
have a global ref to the class. Like the following:

 B   gnu_java_awt_peer_gtk_GtkWindowPeer.c   272 (jmethodID)
 B   gnu_java_awt_peer_gtk_GtkWindowPeer.c   275 (jmethodID)
 B   gnu_java_awt_peer_gtk_GtkWindowPeer.c   279 (jmethodID)
 B   gnu_java_awt_peer_gtk_GtkWindowPeer.c   282 (jmethodID)
 B   gnu_java_awt_peer_gtk_GtkWindowPeer.c   286 (jmethodID)
 B   gnu_java_awt_peer_gtk_GtkWindowPeer.c   289 (jmethodID)

But are these really a problem?
For GNU Classpath they are probably not a problem since these classes
and naitve libraries are loaded by the bootstrap class loader so will
never be unloaded. But is it even a real problem when the class and the
native library are loaded by a user defined class loader?

It seems that both the class reference can only disappear (and making
the mathod id cache invalid) when the class loader is garbage collected.
But in that case the native library will also be unloaded. So any method
field ID caching will be redone when the class and native library are
loaded again.

What do you think?

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Duplicate object prevention policy

2005-12-03 Thread Mark Wielaard
Hi Jan,

On Wed, 2005-11-30 at 02:58 +0100, Jan Röhrich wrote:
 imagine the following case: A method supports the lookup of objects
 using a name - object mapping. The objects are stored in a map but can
 easily be newly created instead of performing a real lookup. Shall we
 perform this real lookup even if the newly created object is equal to
 the original object in terms of Object.equals().

That really depends on how much such a method is called, and how many
different objects can be returned. If there are not that many object
then you should probably store them in a map. If there are not many
calls then it probably is not worth it to cache it, especially if
recreating an instance is relatively cheap.

 Concrete?: Have a look at
 java.awt.datatransfer.SystemFlavorMap#decodeDataFlavor(). This is only
 one appearance of this problem (out of many many).

In this case I would just create the new DataFlavor since it seems this
is relative cheap and the method doesn't look like it will be that often
called. If later benchmarks on real applications show otherwise we can
always think about a caching mechanism.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Compilation of Classpath with ecj on a 64-bit VM

2005-12-04 Thread Mark Wielaard
Hi Andrew,

On Sat, 2005-11-26 at 21:04 +, Andrew John Hughes wrote:
   I recently hit on the same bug again for the second time, and still
 there seems to be no general solution to it.  ecj is a Java-based Java
 compiler, which means that in compiling Classpath, it can run across
 problems in the VM or Classpath.  On x86_64, this leads to a spurious
 error with the MIN_DOUBLE value that ends up being misconverted from the
 literal in the Java source file.

 back in July, and received no response then.  The original message that
 refers to is even older (January 2004).  I believe this is quite a
 serious issue, as it prevents the generics branch being compiled on
 x86_64 (as only ecj can currently accomplish this), or ecj being used
 there at all for that matter.  At the moment, I only solve this by using
 a locally-modified version of kaffe.  I can't use a native version of
 ecj for the same reason.
 
 As such, I'm opening this to a wider audience in the hope of getting
 some response.

Was any of the responses you got the solution?
What/How exactly did you modify kaffe to get past this?
David (CCed) has the same problems with a current kaffe CVS snapshot.

Thanks,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: memory behavior to expect with gjdoc-0.7.6

2005-12-05 Thread Mark Wielaard
Hi Fred,

On Mon, 2005-12-05 at 12:32 -0500, [EMAIL PROTECTED] wrote:
  Could you also run JamVM with -verbose:gc and send me the output?
 
 Attached.

Thanks. This seems to point out two things:

1) There is a huge allocation (2MB+):
   GC: Alloc attempt for 2209016 bytes failed.
   at this point in the code:

// REVIEW: Using max instead of average may allocate a very large
// buffer.  Maybe we should do something more efficient?
int remaining = in.remaining ();
int n = (int) (remaining * maxBytesPerChar ());
ByteBuffer out = ByteBuffer.allocate (n);

  I believe that REVIEW note gives us a hint :)

2) JamVM has fragmented its heap so much that it cannot allocate such a
   block of data even though there is enough space in total:
   GC: Largest block is 2087448 total free is 778822576 out of
943718392 (82%)

   Or am I reading the output incorrectly?

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: memory behavior to expect with gjdoc-0.7.6

2005-12-05 Thread Mark Wielaard
Hi Robert,

On Mon, 2005-12-05 at 18:10 +, Robert Lougher wrote:
 On second thoughts, it may have been rejected by gmail if the
 attachment was too big (how big was it?).  Could you try compressing
 it (if it wasn't)?

It is in the gmane archives here:
http://article.gmane.org/gmane.comp.java.classpath.devel/6717

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: memory behavior to expect with gjdoc-0.7.6

2005-12-06 Thread Mark Wielaard
[Sorry for the duplicate message, trouble with my primary email account]

Hi,

On Mon, 2005-12-05 at 18:52 +0100, Mark Wielaard wrote:
 Thanks. This seems to point out two things:
 
 1) There is a huge allocation (2MB+):
GC: Alloc attempt for 2209016 bytes failed.
at this point in the code:
 
 // REVIEW: Using max instead of average may allocate a very large
 // buffer.  Maybe we should do something more efficient?
 int remaining = in.remaining ();
 int n = (int) (remaining * maxBytesPerChar ());
 ByteBuffer out = ByteBuffer.allocate (n);
 
   I believe that REVIEW note gives us a hint :)

It gives us a hint (thanks for review help from Sven on irc) that we are
pushing huge Strings through the encoders. In particular gjdoc creates a
full String for each XHTMLified/pretty-printed/color-coded/etc source
file in HtmlDoclet.java. Although all the rest of the generated pages
are streamed to disk the actual source code formating is done in one
go:

  String result = java2xhtml.makeHTML(sourceBuffer.getBuffer(),
  sourceFile.getName());

Which is then written to disk in one go. For the larger source files
this can be pretty big. So a quick workaround for now would be to not
include the -linksource flag to gjdoc.

If someone wants a nice hacking task then they could look into making
java2xhtml take a Reader to read the source from and a HtmlPage to
output to instead of creating one huge String.

Cheers,

Mark



___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Introducing builder.classpath.org

2005-12-08 Thread Mark Wielaard
Hi all,

We now have an official autobuilder and regression tester!

The builder.classpath.org Xen infrastructure has been donated by
Berkeley Signal Inc through Jim Pick who also helps with setup and
maintenance of the system. We are currently using Tom Tromey's build
scripts for updating, compiling and running the following things:

- gcc-trunk build + libgcj regression test.
- gcjx build
- classpath CVS build with jikes and gcjx
(no gcj since the Makefiles we produce for that use too much memory)
(no ecj yet because it is not yet installed/bootstrapped)
- jamvm build
- mauve batchrun run for jamvm/classpath/gcjx
- jacks run for gcjx

Regressions are posted to classpath-regressions
And on irc.gnu.org in #classpath there is a little cpbot that can give
you the current status (just type =help). No fancy webpage results yet.

If you want to help with the setup and maintenance of new tests please
say so. At the moment the build-masters are Tom, Michael and myself with
Jim for backups and any actual access to the hardware. The machine has
Debian sarge installed with updated gcc, cairo, etc in /usr/local.

Cheers,

Mark




___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: RFC: merging GNU Crypto and Jessie

2005-12-08 Thread Mark Wielaard
Hi Casey,

On Mon, 2005-12-05 at 23:42 -0800, Casey Marshall wrote:
 I propose that we
 
- Rename the root package 'gnu.crypto' to 'gnu.javax.crypto' in  
 GNU Crypto, and merge the current CVS sources into Classpath (not  
 under external/). We then put GNU Crypto into a kind of stasis  
 mode, and continue to develop these sources in Classpath.
- Rename the root package 'org.metastatic.jessie' to  
 'gnu.javax.net.ssl' in Jessie, and merge the current sources. Then,  
 I'll stop developing that branch on its own.
 
 We can then also merge other parts of GNU Crypto to projects where  
 they make sense; its testsuite can go into Mauve (it was written to  
 use (a possibly old version of) Mauve's own test harness classes),  
 and the various tools can go into cp-tools.
 
 I think most Classpath hackers think this is a good idea

Yeah I believe this is a good idea.

I know GNU Crypto doesn't have any external dependencies. Jessie has an
external dependency on JZlib which is in principle OK, but having
multiple zip implementations in the tree is not perfect. Do you have an
idea whether it would be possible to hook Jessie to the (internal)
util.zip implementation we have? One complication is that a couple of
projects based on GNU Classpath have another util.zip implementation
based on zlib.

Cheers,

Mark



___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: [Jessie-discuss] Re: RFC: merging GNU Crypto and Jessie

2005-12-11 Thread Mark Wielaard
Hi,

On Thu, 2005-12-08 at 20:07 -0800, Casey Marshall wrote:
 On Dec 8, 2005, at 11:25 AM, Anthony Green wrote:
  My only concern is there be some trivial mechanism to generate a US
  export-friendly version GNU Classpath, like..
 
  $ configure --disable-munitions

 Good point. We should have a switch for this in configure. Probably  
 adding the appropriate lines to standard.omit will do it?
 
 Also, J2SE has the ExemptionMechanism class, which is currently not  
 much more than a stub in Classpath. I mean, it's trivially easy to  
 get around this restriction with free software -- you just change the  
 source -- but including a real implementation of that class may be  
 enough to satisfy these restrictions.
 
 I wouldn't use --disable-munitions, though. The US Government spooks  
 believe crypto is a munition, but I don't.
 
  My understanding is that the US government has made it simpler to
  distribute FOSS crypto code in recent years, but I have a situation
  where I actually need to strip all export controlled crypto.  To be
  honest, I'm not sure what specific algorithms this means.  It's  
  possible that Classpath already contains some.
 
 
 Yes. RSA is export-controlled for key sizes larger than 40 bits, IIRC.
 
  In any case, it would be nice if the configury and build process could
  automatically handle the absence of crypto algorithms.
 
 Should this disable compiling the standard crypto library bits, too  
 (javax.crypto and javax.net.ssl), or just the algorithms?

As far as I know even the hooks fall under this. Although I am not
against having some configure options to put parts of the core library
into standards.omit I don't think it is really needed. When the first
parts of GNU Crypto was merged into GNU Classpath (and indirectly into
GCC and other projects) FSF legal made sure that all FSF distributed GNU
software would be able to be distributed (as source) from ftp.gnu.org
from mirrors. See the statement on savannah:
https://savannah.gnu.org/faq/?admin=group_id=5802question=Savannah_-_Is_there_any_restriction_on_cryptographic_software.txt
Similar notices have been placed on ftp.gnu.org and other distribution
sites (ftp://ftp.gnu.org/CRYPTO.README). We really don't need more then
that as long as we distribute GNU Classpath as Free Software.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: [Jessie-discuss] Re: RFC: merging GNU Crypto and Jessie

2005-12-11 Thread Mark Wielaard
Hi Anthony,

On Sun, 2005-12-11 at 03:47 -0800, Anthony Green wrote:
 You're missing my point, which is that _I_ have a requirement to
 redistribute GNU Classpath with no export-restricted software.  What's
 good enough for the FSF is not good enough for me.  It would nice if
 there was a convenient way of doing this.

Sure, and please do propose a patch to help you if you are willing to
maintain that. But beware that you probably need guidance from a legal
adviser to make sure you strip out and distribute only those parts not
covered by the BXA. All I was saying is that it isn't a necessity for
GNU Classpath as a project, or people redistributing GNU Classpath as
Free Software. And binary derivatives from distributions and other
projects already have to handle this if they have the misfortune to be
distributed from inside the USA. See for example the Debian crypto
guidelines [1] on how to deal with the the BIS/ENC notification
procedures (I assume Fedora has similar guidelines). So, the situation
doesn't change from when we first started distributing crypto hooks and
algorithms with GNU Classpath [2].

Cheers,

Mark

[1] http://www.debian.org/legal/cryptoinmain
[2] http://lists.gnu.org/archive/html/classpath/2004-08/msg00076.html


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Introducing builder.classpath.org

2005-12-11 Thread Mark Wielaard
Hi Leo,

On Fri, 2005-12-09 at 22:26 -0800, Leo Simons wrote:
 On Thu, Dec 08, 2005 at 02:49:18PM +0100, Mark Wielaard wrote:
  We are currently using Tom Tromey's build
  scripts
 
 Could I get a URL for those? Sounds like a good use case for a certain
 project I'm working on :-) :-)

I was afraid someone would ask for them. Especially someone who actually
has a nice, clean, auto-builder setup like gump... :)

I would like to also have gump running on builder. But I thought it was
good to have at least the bootstrapping environment (runtime, compiler
and core libraries plus rudimentary core test suites) available before
doing the more higher level setups.

You are right, we shouldn't just have them available on
builder.classpath.org, but distribute them more widely so others can
also easily setup auto-builders/testers. The scripts aren't that
complicated though, they are basically helpers for checking out,
configuring, building and running some standard targets.

Tom, would you be OK with setting up a new classpath CVS module
builder and have the scripts available there with a rudimentary README
how to bootstrap an auto-tester?

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: [Jessie-discuss] Re: RFC: merging GNU Crypto and Jessie

2005-12-11 Thread Mark Wielaard
Hi Anthony,

On Sun, 2005-12-11 at 05:38 -0800, Anthony Green wrote:
 On Sun, 2005-12-11 at 13:50 +0100, Mark Wielaard wrote:
   All I was saying is that it isn't a necessity for
  GNU Classpath as a project, or people redistributing GNU Classpath as
  Free Software.
 
 I'm being told that there are situations where this second part is not
 true, which is why I need to remove the export controlled code.

If there are situations where you are not able to (re)distribute the GNU
Classpath source code and/or follow the the BIS/ENC notification
procedures as done by the various GNU/Linux distros to distribute binary
derivatives of GNU Classpath as Free Software works then please let us
know. And follow up with some more concrete information about these
situations. I am happy to discuss this with FSF legal and see if there
are procedures to help in your situation. How are these situations
different from distributing GPG, GCC, Mozilla, OpenSSH, etc?

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: StatCVS runs free!

2005-12-11 Thread Mark Wielaard
Hi David,

On Wed, 2005-12-07 at 16:58 +, David Gilbert wrote:
 ...I decided it couldn't be too hard to get StatCVS[1] working the same way 
 (StatCVS 
 uses JFreeChart for the charts it generates).  Here's the latest run for 
 Mauve CVS 
 generated, for the first time, with JamVM, GNU Classpath and cairo-java:
 
 http://www.object-refinery.com/classpath/mauve/statcvs/

So cool! The graphs look fine and smooth.

It seems the characters printed vertically (like on the y-axis) seems
rotated the wrong way.

 Alas, the process is too memory hungry to process (on my machine) the 226MB 
 log file 
 generated for Classpath CVS.

If you use Kaffe it has some support for tracking memory issues through
JVMPI. See http://gnu.wildebeest.org/diary/index.php?p=104

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


lists.gnu.org and savannah.gnu.org (CVS) updates

2005-12-11 Thread Mark Wielaard
Hi all,

I talked to the GNU system administrators about the slowness of the
mailinglists at times. They told me they are working on a completely new
setup. Today I received the latest FRee Software Foundation Bulletin
which has an article about the cool new machines that have been bought,
how to install LinuxBIOS on it and what they are planning to do with
them. I haven't seen this online yet, but if you become an FSF associate
member you will get the paper version [1]. I'll let you know when it is
online. It might take some time (weeks/months) till the whole
infrastructure has moved though. It will reduce the amount of spam we
need to moderate considerably and make the lists more snappy.

Also savannah has seen some updates. 
- You can now use rsync to get a full copy of the CVS repostitory:
  http://savannah.gnu.org/forum/forum.php?forum_id=4142
- There is support for GNU Arch 
  http://savannah.gnu.org/forum/forum.php?forum_id=4165
  (I don't think we want to switch to that, but when subversion support
   hits savannah we might want to use that. No timeline yet on when/if
   that will be available though.)
- All CVS services have now been put on cvs.savannah.gnu.org
  http://savannah.gnu.org/forum/forum.php?forum_id=4168

You will notice that last one when running CVS update. It will explain
that you have to update the Root of your CVS working directory. If you
the cvsutils installed then you can easily switch to the new CVS
location by running this in your CVS working copy:
cvschroot savannah-user-name@cvs.savannah.gnu.org:/cvsroot/classpath

Cheers,

Mark

[1] Follow this link http://member.fsf.org/join?referrer=6 and make me
happy! I only need 2 more referrers to receive this great gift:
http://www.fsf.org/associate/referral-2004


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: lists.gnu.org and savannah.gnu.org (CVS) updates

2005-12-11 Thread Mark Wielaard
On Sun, 2005-12-11 at 19:47 +0100, Mark Wielaard wrote:
 - All CVS services have now been put on cvs.savannah.gnu.org
   http://savannah.gnu.org/forum/forum.php?forum_id=4168
 
 You will notice that last one when running CVS update. It will explain
 that you have to update the Root of your CVS working directory. If you
 the cvsutils installed then you can easily switch to the new CVS
 location by running this in your CVS working copy:
 cvschroot savannah-user-name@cvs.savannah.gnu.org:/cvsroot/classpath

And for those of you using anonymous CVS you need to switch to pserver:
$ cvschroot :pserver:[EMAIL PROTECTED]:/cvsroot/classpath

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Proposal: Graphics2D rewrite branch

2005-12-11 Thread Mark Wielaard
Hi,

On Wed, 2005-12-07 at 12:05 -0700, Tom Tromey wrote:
  Tom == Thomas Fitzsimmons [EMAIL PROTECTED] writes:
 
 Tom I'd like to propose a new branch in the GNU Classpath CVS repository:
 Tom graphics2d-rewrite.  Patches to this branch should be sent to
 Tom classpath-patches@gnu.org with a subject line prefix of [g2d rewrite].
 Tom Commit policy is the same as GNU Classpath trunk.
 
 I say go for it.

Yes, if you think you need a branch for this rewrite please do (call it
something descriptive like cairo-graphics2d). I can see that if you want
to just phase out GdkGraphics and always use a new setup around
CairoGraphics2D that it might be nice to have a branch to not disturb
the work of others. But as said by some others if at all possible do the
work on the trunk. That does make it easier for others to follow/help
out.

 Furthermore I think we should adopt gcc-ish branch rules.  These are
 pretty reasonable and have proven to work well in practice.  Namely:
 
 * Any Classpath developer can make a branch for any purpose.
   All branches ought to be documented somewhere, so we can know which
   are live, who owns them, and when they die.  I don't know where we
   would put this though (suggestions?)

I'll create a page in the wiki
http://developer.classpath.org/mediation/ClasspathBranches

 * Some rules can be changed on a branch.  In particular the branch
   maintainer can change the review requirements, and the requirement
   of keeping things building, testing, etc, can also be lifted.
   (These should be documented along with the branch name and owner if
   they differ from the trunk.)

   Requirements for patch email to classpath-patches and for paperwork
   *cannot* be lifted.

And you should not see it as private or may be broken at random
times. It should be as much as possible something that you work with a
team on (and if there is no team - yet - then there is nothing as bad as
having a completely broken build to get others to help out).

 * Merges from the trunk to a branch are at the discretion of the
   branch maintainer.
 
 * A merge from a branch to the trunk is treated like any other patch.
   In particular, it has to go through review, it must satisfy all the
   trunk requirements (build, regression test, documentation).
 
   This rule prevents folks from working around trunk rules by making
   a branch :-)

These rules sound very good. I will add them to the Hacking Guide.

   There may be additional timing requirements on merging a branch to
   the trunk depending on the release schedule, etc.  For instance we
   may not want to do a branch merge just before a release.

Good point. I believe we do communicate very well on the mailing-lists.
So I don't think this will ever be a problem. But the release
master (which seems to be me atm, although we never officially created
that role) should have a veto in the last few weeks before a stable
release for any branch - trunk merges.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Proposal: Graphics2D rewrite branch

2005-12-12 Thread Mark Wielaard
On Sun, 2005-12-11 at 18:02 -0700, Tom Tromey wrote:
  Mark == Mark Wielaard [EMAIL PROTECTED] writes:
 Mark And you should not see it as private or may be broken at random
 Mark times. It should be as much as possible something that you work with a
 Mark team on (and if there is no team - yet - then there is nothing as bad as
 Mark having a completely broken build to get others to help out).
 
 Actually, I think it is reasonable to have a may be broken branch.
 In fact this is one of the main reasons for having a branch -- if you
 can keep stuff building and working, in many cases you won't need a
 branch at all.

Yeah, this may be a bit too strong. I meant it as a strong warning that
the branch cannot be a dumping ground for some code that isn't even
supposed to work. I'll reformulate that as:

@item A branch should not be seen as ``private'' or
``may be completely broken''. It should be as much as possible
something that you work on with a team (and if there is no team - yet
- then there is nothing as bad as having a completely broken build to
get others to help out). There can of course be occasional breakage, but
it should be planned and explained. And you can certainly have a rule
like ``please ask me before committing to this branch''.

Let me know if that still doesn't capture the spirit.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


New bugzilla component xml

2005-12-12 Thread Mark Wielaard
Hi,

A new bugzilla component was added for all xml (javax.xml, gnu.xml)
related bug reports. The initial owner is Chris, but he is of course
free to not handle or reassign bugs. For the current list of bugs see:
http://gcc.gnu.org/bugzilla/buglist.cgi?product=classpathcomponent=xml

Initial bug component owners are just there to make sure someone has a
first look at a bug and can confirm it is actually filed in the right
category. There is no obligation to actually fix things. Just be nice to
the reporter and refile/close things which are not properly reported.

Please say when you need another component in bugzilla and want to be
the initial owner for it. Andrew Pinski or I can add them and assign
them to people.

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: lists.gnu.org and savannah.gnu.org (CVS) updates

2005-12-12 Thread Mark Wielaard
Hi Archie,

On Sun, 2005-12-11 at 13:39 -0600, Archie Cobbs wrote:
 Mark Wielaard wrote:
 If you have
 the cvsutils installed then you can easily switch to the new CVS
 location by running this in your CVS working copy:
 cvschroot savannah-user-name@cvs.savannah.gnu.org:/cvsroot/classpath
  
  And for those of you using anonymous CVS you need to switch to pserver:
  $ cvschroot :pserver:[EMAIL PROTECTED]:/cvsroot/classpath
 
 Hmm.. could this new infrastructure include possible a switchover from
 CVS to Subversion? (I'm so used to SVN now that CVS is gotten pretty
 gross to deal with).

Subversion support for savannah is planned in the future. And it might
make sense to adopt it then since other projects that rely on GNU
Classpath also use it and it makes merging easier. On the other hand
subversion is still a bit immature and not widely supported yet (for
example on builder.classpath.org we needed to install the latest
1.3.0rc4 to get around some network timeout issues). CVS might be old
and clumsy at times, it is much more mature and supported atm. That
said, if savannah adds subversion support I would vote for us to switch.

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: lists.gnu.org and savannah.gnu.org (CVS) updates

2005-12-12 Thread Mark Wielaard
Hi Archie,

On Mon, 2005-12-12 at 09:31 -0600, Archie Cobbs wrote:
 Mark Wielaard wrote:
  subversion is still a bit immature and not widely supported yet (for
  example on builder.classpath.org we needed to install the latest
  1.3.0rc4 to get around some network timeout issues). CVS might be old
  and clumsy at times, it is much more mature and supported atm. That
  said, if savannah adds subversion support I would vote for us to switch.
 
 I think you're information is slightly dated :-) Subversion is quite
 matture. The 1.0 release, which itself was very stable, was released
 almost two years ago. Now they're up to version 1.2.3.
 
 For example, all of Apache is on a single Subversion server
 and they're up to revision #356264 (including imported CVS commits).
 We've used it at my real job for over a year with zero problems.
 
 As far as being supported, not sure what you're referring to.
 Everything I've ever wanted to do with CVS I can do with SVN, plus
 a lot more.

Don't get me wrong I do like subversion. And I used it for multi
megabyte imports of classpath source into different gcc branches. And
most things do work really nicely. And even much smoother then with
CVS. 

But fact is that the first time I needed to use svn instead of cvs it
took twice as long, since it isn't really a 1-to-1 mapping (to be fair,
next time the same task will probably take me half the time). And I did
experience some glitches (which is why we needed version 1.3.0rc4 on
builder), nothing that looses data, but small inconveniences like very
slow or stalled network connections in automated scripts. Or the fact
that you really need to setup an external diff command since the
built-in one is not capable enough. 

With supported I meant that CVS can be expected to be available
everywhere in a really stable version. Subversion isn't there yet. It is
starting to become more standard, but it isn't yet something that is
just installed by default, so for people using multiple diverse
platform/distributions it takes much more time to get a working setup.

Also importing an old CVS repository like all of GCC seems possible now
but there were some small anomalies. So the switch will have to be done
carefully and will take some time to get right and double check.

Lastly working copies take more than twice as much diskspace as with CVS
(I do know that means some operations are much faster, but with large
repositories like classpath it does add up when you have multiple
checkouts).

All this isn't meant as saying we shouldn't adopt subversion when
savannah supports it though. Just to say that it isn't slam-dunk
decission given the diverse background of our hackers. I am still
convinced that if savannah supports it we should switch, but I do want
to let people know there are some (small) downsides.

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: lists.gnu.org and savannah.gnu.org (CVS) updates

2005-12-12 Thread Mark Wielaard
Hi,

On Mon, 2005-12-12 at 13:42 -0700, Tom Tromey wrote:
 Mark Or the fact
 Mark that you really need to setup an external diff command since the
 Mark built-in one is not capable enough. 
 
 ?  I haven't noticed this one.

See the bottom of http://gcc.gnu.org/wiki/SvnSetup
Again, not a showstopper, just another example of small configuration
issues. They do add up for people and it takes some time to be as
productive as before. Just like the fact that emacs or eclipse doesn't
come with subversion support out of box but require additional scripts
and plugins. Not a big deal, but still annoying when you are used to the
availability of CVS in each and every tool out there.

 Mark Also importing an old CVS repository like all of GCC seems possible now
 Mark but there were some small anomalies. So the switch will have to be done
 Mark carefully and will take some time to get right and double check.
 
 GCC has a long and complicated history, including evil repository
 hacking and re-basing branches using 'cvs admin'.  I'm sure the
 Classpath import won't be as bad.

I do hope so. But it will take time, energy and some patience to do it
correctly and check the conversion.

Lets continue the discussion if/when savannah actually support
subversion. No need to start nitpicking the pros and cons at this time.
I actually think we will agree that all the little drawbacks/flaws are
nothing compared to the productivity boost in the long run. 

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Fosdem 2005 reminder (Feb 25/26)

2005-12-13 Thread Mark Wielaard
Hi all,

Please do tell us if you are planning to come to the GNU Classpath
hacker room in Brussels, Belgium Februari 25 and 26, 2006
(mailto:[EMAIL PROTECTED])

Yes, you will be allowed in even if you didn't tell us in advance :)
We just want to see how many people are interested so we can better plan
the talks, demos, discussions, etc.

If you want to give a demo, presentation or have a discussion topic
please also send an email to [EMAIL PROTECTED] so we can
create a great schedule for the event. See for suggestions the original
announcement (attached).

Cheers,

Mark
---BeginMessage---
Hi all,

Like the last couple of years we want to come together with all the
projects around GNU Classpath and the various free runtimes, compiler
and tool projects to discuss what has happened in the last year in the
Free Software community and what the next year will bring us during
FOSDEM.

The 6th edition of FOSDEM (Free and Opensource Software Developers'
European Meeting) will take place on February 25+26 2006 in Brussels
(Belgium), at the Solbosch Campus of the ULB (Free University of
Brussels). FOSDEM is a free and non-commercial event for the community
and organized by the community. See http://www.fosdem.org/

We were thinking of the following setup:

- Saturday from 13:00 to 17:30 - End-User talks presentations to
promote what we all build together to a wider audience that might have
heard of what we do, but haven't actually seen it in action/put
together. We might also want to have a lightning hour with lots of
quick Demos of applications running on a completely free stack (5 - 10
minutes per demo).

- Sunday from 09:00 to 12:30 - Developer talks presentations of things
that are in progress and that people want to explain in more depth to
get developers of the other projects to join in a share the fun.

- Sunday from 13:00 to 17:30 - The Future hard core interactive
technical hacker discussions on how to integrate the projects more and
move forward in the next year.

Arnaud Vandyck, Dalibor Topic, Mark Wielaard, Michael Koch and and Tom
Tromey will be our program committee this year. If you would like to
present something, have an idea for a demo or discussion topic please
let us know at fosdem-at-developer.classpath.org Please mention the
title, a little abstract, which track and whether you want to do a quick
demo, a short 30 min talk or full hour talk (we prefer 30 minute talks
to give everybody a chance to present something). Deadline for proposals
is December 18, so you have a month to think of something cool. Then we
make sure to have some kind of formal program at the start of January.

Examples of presentations and reports from previous years:
http://www.gnu.org/software/classpath/events/escape_fosdem05.html
http://www.gnu.org/software/classpath/events/fosdem04.html

Some ideas for interesting topics:
- Free Swing - The Demo!
- Your GNU/Linux distro and the free runtimes - package overview.
- From 0 to 100 in 15 Minutes: Getting started with GNU Classpath 
  development using Eclipse, JamVM, Mauve, and the ChangeLog plugin!
- Integrating with Objectweb through native-(gcj)-JOnAS
- Writing OpenOffice.org plugins using a free software stack.
- Using GNU Classpath/gcj/kaffe for games
- Using free runtimes on Wine and other win32 environments
- Embedding GNU Classpath in web browsers and support for JNLP
  - Security Auditing!
- 1.5 language support in GNU Classpath, gcjx and the free runtimes
- GNU Classpath/OSGi/J2ME/Library splitting and trimming
- Harmony through interfacing.
- Beyond JAPI: what is needed to really finish GNU Classpath
  Or, Beyond Java -- what we can do when we finish 1.5.
  Or more generally some kind of presentation about development
  metrics: bug rates, rates of change in japi/lines of code/tests,
  email volume, stuff like that.
- Debugging, JDWP development efforts.
- etc.

Hope to see you in Brussels on February 25 and 26 2006,

Arnaud, Dalibor, Mark, Michael and Tom

-- 
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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath
---End Message---


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Security manager problem

2005-12-13 Thread Mark Wielaard
Hi Gary,

On Mon, 2005-12-12 at 17:55 +, Gary Benson wrote:
 Gary Benson wrote:
  Robert Lougher wrote:
   Do you have a testcase?
  
  If you build and run the attached testcase you ought to see only one
  checkPermission() between Calling checkRead() and Done. ... In
  reality, JamVM chokes on it pretty hard.  I _think_ what is
  happening is that the System.out.println in checkPermission() is
  itself doing some initialisation which causes security checks,
  causing an infinite loop.
 
 The initialisation in question turns out to be:
 
  1. Loading java.lang.StringBuffer to build the message.
  2. Loading java.io.PrintStream to print it out.
  3. Converting the message to bytes using String.getBytes(encoding).
 
 Any one of them will trigger a security check and hence an infinite
 loop.

Aha! There is your clue. libgcj hasn't merged in the new nio charset
provider setup. And indeed creating a new CharsetProvider requires a
RuntimePermission(charsetProvider). Even for creating the default
provider. Which obviously should always be created, otherwise nothing
works. It is safe in this case since we know the default provider
doesn't do nasty things (or at least we hope so). So you need the
attached patch to gnu/java/nio/charset/Provider.java.

But even then you need some more workaround. There are two steps needed:
- Before the SecurityManager is installer we make sure that the whole
  System.out pipeline gets initialized.
- In the user defined TestSecurityManager we make sure that all classes
  that are used in the checkPermission() method are loaded before it
  gets installed. That is System and StringBuffer (because we use +).
Modified Test.java attached.

All this seems to come from having a user defined security manager
loaded by a user defined class loader (the default System/Application
class loader). We need to do ClassLoader.loadClass() checks in that
case. But as shown in this example that leads very easily to recursive
checkPermission() calls.

I don't have a good idea how to make this easier. Any ideas?

Cheers,

Mark
import java.security.*;

class Test
{
  static class TestSecurityManager extends SecurityManager
  {
TestSecurityManager()
{
	// Make sure the classes needed by checkPermission() are loaded.
	Class c = System.class;
	c = StringBuffer.class;
}

public void checkPermission(Permission perm) {
  System.out.println(  checkPermission( + perm + ));
}
  }
	
  public static void main(String[] args) {
try {
  // Make sure System is loaded
  // and the full System.out pipeline is initialized.
  System.out.println(Installing TestSecurityManager);

  SecurityManager sm = new TestSecurityManager();
  System.setSecurityManager(sm);
  System.out.println(Calling checkRead());
  sm.checkRead(/);
  System.out.println(Done);
}
catch (Throwable t) {
  t.printStackTrace();
}
  }
}
Index: gnu/java/nio/charset/Provider.java
===
RCS file: /cvsroot/classpath/classpath/gnu/java/nio/charset/Provider.java,v
retrieving revision 1.6
diff -u -r1.6 Provider.java
--- gnu/java/nio/charset/Provider.java	2 Jul 2005 20:32:13 -	1.6
+++ gnu/java/nio/charset/Provider.java	13 Dec 2005 18:38:18 -
@@ -39,6 +39,8 @@
 
 import java.nio.charset.Charset;
 import java.nio.charset.spi.CharsetProvider;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Iterator;
@@ -232,8 +234,16 @@
 
   public static synchronized Provider provider ()
   {
+// The default provider is safe to instantiate.
 if (singleton == null)
-  singleton = new Provider ();
+  singleton = (Provider) AccessController.doPrivileged
+	(new PrivilegedAction()
+	  {
+	public Object run()
+	{
+	  return new Provider();
+	}
+	  });
 return singleton;
   }
 }


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


ANN: gjdoc 0.7.7 released

2005-12-19 Thread Mark Wielaard
We are pleased to announce gjdoc release 0.7.7.

gjdoc is the GNU documentation generation framework for
java source files. gjdoc is part of GNU Classpath Tools:
http://www.gnu.org/software/classpath/cp-tools/

This is mostly a bug-fix release. This makes gjdoc much more robust when
dealing with invalid documentation tags or source code and it is now
possible to generate the whole javadocs for eclipse using gjdoc out of
the box.

New in release 0.7.7

* Bug fix release
  - gjdoc/24457: NPE for @see tag
  - gjdoc/24474: StackOverflowError in reflexive expressions
  - gjdoc/24501: gjdoc doesn't compile
  - gjdoc/24508: Files weren't generated for packages with names like
 *.java
  - gjdoc/24509: gjdoc is not able to use the javadocs from java.sun.com
  - gjdoc/24510: gjdoc have problems the -linkoffline
  - gjdoc/24507: The overview-summary.html are not generated
  - gjdoc/24553: Problem with @link tags in parameter descriptions
  - gjdoc/24722: Problems with single line comments between method
 arguments

Thanks to Stephan Michels, David Gilbert, Julian Scheid and Michael Koch
for reporting bugs, suggesting and testing fixes and preparing the
release.

The latest release of GNU gjdoc can always be found at
ftp://ftp.gnu.org/gnu/classpath/

This new version of gjdoc has been used to generate class
documentation for the GNU Classpath CVS source files:
http://developer.classpath.org/doc/

-- 
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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


builder setup

2005-12-20 Thread Mark Wielaard
Hi all, Hi list,

builder.classpath.org seems to shape up nicely.

There were 3 reboot last night. I assume that was Jim doing a Xen
upgrade?

There were a couple of issues with email (the scripts now fake the
envelop sender with sendmail to look like emails come from
developer.classpath.org) that I have asked the gnu.org sysadmin to look
at (we had the same issue with developer.classpath.org in the past,
gnu.org thinks it handles all of classpath.org, but developer and
builder are special).

I tweaked the Ecj script that Anthony contributed a bit (also created a
toplevel Nightly/ecj dir that the script expects to be there) and
together with Tom debugged gcjx a little. The script now builds/runs 5
versions of ecj:
- build ecj bytecode with gcj -C
- build native ecj with gcj
- build ecj bytecode with gcjx
- build ecj with jamvm using gcj bytecode version
- build ecj bytecode with native-ecj
There should probably be a jacks run added to check that
ecj-built-by-ecj version is completely sane. The produced ecj hasn't
been wired into the other build/check scripts.

I currently have a screen session running with one screen doing:
source setup; while true; do Everything; Report Idle; sleep 3600; done
(The sleep is there to prevent builder going insane and spamming
classpath-testresults with failure messages.)
And another doing:
source setup; cd Nightly;
gij -cp /home/cpdev/ircbot/pircbot.jar:/home/cpdev/ircbot/cpbot.jar
gnu.classpath.ircbot.Main
(irc seems a bit flaky so sometimes our little bot needs to be restarted
by hand)

I haven't figured out how to easily share this screen setup. Screen
seems to not like being run from a sudo su cpdev session :{
Any hints or tips appreciated.

There is no real web frontend yet, but I did do:
ln -s /home/cpdev/Nightly/CurrentStatus /var/www/index.html 
so you can see what builder is doing by looking at
http://builder.classpath.org/

I am planning to create a new builder module in mauve to more easily
share the code next week with others as soon as we are reasonable happy
about the current script setup.

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: builder setup

2005-12-20 Thread Mark Wielaard
Hi Tom,

On Tue, 2005-12-20 at 09:17 -0700, Tom Tromey wrote:
  Mark == Mark Wielaard [EMAIL PROTECTED] writes:
 
 Mark And another doing:
 Mark source setup; cd Nightly;
 Mark gij -cp /home/cpdev/ircbot/pircbot.jar:/home/cpdev/ircbot/cpbot.jar
 Mark gnu.classpath.ircbot.Main
 Mark (irc seems a bit flaky so sometimes our little bot needs to be restarted
 Mark by hand)
 
 Could we change the bot to restart itself on failure?

Probably, but I haven't looked very closely at the source. What seems to
happen is that the irc server sometimes just traps the bot and doesn't
let it join a channel, I haven't found out why. Often it happens for a
couple times so I need to restart the bot till it clear up.

 Mark I haven't figured out how to easily share this screen setup. Screen
 Mark seems to not like being run from a sudo su cpdev session :{
 Mark Any hints or tips appreciated.
 
 Instead of screen we could run it in the background, and provide a
 couple scripts to start and stop it.  We could also add an '@reboot'
 cron job to make sure it starts when the machine is rebooted.

Yeah, that is probably better. I thought the screen idea was nicer since
you can in principle share it, but apparently that doesn't work well
when su-ing to a different user since screen gets confused about the
controlling terminal.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Hacking Classpath in Eclipse

2005-12-21 Thread Mark Wielaard
Hi,

On Tue, 2005-12-20 at 17:53 -0700, Tom Tromey wrote:
 We think it is now ready for a wider audience.  You can read it here:
 
 http://developer.classpath.org/mediation/ClasspathHackingWithEclipse
 
 This document will walk you through setting up Eclipse, checking out
 Classpath, Cacao, and Mauve, and then trying them out.  This is still
 a work in progress, but we think the instructions here should
 generally work ok.

I played a bit more with it and it certainly has potential. The most
impressive thing is how well native Eclipse actually works! In the past
eclipse didn't really feel that stable, but the versions that come with
Fedora and Debian seem pretty solid out of the box. It is clear we did a
lot of stabilizing in the last couple of months.

The single Mauve testlet example is pretty nice. Since if everything is
setup a simple edit and save of a core library file is enough to retest
the Testlet and immediately see PASS/FAIL results.

I found a cute hack to actually run a single mauve Testlet from within
eclipse using the just compiled classpath:

$ mkdir -p ~/workspace/classpath/install/jre/lib
$ touch ~/workspace/classpath/install/jre/lib/rt.jar

Now as by magic you can add ~/workspace/classpath/install as JRE to
eclipse (under Preferences - Java - JREs) and then configure Runners
to use that alternative jre.

I added a quick SingleTestHarness and MauveRun Runner to mauve as an
example. With it you can immediately run a mauve Testlet that you are
working on against the classpath code you are hacking inside eclipse.

I have to get me some sleep now, but I will add it to the wiki tomorrow
if nobody beats me to it.

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: [Devjam] Re: DevJam thanks, devjam mailinglist and DevJam++

2005-12-21 Thread Mark Wielaard
Hi,

On Wed, 2005-12-21 at 14:34 +0100, Petter Reinholdtsen wrote:
 [Mark Wielaard]
  And if you are interested in participating or helping out with a
  followup meeting please see the wiki about DevJam++:
  http://java.debian.net/index.php/DevJam++
 
 Is it about time to start planning a new gathering?  The new URL is
 URL:http://wiki.debian.org/Java/DevJam.  Debian can probably help
 out with funding, and Andreas Schuldei got friends in Spain that could
 provide a location.
 
 I know FOSDEM is coming up (in February) and will host a java meeting,
 so I suggest the next devjam should be later in the spring, perhaps
 May (co-located with debconf6 in Mexico?).

Since I am personally pretty busy at the moment (with Fosdem) I have
CCed the GNU Classpath mailinglist since there are more hackers there
that can help plan the next DevJam.

It is probably good if interested people would already add their name
and location to http://wiki.debian.org/Java/DevJam
Then we can more easily see what a good location would be.
Since the last DevJam and the Fosdem meetings were all in Europe it
might make sense to have the next DevJam in North America/Canada (since
I believe that is were a large part of our hackers are located).

The difference between the Fosdem meeting and the DevJam meeting is that
DevJam is more focused on actually hacking and working out ideas
together and less about end-users, demos and presentations. So if
people could add ideas for one or two day hack sessions to the wiki page
that would be nice to see what projects can be worked on.

If people want to help organize this please do join the devjam
mailinglist: http://developer.classpath.org/mailman/listinfo/devjam

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Hacking Classpath in Eclipse

2005-12-22 Thread Mark Wielaard
Hi,

On Wed, 2005-12-21 at 19:21 -0700, Tom Tromey wrote:
 Note that this will work for running something, but not if you want
 to compile against that JRE.
 
 For the latter I think we need to come up with some kind of fake jdk
 project.  I actually have the start of one here, but I haven't
 finished polishing it yet.
 
 Ideally Eclipse would offer the possibility of auto-exporting the
 build results as a .jar.  That would solve this entirely.

Wouldn't it be enough if we could convince eclipse to accept a
hand-made jre? I mean one where you can you explicitly set the
individual binaries that make up the tools that eclipse expects? Plus
convincing the built-in eclipse compiler to use a flat (non-jar/zip)
bootclasspath? (I believe ecj can use dirs already, but haven't
checked.)

It feels like eclipse is just trying to be too clever in its jre
detection. Maybe if the JRE definitions preference box had an
override - I know what I am doing box, so you could fill in the
individual parts that make up the StandardVMType thing.

If you take a quick look at
org/eclipse/jdt/internal/launching/StandardVMType.java it looks like
this class just needs a set of setters and a way to override that auto
detection. Or maybe we need a new subclass of AbstractVMType that
creates an IVMInstall just based on user defined locations that can be
plugged into the standard JRE preferences dialog as override to the
autodetecting StandardVMType?

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Using a workspace-based VM in Eclipse

2005-12-22 Thread Mark Wielaard
Hi Tom,

On Thu, 2005-12-22 at 12:34 -0700, Tom Tromey wrote:
 Once that is done, check out the fakejdk project from
 :pserver:[EMAIL PROTECTED]:/cvs/rhug, module 'fakejdk'.
 (This ought to auto-build, but if not, apply the usual Clean hack.)
 This just makes a little project consisting of symlinks -- it is a
 huge hack.

One of the symlinks didn't work for me. Attached is a patch for the
tools.jar to try and find it in some other location. Generated by
eclipse of course :)

 Now, go to Window-Preferences-Java-Installed JREs and choose
 'Add...' to add a new one.  I named mine Cacao.  For the JRE home
 directory, choose $workspace/fakejdk.  Then turn off Use default
 system libraries and you can edit the Source attachment of the new
 JRE to point to the classpath directory in the workspace.

Strangely the attach source step didn't work. I always get:
Assertion failed; Path for IClasspathEntry must be absolute

 Once this is done you can pick this JRE for launchers, or to build
 other projects against.  This is nice because it means these projects
 don't have to necessarily depend on Classpath -- there is a layer of
 indirection, so you can build and run them against the system VM if
 you prefer to do that, without modifying the shared build setup.

Wow! That is really nice. It seems to work instantly. Edit the project
or edit classpath and on a rerun your changes are there :)

Thanks,

Mark
Index: build
===
RCS file: /cvs/rhug/fakejdk/build,v
retrieving revision 1.1
diff -u -r1.1 build
--- build	22 Dec 2005 19:01:09 -	1.1
+++ build	22 Dec 2005 22:51:40 -
@@ -38,7 +38,13 @@
 cd $top/lib
 # FIXME: tools.jar
 # We have to merge with java-gcj-compat.
-cp /usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/lib/tools.jar tools.jar
+if test -f /usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/lib/tools.jar; then
+  cp /usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/lib/tools.jar tools.jar
+elif test -f /usr/lib/jvm/java-1.4.2-gcj-4.0-1.4.2.0/lib/tools.jar; then
+  cp /usr/lib/jvm/java-1.4.2-gcj-4.0-1.4.2.0/lib/tools.jar tools.jar
+else
+  cp /usr/lib/jvm/java-*-gcj-*/lib/tools.jar tools.jar
+fi
 
 cd $top/jre/bin
 ln -s $classpath/install/bin/$vm java


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Using a workspace-based VM in Eclipse

2005-12-22 Thread Mark Wielaard
Hi Tom,

On Thu, 2005-12-22 at 15:53 -0700, Tom Tromey wrote:
 Yeah, that one is super bogus.  And, I think, not actually needed.
 
 Anyway, commit that if you like.  You have rhug access, right?

No I don't think I have rhug access.

 Mark Strangely the attach source step didn't work. I always get:
 Mark Assertion failed; Path for IClasspathEntry must be absolute
 
 Hmm.  Did you choose Workspace... when specifying the source path?  I
 did... anyway, check your .log, maybe this is a bug somewhere.

It happens before that. When hitting the Edit... button.
I worked around it by just removing the rt.jar and readding it by hand.
Then I can Edit and attach source for the classpath workspace.

 Mark Wow! That is really nice. It seems to work instantly. Edit the project
 Mark or edit classpath and on a rerun your changes are there :)
 
 Yup, this is why I think Eclipse is the easiest way to develop
 Classpath.  At least, that is true for the Java side of things.  For
 the native code the traditional tools are probably still in the lead.

It looks like the native side gets rebuild a lot though. I guess there
are some dependencies wrong since I seem to trigger a full rebuild of
cacao a lot when running mauve for example.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: java.swing.text.NumberFormatter

2005-12-23 Thread Mark Wielaard
Hi Roman,

On Fri, 2005-12-23 at 10:33 +0100, Roman Kennke wrote:
 Thanks for your explanations. Could you file a bugreport about this and
 assign it to me (roman at kennke dot org), so it doesn't get lost? Right
 now I don't have much time and I'll try to look at this in a few days.

Chris already did :)
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25536
This is now assigned to you.

BTW. For those that want to track the bug reports more closely, all
bugzilla messages also go to bug-classpath
http://lists.gnu.org/mailman/listinfo/bug-classpath which is also
archived at gmane http://dir.gmane.org/gmane.comp.java.classpath.bugs

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Using a workspace-based VM in Eclipse

2005-12-23 Thread Mark Wielaard
Hi Robert,

On Thu, 2005-12-22 at 23:40 +, Robert Lougher wrote:
 On 22 Dec 2005 12:34:42 -0700, Tom Tromey [EMAIL PROTECTED] wrote:
  To do this, follow the wiki instructions to check out and build
  Classpath and Cacao (as always, this VM is chosen because all the
  needed build bits are in its cvs repository... hint to the other VM
  developers).
 
 Hint taken.  The necessary files are now in JamVM's cvs repository. 
 This is your patch with a couple of changes by Raif that adds the
 .cvsignore files and adds an Autogen Builder to create, among other
 things, the configure script.

Wee! This is cool. I needed one small patch to make it all work smoothly
with the fakejdk project. Besides building everything jamvm should also
be installed and then you can just automagically switch fakejdk to use
jamvm (it will automatically select jamvm if cacao isn't available). Now
my eclipse based projects can use the just build in workspace
classpath and jamvm for development.

Patchlet attached.

Cheers,

Mark
Index: .project
===
RCS file: /cvsroot/jamvm/jamvm/.project,v
retrieving revision 1.1
diff -u -r1.1 .project
--- .project	22 Dec 2005 21:36:56 -	1.1
+++ .project	23 Dec 2005 10:44:12 -
@@ -56,11 +56,11 @@
 /dictionary
 dictionary
 	keyorg.eclipse.cdt.make.core.build.target.full/key
-	valueclean all/value
+	valueclean all install/value
 /dictionary
 dictionary
 	keyorg.eclipse.cdt.make.core.build.target.auto/key
-	valueall/value
+	valueall install/value
 /dictionary
 dictionary
 	keyorg.eclipse.cdt.make.core.build.location/key
@@ -84,7 +84,7 @@
 /dictionary
 dictionary
 	keyorg.eclipse.cdt.make.core.build.target.inc/key
-	valueall/value
+	valueall install/value
 /dictionary
 dictionary
 	keyorg.eclipse.cdt.make.core.enableCleanBuild/key


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Using a workspace-based VM in Eclipse

2005-12-23 Thread Mark Wielaard
Hi Raif,

On Fri, 2005-12-23 at 19:56 +1100, Raif S. Naffah wrote:
  Now, go to Window-Preferences-Java-Installed JREs and choose
  'Add...' to add a new one.  I named mine Cacao.  For the JRE home
  directory, choose $workspace/fakejdk.  Then turn off Use default
  system libraries and you can edit the Source attachment of the new
  JRE to point to the classpath directory in the workspace.
 
 when i do that Eclipse claims that Target is not a JDK root. System 
 library was not found.
 
 this turns out to be caused by the fact that the instructions to follow 
 do not cause a glibj.zip to be generated, and hence be used as the fake 
 rt.jar.

Are you sure you have the latest GNU Classpath CVS checked out in
eclipse? Tom added a new Builder ClasspathJar that generates a glibj.zip
after everything else has been build. See classpath Project -
Properties - Builders.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


0.20 (next year)

2005-12-24 Thread Mark Wielaard
Hi all,

I had wanted to push out one more new developer snapshot release (0.20)
this year, but got distracted by setting up the new builder machine for
automatic regression testing and the eclipse build infrastructure (both
very cool things!). And now it seems that I might actually not have any
internet access till the end of the year/early next year because I am
moving houses (and the internet seems to be stuck somewhere between the
two...). So lets move 0.20 to next year. Lets pick an arbitrary date,
the second weekend of 2006 (between 10 and 12 January).

Please go over the list of features and bugs and think about what you
can finish before 0.20. And if someone wants to go over the ChangeLog
file and add all the big things to the NEWS file that would be really
appreciated. Replying to this post with things you want to work on or
things you want to postpone till after 0.20 is also appreciated to keep
everybody in the loop.

If possible it would be nice to do another generics-branch release at
the same time. So that branch should also be remerged.

And if I fail to find proper internet access in the next one or two
weeks: Happy Holidays!

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: XML parsing problems

2005-12-31 Thread Mark Wielaard
Hi Chris,

On Tue, 2005-12-27 at 20:03 +, Chris Burdess wrote:
 Please test the new XML parser on as many weird and wonderful XML
 sources as you can, and report any problems to me either by mail or
 Bugzilla - I will try to deal with them before release, or we can
 revert to aelfred2 again if there are other showstoppers.

Nice work! You are running some test-suites from time to time on the xml
parsers. If these are free then I would like to add them to
builder.classpath.org so regressions (or better conformance results) are
automatically tracked. How much space do they need and is it difficult
to setup?

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: building Classpath for Win32

2006-01-01 Thread Mark Wielaard
Hi Enrico,

On Sat, 2005-12-24 at 13:01 +0100, Enrico Migliore wrote:
  I would like to build Classpath for Windows with
  Cygwin's GCC and GCJ.
 
  I read  the INSTALL file but it doesn't say how to configure the 
 tarball for a Windows build.

It used to be possible and Stephane wrote up an install guide at:
http://developer.classpath.org/mediation/ClasspathOnCygwin

But it might be that those instructions are out of date now.
If so, then please let us know and/or update that page.

Thanks,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


GNU Classpath friends meeting during Fosdem 2006

2006-01-01 Thread Mark Wielaard
GNU Classpath  friends meeting during Fosdem 2006.

The various free software library, runtimes, compiler and tool
projects around GNU Classpath will meet in Brussel to discuss what has
happened in the last year in the Free Software community and what the
next year will bring us during Fosdem.

The 6th edition of FOSDEM (Free and Opensource Software Developers'
European Meeting) will take place on February 25+26 2006 in Brussels
(Belgium), at the Solbosch Campus of the ULB (Free University of
Brussels). FOSDEM is a free and non-commercial event for the community
and organized by the community. See http://www.fosdem.org/

The program will be as follows:

- Saturday from 13:00 to 17:30 - End-User talks

  Presentations that show what cool stuff can be done with the Free
  Stack right now.

  - Putting the 'Free' into JFreeChart
Dave Gilbert, JFreeChart Project Leader

A review of the efforts to make JFreeChart work with GNU
Classpath-based runtimes, including a brief history, a demonstration
of the current state (using the java bindings for Cairo), and an
overview of the work that remains to be done.

  - Using Eclipse for GNU Classpath development
Tom Tromey

Learn how to setup a fully working development environment based
on GNU Classpath in Eclipse that can be used to bootstrap the full
free toolchain (and can be used to run Eclipse itself) in just 10
minutes. 

  - Eclipse RCP and GCJ/GIJ
Wayne Beaton

Eclipse Rich Client Platform (RCP) is a runtime platform for
delivering your Java applications on multiple platforms. RCP is far
more than just a windowing toolkit; it is rich client middleware
that provides a comprehensive framework for building and deploying
applications that are modular, extensible, and updatable. The kinds
of applications you can build with Eclipse RCP are limited only by
your imagination. During this talk, we will discuss how the Eclipse
RCP can be used in conjunction with the Eclipse Eco-system and
GCJ/GIJ to build high quality applications.

  If there is time at the end of the day we would like to do a
  Show-And-Tell where people do quick Demos of applications running on a
  completely free stack. Ideas and suggestions welcome.

- Sunday from 09:00 to 13:00 - Developer talks

  Presentations of (core) libraries and runtimes that are in progress,
  made a lot of progress in the last year and are in active development.

  - Free Swing, past, present and future
Roman Kennke

An overview of that state of Free Swing one year ago, what has been
done in the meantime, what still must be done and which applications
work now.

  - The Free CORBA comes
Dr Audrius Meskauskas

If the Free world does not want to step back in the battle, we need
a complete set of the Free tools for advanced communication over
the network. For our CORBA implementation we needed:

1. Free. No classes with restricted license.
2. Fully workable, interoperable and pass tests, recognized by
   the CORBA user community as serious (we needed to find a well
   known Free testing suite).
3. Properly commented, being ready for the long life in the Free
   world.
4. No pressure to use the outdated approaches.
   CORBA 3.0.3 and jdk 1.5.

To reach these goals, we have chosen for implementing a clean room 
implementation, using the published standard specifications only.
During the recent year of the GNU Classpath development, this goal
is in large degree achieved. The important directions of future
development could be providing features that are outside the scope
of the both CORBA standard and Sun API, but included in the near all
proprietary implementations (SSH, HTTP and other bridges, get rid of
rmic code generator for RMI/IIOP, fault tolerant behavior, reduced
the footprint and others).

  - The JamVM runtime
Robert Lougher

An overview of the JamVM virtual machine, with comparisons to other
GNU Classpath runtimes, and a section on the VM interface.

  - Integrating Vmgen-based interpreters
Christian Thalinger
  
Vmgen is a tool for writing efficient interpreters. The Cacao
runtime recently added a Vmgen based interpreter in addition to
the JIT engine.

- Sunday from 14:00 to 17:30 - The Future

  Interactive technical hacker discussions on how to integrate
  the projects more and move forward in the next year.

  - State of the world, beyond japi
Mark Wielaard, GNU Classpath Maintainer

After a short overview of the various free stacks, libraries,
compilers, tools and runtimes this session is mostly open discussion
about what work remains to be done and how to integrate the various
efforts better. Ideas for work items welcome.

We hope to see you in Brussels on February 25 and 26 2006, If you have
suggestions or ideas for the demos and discussion sessions please
contact us at [EMAIL PROTECTED

New GNU Classpath developer Raif Naffah

2006-01-02 Thread Mark Wielaard
Hi all,

I am happy to announce that Raïf decided to become one of our active
hackers. Raïf was the former maintainer of GNU Crypto before Casey took
over that package, and has been helping with integrating and testing the
security and crypto framework in GNU Classpath (and writing Mauve test
for it). Recently he created the HackingClasspathWithEclipse page on our
developer wiki:
http://developer.classpath.org/mediation/ClasspathHackingWithEclipse

Raïf, even though you have been contributing to GNU Classpath in the
past you name is missing in the AUTHORS file. Please post a patch and
ChangeLog entry to add yourself to the AUTHORS file to the
classpath-patches mailinglist. You can consider that patch pre-approved
so feel free to commit it immediately as a test of your new powers. But
remember that with power comes responsibility! (*)

Thanks,

Mark

(*) http://www.gnu.org/software/classpath/docs/hacking.html

-- 
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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: compiling Classpath on cigwin/win

2006-01-02 Thread Mark Wielaard
Hi,

On Mon, 2006-01-02 at 19:10 +0100, Enrico Migliore wrote:
 The problem is that the Classpath compilation process started this
 morning at 8:00 and, at 5 p.m., hasn't finished it.
 
 The machine I'm using is a:
 
 CPU: Intel @ 3GHz
 RAM: 192 MBytes
 OS: WinXP
 case: Laptop
 
 Is it reasonable a compilation time that long?
 
 yes. it is probably swapping itself to death. 
 
 Do you mean anything is going wrong?

I don't think this is normal, even with just 192MB memory.
What was the last output of the build? Do you have top or ps on cygwin
to see which process is active at the moment?

If it is jikes try adding -verbose to the following line in lib/Makefile
JAVAC = $(JIKES) $(JIKESWARNINGS) +F $(JIKESENCODING) -bootclasspath ''
-extdirs '' -sourcepath '' --classpath $(compile_classpath) -d .
@classes

That should at least give a clue what jikes is doing.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: compiling Classpath on cigwin/win

2006-01-03 Thread Mark Wielaard
Hi Enrico,

If you can figure out why jikes hangs, either by adding -verbose to the
Makefile or by stracing or running it under gdb (if available under
cygwin) that would be interesting.

On Tue, 2006-01-03 at 09:41 +0100, Enrico Migliore wrote:
 The only one left is the Eclipse compiler. When I try:
 
 ./configure --with-ecj
 
 the configure script tells me that ecj is not found
 ECJ is a class, embedded in the following Eclipse plugin:
 
  org.eclipse.jdt.core.compiler
 **
 and therefore is not an ordinary application.
 
 Can somebody tell me how to instruct the configure script
 to use the ECJ compiler?

On builder.classpath.org we bootstrap the ECJ compiler with GCJ. I am
not 100% sure you can do this with an older gcj (builder uses gcc from
cvs), but if you can try then this is what should work:

cvs -d:pserver:[EMAIL PROTECTED]:/home/eclipse co \
org.eclipse.jdt.core

cd org.eclipse.jdt.core

find compiler batch -name \*.java | xargs gcj \
--main=org.eclipse.jdt.internal.compiler.batch.Main \
-Icompiler -Ibatch -o ecj

Then you have a native ecj executable that can be used to bootstrap
classpath.

 Has anybody ever successfully built GNU/Classpath on Cygwin?

Yes in the past, but clearly none of the core developers are using
cygwin regularly. So it has bitrotten a bit. Sorry and thanks for trying
to get it working.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: compiling Classpath on cigwin/win

2006-01-03 Thread Mark Wielaard
Hi Paul,

On Tue, 2006-01-03 at 22:05 +, Paul Jenner wrote:
 Haven't figured out why (yet :-) but I can say where for anyone else
 playing with this.
 
 jikes looks to hang compiling org/omg/CORBA/INVALID_ACTIVITY.java under
 Cygwin. Take that file out of the classes list manually and jikes build
 completes for me. Try to compile just that file from within the build
 infrastructure and jikes hangs.

O, interesting. The class comment in that file contains some strange
characters. Does removing them help?

Cheers,

Mark
Index: org/omg/CORBA/INVALID_ACTIVITY.java
===
RCS file: /sources/classpath/classpath/org/omg/CORBA/INVALID_ACTIVITY.java,v
retrieving revision 1.1
diff -u -r1.1 INVALID_ACTIVITY.java
--- org/omg/CORBA/INVALID_ACTIVITY.java	22 Oct 2005 19:57:03 -	1.1
+++ org/omg/CORBA/INVALID_ACTIVITY.java	3 Jan 2006 22:12:34 -
@@ -43,7 +43,7 @@
 /**
  * Raised when the transaction or Activity is resumed in a different context
  * than from which it was suspended. It is also raised when the invocation is
- * not incompatible with the Activity’s current state.
+ * not incompatible with the Activity's current state.
  *
  * @since 1.5
  *


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: compiling Classpath on cigwin/win

2006-01-03 Thread Mark Wielaard
Hi Paul,

On Tue, 2006-01-03 at 22:20 +, Paul Jenner wrote:
 On Tue, 2006-01-03 at 23:12 +0100, Mark Wielaard wrote:
  O, interesting. The class comment in that file contains some strange
  characters. Does removing them help?
 
 Just noticed that myself. Yep - remove the odd characters and build is
 merrily completing for me.

Great! Committed as follows:

2006-01-03  Mark Wielaard  [EMAIL PROTECTED]

* org/omg/CORBA/INVALID_ACTIVITY.java: Remove non-ascii characters.

Thanks,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: gnu.xml.dom.DomText implements Text and NodeList.

2006-01-04 Thread Mark Wielaard
Hi,

On Wed, 2006-01-04 at 07:16 +, Chris Burdess wrote:
  My proposed solution is:
  
  Add to gnu.xml.dom.DomText:
  
  import org.w3c.dom.NodeList;
  
/**
 * Returns an EmptyNodeList.
 *
 * @author Pedro Izecksohn
 */
public NodeList getChildNodes()
{
return (NodeList) new EmptyNodeList();
}
  
  Add to gnu/xml/dom/ the file EmptyNodeList.java:
  
  package gnu.xml.dom;
  
  import org.w3c.dom.Node;
  import org.w3c.dom.NodeList;
  
  /**
   * @author Pedro Izecksohn
   */
  
  public final class EmptyNodeList implements NodeList
  {
  
public EmptyNodeList () {}
  
public final int getLength () {return 0;}
  
public final Node item (int index) {return null;}
  
  }
 
 That looks absolutely correct.

Thanks Pedro. Some small suggestions for improvements.
It really should be a static inner class (since no state of the outer
class is used). And maybe we can share one instance of the EmptyNodeList
for the whole dom tree so if a tree contains lots of empty node list we
only allocate one. BTW. The cast in getChildNode() isn't necessary since
EmptyNodeList already is a NodeList.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Fosdem LiveCD

2006-01-04 Thread Mark Wielaard
Hi,

Crazy idea time. It would be nice if we had a LiveCD for Fosdem that
showed all the cool stuff we have working now. On Saturday (Feb 25) we
would like to have a little Show-And-Tell to give people the oppertunity
to show off their favorite applications. What better way to show off
then to be able to say: and take this CD, it has everything on it ready
to go! :)

I was hoping that Fedora Core 5 would be out around Fosdem, but they
extended their schedule by a couple of weeks and are now releasing just
after Fosdem (March 15). Otherwise we could have nagged those Red
Hatters that they should hand out those since Fedora Core 5 is based on
GCC 4.1 (CVS-pre-release) it has most of the latest stuff already.

Has someone experience with creating LiveCDs?
(I don't, so maybe my idea of it being easy to create a LiveCD is
terribly naive.)

Can it be based on a Fedora Core 5 test release?
(Fedora Core seems the most stable and includes Jonas)

Or should we base it on the Debian packages
(They have more things packaged like jamvm, kaffe, cacao, but don't have
jonas yet and most things are based on the stable gcc 4.0.x release.)

Does anybody know of a cheap way to create the CDs? Or do we have
someone with a CD burner so we could burn them on the spot? Maybe that
takes too long though.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: CACAO in Debian

2006-01-04 Thread Mark Wielaard
Hi Christian,

On Wed, 2006-01-04 at 10:53 +0100, Christian Thalinger wrote:
 Tonight we finally made it into debian, woohoo!  The build status page
 is here:
 
 http://people.debian.org/~igloo/status.php?packages=cacao

Nice. It looks like only i86 and powerpc build at the moment. I thought
you also had alpha, mips and arm working at one point. Is there a list
of supported cacao platforms?

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: compiling Classpath on cigwin/win

2006-01-05 Thread Mark Wielaard
On Thu, 2006-01-05 at 08:56 +0100, Enrico Migliore wrote:
  I still got 2 problems on my Cygwin which prevent Classpath from 
 generating glibj.zip

 Problem 1
 --
 Found when issuing: $make
 
 make  all-am
 make[2]: Entering directory 
 `/home/Enrico/projects/classpath/classpath-0.19/examples'
 mkdir -p classes/gnu/classpath/examples/icons
 cp ./gnu/classpath/examples/icons/*.png classes/gnu/classpath/examples/icons
 /usr/local/bin/jikes -bootclasspath '' -extdirs '' -sourcepath '' 
 --classpath ../lib:.
 -d classes ./gnu/classpath/examples/*/*.java  cd classes;  -r 
 ../examples.zip .; cd ..
 /bin/sh: -r: command not found

Configure didn't find zip. This is a bug in out configure setup:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24133
Configure does not detect (fatal) missing zip executable

Problem 2 is most likely the same issue.

Have you installed zip? If not, try installing that first. If you have
make sure it is in your PATH. And if it is still not found look in
config.log to see if there is an hint why it isn't found.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


GPLv3 meeting

2006-01-09 Thread Mark Wielaard
Hi all,

As most of you probably know the FSF will go through a design process
for the next revision of the GPL this year (http://gplv3.fsf.org/). I
have given some feedback on license/legal issues we have seen with the
GNU Classpath and related projects (especially about what a pity it is
that the ASL and EPL are Free Software licenses with additional or
different restrictions from the GPL which makes easy sharing of
code-bases difficult). Unfortunately I cannot make it to the v3 intro
meeting at the MIT in Cambridge, MA, USA, on January 16-17. David asked
me to see if someone else from GNU Classpath could make it:

  I will ask around. But most hackers are coders, not legal
  enthusiasts :) What kind of input would be expected from them?
 
 We're interested in how they read the language (since the GPL is
 written as much for programmers as for lawyers).  And we would like to
 hear stories about how licensing has affected various Free Software
 projects. We want to bring together developers to create the best
 license possible for the next fifteen years.

So if you live around Boston and are able to attend the v3 intro meeting
please register and share our stories (http://gplv3.fsf.org/launch). The
FSF also made sure that there will be Apache and Eclipse people at the
meeting.

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: 0.20 (next year)

2006-01-09 Thread Mark Wielaard
Hi all,

On Sat, 2005-12-24 at 12:02 +0100, Mark Wielaard wrote:
 I had wanted to push out one more new developer snapshot release (0.20)
 this year, but got distracted by setting up the new builder machine for
 automatic regression testing and the eclipse build infrastructure (both
 very cool things!). And now it seems that I might actually not have any
 internet access till the end of the year/early next year because I am
 moving houses (and the internet seems to be stuck somewhere between the
 two...). So lets move 0.20 to next year. Lets pick an arbitrary date,
 the second weekend of 2006 (between 10 and 12 January).

Internet access restored :) Seems I was confused about the dates. 10/12
January isn't a weekend, but lets try to prepare a 0.20 snapshot by the
end of this week.

 Please go over the list of features and bugs and think about what you
 can finish before 0.20. And if someone wants to go over the ChangeLog
 file and add all the big things to the NEWS file that would be really
 appreciated. Replying to this post with things you want to work on or
 things you want to postpone till after 0.20 is also appreciated to keep
 everybody in the loop.

Please don't add any new larger (vm) changes this week. The merge of all
GNU Crypto will wait till after 0.20. I haven't looked at the
target-native/vm-interface threads/proposals yet and would like to
postpone those also till next week.

 If possible it would be nice to do another generics-branch release at
 the same time. So that branch should also be remerged.

Andrew said he might be able to do this. Please let us know if you can
find time for this or whether you want someone to help do the merge.

Please do report any positive or negative stories about the current
(CVS) code base. It seems in pretty good shape. The autobuilder does
show some swing.text regressions, but I believe these are not really new
regressions. Tony and Lillian have been working on this package and much
more seems to work, so these are probably latent bugs (see
http://lists.gnu.org/archive/html/classpath-testresults/ for the current
report). If they are not regressions then I will reset the autobuilder
reports. Chris has been setting up XML test-suites which also show nice
results (see http://builder.classpath.org/xml/)

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: gnu.xml.dom.DomText implements Text and NodeList.

2006-01-10 Thread Mark Wielaard
Hi Pedro,

On Tue, 2006-01-10 at 04:31 -0400, Pedro Izecksohn wrote:
 We ask that people agree to the GNU Classpath Hackers requirements
 before granting CVS commit permissions. You can find them at:
 http://www.gnu.org/software/classpath/docs/hacking.html#SEC2 
 
 I'm submiting source code to this list to be included in the GNU classpath 
 project, assuring that I wrote this code and it is legally mine, accepting 
 that it will be distributed under the GNU General Public License with the 
 linking exception, and I'm donating this code to the Free Software 
 Foundation.
 
 If I need to sign on paper, tell me from where may I download the model.

Thanks. I'll sent you the request form by email in a second.

 It really should be a static inner class (since no state of the outer
 class is used).
 
 inner: Inside which one? DocumentType, ProcessingInstruction, Comment, Text,
 CDATASection and Notation have no children.
 
 As:
 
   DomCDATASection extends DomText,
   DomText extends DomCharacterData,
   DomComment extends DomCharacterData, 
 
 it would be better to modify DomCharacterData.
 
 DomDoctype, DomNotation and DomProcessingInstruction seem (to the test case 
 below) to be OK.
 
 May be a public class as below.

Ah, right, I missed that it had to be done in several places. Having one
(package private?) class seems the way to go.

Sorry for not picking this up yet, I have been a bit busy with preparing
for the next (0.20) snapshot release (and was secretly hoping Chris
would pick this up since he is much more familiar with this part of the
code).

 About the test case below:
 
 I could not imagine a better class name. It needs a XML with DTD that
 contain all the elements that it tests. I need to learn about Mauve.

Most of Mauve is fairly simple. See
http://sources.redhat.com/cgi-bin/cvsweb.cgi/~checkout~/mauve/README?cvsroot=mauve
If you take one of the existing testlets as example you will see that it
basically is replacing the main() method with a test() method and
replacing the System.out and if statements with harness.check()
statements. You can load a simple XML file with
harness.getResourceFile().

  // Resource names are
  // just like file names.  They are relative to the top level Mauve
  // directory, but '#' characters are used in place of directory
  // separators.

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Assertion failure

2006-01-10 Thread Mark Wielaard
Hi,

On Tue, 2006-01-10 at 01:38 +0100, Christian Thalinger wrote:
 On Mon, 2006-01-09 at 18:02 -0600, Archie Cobbs wrote:
  FYI,
  
  Just testing current CVS with JCVM and I'm also getting this assertion 
  failure:
  
 jc: mprec.c:100: _Jv_Balloc: Assertion `(1  k)  32' failed.
  
  This is on SuSE 10 on an x86 laptop (Dell Latitude D810).
 
 It's interesting that this also happens on 32-bit machines.  See also:
 
 http://lists.gnu.org/archive/html/classpath-patches/2006-01/msg00141.html

Hmmm. mprec originally came with fdlibm from libgcj and we regarded them
as upstream, but they are now relying on us as upstream. It looks like
the original mprec imported into libgcj actually through newlib
(http://sourceware.org/newlib/) - notice that one maintainer! :)

They do have an updated version of mprec.h and mprec.c at:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/newlib/libc/stdlib/?cvsroot=src

Now we need a volunteer to merge our local changes back to that version
and then import a new mprec.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Assertion failure

2006-01-10 Thread Mark Wielaard
On Tue, 2006-01-10 at 10:41 +0100, Mark Wielaard wrote:
 Hmmm. mprec originally came with fdlibm from libgcj and we regarded them
 as upstream, but they are now relying on us as upstream. It looks like
 the original mprec imported into libgcj actually through newlib
 (http://sourceware.org/newlib/) - notice that one maintainer! :)
 
 They do have an updated version of mprec.h and mprec.c at:
 http://sourceware.org/cgi-bin/cvsweb.cgi/src/newlib/libc/stdlib/?cvsroot=src
 
 Now we need a volunteer to merge our local changes back to that version
 and then import a new mprec.

BTW, does anybody know why we are not using the system strtod() when
available? That seems the way to the quickest solution on most
platforms. It seems to work with some simple tests for me. But I notice
that there is no strtod_r(), just strtod(). But I couldn't find a
definitive answer on whether or not the standard strtod() is guaranteed
to be thread-safe or not. Does anybody know (where to find this
information)?

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Assertion failure

2006-01-10 Thread Mark Wielaard
Hi,

On Tue, 2006-01-10 at 10:17 +, Andrew Haley wrote:
 Christian Thalinger writes:
   On Mon, 2006-01-09 at 18:02 -0600, Archie Cobbs wrote:
Just testing current CVS with JCVM and I'm also getting this assertion 
 failure:

   jc: mprec.c:100: _Jv_Balloc: Assertion `(1  k)  32' failed.

This is on SuSE 10 on an x86 laptop (Dell Latitude D810).
   
   It's interesting that this also happens on 32-bit machines.  See also:
   
   http://lists.gnu.org/archive/html/classpath-patches/2006-01/msg00141.html
 
 Yes, but what is the value of k when this assertion fires?

You can trigger it with the following (extracted from Mauve):

new java.math.BigDecimal(1e200).floatValue();

Which gives:

#4  0xad75ab88 in _Jv_Balloc (ptr=0xbfa7b7d4, k=5) at mprec.c:100
100   assert ((1  k)  MAX_BIGNUM_WDS);

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Assertion failure

2006-01-10 Thread Mark Wielaard
On Tue, 2006-01-10 at 11:49 +0100, Mark Wielaard wrote:
 BTW, does anybody know why we are not using the system strtod() when
 available? That seems the way to the quickest solution on most
 platforms. It seems to work with some simple tests for me. But I notice
 that there is no strtod_r(), just strtod(). But I couldn't find a
 definitive answer on whether or not the standard strtod() is guaranteed
 to be thread-safe or not. Does anybody know (where to find this
 information)?

OK found that out myself. Apparently some strtod implementations are
indeed not thread-safe by default (but most seem to be). The other
problem is that strtod depends on the locale and changing the locale
isn't thread-safe... sigh. So we do need our own implementation, or do
something like glib g_ascii_strtod() and convert the string
representation first to the current locale form ().

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Assertion failure

2006-01-10 Thread Mark Wielaard
Hi Archie,

On Tue, 2006-01-10 at 11:59 -0600, Archie Cobbs wrote:
 In any case, we probably need to fix this before 0.20, or at least
 disable the assertion (i.e., revert to the previous status quo).

Agreed. I am still hoping someone has a good analysis of the issue, or
wants to upgrade our mprec to the newlib version. If not we should
indeed disable the assert again before 0.20 is released.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


RE: SecurityManager troubles

2006-01-11 Thread Mark Wielaard
Hi Jeroen,

On Wed, 2006-01-11 at 08:45 +0100, Jeroen Frijters wrote:
 After fixing some IKVM specific bugs, I was able to run the testcase
 succesfully with only the attached GNU Classpath fix.

That patch is obviously correct. Please do check this in even if other
runtimes are still broken :)

Thanks,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Some Mauve regressions builder missed

2006-01-11 Thread Mark Wielaard
Hi all,

Seems builder.classpath.org misses some regressions. builder can only
accurately report when a PASS turns into a FAIL with the exact same
message. It deliberately doesn't report new FAILs (since those could be
from newly added tests). Since we sometimes use different messages when
something PASSes and when something FAILs the auto-builder cannot
currently detect those regressions. A special case are tests that crash
a VM, then the message is replaced with CRASHED. Which is incorrectly
interpreted as a new FAIL, but is obviously a regression. A workaround
is to create a new test harness that ignores checkpoint names and
PASS/FAIL messages. Such a harness should just use the test classname as
message plus a counter. I'll implement that after 0.20.

So here are the Mauve tests with regressions that builder missed:

- gnu.testlet.java.math.BigDecimal.DiagBigDecimal
  This is the assert issue in mprec.c.

- gnu.testlet.java.net.DatagramPacket.DatagramPacketOffset
- gnu.testlet.java.net.DatagramPacket.DatagramPacketReceive
- gnu.testlet.java.net.DatagramPacket.DatagramPacketReceive2
- gnu.testlet.java.net.DatagramSocket.DatagramSocketTest
- gnu.testlet.java.net.DatagramSocket.DatagramSocketTest2
- gnu.testlet.java.net.InetAddress.getAllByName
- gnu.testlet.java.net.MulticastSocket.MulticastSocketTest
- gnu.testlet.java.net.ServerSocket.ServerSocketTest
- gnu.testlet.java.net.Socket.SocketTest
  These are mostly the same issue (also an assert).
  I am working on a patch.

- gnu.testlet.javax.swing.text.BoxView.spans
  I am unclear why the results changed between 0.19 an 0.20pre without
  the builder noticing. Maybe we accidentally reset the tester.
  Not investigated yet.

- gnu.testlet.javax.swing.JTextField.createDefaultModel
- gnu.testlet.javax.swing.JTextField.CopyPaste
- gnu.testlet.javax.swing.BoxLayout.simplehorizontal
- gnu.testlet.javax.swing.BoxLayout.simplevertical
- gnu.testlet.javax.swing.AbstractButton.setRolloverEnabled
- gnu.testlet.javax.swing.JEditorPane.ConstructorsAndTypes
  Not investigated yet.

If people have time please do investigate the above Mauve tests so we
can have a nice regression free release Friday.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: RMI and java.rmi.server.hostname

2006-01-12 Thread Mark Wielaard
Hi,

On Wed, 2006-01-11 at 13:54 -0700, Tom Tromey wrote:
 I filed a PR: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25754
 
 I would have linked to your message but, weirdly, it isn't in the
 list archives yet.

The official archives are only updated every 12 hours (*). It is
available as:
http://lists.gnu.org/archive/html/classpath/2006-01/msg00098.html
I added it to the PR.

Cheers,

Mark

(*) If you need a quick link see Gmane:
http://dir.gmane.org/gmane.comp.java.classpath.devel
On that page there are also links to other (backup) archives.

-- 
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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


RE: SecurityManager troubles

2006-01-12 Thread Mark Wielaard
Hi Jeroen,

On Fri, 2006-01-13 at 07:54 +0100, Jeroen Frijters wrote:
 I think I figured it out. With the attached test I could reproduce the
 problem on IKVM as well. The attach Classpath patch fixing things,
 although past 0.20 I think we should refactor the security properties
 like I did with the system properties (i.e. introduce a
 gnu.classpath.SecurityProperties class).

Nice catch again. The use of VMStackWalker to see if the access is
directly by one of the bootstrap classes is a bit nasty (and kind of
breaks the model), so refactoring this would be nice. But please do
check this in for now.

 As you can see in the test, there is still the incorrect
 charsetProvider permission being checked. I'm looking into that one as
 well.

I guess this comes from having to register the default CharsetProvider
in gnu.java.nio.charset.Provider.provider() this is wrapped in a
AccessController.doPrivileged() since the constructor of
java.nio.charset.spi.CharsetProvider does an explicit security check.

Maybe we can again special case that security check by doing a
this.getClass().getClassLoader() == null?
Hmmm, no, that doesn't work since getClassLoader() will trigger a
security check. Nasty...

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


RE: SecurityManager troubles (and the release)

2006-01-13 Thread Mark Wielaard
On Fri, 2006-01-13 at 08:48 +0100, Mark Wielaard wrote:
 Maybe we can again special case that security check by doing a
 this.getClass().getClassLoader() == null?
 Hmmm, no, that doesn't work since getClassLoader() will trigger a
 security check. Nasty...

I see you solved this by just doing an instanceof on the bootstrap
providers. Much easier :) Thanks.

With this issue out of the way and most of the tests giving green lights
I am now going into release mode. Which just means I will do the
following and then push out 0.20 unless someone screams hard enough :)

- Do a last mauve run and some application testing.
- Write the NEWS entries.
- Set version number to 0.20.
- Do a last make distcheck, generate documentation.
- Tag the CVS tree (classpath-0_20-release)
- Merge last changes from head to generics-branch.
- Do a quick smoke test of generics
  (make distcheck, launch eclipse, write generic-hello-world, run it)
- Tag the generics tree (generics-0_20-release)
- upload to ftp://ftp.gnu.org/gnu/classpath/
- Write announcement
- Announce!

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


tagged and ready

2006-01-13 Thread Mark Wielaard
Hi hackers,

The CVS tree has been tagged for both trunk and generics branch the
final make distcheck is running and will be uploaded in a minute to
ftp://ftp.gnu.org/gnu/classpath/

Official release announcement is in the works and will follow in a
couple of hours. But please feel free to go crazy again adding lots of
new coolness.

Thanks all,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


ANN: GNU Classpath 0.20 released

2006-01-13 Thread Mark Wielaard
, Completeness and
Correctness checking.  Various groups around GNU Classpath collaborate
on the free software Mauve test suite which contains around 36.000
core library tests.  Mauve has various modules for testing core class
library implementations, byte code verifiers, source to byte code and
native code compiler tests.  Mauve also contains the Wonka visual test
suite and the Jacks Compiler Killer Suite.
See for more information: http://www.sourceware.org/mauve/
This release passes 35534 out of 36255 Mauve core library tests.

Conformance reports for the included jaxp support can be found in the
doc/README.jaxp file.

GNU Classpath 0.20 can be downloaded from
ftp://ftp.gnu.org/pub/gnu/classpath/
or one of the ftp.gnu.org mirrors
http://www.gnu.org/order/ftp.html

File: classpath-0.20.tar.gz
MD5sum: 21e34b8e8acb4f7b31296bfaf4ad560a
SHA1sum: c1a38c6c6b67d8c8092cc6af6d86d8c99dad272a

File: classpath-0.20-generics.tar.gz (EXPERIMENTAL)
MD5sum: db3c235b1ea497d7d2e5852f167d2b31
SHA1sum: 3d5f5cdd3dc51651f8b2c3765e30454931f45419

New in release 0.20 (Jan 13, 2006)
(See the ChangeLog file for a full list of changes.)

* New StAX pull parser and SAX-over-StAX driver. Lots of DOM, SAX/StAX,
  XPath and XSLT improvements.  Support for XInclude and XML Base added.
  Conformance is now regularly tested against various test-suites at
  http://builder.classpath.org/xml/ See also doc/README.jaxp.

* Full beans XMLEncoder implementation.

* javax.sound.sampled implementation.

* javax.print.attribute and javax.print.event implementated.

* Lots of new datatransfer, print swing and swing.text work and optimization.

* Additional 1.5 support. Including new (separate) generic branch release.

* SecurityManager cleanups and start of review of all Permission checks
  (includes adding lots of new checks to the Mauve test-suite).

* Buildable on cygwin.

* Fully buildable as in-workspace library-plus-vm inside (native) Eclipse
  see http://developer.classpath.org/mediation/ClasspathHackingWithEclipse

* Full example that shows a real world CORBA and Free Swing implementation.
  See examples/gnu/classpath/examples/CORBA/swing/README.html

Runtime interface changes:

* New method VMStackWalker.getClassLoader() was added to avoid an infinite
  loop between getCallingClassLoader() and Class.getClassLoader().

* The included fdlibm implementation has seen several cleanups to handle
  new architectures and namespacing issues (in particular for ppc, darwin
  and non-C99 compilers). Please double check any arithmetic test against
  new platforms/runtimes.

* The gnu.java.net.Plain[Datagram]Socket implementations have been
  turned into VM reference classes with JNI/Posix implementations.

New/Untested/Disabled Features:

  The following new features are included, but not ready for
  production yet. They are explicitly disabled and not supported. But
  if you want to help with the development of these new features we
  are interested in feedback. You will have to explicitly enable them
  to try them out (and they will most likely contain bugs). If you are
  interested in any of these then please join the mailing-list and
  follow development in CVS.

* Cairo Gtk+ Graphics2D support, enabled by giving configure
  --enable-gtk-cairo.
* QT4 AWT peers, enable by giving configure --enable-qt-peer.

The following people helped with this release:

Andreas Tobler
  Qt-4.1 support
Andrew Haley
  Jar work and Jonas fixes
Andrew John Hughes
  1.5 generics language work
Anthony Balkissoon
  Free Swing work
Anthony Green
  Socket work
Archie Cobbs
  New VMStackWalker work and JCVM integration
Audrius Meskauskas
  Free CORBA work and various Free Swing fixes
Bryce McKinlay
  Jar fixes
Caolan McNamara
  Dom fixes and OpenOffice fixes
Casey Marshall
  Crypto work
Chris Burdess
  XML GNU JAXP work
Christian Thalinger
  Various fixes, 64bit work and Cacao integration
Dalibor Topic
  Build cleanups and Kaffe integration
David Daney
  libgcj integration
David Gilbert
  Free Swing work
Freebeans
  Mysaifu Windows CE port and bug reports
Fridjof Siebert
  Hashtable work
Gary Benson
  Securitymanager and Permission work
Guilhem Lavaux
  fdlibm cleanups, performance work and Kaffe integration
Ingo Proetel
  Various fixes
Ito Kazumitsu
  Regex, text and character conversion support
Jan Roehrich
  Datatransfer work
Jeroen Frijters
  SecurityManager, collections and IKVM integration
Joao Victor
  Free Swing Timer work
John Zigman
  SocketChannel testing
Keith Seitz
  JDWP work
Lillian Angel
  Free Swing work
Mark Wielaard
  Bug fixes, packaging and release management
Nicolas Geoffray
  1.5 Class Instrumentation work
Paul Jenner
  Installation and cygwin work
Petteri Raty
  Configuration and Gentoo integration work
Raif S. Naffah
  Security work and Eclipse integration
Riccardo Mottola
  Powerpc work
Robert Schuster
  XMLEncoder and beans work
Roman Kennke
  Free Swing and AWT work, VM interface
Roman Schnider
  AWT work
Sven de Marothy
  Print and GTK+ work
Thomas

Re: classpath-0.20.tar.gz and classpath-0.20-generics.tar.gz

2006-01-15 Thread Mark Wielaard
Hi Nerdy Geeks,

On Sun, 2006-01-15 at 06:07 +, nerdy geeks wrote:
 Both of the tarballs
 
 ftp://ftp.gnu.org/gnu/classpath/classpath-0.20.tar.gz
 ftp://ftp.gnu.org/gnu/classpath/classpath-0.20-generics.tar.gz
 
 appear to be flawed in the sense that there are several files
 of names matching *.java that are not contained in the directory
 tree archived in the tarball.  From the order of elements listed
 by 'tar tvzf', it appears these files may belong in the subdirectory
 
 classpath-0.20/examples/gnu/classpath/examples/CORBA/SimpleCommunication/communication
 
 or its counterpart in the 2nd tarball, as these subdirectories
 are listed immediately before the files and would otherwise be
 empty as extracted from their respective tarballs.

Maybe your tar version doesn't handle long path names?
It seems to work for me:

$ tar zxf classpath-0.20.tar.gz
$ cd classpath-0.20/examples/
$ ls gnu/classpath/examples/CORBA/SimpleCommunication/communication
DemoServant.java  StructureToReturnHolder.java
DemoTester.java   TreeNode.java
DirectTest.java   TreeNodeHelper.java
RequestTest.java  TreeNodeHolder.java
StructureToPass.java  WeThrowThisException.java
StructureToPassHelper.javaWeThrowThisExceptionHelper.java
StructureToPassHolder.java_DemoTesterImplBase.java
StructureToReturn.java_DemoTesterStub.java
StructureToReturnHelper.java

This is with tar (GNU tar) 1.15.1

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Updating Mauve tags

2006-01-15 Thread Mark Wielaard
Hi Roman,

On Sat, 2006-01-14 at 22:33 +0100, Roman Kennke wrote:
 (BTW: This is a Mauve topic, I CC the classpath list because the
 mauve-discuss list seems so dead).

Once upon a time there were lots of standard class library projects
(kaffe, gcj, classpath) and we started cooperating by sharing a test
suite. When most of these libraries merged together the test suite
became a bit more the gnu classpath testsuite, but there are still
independent users out there (although most of them are indeed pretty
quiet - acunia used it for wonka, hp used it for chai, ibm used it for
j9 and of course aicas uses it for jamaica, there are probably some
others out there that never publicly announced their usage of the test
suite.).

 I see that we have a concept of tags in Mauve. That is a collection of
 keys at the top of each test class. This way we can filter the tests.
 ATM we have tags for the JDK versions like JDK1.4 JDK1.3 and so on and a
 couple of other tags. However, it seems that they are not maintained in
 a usable way, so most people simply include every tag that they can
 think of (that is what's done in batch_run for example) to run all
 tests.

Why do you feel they aren't maintained in a usable way?
A test should mention the minimum version that it should work against.
And can mention newer versions for which the tests isn't valid anymore
(although I don't know of many examples of that). The README explains as
follows:

Tags must all appear on a single line beginning // Tags: .

Many files test functionality that has existed since JDK1.0.
The
corresponding line in the source:

// Tags: JDK1.0

Here is how you would tag something that first appeared in
JDK1.2:

// Tags: JDK1.2

Here is how you would tag something that was eliminated in
JDK1.2:

// Tags: JDK1.0 !JDK1.2

The idea behind this scheme is that it is undesirable to update
all
the files whenever we add a tag.  So instead most tags are
defined in terms of primitive tags, and then we note the
exceptions.

The reason the batch_run script lists all the tags is simply because it
wants to run all the tests.

 I would like to fix the tagging of the tests with regard to the JDK
 versions. And since the current reference is JDK1.5, I would naturally
 start with this one. What I propose to do is run all the tests under
 JDK1.5 and set the JDK1.5 tag for all tests that pass there. For all
 tests that FAIL and have the JDK1.5 tag set, this tag would have to be
 removed. Later I would like to do the same for JDK1.4 and JDK1.3. (I
 have no JDK1.2 JDK1.1 or JDK1.0 available, otherwise I would probably do
 the same for these).

It might be interesting to know what tests fail against which version of
the reference implementation, but the reference implementation does have
bugs, some of which aren't present in other implementations.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: classpath-0.20.tar.gz and classpath-0.20-generics.tar.gz

2006-01-15 Thread Mark Wielaard
On Sun, 2006-01-15 at 18:05 +0100, Mark Wielaard wrote:
 On Sun, 2006-01-15 at 06:07 +, nerdy geeks wrote:
  Both of the tarballs
  
  ftp://ftp.gnu.org/gnu/classpath/classpath-0.20.tar.gz
  ftp://ftp.gnu.org/gnu/classpath/classpath-0.20-generics.tar.gz
  
  appear to be flawed in the sense that there are several files
  of names matching *.java that are not contained in the directory
  tree archived in the tarball. [...]
 
 Maybe your tar version doesn't handle long path names?
 [works for me] with tar (GNU tar) 1.15.1

Just for the record. It seems an old GNU tar (1.11.2) was the problem.
GNU tar 1.13.25 (and higher) are confirmed to work fine for the long
path names.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: a crazy idea -- the Book

2006-01-15 Thread Mark Wielaard
Hi,

On Sun, 2006-01-15 at 09:38 +0100, Meskauskas Audrius wrote:
 Great idea, I think! If this idea would move ahead, I am ready to join 
 by writing sections about the javax.swing.text.html.parser,  javax.rmi 
 and org.omg. package groups.  We maybe can divide chapters.  I think, it 
 would be good to have the printed book and not the web site content.

I also think this is a great idea. We do have nice documentation for
some parts of the standard library, but we don't have anything
resembling a true manual for people just wishing to learn how to use all
our stuff from scratch. There is the GCJ manual, but it is super light
on details: http://gcc.gnu.org/onlinedocs/gcj

 Printing the book would probably require the initial money investment. 
 This probably can be solved at least in the two ways:
 1. The FSF pays for printing of this book and then gets the profit from 
 selling it.

There is GNU Press http://www.gnupress.org/
If there is someone willing to coordinate (anybody with technical
writing experience?) the effort we should contact them and ask for help.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Updating Mauve tags

2006-01-16 Thread Mark Wielaard
Hi Roman,

On Mon, 2006-01-16 at 00:59 +0100, Roman Kennke wrote:
 The problem that I am seeing is when a test that is written to PASS
 under 1.4 fails under 1.5. There are lots of those tests in the
 testsuite for the javax.swing package.

To be honest, I would just remove those tests and concentrate on the 1.5
ones.

 So my plan would have been to tag
 all tests that pass under JDK1.5 with the 1.5 tag and those that don't
 only with JDK1.4 or whatever is ok. Since the tags are not meant to be
 used that way, maybe we can do it different. Could we extend the
 choose-classes script to detect !JDK1.x tags in the tag header of java
 source files and don't include the test in a JDK1.x test run?

I always thought it already worked that way (see the README), so if it
doesn't and you can make it actually do that then that would be great.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Fosdem discussions (Was: Importing GNU Classpath 0.20)

2006-01-18 Thread Mark Wielaard
Hi (CC classpath list),

In response to the importing of 0.20 into GCC, Tom, Jeroen and I had the
following small exchange:

On Wed, 2006-01-18 at 08:26 +0100, Jeroen Frijters wrote:
 Mark Wielaard wrote:
  On Tue, 2006-01-17 at 09:32 -0700, Tom Tromey wrote:
Mark == Mark Wielaard [EMAIL PROTECTED] writes:
   
   Mark But libgcj doesn't have a proper VMStackWalker class
   Mark so we cannot use those (this seems the thing that leads
   Mark to most of the libgcj/classpath divergence btw).
   
   Yeah... a while back Jeroen and I talked briefly about this, but we
   forgot to get back to it.
  
  I wish I could help here, but my own suggestion of having a class
  parameter for VMStackWalker.getCallingX() was rejected and I 
  don't know of an easy and reliable way to implement it without that.
 
 Maybe we will be able to work something out during Fosdem?

This is one of the topics that I would like to discuss during the last
part of our Fosdem meeting (Feb 25/26, Brussels):

 http://www.gnu.org/software/classpath/events/fosdem06.html

Sunday from 14:00 to 17:30 - The Future
Interactive technical hacker discussions on how to integrate the
projects more and move forward in the next year. 

State of the world, beyond japi Mark Wielaard, GNU Classpath
Maintainer 

After a short overview of the various free stacks, libraries,
compilers, tools and runtimes this session is mostly open
discussion about what work remains to be done and how to
integrate the various efforts better. Ideas for work items
welcome. 

The extra work items I have now are:

- Who is working on what?
  Quick round where everybody tells what their personal, group,
  organization/company work items are for the immediate and long
  term future/next year.
- Deployment: distribution and packaging for GNU/Linux distros.
  Fedora just went through a round of, what looked from the outside a
  bit painful, process of deploying lots of new packages based on GNU
  Classpath and gcj for FC5. Debian is currently adding a lot of
  packages (moving from contrib to main). Since both Debian and Fedora
  hackers are attending it would be good to exchange success and failure
  stories. Where can we as upstream help making deployment easier?
- VM integration and interfacing.
  There have been a couple of additions and changes this year
  (net/socket, instrumentation) and cleanups like the VMStackWalker.
  Also kaffe has moved much more closer to using GNU Classpath out of
  the box. But both gcj and kaffe still maintain divergences. I will go
  over the vm integration guide (and make sure it is up to date) and ask
  whether or not what we currently have makes sense.

Ideas for more things to discuss are of course welcome. As are
spontaneous monologues on what people think is important to concentrate
on for the next year.

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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Classpath 0.20 successfully built with Cygwin

2006-01-19 Thread Mark Wielaard
Hi Enrico,

On Thu, 2006-01-19 at 16:55 +0100, Enrico Migliore wrote:
 P.S.
 During the build phase gcc generates some C and some Java
 warnings, we might want remove in the future
 
 Patches for the C  java warnings would be very welcome, indeed.
 If you've got some time to look over the warning for the obvious 
 simple fixes, please put them in the bug tracker.
 
 I'll redirect the make output on a text file in order for me to look 
 over the warnings and
 I'll let you know what kind of warning the compiler issues.

Thanks a lot for doing this. Note that we try to have warning free
compiles (at least the C source on GNU/Linux, unfortunately the java
source cannot be 100% warning free). If you configure with
--enable-Werror the compilation of that native C source will stop on the
first warning message.

If other people could report any issues on non-standard platforms with
--enable-Werror that would be appreciated since a compile warning often
points out some subtle issue.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Classpath 0.20 successfully built with Cygwin

2006-01-19 Thread Mark Wielaard
Hi Christian,

On Thu, 2006-01-19 at 18:46 +0100, Christian Thalinger wrote:
 Cool!  But have problems with jikes:
 
 /home/twisti/bin/jikes +Pno-switchcheck +Pno-shadow +F  -bootclasspath
 '' -extdirs '' -sourcepath ''
 -classpath ../vm/reference:..:../external/w3c_dom:../external/sax:.:
 -d . @classes
 
 Found 1 system error and issued 1 warning:
 
 *** Semantic Warning: The file
 ../vm/reference:..:../external/w3c_dom:../external/sax:.: is not a
 valid directory.

Which jikes is this? I assume there are 2 versions of jikes a pure
cygwin version (that would know about using : as path separator) and a
dos version (that thinks ; is the path separator).

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Win CE port

2006-01-20 Thread Mark Wielaard
Hi Phillipe,

On Fri, 2006-01-20 at 15:03 +0100, Philippe Laporte wrote:
  It is our understanding that a GPL VM can't be freely redistributed 
 in a commercial product.

There should be no trouble at all freely redistributing such a thing in
a commercial product. Just make sure you distribute the source code for
it to your users. See http://www.fsf.org/licensing/essays/selling.html
And if you have more questions on the use of GPL covered products please
feel free to contact [EMAIL PROTECTED], they even provide a complaince
lab service for commercial entities. See
http://www.fsf.org/licensing/compliancelab.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
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Moving classpath mailinglists

2006-01-24 Thread Mark Wielaard
Hi all,

Since email to the lists still can take hours from time to time we have
decided to temporarily move some lists to developer.classpath.org till
the new GNU mailing-list server is online (hopefully in a month).

For now we only move the main classpath and classpath-patches lists
since these are the most interactive.

If we setup everything correctly you shouldn't notice much of this move.
The address you sent and (seem to) receive email from is still
[EMAIL PROTECTED], it just get routed through our own
developer.classpath.org machine (mailman administration and archives
will also move there for now). We hope to do the actual move at the end
of the/my day (19:00 CET == 18:00 UTC == 1:00 PM Boston). I'll sent
another email when the move is done. It should all be very transparent,
so please feel free keep sending emails in the meantime to the lists.

If you have any trouble after the move please contact me (or Jim, Tom
and Michael who also help administration of the developer.classpath.org
machine).

Cheers,

Mark

P.S. lists.gnu.org seems to have been listed in spamcop again for a
brief time (please don't use this RBL it seems very bogus) and we seem
to get a lot of bounces at the moment and automatic unsubscribes by
mailman because of this. I have a list of subscribers just before this
seemed to have happened so I will reinstate all subscriptions during the
move. 


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Aicas again

2006-01-24 Thread Mark Wielaard
Hi,

On Tue, 2006-01-24 at 10:53 +0100, Roman Kennke wrote:
  But in general, I do not appreciate what Aicas has been doing nor do  
  I find it valuable. All I see this work doing is making Classpath's  
  native implementation of things less and less maintainable, with a  
  benefit that is utterly unclear to me.
 
  I vote that they stop changing the native libraries of Classpath  
  immediately,
 
 Aye. We will do so. Please feel free to revert the native code to the
 state of the 0.20 release.
 
 I and Aicas really don't want to discuss all this again. This was an
 attempt to improve the situation a bit by providing the posix layer,
 which was worked out with respect to suggestions that were made in the
 last discussion about that one year ago. All this costs a *lot* of time
 and if that is not valuable to Classpath we can plug ourselves out and
 do our thing on the VM interface level.

BTW, I do see a benefit for non-posix-like systems. And I would very
much like to have something next to a clean autoconfiscated reference
implementation (for Posix like systems, GNU/Linux, Solaris, Darwin,
*BSD, cygwin, etc). There main trouble I see is that you try to
represent the posix layer as another target-layer and that means a lot
of ugliness for no apparent benefit. If there was a good way to put the
target-layer next to the autoconfiscated/posix-layer that would be my
ideal solution. And I think with our VM-interface-classes that should
not be too hard.

Another reason for the somewhat hostile reception of some of the new
code is because you are really too sloppy testing your patches, it takes
people real time and energy to get their systems working again after you
changed things. You should try to never break a working setup of one of
the active hackers. At least ask whether people can try changes if you
are unsure it might break on someones system. Mistakes happen, and we
cannot support every configuration flawlessly all the time, but the main
platforms (GNU/Linux, *BSD, Darwin, etc) should keep working. Please do
try a little harder to not accidentally breaking other peoples setup and
I think people will be a lot more receptive to your changes.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Win CE port

2006-01-24 Thread Mark Wielaard
Hi Philippe,

On Tue, 2006-01-24 at 13:31 +0100, Philippe Laporte wrote:
  Thanks for the answers.
 
 Yes, I mean rather Java VMs as seen as belonging to seperate categories 
 according to their licensing requirements.
 
 Yet, the information you provide seems to be in contraditction somewhat 
 with what they have at
 http://sablevm.org/wiki/License_FAQ

As said before GNU Classpath itself doesn't come with a runtime at this
time. GNU does provide one through GCC (libgcj/gij) and that one comes
under the same distribution terms as GNU Classpath itself (GPL +
Exception). If you have legal questions about that then please do
contact [EMAIL PROTECTED] since this really is the technical
mailing-list.

If you have questions about non-GNU, GPL-covered runtimes then it is
best to contact the copyright holders of those runtimes to ask for their
opinions. (BTW. Random pages on the interweb explaining the policies of
some rival runtime are not the most reliable information source...)

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Moving the mailinglists

2006-01-24 Thread Mark Wielaard
First post!

We are currently moving the mailinglists to developer.classpath.org.
In a moment we will switch the main address classpath@gnu.org to this
new machine.

Please keep using the old address (classpath@gnu.org), it will work and
as soon as the new FSF GNU mailing-list server is operational we will
want to switch back.

Apologies to those of you who had digest subscriptions, they have
automagically been turned into normal subscriptions. Please see the
mailman pages to change your preferences:
http://developer.classpath.org/mailman/listinfo/classpath

Now going to pull the switch on the old address/list.
Keep your fingers crossed.

classpath-patches will also move in a moment.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://developer.classpath.org/mailman/listinfo/classpath


Re: Classpath and java.util.concurrent

2006-01-25 Thread Mark Wielaard
Hi Tom,

On Tue, 2006-01-24 at 11:15 -0700, Tom Tromey wrote:
 One idea would be to check it in on a pristine branch (like cvs
 import, but we probably don't want to use that in this case) and then
 merge it over the generics branch and clean it up there.
 
 I would suggest putting the code in external/, e.g., external/jsr166.
 
 I think it would make sense to import it and get it on the branch
 before hooking it into the build.  That way, fixing it up to work in
 Classpath won't have to be a solo effort.
 
 Comments?

Seems like a nice plan. But please put down precisely how/where the
pristine branch comes from and how you sanitize it to only include the
public domain bits from the jsr166 group. Then we sent that description
to FSF-legal and to Doug so we have a clear record where the original
source comes from. And we should probably also send it to Doug so the
jsr166 group knows how their users/downstream depend on their work (it
is probably a similar process the backport project goes through
http://www.mathcs.emory.edu/dcl/util/backport-util-concurrent/).
It would also be good to then have a simple way/description of how to
get a diff between this pristine branch and what what we will have in
external/jsr166 so it is easy to forward any patches upstream again.

Cheers,

Mark


signature.asc
Description: This is a digitally signed message part
___
Classpath mailing list
Classpath@gnu.org
http://developer.classpath.org/mailman/listinfo/classpath


Re: Moving classpath mailinglists

2006-01-27 Thread Mark Wielaard
Hi Norman,

On Fri, 2006-01-27 at 08:59 +0100, Norman Hendrich wrote:
 it seems that the mailing list archives for classpath and -patches
 are not updated anymore since moving the lists.
 
 http://lists.gnu.org/archive/html/classpath/ stops at 2006.01.24.
 Is there another location to access the archives?

Yes there is:
http://developer.classpath.org/pipermail/classpath/
http://developer.classpath.org/pipermail/classpath-patches/

I hope that we won't have the lists moved for too long and that when the
new FSF gnu-list-server comes online we will move the archives back.

There are also backup archives at:

http://dir.gmane.org/gmane.comp.java.classpath.devel
http://dir.gmane.org/gmane.comp.java.classpath.patches

http://www.mail-archive.com/classpath@gnu.org/
http://www.mail-archive.com/classpath-patches@gnu.org/

http://www.nabble.com/Gnu---Classpath-f1524.html

Cheers,

Mark


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


Re: New native layer

2006-01-29 Thread Mark Wielaard
Hi,

On Sat, 2006-01-28 at 17:02 -0800, Casey Marshall wrote:
 On Jan 28, 2006, at 7:21 AM, Guilhem Lavaux wrote:
  I thought to have been already clear about that in the past (and  
  with no answers !).
 
 Sorry, I meant to reply about what you were proposing, but forgot :-)

Yeah, sorry. We all need little reminders from time to time. But showing
up with real code does help getting replies :)

 What you're working on seems a bit better than the target layer  
 stuff, in that you have real functions that the compiler/debugger can  
 tell you about, if there's an error.

Agreed, it is definitely better then what we have now with the macros.

 I don't, however, entirely see  
 the point of another funcall to wrap the syscalls in. It seems to me  
 as though efforts like this are trying to re-use the bits of JNI code  
 that wrap syscalls in the native parts of VM* classes, and not much  
 else.

I do see some value because it makes it clear where the JNI part ends
and where the platform specific part starts. But I am not sure putting
all platform specific parts in separate files is always an improvement
since most of it is actually pretty small and most of it seems not to be
that different between platforms. Adding separate functions for things
that might be different or that need VM specific hooks/callbacks is good
though. I would just hate to see it overdone for small things that could
just as well be in the same file or even function.

 In my opinion, time would be better spent:
 
- Writing utility functions that make JNI easier to deal with.

That is what JCL and NSA were for (native/jni/classpath). They were
supposed to be safe wrappers for some common things like throwing
exceptions, conversion of jstrings and cstrings and generic RawData
support that hides whether the platform is 32 or 64 bits. But those
functions were never really worked out much, nor are they used very
consistently in all our JNI code at the moment.

- Writing concise, portable (in the realm of POSIXy systems, at  
 least) native implementations of VM* classes that require native  
 support.

Through autoconf and replacement functions where needed. That is how
libgcj (and kaffe) do it.

  * if we want something which is quite portable (but maybe not as  
  portable as aicas portability layer) we must ensure some level of  
  abstraction to hide how syscalls are really used. That way if we  
  have to  call different things in the OS (e.g. for more exotic  
  platforms like windows) or to use the syscalls differently we will  
  not be completely stuck by tons of autoconf code in the common VM  
  layer.
 
 It seems like a lot of the argument for this kind of native layer is  
 we can port to Windows/some exotic platform, but frankly, I don't  
 see it. Windows (in my uninformed opinion ;-) is probably wildly  
 different enough such that writing a win32 `cpio_read' isn't much  
 less work than writing a win32  
 `Java_gnu_java_nio_channels_FileChannelImpl_read__.' And since any  
 port like this is (AFAIK) merely hypothetical, I don't see the value.

libgcj has a somewhat separate Windows implementation of some platform
native code (see the nat*Win32.cc files in gnu/java/nio, gnu/java/net,
java/lang and java/net in gcc/libjava). And they also support cygwin and
mingw to a point (although I don't know whether the Posix or Win32
native implementation is used by either the cygwin or mingw target). All
this can/should of course be wrapped behind our VMClass interface layer
since that also helps making our library JNI/CNI/.NET/Oberon/etc
agnostic.

 I don't mind this proposal, and I think you should go ahead with it.  
 I still have my own opinions about how to write Classpath's native  
 library, so I may try my own experiment in another branch (unless, of  
 course, no-one really agrees with me, in which case I will just stop  
 critiquing other people's code).

I think I agree with Casey. Please go ahead with your work Guilhem. We
will try to be constructive in our criticism. Actually doing the work
and providing patches is a very good way to proof your point that this
is needed and makes things cleaner. Thanks for working on this.

Cheers,

Mark


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


Re: Missing doPrivileged() in VMProcess?

2006-01-29 Thread Mark Wielaard
On Fri, 2006-01-27 at 13:50 +, Gary Benson wrote:
 Andrew Haley wrote:
  Gary Benson writes:
   Hi all,
   
   Each time you execute a file with Runtime.exec() a VMProcess
   is created.  The first time one of these is created it creates
   a thread and calls its setDaemon() method which (eventually)
   checks RuntimePermission(modifyThread).
   
   I guess there should be a doPrivileged() in here somewhere, but
   where?
  
  I guess I don't understand the real problem.  Would it not make
  sense simply to wrap the
  
  if (processThread == null)
{
  processThread = new ProcessThread();
  processThread.setDaemon(true);
  processThread.start();
}
  
  in a doPrivileged ?
 
 That's where I was thinking.  Is there (or should there be) something
 that protects these VM* classes from being used by non-Classpath code?

And that seems indeed the right place to add the doPriviliged() block.
VM* classes are protected from being used directly by non-Classpath
code because they are package private. They should only be called after
the public (non-VM) code has done the appropriate runtime checks. If
that is done correctly then any (reference) code in the VMClass that
needs any other permissions (like in this case) needs to do that inside
a PrivilegedAction.

Cheers,

Mark


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


Re: Crypto/Security component in Bugzilla

2006-02-01 Thread Mark Wielaard
Hi Casey,

On Wed, 2006-02-01 at 13:00 -0800, Casey Marshall wrote:
 It's just that crypto/ssl is a large part of  
 Classpath now, so it makes sense that it have it's own component (and  
 bugs!).

You got it! There is a new 'crypto' component for the 'classpath'
product now with you as default owner. But feel free to reassign any
bugs reported against it to others after initial analysis.

  And maybe a security keyword that describes
  direct security issues?
 
  For security right now we have a meta-bug which depends on all the
  security issues -- PR 13603.  This is a bit weird since this
  predates classpath using bugzilla, and is filed against gcj.
 
  I don't know the pros and cons of meta-bugs versus keywords.  I'm
  fine with whatever works.

Maybe Andrew (one of the gcc bug-masters) can advise us on when to add a
new keyword and when to use meta-bugs. How do other projects handle
security issues/bug reports in their issue trackers?

Cheers,

Mark


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


Re: Crypto/Security component in Bugzilla

2006-02-02 Thread Mark Wielaard
On Wed, 2006-02-01 at 20:01 -0500, Andrew Pinski wrote:
 On Feb 1, 2006, at 7:52 PM, Tom Tromey wrote:
  I thought this question was more about security in the sense of
  bugs we know of in our security code, not security flaws requiring
  a quick turnaround.
 
 Likewise.  After reading Casey's email that Mark responded to.

In that case it seems we don't need a keyword or meta-bug but just a new
'security' component covering java.security.* (Permissions, Policies,
SecurityManager)?

Cheers,

Mark


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


Re: GNU classpath contribution question

2006-02-02 Thread Mark Wielaard
Hi Ken,

On Wed, 2006-02-01 at 16:09 -0500, Ken Larson wrote:
 System.out.println(FileFormat.BINARY) and run it against Sun's 
 implementation.  I find out that the value is 1, and I put that in my 
 implementation.
 
 Is this legit for the purposes of contribuing to classpath?

Normally public constants are listed in the public documentation.
Otherwise you can look them up in the O'Reilly or Addison-Wesley books.
Checking constants to make sure different implementations use the same
public interface is fine. In general public user visible constants like
this should be similar to make us more compatible with other
implementations (especially since constants are embedded into the .class
file when compiling sources) so programs work as is with our
implementation. You can also add a Mauve test to make sure we stay
compatible.

Cheers,

Mark


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


GNU Classpath and Friends Fosdem meeting (Feb 25/26, Brussels)

2006-02-03 Thread Mark Wielaard
Hi all,

The official program is ready and there is a wiki page for coordinating
the meeting at http://developer.classpath.org/mediation/Fosdem2006
Please add yourself if you will come and please do make suggestions for
the open sessions.

The full schedule is:

  Saturday 13:10 - 13:50
  - Putting the 'Free' into JFreeChart
Dave Gilbert, JFreeChart Project Leader

A review of the efforts to make JFreeChart work with GNU
Classpath-based runtimes, including a brief history, a demonstration
of the current state (using the java bindings for Cairo), and an
overview of the work that remains to be done.

  Saturday 14:10 - 14:50
  - Using Eclipse for GNU Classpath development
Tom Tromey, GCJ Hacker

Learn how to setup a fully working development environment based
on GNU Classpath in Eclipse that can be used to bootstrap the full
free toolchain (and can be used to run Eclipse itself) in just 10
minutes.

  Saturday 15:00 - till we are kicked out
  - Show your App/Hack your App! - Open Session

Open session for everybody wanting to show their applications
working on a free stack and for those people wanting to help out
getting more applications to work out of the box.

  Sunday 09:10 - 09:50
  - Free Swing, past, present and future
Roman Kennke, GNU Classpath Hacker

An overview of that state of Free Swing one year ago, what has been
done in the meantime, what still must be done and which applications
work now.

  Sunday 10:10 - 10:50
  - The Free implementation of CORBA standard
Dr Audrius Meskauskas, GNU Classpath Hacker

Some famous software producers criticize the Free software for the
insufficient support of interoperability between applications. The
CORBA standard, proposed by the Object Management Group, belongs to
the most popular and widely used standards for solving the task of 
the interoperable (cross language and cross platform)
communications. The formal/04-03-12, where the standard is
described, allows to implement and use it without restrictions.

For our CORBA implementation we needed:

1. Free, without classes with restricted license. 
2. Fully workable, interoperable and pass tests, recognized by
   the CORBA user community as serious (we needed to find a well
   known Free testing suite).
3. Properly commented, being ready for the long life in the Free
   world.
4. No pressure to use the outdated approaches.
   CORBA 3.0.3 and jdk 1.5.
5. The trademark - neutral abbreviation for naming the Free 
   applications that use this package. The abbreviation GIOP is
   suggested, as it is not a registered mark.

To reach these goals, we have chosen for implementing a clean room
implementation, using the published standard specifications only.
During the recent year of the GNU Classpath development, this goal
is in large degree achieved. The important directions of future
development could be providing features that are outside the scope
of the both CORBA standard and Sun API, but included in the near all
proprietary implementations (SSH, HTTP and other bridges, get rid of
rmic code generator for RMI/IIOP, fault tolerant behavior, reduced
the footprint and others).

  Sunday 11:10 - 11:50
  - The JamVM runtime
Robert Lougher, JamVM Designer

An overview of the JamVM virtual machine, with comparisons to other
GNU Classpath runtimes, and a section on the VM interface.

  Sunday 12:10 - 12:50
  - Integrating Vmgen-based interpreters
Christian Thalinger, CACAO Hacker

Vmgen is a tool for writing efficient interpreters. The Cacao
runtime recently added a Vmgen based interpreter in addition to
the JIT engine. Christian Thalinger works at the Institute of
Computer Languages at the Vienna University of Technology in the
Christian Doppler Laboratory: Compilation Techniques for Embedded
Processors.  He is working on the CACAO Java Virtual Machine,
currently working on an adaptive optimizations JIT, and is writing
his Ph.D. thesis.

  Sunday 14:00 - till we are kicked out
  - The Future - State of the world, beyond japi
Mark Wielaard, GNU Classpath Maintainer - Open Session

  After a short overview of the various free stacks, libraries,
  compilers, tools and runtimes this session is mostly open discussion
  about what work remains to be done and how to integrate the various
  efforts better. Ideas for work items welcome.
  - Who is working on what?
  - Deployment: distribution and packaging for GNU/Linux distros.
  - VM integration and interfacing.
  - Priority list for new development.

There is one change from the earlier schedule. Unfortunately Wayne
Beaton had a conflicting presentation at the other side of the planet
and couldn't make it. If you do want to meet him, but couldn't come to
Brussels then you can see him in Raleigh/Durham:
https://www.regonline.com

<    5   6   7   8   9   10   11   12   13   14   >