 |
Where We Are With the JDK
Posted by ray_gans on January 24, 2006 at 01:58 PM | Comments (18)
Roadmap for Mustang
Sun began the Mustang project (Java SE 6) on java.net over a year ago when we started releasing weekly binary and source snapshots that included bug fixes and minor enhancements to Tiger (Java SE 5). Over time we've introduced major features described by new and existing JSRs that are part of the Mustang release. For those of you who have been watching the blogs, articles, JavaOne presentations and Mustang snapshots, you've seen these new features unfold.
Here is where we stand now with Mustang and Dolphin (Java SE 7):
- The draft Mustang feature set has been approved by the JSR-270 expert group. See Mark Reinhold's blog for more information.
- Sun currently plans to release a Mustang beta in early February.
- The Dolphin project is expected to be opened in spring 2006.
- Weekly Dolphin snapshots of source and binaries will be released in parallel with Mustang snapshots. New fixes put into Mustang will also be put into Dolphin.
- Sun will likely release a second Mustang beta in summer 2006.
- Mustang is planned to ship in autumn 2006.
- Mustang updates will be released every few months after Mustang ships. These updates will contain mostly bug fixes and performance enhancements (i.e., no API changes).
- Dolphin is scheduled to ship during calendar year 2008.
These are our current plans. They may change. Let me say that again, "The schedule may change..." but it's what we're working towards now. We will let you know more details as things move forward.
So why will Mustang slip to autumn?
We've recently decided to make changes to address some issues in sensitive areas of the codebase (e.g., the classloader) and want to be certain these changes won't break anyone's code. These changes will require significant work by Sun's engineering team. In addition, our top goal has always been to make Mustang the highest quality JDK release to date and the added time will provide us with an adequate period to run an exhaustive beta cycle, which will better ensure our ability to deliver: (1) quality and (2) compatibility of the release.
At this time, all the expected Mustang features are nearly complete. The next step is massive testing and targeted bug fixing on all levels (i.e., spec conformance, binary compatibility with prior releases, performance, robustness, etc.). It takes a long time and the efforts of people both inside and outside Sun to ensure the new features work properly and verify that we haven't broken anything in the process.
Sun's Java SE Quality organization has been in full gear for months and it will take many more months to prove the code is ready for final release. The developer community can provide tremendous assistance as well by testing existing applications against the snapshots and investigating new features -- then letting us know when problems are discovered.
The Mustang beta will be based on build 59 with some tweaks to clean up several bugs. This beta has been heavily tested so you may be more comfortable running your applications against it rather than a snapshot release (though to be honest, most of the latest snapshots have been very robust). However, the beta is missing some improvements that are included in more recent builds (which can be found on the Mustang changelog).
What does this mean for developer community fixes?
Sun still wants your bug reports, bug fixes and enhancement contributions. We are making a special effort to evaluate and include everything reasonable that we receive from the community. As time progresses, code changes (especially API changes) will become increasingly difficult to add to Mustang. For example, if a fix is risky or if it only solves part of a more general problem, we may need to defer it to a Mustang update release or to Dolphin.
Update releases generally address bugs or performance problems that were missed (or deemed too risky to fix) during beta. They are not "dot-dot" releases and don't include changes to the API. When it makes sense and testing resources are available, Sun may choose to back-port certain bugs fixed in new releases to updates of prior releases (for example, 3 bug fixes contributed by the community for Mustang were included in the latest Tiger update). For this reason, when we receive a minor fix late in the development cycle, it may be better to wait than take the risk of accidentally destabilizing code that is otherwise working well. Waiting a few months longer to more closely evaluate and test the impact of a proposed fix will in some cases be the most pragmatic way to incorporate (or reject) it.
So keep those fixes coming -- here's how and why. All contributions are appreciated and can really help to make Mustang a better release for everyone.
What about Dolphin?
We are just beginning to talk to vendors, developers, and end-users about Dolphin features. If you have any ideas, please post them to the Java SE forum on java.net (note that we've recently renamed the Mustang forum to the Java SE forum so the good ideas already expressed there won't be overlooked for Dolphin). Sun will make further announcements about this in the next few months.
The Dolphin project on https://dolphin.dev.java.net is currently being prepared to manage snapshot downloads and share other project information. Some things such as existing forums may be shared with the Mustang project and/or renamed to minimize confusion and unneeded duplication. We should be ready to release source and binaries for build #1 in spring 2006.
So where should developers focus their efforts? The Tiger project is the place for current stable release work and research; the Mustang project will have the role of pending release with opportunities for testing, bug fixing and additional research; and (when made available) the Dolphin project will be available for proposed cutting-edge development and enhancements.
So please stay tuned, we have several Mustang-related activities planned for the JDK Community during the next few months and hope you'll join with us to help finish off Mustang and get started on Dolphin!
Bookmark blog post: del.icio.us Digg DZone Furl Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment
-
Hi Ray,
Which changes have you decided to make to the classloader and its surroundings?
Posted by: lborupj on January 25, 2006 at 01:25 AM
-
I'd also be interested to know. Looks like it's having some side effects already... see the post Mustang build 68 breaks Foxtrot? on javadesktop's forums...
Posted by: chris_e_brown on January 25, 2006 at 01:50 AM
-
Oh I hope the bug with Generics (6372782) would get fixed in Mustang in time as well
The bug currently (& completely) blocks the development of my project and I sincerely do not want to say to others that it can only work with a Java that will ship in 2008....
Posted by: alexlamsl on January 25, 2006 at 09:38 AM
-
At the end of October 2005 I submitted a bug fix for bug #6212146 and got and a week like it appeared ont he JDK Community Contribution list. Beside the acknoledgement of the submission I did not hear from Sun or the Mustang team anymore and the JDK Community Contribution list still lists the submission as accepted.
I somehow get the feeling that the cummunity contribution are not handled with the same priority as Sun's internal contribution but that is just me.
That said I stop contributing to Mustang even though the bug fix was just the beginning because I would love to introduce a "close()" or "disconnect" method on the URLConnection to make it possible to undo a "connect()" call without knowing what protocol is used in the URL.
-Andy
Posted by: schaefa on January 25, 2006 at 11:08 AM
-
That's an interesting list to look at, there appears to be a wide array of stuff on it and all of them are in different status buckets. Working on RFEs/BUGs can be pretty revealing how much more powerful some functionality can become just by adding/rewriting code. Anyway, its been an enjoyable experience for me so far. leouser
Posted by: leouser on January 25, 2006 at 02:45 PM
-
Hi Ray,
Can you please answer me one question which has been asked many times but to which I have heard no answer for well over a year:Is anyone working on JavaSound?. A simple Yes or No would do.
Thanks,
Graham.
Posted by: grlea on January 25, 2006 at 03:25 PM
-
Thanks for the comments. I'm trying to track down the right people to get some answers. I'll post them as soon as I hear.
Posted by: ray_gans on January 25, 2006 at 06:26 PM
-
2Graham: The answer is simple Yes.
For example, see sound bugs fixed in this build:
https://mustang.dev.java.net/files/documents/2817/26990/mustang-b66.html
Dmitri
Posted by: trembovetski on January 25, 2006 at 11:01 PM
-
Based on what I have observed regarding the stability of the snapshot releases, I think it is unfortunate that beta 1 be based on a build that is ten weeks old.
Doesn't that simply put the beta testing ten weeks behind where it could be?
Posted by: swpalmer on January 28, 2006 at 03:10 PM
-
I am also a little mystified about the fact that the beta is based on a version of Mustang that is nearly 3 months old and is lacking many important bug fixes and improvements that I am seeing in the latest builds of Mustang.
Does that mean that these bug fixes will be made available with the second beta or with Dolphin?
Will the weekly builds continue in parallel with the beta testing?
Ian
Posted by: iangriffiths on January 29, 2006 at 11:37 AM
-
Yes the beta is about 10 weeks old. The more serious bugs fixed in snapshot builds since b59 have been rolled into the beta. The main difference in the beta is that it has had fairly heavy testing -- much more so than for the snapshots. If the snapshots are working well for you, then feel free to do your testing on them. A second beta would include subsequent fixes and we plan to continue posting weekly builds as we continue with Mustang.
Posted by: ray_gans on January 29, 2006 at 10:03 PM
-
schaefa: We haven't forgotten about your fix contribution, I've checked and it is still being reviewed (there has been some activity logged on it in late January). I sincerely apologize that the review is moving so slowly.
Posted by: ray_gans on January 29, 2006 at 10:20 PM
-
Graham: As Dmitri said, we do have an engineer assigned to JavaSound. I don't believe we have anything new coming out in Mustang, though the following bugs have been fixed (contributed by the developer community): 6257449 -- Concurrency bug in com.sun.media.sound.UlawCodec with tempBuffer
6261423 -- Dropouts in audio recordings
Posted by: ray_gans on January 29, 2006 at 10:27 PM
-
So this will ship after WinFX? and w/o GroupLayout?
Why no GroupLayout?!
.V
Posted by: netsql on January 30, 2006 at 06:42 AM
-
Wow... I have downloaded the b70 and the changes in GTK L&F are really amazing!! Even when I change the theme the Java application get refreshed and updated!! wow.... wow!!, wow!!!! Sun is doing an amazing job.
Now the problems found:
- My theme has a gradient for background menus, Swing does not show it in it's menus.
- When I change the theme in GNOME, I only noted one problem: The border of the internal frames don't get updated. I have a theme with round windows and JInternalFrames where shown with round borders, but when I changed my theme to another theme with rectangular borders, JInternalFrames keep the previous borders.
- JInternalFrame doesn't use the theme colors for the frame buttons.
- My big disapointment: JFileChooser is still like the old GTK Open/Save dialog. I'm sure that this one is a big problem, but come on, after what I have seen in b70, nobody will believe that you can't solve this problem.
Well... I'm impressed, that's all I can say.
Posted by: rivasdiaz on February 02, 2006 at 07:22 PM
-
Where are you downloading b70 from?
The latest binaries page only has b69 listed. http://download.java.net/jdk6/binaries/
Posted by: jchristi on February 03, 2006 at 09:54 AM
-
You are right jchristi.
What I have installed is b69. I provably get confussed because I was reading the list of bug fixes in b70, which is already published.
Posted by: rivasdiaz on February 03, 2006 at 10:27 AM
-
Ok, the download page just got refereshed and now has b70.
Posted by: jchristi on February 03, 2006 at 12:24 PM
|