thanks all for sharing requirements and opinions
the plan was not to break the command line usage
i did not mean only CLI but all interfaces exposed to user application.
Many users have moved on to create their own solutions for record and replay or used rosbag - how is this better than breaking the API/ABI and to help the users to update?
i was wondering who
Many users here. i was thinking that we cannot exactly know who actually uses…we eventually break someone’s CI or build system with unexpected modification.
leveldb does not solve all of the issues that the rosbag2 had, especially on the transport level.
we always have (will have) issues and improvement, i wasn’t clear on why and how come this improvement is an exception. at least we should have logics to make that decision, unless it would be easy to break the userspace again.
Also please note that Robotec.AI’s report 1 concludes that the sqlite3 performance is now actually slightly better than leveldb.
yes, i am aware of that. which is good thing for everyone. probably we don’t have to maintain the leveldb implementation anymore! (actually we’ve been considering details and scenarios including aarch64 platform) btw, we are not pushing leveldb at all, we just want to have something works for us.
The answer to the latter is certainly no and I vaguely recall rare situations from the former (e.g. indigo ABI break in roscpp after update? - ROS Answers: Open Source Q&A Forum).
API breaks happened before, e.g. Split of joint_state_publisher and joint_state_publisher_gui and the corresponding PR Split jsp and jsp gui by clalancette · Pull Request #31 · ros/joint_state_publisher · GitHub . It confused the user base, but in the end it somehow went through…
appreciate for pointing these out! so after all it happened before. and according to ROS 2 developer guide and https://semver.org/ we need to bump the major version to break the API. that is said it is no hard guarantee? please correct me if i am wrong, this is really important as in architecture and entire build system.
thanks in advance