Hello Florian
Sorry for delay
Hi,
back from my holidays I finally found time to work the patch over. :-)
Great !
There is now one patch per package.
When compiling with
-Xlint -J-Xms80m -J-Xmx256m -Xlint:-serial -Xlint:-deprecation
-Xlint:-fallthrough -Xmaxwarns 1200
all patches together reduce the number of reported warnings from 1181 to
88.
I tried only to change things related to the warnings and not to change
any public or protected APIs in public or protected classes in this patch.
No new @author tags are added.
At many places I tried to add type parameters as meaningful as possible,
but with some cases I just used Object, if a more meaningful type
parameter was not so trivial. You might want to refactor this if needed.
(Though everything should work as it is.)
The basis of this patch is revision 254. Apply it at
openjdk/jdk/trunk/j2se/src.
This will be the basis to add generics support to the Swing framework
and I will try to further reduce the number of warnings once I started
with this task.
I'll look into it next week
Thanks for you work !
alexp
-Florian
Alexander Potochkin schrieb:
Hello Florian
Hi,
here's my first patch. When compiling with
-Xlint -J-Xms80m -J-Xmx256m -Xlint:-serial -Xlint:-deprecation
-Xlint:-fallthrough -Xmaxwarns 1200
this patch reduces the number of reported warnings from 1185 to 91.
This will be the basis to add generics support to the Swing framework
and I will try to further reduce the number of warnings once I
started with this task.
The basis of this patch is revision 250. Apply it at
openjdk/jdk/trunk/j2se/src.
I tried not to change any public or protected APIs in public or
protected classes in this patch.
At many places I tried to add type parameters as meaningful as
possible, but with some cases I just used Object, if a more
meaningful type parameter was not so trivial. You might want to
refactor this if needed. (Though everything should work as it is.)
Could you please to split your fix to several ones ?
It is difficult to review so big fixes
I'd suggest to make a fix for a package
We also usually don't mix two problems in one fix
so it is better to factor out removing warnings from existent code
to another fix
We also update the @author tag in a very rare occasion
when someone added a significant amount of code to a class
I also started a new project at java.net:
https://swing-generics.dev.java.net/ (pending approval)
Am I correct that with the licences of openjdk I am allowed to
publish the modified swing project in source, binary and javadoc form?
I hope you can do it, because I can't imagine it was not allowed by
the lisence
But since I am not a lawyer, probably someone else can confirm that ?
Thanks
alexp
**
-Florian
Alexander Potochkin schrieb:
Hello Florian
Hi,
I decided first to remove some warning for trivial cases, since
even if I compile with
-Xlint:-serial -Xlint:-deprecation -Xlint:-cast -Xlint:-fallthrough
-Xmaxwarns 1200
I get 977 warnings! And since most of them are [unckecked]
warnings, it's hard to see, if and where I introduce new
[unckecked] warnings, when adding generics.
You are right, unfortunately we have a lot of warnings in compile time
We should have paid more attention to this problem
Thanks
alexp
Please tell me if somebody else is working on the warnings removal,
too.
-Florian
Florian Brunner schrieb:
Hi Alecander!
Thanks for your help. I installed the basic environment and
started to work on this issue.
Note that the path at
https://openjdk.dev.java.net/source/browse/openjdk/
as well as at
https://openjdk.dev.java.net/servlets/ProjectSource
don't seem to be correct!
At
|https://openjdk.dev.java.net/svn/openjdk/trunk
there's only a www directory!
Instead I checked out
https://openjdk.dev.java.net/svn/openjdk/jdk/trunk/j2se/
Is this the correct path to work on the Swing project?
I'will post to this list again when there are more news or
questions arise.
-Florian
|Alexander Potochkin schrieb:
Hello Florian
Welcome to the swing-dev
The RFE #6179357 is definitely worth investigating
we was going to generify Swing for 1.6
but unfortunately didn't have enough time
Your fixes are welcome
Here is the information how to contribute:
http://openjdk.java.net/contribute/
For now the process is:
Become a contributor
download openJDK
make the fix
ask any related questions on this list
submit a patch
we'll assign a sponsor who we'll review your fix
and put it back when it is done
The whole process will be simplified when we complete moving to
Mercurial repository
For this RFE you don't need to file JSR
as you mentioned changes should as backward compatible as possible
but we'll need the request to the special committee which keeps
track of the Java public API, the sponsor will do it for you
Please note that we prefer to make the incremental fixes which
fix the particular problem, I mean, not to mix e.g. generifying
and optimization
in one fix but split it to two ones.
>I want my
> progress to be visible by the public. So what is the best
strategy? Work at
> openjdk.org? Work at SwingLabs? Start a new project at java.net?
The current process doesn't seem to provide much visibility for
the public. To make it visible I personally would do the
following things:
- start a project on java.net
(not sure it helps for this particular case)
- blog about your progress and discuss it with the community
(this is the best way to make your work visible)
Thanks
alexp
Hi,
I'm interessted in the RFE "6179357: Request interface
javax.swing.tree.TreeModel to have a generic type for nodes". Is
there already someone working on this issue? If not I would like
to help there.
I want to address following issues:
- add generics support to the Swing framework
- provide support for new language features like varargs
- provide better support for the collection framework
- optimize code where reasonable
Do you think this is a good idea? How probable will such a
change make its way to the "official" jdk?
I sent the signed SCA to Sun. So what would be the next steps? I
want my progress to be visible by the public. So what is the
best strategy? Work at openjdk.org? Work at SwingLabs? Start a
new project at java.net?
Should I work on a branch of openjdk? Or should I copy the
current revision to a new repository? What is the easiest/ best
way to get the source back to openjdk?
Is a JSR needed for such a change? Note: the suggested changes
should be backwards compatible (eg. thanks to the "raw type
feature" of generics), as far as I can see up to now. (The only
exception is of course reflection, which can always break if you
change an API).
Thanks for your help.
-Florian