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 to REP-0003 for ROS Kinetic Kame #106

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

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
51 changes: 48 additions & 3 deletions rep-0003.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ Status: Active
Type: Informational
Content-Type: text/x-rst
Created: 21-Sep-2010
Post-History: 21-Sep-2010, 17-Jan-2011, 13-Jan-2015
Post-History: 21-Sep-2010, 17-Jan-2011, 13-Jan-2015, 21-Sep-2015


Abstract
Expand Down Expand Up @@ -115,7 +115,6 @@ Hydro Medusa (Aug 2013)

- For rosbuild based packages can still be built from source.


Indigo Igloo (May 2014)
-----------------------
- Ubuntu Saucy (13.10)
Expand Down Expand Up @@ -169,6 +168,52 @@ Exact or Series Requirements:

Buildsystem support:

- catkin:

- build from source
- release for binary packaging
- wiki documentation
- continuous integration

- rosbuild:

- build from source

Kinetic Kame (May 2016 - May 2021)
----------------------------------
Required Support for:

- Ubuntu Wily (15.10)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

k-turtle will not target trusty and vivid but 16.04 according to http://wiki.ros.org/Distributions/ReleasePolicy

- Ubuntu Xenial (16.04)

Minimum Requirements:

- C++11
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From todays meeting: C++11 only.

But we should clarify that we won't change existing API to leverage it (e.g. not switching from boost::shared_ptr to std::shared_ptr).


- GCC 4.9 on Linux, as it's the version that Debian Jessie ships with

- Python 2.7
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No change there. ROS 1 still uses Python 2.7.


- Python 3.4 not required, but testing against it is recommended

- Lisp SBCL 1.2.4
- CMake 3.0.2
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From todays meeting: add rational why.


- Debian Jessie ships with CMake 3.0.2

- Boost 1.55

- Debian Jessie ships with Boost 1.55

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are there no API differences between Boost 1.55 (debian) and 1.58 (ubuntu)? Just a bit concerned.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We had minor issues with boost 1.57 and 1.58 in gazebo:

The fixes were backwards compatible (didn't require ifdef's). For comparison, the switch to boost 1.50 did require ifdef's:

This isn't an exhaustive answer, but I haven't seen any deal-breaker API changes between 1.55 and 1.58.


Exact or Series Requirements:

- Ogre3D 1.9.x
- Gazebo 7
- PCL 1.7.x
- OpenCV 3.1.x

Buildsystem support:

- catkin:

- build from source
Expand Down Expand Up @@ -205,7 +250,7 @@ While we mainly develop with gcc, no use of compiler-specific features is allowe
without proper use of macros to allow use on other platforms.

Use of C++11/C++14 features and filesystem/networking/etc... TS's (Technical Specifications) is allowed if they are checked for at configure time and equivalent functionality can be provided with the extra compiler features.
We will continue using only C++03 features to preserve backwards compatibility, but code must also compile with C++11 compilers, i.e. when ``-std=c++11`` is used.
Support for C++11 is now a compiler requirement, but the API of the packages included in desktop-full will not use any C++11-specific feature. External packages are encouraged to follow this guideline.

For a given release we allow use of Boost libraries that match the version provided in our
low-water-mark Ubuntu version.
Expand Down