diff --git a/rep-0003.rst b/rep-0003.rst index 50983be37..5970ddb6f 100644 --- a/rep-0003.rst +++ b/rep-0003.rst @@ -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 ========== @@ -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 @@ -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 ===========