This document is for '''developers''' of the June 2010 Helios [[Simultaneous Release]]. [Need link for users and consumers]

−

This page is for '''developers''' of the June 2010 Helios Simultaneous Release. If you are a consumer of the Release, perhaps a tester or an early adopter, you'll want [[Helios Simultaneous Release/For Users | Helios Simultaneous Release For Users]]. Note that [http://www.eclipse.org/projects/helios.php the master page on the eclipse.org site] points here.

+

<!--

−

</div></div>

+

If you are a consumer of the Release, perhaps a tester or an early adopter, you'll want [[Helios Simultaneous Release/For Users | Helios Simultaneous Release For Users]]. Note that [http://www.eclipse.org/projects/helios.php the master page on the eclipse.org site] points here.

+

-->

−

This page is under development. It is expected to be complete around Mid September.

−

−

===Project Plan===

−

A roll up project plan for projects participating in the Helios simultaneous release is found here: http://www.eclipse.org/projects/project-plan.php?projectid=helios

===Requirements For Participation===

===Requirements For Participation===

−

Projects that are part of Helios agree to abide by the [http://www.eclipse.org/helios/planning/EclipseSimultaneousRelease.php requirements of the Eclipse Yearly Release].

+

Projects that are part of Helios agree to abide by the [http://www.eclipse.org/helios/planning/EclipseSimultaneousRelease.php requirements of the Eclipse yearly Simultaneous Release].

−

[TBD: link to report]

+

[http://eclipse.org/helios/planning/SimultaneousReleaseGrid.php Compliance Reports] show progress on meeting the requirements and their final achievement.

===Milestones and Release Candidates===

===Milestones and Release Candidates===

−

The milestone dates are at roughly 6 week intervals. Any end-of-cycle release-candidate (RC) dates are typically one week apart. Each project has their deliveries due at times offset from the end-date, so that the project dependencies can come together in a reasonable order. These delivery times are based on the dependencies between projects -- they are called the +0, +1, +2, and +3 dependencies. Projects themselves decide if they are +0, +1, +2, or +3. The actual time-offset represented by these intervals change over the course of the year of development, being several days at first, but then only one day near the end of the release. The following calendar is the official schedule of the overall Helios Release. Projects are free to have their own schedules as long as they meet the Helios deliverables.

+

The Release is always on the fourth Wednesday of June. The milestone dates are at roughly 6 week intervals. Any end-of-cycle release-candidate (RC) dates are typically one week apart. Each project has their deliveries due at times offset from the end-date, so that the project dependencies can come together in a reasonable order. These delivery times are based on the dependencies between projects. They are labeled +0, +1, +2, and +3, with +0 coming first (the Platform) and +3 coming last (EPP). Projects themselves decide if they are +0, +1, +2, or +3. The actual time-offset represented by these intervals change over the course of the year of development, being several days at first, but then only one day near the end of the release. The following calendar is the official schedule of the overall Helios Release. Projects are free to have their own schedules as long as they meet the Helios deliverables.

+

+

Note that projects choose their own +n category based on major or primary dependencies. There are many cases where a project might have to deliver pieces of their code a little earlier, if some project depends on it, or a little later if they have a stray dependency. These sorts of deviations are left to the projects to work out, pair-wise, among themselves. Feel free to bring up complicated cases for discussion.

+

+

Given all these constraints, the exact dates for any particular year are pretty predictable. The following table summarizes the most significant Helios dates, but see the subsequent calendar for the important details. That is, your stuff is due earlier than these table dates! Projects need to deliver a week or two before these "end dates", depending on their chosen, committed offset category (+0, +1, etc).

Note that projects choose their own +n category based on major or primary dependencies. There are many cases a project might have to deliver pieces of their code a little earlier, if some project depends on it. These sorts of deviations are left the the projects to work out among themselves.

If any doubt about where a bug belongs, it can always start in the "Cross-Project" component. (Under Eclipse Foundation > Community). If it really is a single-project's responsibility, it can be moved to that project. If it is a true cross-project bug, where several projects need to act, then it can stay in the cross-project component.

+

If there is any doubt about where a bug belongs, it can always start in the "Cross-Project" component. (Under Eclipse Foundation > Community). If it turns out to be a single-project's responsibility, it can be moved to that project. If it is a true cross-project bug, where several projects need to act, then it can stay in the cross-project component.

Because there has been confusion in the past, we'll be explicit here that the [https://dev.eclipse.org/mailman/listinfo/eclipse.org-planning-council planning council mailing list (eclipse.org-planning-council) ] if for Planning Council business, not the Helios Release activities per se. While they sometimes overlap, there is no need to cross post. While anyone can request a subscription to the planning council list (for openness and transparency) the expectation is that only Planning Council members post to it.

+

Because there has been confusion in the past, we'll be explicit here that the [https://dev.eclipse.org/mailman/listinfo/eclipse.org-planning-council planning council mailing list (eclipse.org-planning-council) ] is for Planning Council business, not the Helios Release activities per se. While they sometimes overlap, there is no need to cross post. While anyone can request a subscription to the planning council list (for openness and transparency) the expectation is that only Planning Council members post to it.

=====Conference Calls=====

=====Conference Calls=====

Line 62:

Line 76:

===Helios Builds and P2 repository ===

===Helios Builds and P2 repository ===

−

[TBD: this section needs work still. Some is inaccurate or out of date]

+

==== Builds (Aggregation) ====

−

A number of utilities have been written to automate the assembly of Callisto '06, Europa '07, Ganymede '08 and now Helios '09 builds. These are available in their own CVS respository. You can find more information about how this is organized and individual project responsibilities for the build on this [[Helios/Build | Helios Build]] page (with old information on the [[Ganymede/Build | Ganymede Build]] and [[Europa/Build | Europa Build]] pages).

+

This section, about assembling the repositories, is subject to change, as improvements in the process are made.

−

And with Helios we are using the [[Buckminster Galileo Builder|Buckminster Helios Builder]].

+

A number of utilities have been written to automate the assembly of Callisto '06, Europa '07, Ganymede '08, Galileo '09, and now Helios '10 builds. These are available in their own CVS repository. You can find more information about the history and organization by looking at some of the old, previous information on the [[Galileo/Build | Galileo Build]], [[Ganymede/Build | Ganymede Build]] or [[Europa/Build | Europa Build]] pages).

+

+

With Helios we are using the [[Buckminster Galileo Builder|Buckminster Galileo/Helios Builder]] (with some discussion of incorporating the [[Buckminster_Aggregator_User_Guide|Buckminster Aggregator]]).

The [[Helios/Contributing_to_Helios_Build | Contributing to Helios Build]] page is where you go to learn how to add your project to the Helios build.

The [[Helios/Contributing_to_Helios_Build | Contributing to Helios Build]] page is where you go to learn how to add your project to the Helios build.

Line 82:

Line 98:

http://download.eclipse.org/releases/staging

http://download.eclipse.org/releases/staging

−

===Coordinated Service Releases ===

+

===Service Releases ===

+

+

Coordinated Service Releases are (always) scheduled for the fourth Friday of September, and the fourth Friday of February. Individual Projects may have their own, of course, at any time, if they need to, but all participants in the Yearly Release, are expected to participate in the Coordinated Service Releases. What bugs are fixed, if any, is up to each Project to decide, but each Project must continue to "fit in", build, install, avoid conflicts, etc.

+

+

[Note: the following Service Release dates have not yet been added to the above calender, but will be soon.]

==== SR1 ====

==== SR1 ====

−

GA: 9/25/09 (last Friday of September)

+

GA: 9/24/2010 (last Friday of September)

In the SR1 rampdown, as shown in the following table, there will be 4 RCs, each spanning one week, with projects staging themselves into the build just one day apart.

In the SR1 rampdown, as shown in the following table, there will be 4 RCs, each spanning one week, with projects staging themselves into the build just one day apart.

−

Projects may elect not to participate in a particular RC, but have an obligation to fix any build problems that is related to their code or p2 repository.

+

Projects may elect not to participate in a particular RC, but have an obligation to fix any build problems that are related to their code or p2 repository.

RC1 will be in the middle of August, several weeks earlier than previous years, just to make sure we can still build, etc. Subsequent RCs dates are similar to [[Ganymede#Coordinated_Service_Releases| previous years]], except a "quiet" final week is also planned. (It is normally pretty quiet anyway ... this just formalizes it).

RC1 will be in the middle of August, several weeks earlier than previous years, just to make sure we can still build, etc. Subsequent RCs dates are similar to [[Ganymede#Coordinated_Service_Releases| previous years]], except a "quiet" final week is also planned. (It is normally pretty quiet anyway ... this just formalizes it).

Line 95:

Line 115:

The Final week before GA will not have any further builds or contributions, but instead be reserved for final adopter testing and preparation and only emergency fixes for very serious regressions will be considered.

The Final week before GA will not have any further builds or contributions, but instead be reserved for final adopter testing and preparation and only emergency fixes for very serious regressions will be considered.

−

The 'promote' day (9/24) will be the day projects put final zips in their final spot (without displaying them) so they can propagate through the mirroring system. Similar for the p2 repository -- it will be replaced on 9/24 with the new content so it can start mirroring. Note: there is no plan to retain multiple versions in the common discovery repository (unless someone volunteers to do what's required to make that happen). At noon on 9/25 projects can make their final maintenance releases visible.

+

The 'promote' day (9/23) will be the day projects put final zips in their final spot (without displaying them) so they can propagate through the mirroring system. Similar for the p2 repository -- it will be replaced on 9/23 with the new content so it can start mirroring. Note: there is no plan to retain multiple versions in the common discovery repository (unless someone volunteers to do what's required to make that happen). At noon on 9/24 projects can make their final maintenance releases visible.

{| border="1" align="center" width="600"

{| border="1" align="center" width="600"

Line 107:

Line 127:

|-

|-

! align="right" | RC1

! align="right" | RC1

+

| 8/9

| 8/10

| 8/10

| 8/11

| 8/11

| 8/12

| 8/12

| 8/13

| 8/13

−

| 8/14

|-

|-

! align="right" | RC2

! align="right" | RC2

+

| 8/30

| 8/31

| 8/31

| 9/1

| 9/1

| 9/2

| 9/2

| 9/3

| 9/3

−

| 9/4

|-

|-

! align="right" | RC3

! align="right" | RC3

+

| 9/6

| 9/7

| 9/7

| 9/8

| 9/8

| 9/9

| 9/9

| 9/10

| 9/10

−

| 9/11

|-

|-

! align="right" | RC4

! align="right" | RC4

+

| 9/13

| 9/14

| 9/14

| 9/15

| 9/15

| 9/16

| 9/16

| 9/17

| 9/17

−

| 9/18

|-

|-

! align="right" | Helios SR1 ("GA")

! align="right" | Helios SR1 ("GA")

Line 138:

Line 158:

|

|

|

|

−

| promote: 9/24

+

| promote: 9/23

−

| GA: 9/25

+

| GA: 9/24

|}

|}

==== SR2 ====

==== SR2 ====

−

2/26/10 (last Friday of February)

+

2/25/2011 (last Friday of February)

Rampdown similar to SR1.

Rampdown similar to SR1.

Line 158:

Line 178:

|-

|-

! align="right" | RC1

! align="right" | RC1

+

| 1/17

| 1/18

| 1/18

| 1/19

| 1/19

| 1/20

| 1/20

| 1/21

| 1/21

−

| 1/22

|-

|-

! align="right" | RC2

! align="right" | RC2

+

| 1/31

| 2/1

| 2/1

| 2/2

| 2/2

| 2/3

| 2/3

| 2/4

| 2/4

−

| 2/5

|-

|-

! align="right" | RC3

! align="right" | RC3

+

| 2/7

| 2/8

| 2/8

| 2/9

| 2/9

| 2/10

| 2/10

| 2/11

| 2/11

−

| 2/12

|-

|-

! align="right" | RC4

! align="right" | RC4

+

| 2/14

| 2/15

| 2/15

| 2/16

| 2/16

| 2/17

| 2/17

| 2/18

| 2/18

−

| 2/19

|-

|-

! align="right" | Helios SR2 ("GA")

! align="right" | Helios SR2 ("GA")

Line 189:

Line 209:

|

|

|

|

−

| promote: 2/25

+

| promote: 2/24

−

| GA: 2/26

+

| GA: 2/25

|}

|}

−

=== Projects ===

+

=== Participating Projects ===

−

The projects that plan to participate in the Helios Simultaneous Release are listed below, along with their milestone offsets, leaders, release engineer.

+

There is a [[Helios/Participating_Projects |separate page for projects that plan to participate]] in the [[Simultaneous Release]].

Requirements For Participation

Milestones and Release Candidates

The Release is always on the fourth Wednesday of June. The milestone dates are at roughly 6 week intervals. Any end-of-cycle release-candidate (RC) dates are typically one week apart. Each project has their deliveries due at times offset from the end-date, so that the project dependencies can come together in a reasonable order. These delivery times are based on the dependencies between projects. They are labeled +0, +1, +2, and +3, with +0 coming first (the Platform) and +3 coming last (EPP). Projects themselves decide if they are +0, +1, +2, or +3. The actual time-offset represented by these intervals change over the course of the year of development, being several days at first, but then only one day near the end of the release. The following calendar is the official schedule of the overall Helios Release. Projects are free to have their own schedules as long as they meet the Helios deliverables.

Note that projects choose their own +n category based on major or primary dependencies. There are many cases where a project might have to deliver pieces of their code a little earlier, if some project depends on it, or a little later if they have a stray dependency. These sorts of deviations are left to the projects to work out, pair-wise, among themselves. Feel free to bring up complicated cases for discussion.

Given all these constraints, the exact dates for any particular year are pretty predictable. The following table summarizes the most significant Helios dates, but see the subsequent calendar for the important details. That is, your stuff is due earlier than these table dates! Projects need to deliver a week or two before these "end dates", depending on their chosen, committed offset category (+0, +1, etc).

Communication Channels

Cross-Project Milestone & RC Status Reporting

Only negative status needs to be reported. It is essential for many aspect of the simultaneous release that communication be prompt and clear, on many topics. One of the most important ones, is if someone is not meeting some date or delivery. Put another way, we assume everyone is on target and has delivered their stuff unless a note is sent to cross-project list that you are delayed. Its better to be up front about it, so everyone knows what to expect, rather than to hope things turn out ok at the very last minute, since if you "miss" without saying anything you are more likely to impact other people, and miss your chance to be part of the release.

Mailing Lists and Newsgroups

Eclipse projects have three communication channels: a mailing list for developers, a newsgroup for users, and Bugzilla. While Helios is not a "project" per se, it will use the same structure:

Developer mailing list

cross-projects-issues-dev - mailing list for developers and releng (see archives). This is the list to use to discuss build issues, announce changes in plans, slippage in deliverables, etc.

Users news group

Bugzilla

If there is any doubt about where a bug belongs, it can always start in the "Cross-Project" component. (Under Eclipse Foundation > Community). If it turns out to be a single-project's responsibility, it can be moved to that project. If it is a true cross-project bug, where several projects need to act, then it can stay in the cross-project component.

The Planning Council Mailing List

Because there has been confusion in the past, we'll be explicit here that the planning council mailing list (eclipse.org-planning-council) is for Planning Council business, not the Helios Release activities per se. While they sometimes overlap, there is no need to cross post. While anyone can request a subscription to the planning council list (for openness and transparency) the expectation is that only Planning Council members post to it.

Conference Calls

But there are no planned calls for the release, per se, or for larger audiences, but they can be arranged if required or desired (for example, if needed for build coordination).

Helios Builds and P2 repository

Builds (Aggregation)

This section, about assembling the repositories, is subject to change, as improvements in the process are made.

A number of utilities have been written to automate the assembly of Callisto '06, Europa '07, Ganymede '08, Galileo '09, and now Helios '10 builds. These are available in their own CVS repository. You can find more information about the history and organization by looking at some of the old, previous information on the Galileo Build, Ganymede Build or Europa Build pages).

Service Releases

Coordinated Service Releases are (always) scheduled for the fourth Friday of September, and the fourth Friday of February. Individual Projects may have their own, of course, at any time, if they need to, but all participants in the Yearly Release, are expected to participate in the Coordinated Service Releases. What bugs are fixed, if any, is up to each Project to decide, but each Project must continue to "fit in", build, install, avoid conflicts, etc.

[Note: the following Service Release dates have not yet been added to the above calender, but will be soon.]

SR1

GA: 9/24/2010 (last Friday of September)

In the SR1 rampdown, as shown in the following table, there will be 4 RCs, each spanning one week, with projects staging themselves into the build just one day apart.

Projects may elect not to participate in a particular RC, but have an obligation to fix any build problems that are related to their code or p2 repository.

RC1 will be in the middle of August, several weeks earlier than previous years, just to make sure we can still build, etc. Subsequent RCs dates are similar to previous years, except a "quiet" final week is also planned. (It is normally pretty quiet anyway ... this just formalizes it).

The Final week before GA will not have any further builds or contributions, but instead be reserved for final adopter testing and preparation and only emergency fixes for very serious regressions will be considered.

The 'promote' day (9/23) will be the day projects put final zips in their final spot (without displaying them) so they can propagate through the mirroring system. Similar for the p2 repository -- it will be replaced on 9/23 with the new content so it can start mirroring. Note: there is no plan to retain multiple versions in the common discovery repository (unless someone volunteers to do what's required to make that happen). At noon on 9/24 projects can make their final maintenance releases visible.