GNU Classpath Linuxtag meeting minutes

2003-07-13 Thread Mark Wielaard
GNU Classpath meeting minutes
LinuxTag, 12 July 2003, Karlsruhe (Germany)

Present
- Dalibor Topic (Kaffe)
- Sascha Brawer (GNU Classpath)
- Mark Wielaard (GNU Classpath)
- Andy Wolter (Aicas)
- James Hunt (Aicas)
- Ingo Proetel (Aicas)

Sascha was the most organised and said someone should actually make
notes, so here they are. Some of the notes were made in the Biergarten
so take them with a grain of salt... I have surely forgotten something
important. And sometimes I couldn't clearly remember the context of my
notes. My applogies. If you were present and have more details please
follow up with clarifications and additions.

- Sascha has been working on font reading and rendering, see his very
  detailed architecture document, which describes all issues involved
  http://www.dandelis.ch/development/fonts/.

  Tim Tyler his public domain, pure java font rendering program was
  mentioned http://fonteditor.org/
  Adam Megacz of http://www.xwt.org/ also needs this
  http://gcc.gnu.org/ml/java/2003-07/msg00036.html.

- For the above and AWT/Swing in general the issue of
  accessing/mapping frame/display buffers came up multiple times. What
  interface should be defined for mapping these (java.nio JNI
  additions?).

- OpenGL seems to have all the 2D drawing primitives that you ever
  want and implementations are widely available.

- Aicas wanted to know who are interested in the Realtime specs being
  discussed in the OpenGroup and the jconsortium
  http://www.opengroup.org/rtforum/rt_java/
  http://www.jconsortium.org/ Thet were also looking for
  participants in an open European standards project (which name I
  forgot to write down).

- Aicas is working on some RMI fixups. During the discussion it came
  up that since object streams use serialization and serialization
  uses reflection, this only will work if you get all the details of
  reflection right. It was pointed out that reflection has some
  underspecified issues/bugs, for example see this note from Kissme
  (Class.getModifiers):

  // Arrays are always final and never an interface.
  // And also abstract (but that is actually a bug
  // - see JDC Bug: 4208179)
  // It matters for serial version UID calculations :{

  There was much complaining about the broken design of the RMI
  protocol. It was suggested to look at how RMI can work on IIOP which
  is cleaner.

- Sascha suggested to create a list of such issues and publish a list
  for GNU Classpath users/VM implementors of
  tricky/underspecified/buggy specs.

- Mark wants to extend the VM interface with more VMState package local
  final classes like to JRVM people just did for a couple of java.lang
  classes to make it easier to use GNU Classpath with non-JNI/Posix
  based VMs.

- The plan for character encodings is to move to the java.nio.charset
  interface. We already have required encodings for this. But GNU
  Classpath and gcj both still also have their old implementations
  (which are actually used in most places). gcj also has a libiconv
  provider (but not as java.nio.charset provider). A java.nio.charset
  libiconv provider would be nice to have for those systems that
  have that library.

- Mark and Dalibor wanted to name next month Mauvegustus and clean up
  Mauve (it still contains some bogus/broken tests) and import as much
  tests from the different projects that have non-standard core
  library tests so they can be more easily shared between the
  different projects.  Ingo dared Mark to create a Mauve plugin for
  Eclipse now that we have it running like the standard JUnit
  plugin. (The JUnit framework uses lots of reflection which we don't
  want to use for Mauve.) Other ideas were to create a standard JNI
  testsuite and maybe security issues/holes tests.

- Acias has property files which lists which class/method needs which
  other class/method. This is nice when you are use smart or static
  linking of classes.

- Kaffe has split up their library in different profiles (core, awt,
  xml, sound, rmi, etc) it would be nice if GNU Classpath also
  provided this. We could deliver different jar files.

- We need to update/document the state of each package. It is not
  really clear how much has been implemented, signature complete
  (japitools), tested (has mauve tests), how compliant with which
  spec, etc. packages/classes are. Problem is that we don't have
  gatekeepers anymore per package (we had this in the past, but
  developers on the project changed and the number of supported
  packages has actually exploded).

