ROS2: 버전 (Versions)

ROS2 버전 관리 개요

ROS2는 소프트웨어 패키지로서 버전 관리를 통해 지속적인 업데이트와 개선을 받는다. 각 버전은 특정 기능 집합, API 안정성, 그리고 장기 지원(LTS) 여부에 따라 구분되며, 이러한 버전을 체계적으로 정리한 것이 ROS2 버전 표다. 이 표는 ROS2의 각 버전이 언제 릴리스되었으며, 언제까지 지원되는지를 명확히 나타낸다.

ROS2 버전 명명 규칙

ROS2 버전은 알파벳 순서에 따라 '지리적 명소'의 이름을 따서 명명된다. 예를 들어, 'Ardent', 'Bouncy', 'Crystal' 등의 이름이 있다. 각 버전의 이름은 해당 버전의 주요 업데이트가 포함된 릴리스를 의미하며, 이를 통해 사용자는 특정 버전의 기능 및 안정성을 예상할 수 있다.

릴리스 주기와 지원 주기

ROS2는 정기적인 릴리스 주기를 따른다. 일반적으로 6개월에서 1년 사이에 새로운 버전이 릴리스되며, 이는 새로운 기능 추가, 기존 기능의 개선, 그리고 버그 수정이 포함된다. 또한, 일부 버전은 장기 지원(LTS) 버전으로 지정되며, 일반적으로 5년간의 지원을 받게 된다. 이 기간 동안 LTS 버전은 보안 패치 및 주요 버그 수정을 포함한 유지보수가 제공된다.

비 LTS 버전

비 LTS 버전은 릴리스 후 일반적으로 약 1년 간의 지원을 받는다. 이 기간 동안 해당 버전은 주요 버그 수정과 소규모 업데이트를 받으며, 그 후 지원이 종료된다. 비 LTS 버전은 최신 기술과 기능을 시험적으로 사용하고자 하는 개발자들에게 유용하다.

LTS 버전

LTS 버전은 ROS2의 핵심 안정성을 보장하기 위해 릴리스되는 버전으로, 일반적으로 약 5년간의 지원을 받는다. 이는 산업용 애플리케이션이나 장기간의 프로젝트에서 ROS2를 사용할 때 특히 중요하다. LTS 버전은 안정적인 API와 광범위한 테스트를 통해 개발되며, 장기간에 걸쳐 보안 패치와 중요한 버그 수정이 이루어진다.

ROS2 버전

ROS2 버전 표는 각 버전의 이름, 릴리스 날짜, 그리고 지원 종료 날짜를 포함한다. 예를 들어, 아래와 같은 형태로 나타난다:

버전 이름
릴리스 날짜
지원 종료 날짜
LTS 여부

Ardent

2017-12-08

2018-06-08

비 LTS

Bouncy

2018-07-02

2019-04-10

비 LTS

Crystal

2018-12-14

2019-12-14

비 LTS

Dashing

2019-05-31

2021-05-31

LTS

Eloquent

2019-11-22

2020-11-23

비 LTS

Foxy

2020-06-05

2023-06-05

LTS

Galactic

2021-05-23

2022-11-23

비 LTS

Humble

2022-05-23

2027-05-23

LTS

Iron

2023-05-23

2024-11-23

비 LTS

이 표를 통해 연구자들은 현재 사용 중인 ROS2 버전이 언제까지 지원되는지를 파악할 수 있으며, 프로젝트 계획에 따라 적절한 버전을 선택할 수 있다. LTS 버전의 경우 더 오랜 기간 동안 안정적인 환경을 제공하므로, 장기적인 프로젝트에서는 LTS 버전을 사용하는 것이 권장된다.

버전 간의 호환성 및 마이그레이션

각 버전은 이전 버전과의 호환성을 일정 부분 유지하지만, 중요한 변화가 있을 경우 마이그레이션 가이드가 제공된다. 이러한 가이드를 통해 사용자는 새로운 버전으로의 전환을 용이하게 할 수 있다. 특히, API의 변경이나 새로운 기능 추가가 주요 이슈일 경우, 이러한 마이그레이션 가이드는 필수적이다.


관련 자료:

  • ROS2 Documentation: https://docs.ros.org/en/rolling/Releases.html

  • ROS2 Release Schedule: https://index.ros.org/doc/ros2/Releases/

  • Open Robotics Blog: https://www.openrobotics.org/blog

Last updated