Re: [cp-patches] RFC: add generated serialUID

2006-03-09 Thread Mark Wielaard
Hi Arnaud,

On Wed, 2006-03-08 at 13:46 +0100, Arnaud Vandyck wrote:
 While playing with Eclipse and Classpath, I added some generated
 serialUID (warnings: 3586 - 3543). Here is the changelog:
 
 2006-03-08  Arnaud Vandyck  [EMAIL PROTECTED]
 
   * examples/gnu/classpath/examples/awt/Demo.java,
   examples/gnu/classpath/examples/datatransfer/Demo.java,
   examples/gnu/classpath/examples/jawt/DemoJAWT.java,
   examples/gnu/classpath/examples/midi/Demo.java,
   examples/gnu/classpath/examples/swing/TextFieldDemo.java,
   examples/gnu/classpath/examples/swing/TextAreaDemo.java,
   examples/gnu/classpath/examples/swing/Demo.java,
   examples/gnu/classpath/examples/swing/TableDemo.java,
   examples/gnu/classpath/examples/swing/SpinnerDemo.java,
   examples/gnu/classpath/examples/swing/SliderDemo.java,
   examples/gnu/classpath/examples/swing/ScrollBarDemo.java,
   examples/gnu/classpath/examples/swing/ProgressBarDemo.java,
   examples/gnu/classpath/examples/swing/MiniDemo.java,
   examples/gnu/classpath/examples/swing/GNULookAndFeel.java,
   examples/gnu/classpath/examples/swing/FileChooserDemo.java,
   examples/gnu/classpath/examples/swing/ComboBoxDemo.java,
   examples/gnu/classpath/examples/swing/ButtonDemo.java:
   added generated (by Eclipse) serial version UID.

I am not sure this actually helps much. This makes the examples
serializable between different versions (since they now have a fixed
serialVersionUID). But that means we should track the serialization
representation between versions and I am not sure we actually want that.

Cheers,

Mark


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


Re: [cp-patches] RFC: add generated serialUID

2006-03-09 Thread Arnaud Vandyck
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Mark Wielaard wrote:
 Hi Arnaud,

Hi Mark,

 On Wed, 2006-03-08 at 13:46 +0100, Arnaud Vandyck wrote:
 
While playing with Eclipse and Classpath, I added some generated
serialUID (warnings: 3586 - 3543). Here is the changelog:

2006-03-08  Arnaud Vandyck  [EMAIL PROTECTED]

  * examples/gnu/classpath/examples/awt/Demo.java,
[...]
  added generated (by Eclipse) serial version UID.
 
 I am not sure this actually helps much. This makes the examples
 serializable between different versions (since they now have a fixed
 serialVersionUID). But that means we should track the serialization
 representation between versions and I am not sure we actually want that.

I did it as a test on the Demo classes. But I can:
1° make a (very huge) patch to add serialUID to all the classes that
need it;

2° make a one line patch to the .classpath Eclipse configuration file so
Eclipse will just ignore the +-500 serialUID warnings.

Cheers,

- --
 Arnaud Vandyck
  ,= ,-_-. =.
 ((_/)o o(\_))
  `-'(. .)`-'
  \_/
Java Trap: http://www.gnu.org/philosophy/java-trap.html
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFEEEH84vzFZu62tMIRAnElAJ45vJIAUZGp47y4HSdrrqoORsK81ACgk/kE
50sZ6x+5UVQsyYW2uSySfTs=
=/ERq
-END PGP SIGNATURE-



Re: [cp-patches] RFC: add generated serialUID

2006-03-09 Thread Tom Tromey
 Arnaud == Arnaud Vandyck [EMAIL PROTECTED] writes:

Arnaud 2° make a one line patch to the .classpath Eclipse
Arnaud configuration file so Eclipse will just ignore the +-500
Arnaud serialUID warnings.

We want to see those warnings for any user-visible class.  These
represent actual or potential bugs.  But before adding the fields, we
need to check that we actually are serialization-compatible.  I
usually do this by looking at the serialized form online and comparing
against the class in question.

For private classes, implementation classes, or classes we import,
the serialVersionUID warnings aren't very useful.  Also, as a special
case, we don't care much about these for Swing, either, as Swing is
explicitly not serializable.

I don't know of a way to teach this to Eclipse.  Maybe we ought to
file a bug report.

Tom



[cp-patches] RFC: add generated serialUID

2006-03-08 Thread Arnaud Vandyck
Hi all,

While playing with Eclipse and Classpath, I added some generated
serialUID (warnings: 3586 - 3543). Here is the changelog:

2006-03-08  Arnaud Vandyck  [EMAIL PROTECTED]

