Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update REP 3 for hydro and updated rules for target platforms #26

Merged
merged 1 commit into from
Feb 26, 2013
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 25 additions & 12 deletions rep-0003.rst
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,17 @@ Groovy Galapagos (Oct 2012)
- Python 2.7
- CMake 2.8.3

Hydro Medusa (Apr 2013)
-----------------------
- Ubuntu Precise
- Ubuntu Quantal
- Ubuntu Raring
- C++03
- Boost 1.48
- Lisp SBCL 1.0.x
- Python 2.7+ (but < 3) and 3.3+
- CMake 2.8.3

Motivation
==========

Expand All @@ -103,19 +114,20 @@ Rationale
Target platforms for future releases are speculative and are based on
consulting Ubuntu's release and end-of-life schedule [1]_.

The approximate formula for choosing target platforms is:
The following rules are used for choosing the target platforms. They
aim to limit the number of supported Ubuntu version for each ROS
distribution to a small number (<= 3) as well as provide a reasonable
upgrade path for users as well as maintainers of packages.

1st after LTS, e.g. C Turtle:
LTS +/- 1
* The latest Ubuntu version (released around the same time as the ROS
distribution).

2nd after LTS, e.g. Diamondback:
LTS +2
* The current Ubuntu LTS version.

3rd after LTS, e.g. Electric:
LTS +3
* The previous Ubuntu version.

4th after LTS, 1st before next LTS:
Rebase: target platforms selected to enable migration to next LTS
* At least one Ubuntu version which is common with the two previous
ROS distributions.

Any "formula" requires making assumptions about future Ubuntu library
choices and other crystal-ball projections. While we will do our best
Expand Down Expand Up @@ -165,9 +177,10 @@ Python
Our intent with Python support is to track the minimum Python version
provided in the supported Ubuntu platforms, as well as survey other
commonly used OS platforms that support ROS to determine a reasonable
minimum target. There is currently no plan to jump to Python 3k,
though will accept patches that provide dual compatibility with Python
2.x and Python 3k.
minimum target. As of Raring Ubuntu will ship with Python 3 by default.
While we still support Ubuntu versions which ship with Python 2 by default
all Python scripts should provide dual compatibility with Python
2.7+ and Python 3.3+.

Core Stacks
===========
Expand Down