This was extracted (@ 2024-11-19 16:10) from a list of minutes
which have been approved by the Board.
Please Note
The Board typically approves the minutes of the previous meeting at the
beginning of every Board meeting; therefore, the list below does not
normally contain details from the minutes of the most recent Board meeting.
WARNING: these pages may omit some original contents of the minutes.
Meeting times vary, the exact schedule is available to ASF Members and Officers, search for "calendar" in the Foundation's private index page (svn:foundation/private-index.html).
WHEREAS, the Board of Directors deems it no longer in the best interest of the Foundation to continue the Apache Harmony project due to inactivity NOW, THEREFORE, BE IT RESOLVED, that the Apache Harmony project is hereby terminated; and be it further RESOLVED, that the Attic PMC be and hereby is tasked with oversight over the software developed by the Apache Harmony Project; and be it further RESOLVED, that the office of "Vice President, Apache Harmony" is hereby terminated; and be it further RESOLVED, that the Apache Harmony PMC is hereby terminated. Special Order 7B, Termination of the Apache Harmony PMC, Motion passes with a single no vote; Larry wishes it to be noted that he is not against termination, he simply would have preferred to have more time to work on the messaging.
At the time of the last report, the Apache Harmony community were undertaking discussions to identify a new goal for the project. Those discussions have failed to establish an alternative effort, and without any active development underway it now seems time to propose moving Apache Harmony to the Attic. There have only been very minor code changes and mailing list traffic for several weeks, and all the requests for further information relevant to the Oracle vs. Google subpoena seem to have been satisfied. Winding up the project and PMC should, therefore, not be a problem for the needs of the Foundation. The Board should expect to see a resolution at the next meeting.
Apache Harmony developers' list remains very quiet at the moment with only a limited amount of discussion on new directions for the project, a few specific technical questions, and some day to day housekeeping. While there was a brief exploration of creating a specialized VM for Groovy, at this point there is no evidence that the community will rally around a new goal in absence of a JCK license for Java SE. Discussions that included the Board and Incubator PMC were held to decide whether Apache Harmony should move back to the Incubator to help define a new objective. The rationale being any new goal should be to the standard expected of an incubator proposal, including diversity and mentoring, and that it be done with the oversight of the IPMC. The general opinion was that the Harmony PMC could handle such a task just as well. If no viable proposals are forthcoming after giving people plenty of time to consider such, the PMC will propose moving the project to the Attic. The PMC have been proactive to the requests for documentation in regards to the Oracle vs. Google subpoena. Communications on this subject have been through the V.P. Legal Affairs. One security incident was reported to the Apache Harmony private list regarding a virus scanner warning on one of the project's distributed binary files. The report was promptly addressed, and concluded to be a false alarm. There were no changes to PMC or committer membership during this reporting period.
Board level issues: The Apache Harmony development community has seen a significant reduction in capacity over the last few months, and as a consequence there is no longer an active Harmony PMC quorum to oversee the actions of the project. The current Chair has stated an intention to step down. Code: As written in the previous report, the majority of developers were working on Apache Harmony code with a view to achieving a fully compliant and compatible implementation of the Java SE specifications. The recognition that Harmony will never receive an acceptable Java SE JCK license, and the withdrawal of a number of corporate sponsored developers has had a negative impact on the project's development progress. The rate of commits and bug fixes has fallen to near zero as the community seeks to re-form around a new project objective. Community: There remains a few developers who are posting to the list, and there may be interest in rebooting the goals of the project. There is an acknowledgement that Harmony manages significant and interesting runtime technology. Developer discussions are exploring a variety of options, including defining an alternative runtime. We therefore feel that moving to the Attic is premature, however, we recognize that maintaining PMC oversight and responsibility for the project is important. There has been some discussion about maintaining the Harmony project identity, but asking that the Incubator PMC provide a level of mentoring and oversight not currently possible with the reduced Harmony PMC. A call within the current project PMC to find a replacement Chair has gone unanswered. Plans: We shall continue to support the developer discussions around the roadmap for Harmony, and seek to find volunteers to provide a PMC and Chair structure from amongst experienced Apache participants.
Since the last report the Harmony community have published two new milestones, 5.0 Milestone 15 and 6.0 Milestone 3, and are currently in code freeze in preparation for new milestones of both branches. These milestones are bug fixes to existing functionality as there is no significant new functionality being worked on in the project at the moment. The ongoing issues around Apache Harmony's TCK license have had a negative impact on the project's development progress, since it is deemed most unlikely now that the project will be able to achieve our original goal. The majority of developers were working on Harmony code with a view to achieving a fully compliant and compatible implementation of the Java specifications. Some developers have asked to be removed from the project, and some have gone inactive. Although we have received support from the Foundation for making a release of the current code, the Harmony PMC and discussion on the dev list has focused on the potential for adoption of such a runtime release; summarized best in the quote from Harmony's dev list "[releasing a non-compliant runtime] misses the important point that no matter how safe we, the ASF, think we are there is no point making releases that no one (with more to lose?) would risk using." This is reinforced by the Oracle vs. Google case which serves as a notable indication of the potential risk to other consumers. While other diverse points of view certainly exist, it would appear at present that nobody is stepping forward to develop and release a non-certified implementation of the specifications. Until somebody comes forward with a specific proposal to take the code in a new direction no options will be ruled out. On a more positive note, a number of new developers have posted to the dev list and a community member posted details of his success running Apache Hadoop on Apache Harmony! We believe that Apache Harmony has implemented all the requirements of the Foundation branding guidelines.
Apache Harmony are not scheduled to report to the Board on this cycle, but given recent events are choosing to file a brief report. There are two recent issues that The Harmony PMC would like to bring to the Board's attention. - Oracle's definitive statement on the TCK dispute The VP of JCP is expected to report on the details of the recent statement made by Oracle during the last EC meeting, regarding Apache's request for the Java SE JCK. The statement is a direct challenge to Apache Harmony achieving its goal of becoming an independently implemented certified Java SE implementation. The Apache Harmony PMC are discussing the implications in private at the moment since Oracle's statement is not yet public. - IBM's indication of future participation in OpenJDK Within the last few days IBM have issued a press release stating that OpenJDK will be their primary location for open source Java SE development. It is unclear how this will affect the IBM sponsored PMC members and contributors to Apache Harmony. Approximately half of the Apache Harmony PMC members, including the PMC Chair, and half of the committers who have made a change within the last six months are recognized to be IBM employees. The Apache Harmony PMC will continue to keep the Board abreast of significant project events.
The board appreciates the out-of-cycle report, considering the current situation with Oracle and the JCK license.
Summary ======= The Apache Harmony community remains healthy, and has recently created new milestone builds. The lack of a JCK continues to be an issue for Harmony, with still no end in sight. Development and Releases ======================== The Harmony community continues to publish regular milestones from the 5.0 SE and 6.0 SE branches. We have just finished a vote on the Apache Harmony 5.0 Milestone 15 and Apache Harmony 6.0 Milestone 3 source and are in the process of pushing them out to the mirrors. These new milestones are primarily bug fix releases with about 70 JIRAs having been fixed between them. In addition to code defect fixing, there is work on a new JSSE implementation based upon OpenSSL. There is also continued work on "Harmony Select", which is a headless runtime profile derived from the existing code, with regular builds now taking place on the Apache Hudson servers. We have had new developers in the project, producing a jdb debug client, and improving our imageio functionality. Traffic on the developer mailing list is steady, representing the increased maturity of the code. People remain responsive to questions and comments. Community ========= There were no changes to the Harmony PMC or committers during the last reporting period, and there are now 50 committers of which ~7 were active this period. The Harmony community includes Google Summer of Code participants who are making a good contribution to the code and community, and a number of new contributors from face-to-face community events. Other ===== As the Board is aware, a recent lawsuit concerning Oracle vs. Google has resulted in various commentators speculating about Google's use of Apache Harmony code. The Apache Harmony PMC have not been notified of any involvement.
Summary ======= The Apache Harmony community remains healthy, and has recently released new milestone builds. The lack of a JCK continues to be an issue for Harmony, with no end in sight. Development and Releases ======================== The Harmony community continues to publish regular milestones from the 5.0 SE and 6.0 SE branches. On June 1st we published Apache Harmony 5.0 Milestone 14 and Apache Harmony 6.0 Milestone 2. These are primarily bug fix releases with about 42 JIRAs being fixed between them. In addition to code fixing, there are a steady stream of build system improvements being committed; and some experimentation talking place on a separate, temporary branch to enable community comment before merging back to head. There is also continued work on "Harmony Select", which is a headless runtime profile derived from the existing code. Traffic on the developer mailing list is steady, representing the increased maturity of the code. People remain responsive to questions and comments. Community ========= There were no changes to the Harmony PMC or committers during the last reporting period, and there are now 50 committers of which ~9 were active this period. The Harmony community includes Google Summer of Code participants who are making a good contribution to the code and community.
Summary ======= The Apache Harmony community remains healthy, and has recently released new milestone builds. The lack of a JCK continues to be an issue for Harmony. Development and Releases ======================== The Harmony community published Apache Harmony 5.0 Milestone 12 on December 5th. We later discovered that one source file had a questionable header comment [1], so we replaced it with Harmony 5.0 Milestone 12a on January 27th. The next regular milestone, Apache Harmony 5.0 M13, was released on March 10th, comprising a number of bug fixes and test case enhancements. On the same date we also released the first milestone from our 6.0 code stream. Apache Harmony 6.0M1 is the first stable build available from the Java SE 6.0 API code stream, and while there are still known missing APIs, this first milestone is already very capable. Harmony build and test is running smoothly on the Hudson systems. Community ========= There were no changes to the Harmony PMC or committers during the last reporting period, and there are now 50 committers of which ~9 were active this period. The Harmony community have raised a number of proposed projects for consideration by the Google Summer of Code participants. Ref: [1] http://markmail.org/thread/25csio5grqekr6cf
Summary ======= The Apache Harmony community remains healthy, and has recently released a new milestone build. The lack of a JCK continues to be an issue for Harmony. Development and Releases ======================== There was no work on the core JVM and JIT code during the reporting period, but we continue to receive a steady stream of patches to the Java 5 and Java 6 class library branches. The Harmony community published Apache Harmony 5.0 Milestone 12 on December 5th. This latest milestone build contains a number of bug fixes and enhancements across numerous modules. Our previous release was in August 2009. We are currently stabilizing the Java 6 stream with a view to making the first stable release of that stream in the next few days. Harmony build and test is running smoothly on the Hudson Ubuntu systems, and we look forward to infra bringing on-line a wider variety of platforms that can be used in test, including Windows. Community ========= The Harmony PMC appointed one new committer during the last reporting period, and there are now 50 committers of which ~9 were active this period. There were no changes to the PMC membership. Xiao-Feng gave a talk on Apache Harmony at the Apache Roadshow Asia 2009 meeting.
Summary ======= The Apache Harmony community remains healthy, and has recently released a new milestone build. The lack of a JCK continues to be an issue for Harmony. Development and Releases ======================== The Harmony community published Apache Harmony 5.0 Milestone 11 on August 31st. This latest milestone build contains over sixty bug fixes, plus numerous enhancements across all modules. Our previous release was in June 2009. There was also an attempt to publish the first Apache Harmony 6.0 stream milestone, but after a period of community testing we decided we were not quite ready, and to ensure acceptable quality the 6.0 stream milestone has been postponed until a number of technical issues are resolved. Our involvement with the Google Summer of Code programme produced mixed results. Some students went through to the full term and produced useful results, others either didn't make it to the mid-term review, or failed at the final assessment. The Harmony community voted to accept two code contributions during this period. The first was an updated JDWP agent capable of Java 6 level functionality and debugging non-Java stratum code (e.g. JSPs). The second was made up of native code modifications and additions to allow wider platform portability, giving the class library natives the ability to build and execute on AIX and z/OS. Security ======== No reported security incidents this period. Community ========= There were no changes to the committership during this period. There are currently 39 committers, of which ~9 were active this period. We did some housekeeping on the PMC membership, moving 12 inactive folk to emeritus status. That resulted in the PMC being reduced to 11 active members.
Summary ======= The Apache Harmony community is healthy, and has recently released a new milestone build. The lack of a JCK continues to be an issue for Harmony. Development and Releases ======================== The Harmony community continues to improve the quality of the existing code, with the latest release of Apache Harmony 5.0 Milestone 10 containing over fifty bug fixes, plus numerous JavaDoc enhancements. Our last release was in April 2009. Contributions into the 5.0M10 code base includes: - compatibility: enhancements to ensure the behavior of the runtime is equivalent to that of the reference implementation. - documentation: tidy-up of the license/notice/readme files, and substantial improvements to the JavaDoc in a number of modules. - porting work: in the class libraries for AIX and zOS operating systems. - performance: improvements to string handling and start-up speed were implemented. - testing: additional tests, and enabling of existing tests across all platforms. We have also discussed the option of releasing a reduced footprint runtime, based on the Java 6.0 branch, called Harmony Select, which would be targeted specifically at headless applications. This would be an opportunity to publish the 6.0 code stream early in a useful configuration. Security ======== No reported security incidents this period. Community ========= Apache Harmony featured in a general session at JavaOne this year, with a demo of Harmony running the Eclipse IDE, and Harmony running Roller on Geronimo. There were no changes to the committership or PMC during this period. There are currently 39 committers, of which ~10 were active this period. The Harmony project are participating in the Google Summer of Code program, and discussion with the students who have a project with Harmony is underway on the developer mailing list. --------------- Confidential, not for inclusion in public minutes: ============ A prospective downstream consumer of Apache Harmony contacted us with details of a US patent application that may read on an algorithm we have implemented. The issue was raised with legal-internal where it was noted that the algorithm was described publicly more than one year before the application was submitted. We have decided not to proactively remove the code implementing the algorithm.
General discussion about publishing regular builds until we get approval for the TCK. Tim Ellison confirms that Harmony is publishing regular builds.
Summary ======= The Apache Harmony community remains healthy and continues to enhance the body of Java runtime technology under its management. There is a new project milestone build imminent and a new committer has recently been appointed. The lack of a JCK continues to be an issue for Harmony. Development and Releases ======================== The Harmony community is focused on improving the quality of the existing code, and completing the last remaining providers and tools usually associated with Java runtimes. The code is currently undergoing release management towards a Java 5.0 M9 release expected to be declared by the end of this month. Our last release was in November 2008. Contributions into the code base are numerous. New work being delivered in the upcoming release includes: - performance: across multiple areas, including class library improvements and JIT compiler global propagation optimizations, integer MUL/DIV/REM strength reduction, and so on. - pack200: a new implementation of the JSR-200 compression technology for Java bytecodes. - porting work: in the class libraries for AIX and zOS operating systems. - bug fixing: focus on our test case enhancements, and on passing the Eclipse Test Suite. We have enhanced the community-hosted builds with new jobs running on the Apache Hudson infrastructure. This gives a valuable insight into the state of the builds for developers who do not run their own continuous integration server. Security ======== No reported security incidents this period. Community ========= We are delighted to have Aleksey Shipilev accept an offer to become a committer for Harmony. Aleksey has contributed to many areas of Harmony including performance and community discussion over a sustained period. There were no changes to the PMC during this period. There are currently 39 committers, of which ~14 were active this period. After a discussion around our use of Google Analytics, we decided to remove the analytics tracker code from our website rather than update the privacy policy. The Harmony project intends to participate once again in the Google Summer of Code program, and discussion around suitable projects is underway on the developer mailing list.
Greg to approach PMC to inquire what the Harmony project plans would be if no JCK were forthcoming for an extended (two+ years) time...
Summary ======= The Apache Harmony community is healthy and continues to release increasingly capable builds on a regular schedule. The lack of a JCK continues to be an issue for Harmony. Development & Releases ====================== Harmony now has over 99% of the required Java SE 5 APIs completed. The missing pieces of functionality are primarily providers for different protocols, such as sound file formats, kerberos authentication, and so on. It goes without saying that we are ready to run the JCK and claim compliance to the Java specification. Milestone build 5.0M8 was declared on November 17, 2008. This milestone includes a number of fixes and enhancements including 51 JIRA issues resolved and approximately 240 commits. Our last milestone was published three months earlier in August. Beyond the day to day business of fixing bugs, there is a steady stream of improvements to performance, both throughput and start-up times; and enhancements to the usability and maintainability of the code. Security ======== No reported security incidents this period. Community ========= The community continues to operate in a healthy manner. We continue to interact with other projects, both within the ASF and hosted elsewhere. Of note this period is the ja.NET project who are using Apache Harmony in conjunction with Mono to run Java programs on .NET. There were no changes to committers or PMC membership during this period. There are currently 38 committers, ~10 of whom were active this period.
Summary ======= The Apache Harmony project delivered another milestone release containing Google Summer of Code contributions, bug fixes, and a notified security fix. The community is quiet but steady at the moment. The lack of a JCK continues to be an issue for Harmony. Development & Releases ====================== Development continues to be focused primarily on the Java 5 SE code stream and associated development tooling, with work on the Java 6 SE stream being limited to core areas of the class library. Work on the VM, JIT, and GC has slowed noticeably. Milestone build 5.0M7 was declared on August 21, 2008. This milestone includes a number of fixes and enhancements, as evidenced by over 125 JIRA issues resolved and over 600 commits since our last milestone published at the start of May. Noteworthy enhancements include: * improved performance, especially in object serialization and pack200 decoding. * a new 'javap' tool for class file disassembly, and good progress on 'policytool' the security policy management tool. * lots of fixes in the Swing widget toolkit. Six Google Summer of Code projects were assigned for mentoring by members of the Harmony community, but only two of those completed. We would particularly like to thank András Belicza (policytool) and Tharindu Mathew (Swing enhancements) for their contributions to the project! Security ======== In July, the ASF security group advised the Harmony PMC of a vulnerability in our code. The issue is fixed in the milestone 7 release. The details of the vulnerability have not been fully publicly disclosed yet. Community ========= The community continues to operate in a healthy manner, with a noticeable quiet period over summer. We are pleased to see some Harmony code is being used in Sun's performance release of Java SE 6 (an improved TreeMap), and work done in the JikesRVM 3.0 project that enables that VM to run Harmony class library code. There were no changes to committers or PMC membership during this period. There are currently 38 committers, ~18 of whom were active this period.
Summary ======= Harmony continues to make good progress in the Java 5 SE code stream, and has accepted a contribution in the area of Java ME. There have been a number of new committers and PMCers elected recently. The lack of a JCK continues to be an issue for Harmony. Development & Releases ====================== Development continues to be focused primarily on the Java 5 SE code stream, with work on the Java 6 SE stream being limited to core areas of the class library. There is also significant ongoing development in the build and testing infrastructure resulting in enhanced application, stability, and performance testing on Harmony builds. Milestone build 5.0M6 was published on May 22, 2008 containing a significant number of bug fixes and new functionality. Milestone 6 includes over 290 JIRA issues resolved and over 650 commits since our last Milestone at the end of February. Noteworthy advancements have been made in the following areas: * new JIT optimizations * functional and coverage enhancements throughout the class libraries * improved VM threading design * support for full hardware addressability on 64 bit platforms * completion of the unpack200 implementation * ...and much more In addition, Harmony accepted a substantial code contribution from the authors of Microemulator. Microemulator is a pure Java implementation of Java ME APIs in Java SE. With the emulator code it becomes possible to run MIDlet (MIDP/CLDC) based applications as a standalone Java application or as a web browser applet. There are six Google Summer of Code projects being mentored by members of the Harmony community. Security ======== There were no reported security issues this period. Community ========= The community continues to operate in a healthy manner, with a noticeable turnover recently in the participants on the mailing list. We have had constructive interactions with other Apache projects, and the Eclipse TPTP project who are consuming the Harmony bytecode verifier code. The PMC appointed six new committers this period, Alexei Fedotov, Chunrong Lai, Igor Stolyarov, Ilya Berezhniuk, Pavel Rebriy, and Xiao Xia (Sean) Qiu. In addition, seven committers were appointed to the PMC membership: Egor Pasko, Jimmy Lv, Mikhail Fursov, Pavel Pervov, Sian January, Tony Wu and Vasily Zakharov. There are currently 38 committers, ~22 of whom were active this period.
Summary ======= The Apache Harmony community and code continue to be working well. We are still looking to the Board to help resolve the JCK license issue, but this is not stopping us delivering useful software to our users. Development & Releases ====================== The development team continues to be focused primarily on the Java 5 SE code stream, and we have successfully delivered two milestone releases since our last report. Milestone build 5.0M4 was published on Dec 19, 2007, and 5.0M5 on Mar 1, 2008. Each of these milestones contain a significant number of bug fixes and new functionality, as evidenced by the over 370 JIRA issues resolved and over 730 commits since our last report. Noteworthy advancements have been made in the following areas: * new JIT optimizations * functional and coverage enhancements throughout the class libraries, * improved VM threading design * support for full hardware addressability on 64 bit platforms * new appletviewer tool * initial version of unpack200 tool We continue to test with a variety of applications to ensure completeness and compatibility with the specification, and have made good progress in adding Apache Geronimo to our list of fully functional apps. The Java 6 APIs are being steadily filled-out and kept in synch with the Java 5 branch changes. Security ======== There were no reported security issues this period. Community ========= The community continues to operate in a healthy manner with a vibrant developer list, including a number of new participants on the mailing list. The PMC elected three new committers this period, Pavel Pervov, Sian January, and Vasily Zakharov. There were no changes to the PMC membership. There are currently 32 committers, ~23 of whom were active this period. Export Controls =============== The Apache Harmony PMC have reviewed the ASF export controls procedures and confirm that we are in compliance.
Summary ======= Apache Harmony is making good progress towards releasing a full Java SE implementation, and the community is working well. We are still looking to the Board to help resolve the JCK license issue. Development =========== The development team have been very busy since our last report. We declared Milestone build 5.0M3 on Oct 9, 2007, and since then have been working towards Milestone 4 which is scheduled for the week of Dec 17. The team is settling into a rhythm of delivering stable, well-tested, development drivers approximately every eight weeks. Besides the steady and continuous work of bug fixing and enhancements across all aspects of the codebase (over 570 JIRAs resolved/closed, and over 1000 commits since our last Board report), there has been noteworthy advancements in the following areas: * build-test infrastructure : regular testing of nightlies with more applications and scenarios. * code coverage : additional tests have improved functional coverage. * JIT : lots of new optimizations such as operator strength reduction, loop versioning, array/string search and comparison optimizations, and stack alignment when using SSE instructions; and new features such as bytecode-based edge profiling. * awt : printer job implementation. * nio : improvements in selector code, including epoll support. * pack200 : good progress on implementing this complex spec. * sql : implementing SQL rowset. * ldap : we now have a working ldap provider. * JVMTI : ported to x86_64 platforms (both Linux and Windows). * java 6 class library : steady progression towards Java 6 APIs. * platform support : support for full hardware addressability on 64 bit platforms, work on z/OS support. We also received a contribution of JVMTI Extension: Native Code Access Interface (NCAI) implementation by Intel which allows seamless debugging of Java and native code across the JNI boundary. At infra's request our stable milestone builds are being mirrored to reduce the pressure on ASF servers. However, we are keeping a number of snapshot builds and test results on-line to enable simpler regression analysis, and these can be quite large. Releases ======== We continue to look to the Board for a successful resolution to the JCK license impasse so that we can go for Java SE certification. After consultation with the Board and legal-internal, the Harmony PMC plan to make an end-user release available once we complete our best effort to demonstrate compliance with the specifications. We are 99% API complete for Java 5, and achieving a reasonable set of providers. Security ======== There were no reported security issues this period. Community ========= The community continues to operate in a healthy manner with a vibrant developer list. To facilitate broader community involvement we are in the process of translating some webpages, and now accept bug reports, in Russian and Chinese. A number of PMC members are fluent in these languages so can provide due oversight. The bug reports are translated into English by native speakers upon receipt. We are fortunate to have developers from EIOffice (a large Java office suite) contributing to Harmony's development effort, and have been encouraged to see the uptake of Harmony code in highly visible releases such as Google Android and IBM Java SDK. The PMC elected three new committers this period, Andrey A. Pavlenko, (Jimmy) Jing Lv, and Mikhail Markov; and one new PMC member, Xiao-Feng Li. There are currently 30 committers, ~21 of whom were active this period.
Approved by General Consent.
Summary ------- Throughout the reporting period Harmony has had active development across all aspects of the project. There are no issues requiring the Board's attention. Development ----------- The project produced another successful Milestone build at the end of June 2007. The entire development team collaborated in producing a stable, well-tested, snapshot build that we called Apache Harmony 5.0 M2. Since then there has been the steady and continuous work of bug fixing and enhancements across all aspects of the codebase. Of particular note is the effort from a variety of contributors on: * bytecode verifier : integrating and testing the new Java bytecode verifier code contribution * creating download bundles : tested combinations of Harmony 5.0 M2 with Eclipse 3.3 & Tomcat 6.0.13 * code coverage : enhancing tests to increase code coverage * build-test infrastructure : testing snapshots with more applications and scenarios * performance : new JIT and GC algorithms for improved code generation * debian packaging : produced some deb packages of Harmony builds * vm thread redesign : rationalisation of the VM threading model * vm class unloading : new class unloading feature in the VM * pack200 : picked-up implementation of complex JSR200 spec * AWT&Swing : focused attention on stability and robustness * bootvm : additional work on alternate VM implementation * java 6 class library : patchy, but steady progression towards Java 6 APIs The dev list have been discussing the current practice of producing milestone builds every two months in addition to our nightly snapshots. Some would prefer a milestone every three months to enable more sophisticated work completion, and this topic is still under discussion. We continue to look to the Board for a successful resolution to the JCK license impasse. Security -------- There was a concern raised about the security of our File.createTempFile code, and after a short discussion on the dev list our implementation was changed to the satisfaction of all involved. There were no other reported security issues. Community --------- The community continues to operate in a very healthy manner. Several developers have published material about Apache Harmony (linked from the project website), or spoken about the project at developer conferences. We are collaborating with other projects, both at the ASF and beyond, including evaluating opportunities to reuse their code in Harmony. There have been no new committers or PMC members this period. Upon receiving Geir's resignation the PMC voted to recommend Tim Ellison as the new Chair, and Tim was subsequently appointed as such by the Board in July. There are currently 27 committers, ~22 of whom were active this period.
In addition, the chair for this project provided the following statement:
IMO there is a huge pent-up frustration with the lack of JCK for Harmony, and if it were to be made available it would unlock a phenomenal effort to get the code passing, and a real release out.
Approved by General Consent.
WHEREAS, the Board of Directors heretofore appointed Geir Magnusson Jr. to the office of Vice President, Apache Harmony, and WHEREAS, the Board of Directors is in receipt of the resignation of Geir Magnusson Jr. from the office of Vice President, Apache Harmony; NOW, THEREFORE, BE IT RESOLVED, that Geir Magnusson Jr is relieved and discharged from the duties and responsibilities of the office of Vice President, Apache Harmony, and BE IT FURTHER RESOLVED, that Tim Ellison be and hereby is appointed to the office of Vice President, Apache Harmony, to serve in accordance with and subject to the direction of the Board of Directors and the Bylaws of the Foundation until death, resignation, retirement, removal or disqualification, or until a successor is appointed. Special order 7D, Change the Apache Harmony Project Chair, was approved by Unanimous Vote.
Issues requiring the Board's attention: none. Infrastructure -------------- We have no outstanding infrastructure issues. Development ----------- Along with the continuous work of bug fixing and enhancements across all aspects of the codebase, the project accepted several new contributions of code from Intel Corp. These were voted upon on the project dev list and have been incorporated into the project codebase, or are in the process of being incorporated : 1) Various character set encoders/decoders 2) A font library 3) Java Management Extensions (JMX) APIs and associated tests 4) JMSMP and HTTP connections for Java Management Extensions (JMX) 5) An alternative bytecode verifier 6) JVM function test suite comprising 4400 tests 7) A further 1500 runtime tests 8) Stress testing suite A branch was created in SVN for those wanting to start work on the Java 6 SE class library specification. Some developers have started submitting patches to the Java 6 branch but it is still in very early days of development. This work is supported by additional effort in the supporting build and test infrastructure code which now contains thousands of functional tests, adapters to run system/integration tests, and more recently some performance tests. At the end of June 2007 the project published a Milestone build. The entire development team collaborated in producing a stable, well-tested, snapshot that we called Apache Harmony 5.0M2. This Milestone has been tested with a number of open source applications, and the Harmony community have expressed an interest in producing downloads of standalone applications, such as Apache Tomcat and Apache Geronimo, based on the Harmony runtime. Security -------- There were no reported security issues. Community --------- The community continues to operate in a very healthy manner with discussions and decisions being made on the project mailing list. Several developers have published material about Apache Harmony in various places (linked from the project website), or spoken about the project at developer conferences. We collaborated with the Eclipse Foundation in their venture to produce an "In Harmony with Eclipse" CD for JavaOne 2007, containing the Eclipse IDE running on an Apache Harmony runtime. We're continue to watch the OpenJDK project for opportunities to collaborate, but so far, there has been little activity there since our last update. We have voted in seven new committers, bringing the total to 27 (of which 22 were active in the last 2 months). Our new committers are: Alexey A Ivanov (Intel) Andrew Zhang (Independent) Egor Pasko (Independent) Leo Li (IBM) Mikhail Fursov (Intel) Tony Wu (IBM) Vladimir Ivanov (Intel)
Approved by General Consent.
No report provided or submitted. Geir did mention that he was going to resign the Harmony chair position, due to his serious time constraints, but was concerned about the (mistaken) impression that might cause.
Issues requiring the Board's attention: none. Infrastructure -------------- We have no outstanding infrastructure issues, and are happy to report that things are working well. Thanks, infra :) Development ----------- Development has been continuing, best described as "block and tackle" work. The activity is centered around the VM, with the efforts focused on stability and performance, and the class library, where there's been most activity around bugfixing. There has been some slight progress towards completion, but most of the efforts have been focused on the code that is there. We've had a bit more activity around the testing infrastructure, working to add new tests and scenarios to help us do a better job at early detection of bugs. Additionally, we have had several contributions of testing software to the project. Security -------- There were no reported security issues. Community --------- Collectively we're looking at putting together a formal release plan, deciding on features and timing. We're also working to ensure that the generated snapshots pass their own unit tests.
Approved by General Consent.
Issues requiring the Board's attention: none. Infrastructure -------------- We have no outstanding infrastructure issues. We added a new mailing list for build alerts from the community-run build system. Development ----------- BEA released a version of the JRockit virtual machine (not open source) that works with the the Harmony class library. This is a production-grade, high-performance JVM. Not only is this a very useful tool for the project as we can use it to help isolate class library bugs because the JVM is "known good", it's also a good demonstration of the adaptability of the Harmony class library. Along with the continuous work across all aspects of the codebase, the project accepted several new donations of code. These were voted by the project on the dev list and have been incorporated into the project codebase, or are in progress : 1) "java.lang.management" package from IBM for the classlibrary 2) JSSE test suite from Intel 3) Reliability test suite from Intel 4) HTML parser for Swing from ITC 5) "javax.naming.ldap" package from ITC Security -------- There were no reported security issues. Community --------- We're still watching the OpenJDK project for opportunities to collaborate, but so far, there has been little activity there since our last update. We have voted in one new committer : Xiao-Feng Li We have added 7 committers to the PMC : Alexei Zakharov Alexey Varlamov Gregory Shimansky Alexey Petrenko Richard Liang Oliver Deakin Nadya Morozova
Justin asked if OpenJDK was Sun's GPL-released version of Java. Geir responded that it was, but as Sun retains copyright, we have encouraged them to relicense things the ASF can collaborate on, such as javac, etc...
Approved by General Consent.
[ no report received ]
[ no report received ]
Geir to submit a report in February.
Issues requiring the Board's attention: none. Infrastructure -------------- We have now completed our second full month of TLP, and with the recent creation of our Solaris Zone, we have no outstanding infrastructure requests, and thank the ASF infrastructure team for helping us with our transition from the Incubator. We plan on adding a few new mail lists, one for our community-distributed build/test system alerts, and eventually one for users. Development ----------- The project continues to make progress towards it's primary goal of a complete implementation of Java SE 5. We have over 96% of the Java SE 5 class library complete, and the virtual machine continues to make substantial progress. We look forward to securing the JCK for Java SE 6 to start integrating it into our build/test frameworks as to immediately begin testing the portions of the classlibrary that we believe are spec complete. While I can't quantify the VM as I can the class library in terms of measurable completeness, it's clear we're making good progress due to the continued improvements in stability, functionality and performance. We also have quite a bit of progress in the area of documentation and website, with a committed set of community members focused on that. In the last month we completed substantial work on our "JDK tools" part of the project, which is the code and build infrastructure for the additional programs that come with the runtime environment in the "Java Development Kit" (aka JDK). As of now, we have a JDK that has "java" (the runtime), "javac" (the Java language to bytecode compiler, based on the Eclipse ECJ compiler), "javah" (C header and stub file generator), and "keytool" (used for manipulating keys and certificates), and will continue to work to complete the full toolchain. Security -------- Mid November, a user identified a potential vulnerability in the codebase pertaining to a thread being able to mine values owned by other threads in the so-called "ThreadLocal" storage. This was identified on the private@ list, and after the PMC determined that there was no real need continued discussion in secrecy, we moved the discussion to the public list and resolved to everyone's satisfaction. Community --------- On the community front, things are fairly static. We are seeing a small drop in our dev list participation numbers, but there are no known reasons why, other than seasonal variability. In late November, Sun announced the creation of their open source Java project called "OpenJDK". They will be releasing over the next 6 months the source code to Java SE 6, under the GPLv2 and GPLv2+Classpath Exception licenses. As of now, they have released their "javac" Java-language-to-bytecode compiler and their VM to the community under the GPLv2 license. Currently, they are still working out the details regarding their community structure. We expect that this action will have at least a short term affect on our community, simply because it's a more advanced codebase, and an alternative community for people to participate in. Overall, though, this is a positive thing for the open source Java ecosystem, and we'll continue to look for ways to bridge the two communities. One final community note - the Apache Gump project has been working towards using Harmony as a "base" for their activities, and with the recent completion of the "javac" compiler in Harmony, we're hoping that we'll soon start seeing full Gump runs on the Harmony JDK.
Justin asked what criteria was used to guage 'dev list participation'. Geir responded just the number of messages to the list.
Approved by General Consent.
Currently, we have no issues requiring board attention. We are ready to switch our infrastructure to that of a TLP - website URL is ready, group created, and we expect to bring that live this week. Of interest was Sun's recent announcement of their implementation of Java SE licensed under GPLv2. As advocates of open source Java SE, we think this is a positive thing and validate our work for the last 18 months - more open source Java is great. While their choice of license precludes immediate collaboration between the projects, we've already floated one idea of how we can work together - asking Sun to relicense the javac compiler under CDDL so Harmony can redistribute - and we will keep exploring other ideas. We have added one new committer, Nadya Morozova, who has been doing lots of good work in the area of our documentation and website. Currently this hasn't been announced on the dev list as we're waiting for ICLA. We continue to make progress - we have achieved 95% completeness on the class library for Java SE 5 and the DRLVM continues to improve in performance, stability and completeness.
Approved by General Consent.
WHEREAS, the Board of Directors deems it to be in the best interests of the Foundation and consistent with the Foundation's purpose to establish a Project Management Committee charged with the creation and maintenance of open-source software implementing Java virtual machines, related class libraries, and other software that is commonly associated with Java platforms, for distribution at no charge to the public. NOW, THEREFORE, BE IT RESOLVED, that a Project Management Committee (PMC), to be known as the "Apache Harmony Project", be and hereby is established pursuant to Bylaws of the Foundation; and be it further RESOLVED, that the Apache Harmony Project be and hereby is responsible for the creation and maintenance of software related to Java virtual machines, related class libraries, and other software commonly associated with Java platform implementations; and be it further RESOLVED, that the office of "Vice President, Harmony" be and hereby is created, the person holding such office to serve at the direction of the Board of Directors as the chair of the Apache Harmony Project, and to have primary responsibility for management of the projects within the scope of responsibility of the Apache Harmony Project; and be it further RESOLVED, that the persons listed immediately below be and hereby are appointed to serve as the initial members of the Apache Harmony Project: * Nathan Beyer (ndbeyer@apache.org) * Tim Ellison (tellison@apache.org) * Mark Hindess (hindessm@apache.org) * George Harley (gharley@apache.org) * Mikhail Loenko (mloenko@apache.org) * Geir Magnusson Jr. (geirm@apache.org) * Stepan Mishura (smishura@apache.org) * Weldon Washburn (wjwashburn@apache.org) * Paulex Yang (pyang@apache.org) NOW, THEREFORE, BE IT FURTHER RESOLVED, that Geir Magnusson Jr be appointed to the office of Vice President, Harmony, to serve in accordance with and subject to the direction of the Board of Directors and the Bylaws of the Foundation until death, resignation, retirement, removal or disqualification, or until a successor is appointed; and be it further RESOLVED, that the initial Apache Harmony Project be and hereby is tasked with the creation of a set of bylaws intended to encourage open development and increased participation in the Harmony Project; and be it further RESOLVED, that the initial Apache Harmony Project be and hereby is tasked with the migration and rationalization of the Apache Incubator Harmony podling; and be it further RESOLVED, that all responsibility pertaining to the Apache Incubator Harmony podling encumbered upon the Apache Incubator PMC are hereafter discharged. Special Order 6E, Establishing the Apache Harmony Project, was approved by Unanimous Vote.
Entered incubation in May, 2005. Apache Harmony is primarily focused on the creation of an independent, compatible implementation of Java SE 5. The project has voted to ask to graduate from the Incubator, and is currently discussion the topic with the Incubator PMC. Progress continues in both code and community: Community The project has added 6 new committers The project has added 3 committers to the PPMC Diversity continues to increase in participants Pure development list traffic hit a record of 1961 message with a combined volume of JIRA and commit messages of 2851 The ApacheCon technical session and BOF on Harmony were reasonably attended Our interaction with the Yoko community has been constructive in terms of community - they elected a Harmony commmitter to be a Yoko committer - as well as technology (see below) We have the support with the external MX4J project to "gently fork" their codebase as the foundation for our JMX 1.2 extentions as required by the Java SE 5 spec Technology/Other The project is in the process of updating it's license headers in the codebase. The classlibrary and DRLVM virtual machine have been updated, with the rest still in progress. Classlibrary coverage has reached 94% DRLVM is stablizing and running at a reasonable level of performance We've incorporated the binary milestone from Yoko as our implementation of pCORBA, and will update with their release when that happens We've accepted several tool contributions (javah, javap) and expect to produce a JDK snapshot complete with javac, javap, javah, rmic and keytool JBoss now "runs" on Harmony (for certain values of "runs") MX4J as source (it has the Apache License) will be integrated into the project codebase as the starting point for our required JMX implementation in the classlibrary. ---------------------------------------------------------------------------- Heraldry July 2006 Identity Management While progress has still been a bit slow, some good milestones have been reached in the past month. Majority of commiters from initial proposal now have accounts Project page updated as well as now linked to from the Incubator's website Code contribution of the Ruby identity provider has been made Yadis test code has been checked in Ruby OpenID plugin has been contributed We're also now very close to having the OpenID and Yadis libraries contributed to the project, just waiting on two or three more accounts to be created. ---------------------------------------------------------------------------- JuiCE April 2004 Java Crypto No activity in months. Appears dormant. ---------------------------------------------------------------------------- Lucene4c Feb 2005 The project is dormant. Retired during ApacheCon. ---------------------------------------------------------------------------- Lucene.Net March 2006 Lucene for .NET environment. Lucene.Net continues to grow. Recently Lucene.Net 1.9.1 "final" was released. In addition, Lucene.Net 2.0 is now in "beta". The mailing list is seeing more traffic with questions, bug reports and enhancement requests. In September, Jeff Rodenburg was added as a committer to Lucene.Net. And finally, a new logo Lucene.Net logo was added to the incubation site ( http://incubator.apache.org/lucene.net/) ---------------------------------------------------------------------------- XAP XAP is a declarative framework for building, deploying and maintaining Ajax-based rich internet applications with the goal of dramatically simplifying Ajax application development. XAP entered incubation in May 2006. Top three items to resolve before graduation: Bring the codebase to a level that contributors can make contributions without significant pain; Create a XAP incubating release with proper packaging and quality Engage a higher level of community activity and contribution Community Various discussions on the XAP dev list on technical issues such as application initialization and DOM model; Attended ApacheCon and gave a lightening talk on XAP A session called "Introduction to XAP" was presented at AjaxWorld Conference and the upcoming Ajax Experience conference Various third party expressed interest in learning more about XAP, but complained that not easy to get infomation and not easy to figure out what XAP code does. Code Achieved milestone 3: added more widgets and streamlined initialization Various bug submission and JS unit tests submitted by Trevor Oldak Update demo applications with improved performance Working towards the next milestone: more widgets and some appealing demos to attract more developers
The Harmony project continues to grow in both community and code. On the community side, our mail list traffic continues to increase, with an all-time high of 1495 messages on the dev list in June. As of this writing, there are 895 messages so far for July. These numbers do not include any commit or JIRA traffic. Content of the list is fairly healthy, concerned with the technical aspects of both our virtual machines as well as the class library. Recent donations are increasing the diversity of participation in terms of individuals, with the majority of new faces participating in and around the virtual machine donation from Intel. Mail list traffic on the ppmc list is very low, and with the exception of one issue related to a contribution, pertains only to new committer and ppmc member discussion and votes. We have added 4 new committers, have several identified as potential, and have recently voted to add committers to the PPMC (although they haven't been notified as of this moment). On the technical side, we have been fortunate to continue to receive code from 3rd parties, primarily Intel. These donations represent code that was intended for Harmony but due to a combination of internal "process" backlog at Intel, as well as a sensitivity to the rate at which the community can digest and adopt the code, not all code was donated at once. We are very sensitive to ensuring that after a donation happens, any development on that continues in the project, and we constantly look for ways to enable people to help. We have recieved significant additions like Swing/AWT/Java 2D for the class library, as well as the "DRLVM" modern virtual machine, which now gives us about 81% coverage of the Java 1.4 API (estimated at 78% of the Java 5 API, our target), as well as a VM to run that with modern garbage collection and JIT. We are currently working through the details of using public-domain code from Doug Lea for the "java.util.concurrent" package. This is the 'reference implementation' for this package, and used by Sun, among others. We wish to use this code (as it's considered the best implementation as well as the only one available to us), and further build a bridge between our community and the community surrounding this code (mainly the JSR-166 expert group, and organizations like us that use it...)
Harmony project has moved out of it's initial phase in which it formalized contribution and other governance issues and has now accepted two major class library code contributions, one from IBM and one from Intel. Work continues on those two codebases, with topics ranging from bug fixing, enhancements, as well as other topics such as how to organize test framework and documentation. Two releases of snapshots are imminent, one of a basic VM implementation (JCHEVM) and one of the current classlibrary. We are doing this to make it easier for users to work with the software. Our focus in the upcoming quarter is to continue our emphasis on community building through adding new committers and expaning the scope of our activities to include other kinds of committers (test, documentation, qa...) and continue to solicit donations to our codebase as well.
Project is moving along. Recent quarter has focused on creating the contribution and committer process for the project. The result has been the creation of an "Authorized Contributor Questionnaire" to allow contributors to declare what portions of the project codebase they could have problems working in due to contraints imposed on them through prior work. (For example, being under NDA to an employer.) We also have worked out the process for accepting "bulk contributions", those works that have been created elsewhere and are being donated to Harmony. This process builds on the standard Apache Incubator process - a CCLA or SG is still required and registered. Other highlights : * We have accepted 3 new code contributions * Componentization proof of concept * "bootVM" a new basic VM nucleus * "JCHEVM", a re-licensing of JCVM * We have added two new committers * We expect to continue to add new committers and new code at an accelerating rate
In it's first month+ of existence, Harmony has attracted quite a bit of attention, and we are now settling down to resolve some of the issues we've identified in the beginning. We have on our website our proposed policy framework to monitor contributions and technology contributions. This policy is in addition to the standard ASF policy and we do not believe that it will cause any concerns. It will be posted for review by the Apache Incubator PMC before it goes into effect, but we're working to get the last nips and tucks done. On the technology side, there's been a slow start, in part due to the contribution framework getting established, but I plan to push hard for contributions now that we're almost done and people can get a sense of how things work. We have the following outstanding issue that I will be talking to the Apache Incubator PMC about - parts of the community have asked that we change our default license for mail list contributions to a license compatible with the GPL, as the Apache License is deemed incompatible by the FSF. It's in our interest to ensure that we can have the broadest participation possible, but also recognize that we wish to balance that with the aspects of the Apache License that are important to us. Expect more on this soon.