* examples/gnu/classpath/examples/awt/Demo.java,
examples/gnu/classpath/examples/datatransfer/Demo.java,
examples/gnu/classpath/examples/jawt/DemoJAWT.java,
examples/gnu/classpath/examples/midi/Demo.java,
examples/gnu/classpath/examples/swing/TextFieldDemo.java,
examples/gnu/classpath/examples/swing/TextAreaDemo.java,
examples/gnu/classpath/examples/swing/Demo.java,
examples/gnu/classpath/examples/swing/TableDemo.java,
examples/gnu/classpath/examples/swing/SpinnerDemo.java,
examples/gnu/classpath/examples/swing/SliderDemo.java,
examples/gnu/classpath/examples/swing/ScrollBarDemo.java,
examples/gnu/classpath/examples/swing/ProgressBarDemo.java,
examples/gnu/classpath/examples/swing/MiniDemo.java,
examples/gnu/classpath/examples/swing/GNULookAndFeel.java,
examples/gnu/classpath/examples/swing/FileChooserDemo.java,
examples/gnu/classpath/examples/swing/ComboBoxDemo.java,
examples/gnu/classpath/examples/swing/ButtonDemo.java:
added generated (by Eclipse) serial version UID.

Do I do this on other classes?

-- 
 Arnaud Vandyck
  ,= ,-_-. =.
 ((_/)o o(\_))
  `-'(. .)`-'
  \_/
Java Trap: http://www.gnu.org/philosophy/java-trap.html
Index: ChangeLog
===
RCS file: /sources/classpath/classpath/ChangeLog,v
retrieving revision 1.6654
diff -u -r1.6654 ChangeLog
--- ChangeLog	8 Mar 2006 08:06:18 -	1.6654
+++ ChangeLog	8 Mar 2006 12:43:21 -
@@ -1,3 +1,24 @@
+2006-03-08  Arnaud Vandyck  [EMAIL PROTECTED]
+
+	* examples/gnu/classpath/examples/awt/Demo.java, 
+	examples/gnu/classpath/examples/datatransfer/Demo.java, 
+	examples/gnu/classpath/examples/jawt/DemoJAWT.java, 
+	examples/gnu/classpath/examples/midi/Demo.java, 
+	examples/gnu/classpath/examples/swing/TextFieldDemo.java, 
+	examples/gnu/classpath/examples/swing/TextAreaDemo.java, 
+	examples/gnu/classpath/examples/swing/Demo.java, 
+	examples/gnu/classpath/examples/swing/TableDemo.java, 
+	examples/gnu/classpath/examples/swing/SpinnerDemo.java, 
+	examples/gnu/classpath/examples/swing/SliderDemo.java, 
+	examples/gnu/classpath/examples/swing/ScrollBarDemo.java, 
+	examples/gnu/classpath/examples/swing/ProgressBarDemo.java, 
+	examples/gnu/classpath/examples/swing/MiniDemo.java, 
+	examples/gnu/classpath/examples/swing/GNULookAndFeel.java, 
+	examples/gnu/classpath/examples/swing/FileChooserDemo.java, 
+	examples/gnu/classpath/examples/swing/ComboBoxDemo.java, 
+	examples/gnu/classpath/examples/swing/ButtonDemo.java:
+	added generated (by Eclipse) serial version UID.
+
 2006-03-08  Michael Koch  [EMAIL PROTECTED]
 
 	* java/net/InetSocketAddress.java
Index: gnu/classpath/examples/awt/Demo.java
===
RCS file: /sources/classpath/classpath/examples/gnu/classpath/examples/awt/Demo.java,v
retrieving revision 1.4
diff -u -r1.4 Demo.java
--- gnu/classpath/examples/awt/Demo.java	13 Jul 2005 23:22:30 -	1.4
+++ gnu/classpath/examples/awt/Demo.java	8 Mar 2006 12:41:49 -
@@ -41,6 +41,8 @@
   
   static class PrettyPanel extends Panel
   {
+private static final long serialVersionUID = 3054931828195882771L;
+
 Insets myInsets;
 
 public PrettyPanel ()
@@ -85,6 +87,8 @@
 
   static class MainWindow extends PrettyFrame implements ActionListener 
   {
+private static final long serialVersionUID = - 5997452577015233740L;
+
 Button closeButton;
 
 Hashtable windows;
@@ -199,6 +203,8 @@
   
   static class ButtonsWindow extends SubFrame implements ActionListener
   {
+private static final long serialVersionUID = - 6924389825168515514L;
+
 Button b[] = new Button [9];
 
 public void init ()
@@ -257,6 +263,7 @@
   
   static class DialogWindow extends Dialog implements SubWindow
   {
+private static final long serialVersionUID = 4790577114506953621L;
 Label text;
 Frame parent;
 boolean initted = false;
@@ -348,6 +355,7 @@
   
   static class CursorsWindow extends SubFrame implements ItemListener
   {
+private static final long serialVersionUID = 3710112649320693411L;
 Choice cursorChoice;
 Canvas cursorCanvas;
 
@@ -375,7 +383,9 @@
   
   cursorCanvas = new Canvas () 
 	{ 
-	  public void paint (Graphics g) 
+private static final long serialVersionUID = - 4705111784504603742L;
+
+public void paint (Graphics g) 
 	  {
 	Dimension d = this.getSize();
 	g.setColor(Color.white);
@@ -413,6 +423,7 @@
   
   static class TextFieldWindow extends SubFrame implements ItemListener
   {
+private static final long serialVersionUID = 3711337364602449661L;
 Checkbox editable, visible, sensitive;
 TextField text;
 
@@