- The above is also important to show what people can do to help the
  project. We really need to setup a more visible task list then the
  current Savannah one with task people could do for the project which
  are annotated with how hard it would be it (simple - follow
  existing example, like image provider or new character encoding,
  medium - add something to an existing framework, like jar file
  verification for ZipFile, hard - add complete new package or
 

Notes on kaffe (GNU Classpath integration) todo items

2003-07-13 Thread Mark Wielaard
Hi,

Dalibor Topic from the Kaffe OpenVM project and me saw each other last
week when we went to the Libre Software Meeting. Attached are the (very
raw) notes I made on what things could be imported from GNU Classpath
into the kaffe library (and some other random notes). They might also be
interesting to the GNU Classpath hackers to see where/how the code ends
up in another free software project.

Cheers,

Mark
Notes LSM meeting, Friday Jul 11, 2003 (Dalibor Topic, Mark Wielaard)

=== Things that could be imported from GNU Classpath into kaffe ===

- Complete GNU Classpath Collection import.
  Importing AbstractMap makes some mauve tests fail.
 - Goal to run japitools.
 - And import even more classpath classes that depend on collection stuff.

- java.util.zip
  How to modularize to allow multiple implementations to coexist?
  (See what classes are different between classpath/gcj)
  Deflater/Inflater...
  Dalibor has still some outstanding bug reports against Classpath
  java.util.zip.
  - Goal automatically use pure java implementation if zlib isn't
 available. (This is currently already done for the BigInteger
 class, kaffe has a native implementation, but falls back to the
 non-native GNU Classpath version if the gmp library is not installed.)

- Serialization ObjectIn/OutputStreams.
  Completely different implementations kaffe/GNU Classpath
  Some Mauve failures with Classpath/gcj code.
  Some other/same failures with current kaffe code.
  See also Eclipse startup stream failures.
  - Goal Jython installer to run.
  - Eclipse installer without ObjectStream failures

- StackTraceElement stuff (pure java Throwable).  Mark has some
  code hacked up. It compiles... but crashes in spectacular ways.
  - Goal log4j (used by either JBOSS or Tomcat) uses XMLized stacktraces
 from StackTraceElements.

- Verifier and security manager checks
  - Classpath seems to have all the proper Permission checks in place.
(But has anybody every really used it? Probably not, because
 AccessController isn't really implemented.)
  - Jar verification/certification handling isn't implemented.
(Neither in Classpath or Kaffe.)
  - Policyfile processor (What to use for it?)
  - Goal savely run applets with appletviewer.

- NIO
  - Only java part in Classpath.
  - gcj has some native (CNI) implementations (not complete)
but JNI is completely stubs at the moment.
  - Talk to Michael Koch. Mark bought a book on NIO stuff and will
probably look at it soon.
  - Goal run Freenet!

=== Some random other stuff ===

- Security/Crypto - Choose default provider
  (kaffe, GNU Classpath and/or GNU Crypto).
  - FAQ combining kaffe and GNU Crypto
(provides javax.crypto and much more algorithms)

- Make gjdoc the default tool to generate API doc.
  - Problem, only really available in CVS, not current packaged version.

- javax.comm stuff
  - Kaffe has incomplete stubs
  - There is the rxtx (sp?) project which has been usable.
(Check kaffe mailinglist archives)
They have ported to lots of platforms
  - Wonka also has a implementation... (Status?)

- Swing (text)
  - Claspath has some implemented stuff, but large parts are just stubs.
  - Start simple with javax.swing.text.html parser stuff.
Some could get going with gnu jaxp giving it correct DTDs
(Dalibor his crazy idea).
Look at JTidy/HTMLTidy.
  - Goal make Appletviewer really parse parse.

- Bugs that poped up when Mark showed various things on his laptop.

  - -Xmx doesn't work (off by one bug), workaround use -mx.
Dalibor quickly hacked up a patch, but the current command line parsing
is broken...
  - gmp replacement configuration is broken when both tests fail.
  - tritonus install goes bad...___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath