Changelog#
CARET#
v0.4.22 _ Dec 12, 2023#
- Update Support for analysis of trace data without
--light
option for applications using GenericPublisher, GenericSubscription. (caret_analyze #432, caret_analyze #445)
- Update Fixed a bug when address duplication occurs. (caret_analyze #342)
- Update Update some API to support sim_time. (caret_analyze #433, ros2caret #152)
v0.4.21 _ Nov 27, 2023#
- Update: Update maintainer. (caret_analyze #422, caret_analyze_cpp_impl #172, caret_trace #244, ros2caret #143)
- New: Add trace points to GenericPublisher and GenericSubscription. (rclcpp #7, caret_trace #220, caret_trace #228, caret_doc #309)
- Update: Fix for mypy error in CARET_analyze PR. Support for mypy v1.x. (caret_analyze #425)
- Update: Changed Y-axis from probability to number of samples for better readability of graphs. (caret_analyze #430, caret_doc #313)
v0.4.20 _ Nov 13, 2023#
- Update: Update documentation with changes to ros2 caret command. (caret_doc #295)
- Update: Update tracepoint event 'caret_init'. (caret_doc #304)
- Update: Support for bokeh 3.x. (caret_analyze #391)
- Update: Change in the method of 'Timeseries'. The method of calculating ResponseTime for the best and worst-with-external-latency cases has been changed to be the same as for
all
andworst
case. (caret_analyze #323)
- New: Changed the CI for caret_analyze to use cart_analyze_cpp_impl. (caret_analyze #405)
- Update: Unify graph captions for
path
. (caret_analyze #410)
v0.4.19 _ Oct 31, 2023#
- Update: Improvement of option specification of ros2 caret command. (ros2caret #129), (caret_doc #287), (caret #176)
- Update: Version update support for multimethod. (caret_analyze #403), (caret_analyze #398)
v0.4.18 _ Oct 16, 2023#
- New: Supported for iron tracepoint. (caret_analyze #318), (caret_trace #150), (ros2caret #84), (ros2caret #86)
- Humble trace data and its analysis will still be available in later versions.
- New: Added immediate recoding option to
ros2caret
. (ros2caret #123) - New: Added an option to ros2caret to specify the size of the Lttng buffer. (ros2caret #85)
v0.4.17 _ Oct 03, 2023#
- Update: Improved
case
option for calculating the elapsed time specified for functions that graph response time. (caret_analyze #339), (caret_analyze #355)- Added new "all" option, which uses all input times in the same cycle to calculate the elapsed time.
- Renamed "worst" option to "worst-with-external-latency".
- Added new "worst" option, which uses the worst of all input times in the same cycle to calculate the elapsed time.
CARET<0.4.17 | CARET>=v0.4.7 |
---|---|
N/A | "all" |
"best" | "best" |
N/A | "worst" |
"worst" | "worst-with-external-latency" |
- Update: Added
create_response_time_histogram_plot
function to graph response time as histogram. (caret_analyze #349) - Fix: Improved measurement leaks in the first measurement after the host machine has been started up. (caret #142)
- Removed unnecessary dependent modules from caret_analyze_cpp_impl. (caret_analyze_cpp_impl #142), (caret_analyze #332)
v0.4.16.1 _ Sep 21, 2023#
- Fix: Fixed an issue that prevented CARETmeasurement when using cyclonedds 0.10.x. (caret #121)
- New: Added API to plot the response time of Paths as timeseries. (caret_analyze #322)
- Changed to temporarily specify the version of
setuptools
to be installed, as the latestsetuptools
causes error during CARET building. (caret_analyze #330)
v0.4.15 _ Sep 4, 2023#
- Updated the version of humble branch in tier4/rclcpp repository, which is forked from ros2/rclcpp, from 16.0.1 to 16.0.5. (rclcpp #4)
- Refactored and added APIs to calculate response time, these are a preparation to add options for visualizing graph in the future update. (caret_analyze #310), (caret_analyze #313), (caret_analyze #319)
- Fixed typo in CMakeLists.txt. (caret_analyze_cpp_impl #131)
- Specified Pandas library version as '<2.1.0' to avoid problems with the Pandas library 2.1.0. (caret_analyze #324)
- Fixed to force loading process to ignore the second and subsequent callbacks even if "Duplicated callback id" occurs during CARET analyzing. (caret_analyze #314)
v0.4.14 _ Aug 21, 2023#
- Supported for function argument changes in
ros/ros2_tracing
. This support is in preparation for functionality improvements that will make rebuilding of the measurement application unnecessary. (rclcpp #2), (ros2_tracing #5), (caret_trace #136), (caret_analyze #302), (caret_doc #204)- This change affects trace data compatibility. However, this only affects cases where trace data captured after this update is analyzed by caret_analyze before this update. Please see the table below for the supported combinations.
trace data (<=0.4.13) | trace data (>=v0.4.14) | |
---|---|---|
caret_analyze (<=v0.4.13) | Supported | Unsupported |
caret_analyze (>=v0.4.14) | Supported | Supported |
- Adjusted Lttng buffer size to appropriate value. (ros2_tracing #6)
- Fixed a build error that occurred in environments older than Python 3.10. (ros2caret #81)
v0.4.13 _ Jul 24, 2023#
- Fixed a bug that delayed starting a measurement after
caret record
is launched depending on the time elapsed after the application being measured was launched. (caret_trace #129)
v0.4.12 _ Jul 10, 2023#
- Fixed a bug in the Plot class API that could not create graphs correctly when the
xaxis_type='sim_time'
option was specified. (caret_analyze #276), (caret_analyze #306) - Fixed a bug that caused incorrect warnings to be output when using
ros2 caret check_ctf
. (caret_analyze #308)
v0.4.11 _ Jun 26, 2023#
- Applied to the type hinting for generics in standard collections adopted from Python 3.9. (caret_analyze #294), (caret_analyze #299)
- Fixed a segmentation fault problem that occurred depending on the condition of the data analyzed by caret_analyze. (caret_analyze_cpp_impl #79)
- Added
ros2 caret version
command to get the CARET version. (ros2caret #69)
v0.4.10 _ Jun 12, 2023#
- Update: Changed trace points used to tie records of inter-process communication. This change affects trace data compatibility. However, this only affects cases where trace data captured after this update is analyzed by caret_analyze before this update. In that case, update caret_analyze (caret_analyze #296), (caret_trace #113), (caret_doc #191), (ros2caret #70)
- Please see the table below for the supported combinations
trace data (<=0.4.9) | trace data (>=v0.4.10) | |
---|---|---|
caret_analyze (<=v0.4.9) | Supported | Unsupported |
caret_analyze (>=v0.4.10) | Supported | Supported |
- Added remove functions to modify intra-node data path:
remove_variable_passing
andremove_publisher_callback
(caret_analyze #297)
v0.4.9 _ May 15, 2023#
- Update:Improved path analysis to analyze paths that contain the same symbol object (caret_analyze #261), (caret_doc #183)
- Improved Plot class not to plot on a graph when communication is not established (caret_analyze #291), (caret_doc #184)
- Removed old modules:
node_graph
andcallback_graph
(caret_analyze #290)
v0.4.8 _ May 1, 2023#
- Removed deprecated interface such as
message_flow
(caret_analyze #179), (caret_analyze #274), (caret_analyze #282) - Reduced warnings when loading trace data (caret_analyze #284)
v0.4.7 _ Apr 17, 2023#
- Refactored the Plot package design (caret_analyze #267), (caret_analyze #275), (caret_analyze #277), (caret_analyze #278), (caret_analyze #279), (caret_analyze #280)
v0.4.6 _ Apr 3, 2023#
- New: Added function to visualize response time with the stacked bar graph(caret_analyze #265, caret_analyze #259, caret_doc #169)
- Update: Added selective path definition to include or exclude first and last callback execution (caret_analyze #263, caret_analyze #271, caret_analyze #272, caret_analyze #273)
- Added a new function to get difference between two Architecture objects (caret_analyze #245, caret_doc #168)
- Removed deprecated interface such as
callback_sched
andPlot.create_*_plot
(caret_analyze #266) - Refactored visualization API such as
message_flow
(caret_analyze #267)
v0.4.5 _ Mar 20, 2023#
- Enhanced the trace filtering to exclude selected DDS events (caret_trace #101)
- Added the unit to the label of y-axis on time-series graph (caret_analyze #256)
- Refactored the Plot package (caret_analyze #257, caret_analyze #258)
- Added the docstring for explaining rename methods for Architecture object (caret_analyze #253)
v0.4.4 _ Feb 21, 2023#
- Fixed the time format of the time-series graphs (caret_analyze #255)
- Added the design documentation for trace filtering to exclude events in DDS-layer (caret_doc #158)
- Moved
get_range()
function torecord
package (caret_analyze #254)
v0.4.3 _ Feb 10, 2023#
- Fixed the bug preventing
check_ctf
from running properly after supporting activation/deactivation on runtime (caret_analyze #251) - Suppressed update frequency of progress bar from
tqdm
when reading trace data (caret_analyze #248) - Fixed incorrect annotation from
list
toList
(caret_analyze #252) - Changed
setup_caret.bash
script to prompt users to install the packages (caret #72)
v0.4.2 _ Jan 23, 2023#
- Added lightweight recording option to
ros2caret
(ros2caret #63) - Removed old interface of
Plot.create_callback_jitter_plot
(caret_analyze #231) - Refactored
Plot.create_callback_scheduling_plot
(caret_analyze #240) - Added new API to combine two paths found by
Architecture.search_paths()
(caret_analyze #224) - Fixed the bug in
Records
class (caret_analyze #246) - Applied minor refactoring (caret_analyze #244, caret_analyze #243, caret_analyze #237, caret_analyze #234)
- Suppressed warning message outputted during runtime recording (caret_analyze #238, caret_analyze #236)
- Added
construction_order
item to identify multiple callbacks which have common symbol (caret_analyze #225)
v0.4.1 _ Dec 26, 2022#
- New: Added functions to assign intra-node data path with
message_context
(caret_analyze #196) - Update: Changed design of visualization API for refactoring to avoid usage of Pandas (caret_analyze #116, caret_analyze #167, caret_analyze #168, caret_analyze #170)
- Added configure file to control log level to suppress warning message (caret_analyze #220)
- Changed behavior of visualization to output empty graph if inputted data does not have any data rather than raising exception (caret_analyze #223)
- Fixed
ValueError
, whencreate_publish_subscription_frequency_plot
is called with being inputted empty object (caret_analyze #227) - Added metric name to tooltip for identifying plots on a graph
v0.4.0 _ Dec 16, 2022#
- New: Added a new feature to start, stop, and resume even recording whenever users want to (caret_trace #68, caret_analyze #190, ros2caret #48, and caret_doc #126)
v0.3.4 _ Dec 12, 2022#
- New: Added functions to rename subsystems in Architecture object like executor, node, callback and topic (caret_analyze#156)
- Suppressed warning messages, which are outputted because
service
event is not supported, during trace data loading (caret_analyze#192) - Fixed bug which calculated incorrect period or frequency (caret_analyze#213)
- Fixed error messages from
Mypy
(caret_analyze#211)
v0.3.3 _ Nov 28, 2022#
- Added guidances for a beginner to avoid getting stuck in unexpected cases (caret_analyze #200 and caret_analyze #186)
- Added
publishers
andsubscriptions
properties toArchitecture
andApplication
classes (caret_analyze #179, caret_analyze #180) - Added function to update cache file named as
caret_converted
(caret_analyze#189) - Suppressed unnecessary warnings in
check_caret_rclcpp
(ros2caret #53, ros2caret #54) - Improved documentation of installation (caret_doc #111), configuration (caret_doc #112), visualization (caret_doc #98), and design (caret_doc#106)
- Fixed a bug which makes incorrect graphs (caret_analyze #201)
v0.3.2 _ Nov 14, 2022#
- Improved warning messages of caret_analyze (caret_analyze #144, caret_analyze #158, caret_analyze #162, caret_analyze #172, caret_analyze #182)
- Added properties of
publishers
andsubscriptions
toApplication
andArchitecture
object(caret_analyze #179) - Improved ros2caret(ros2caret #44, ros2caret #50)
- Enlarged buffer size(ros2_tracing #2)
- Added some minor changes (caret_analyze #183, caret_analyze #187)
v0.3.1 _ Oct 31, 2022#
- Added record function to ros2caret for upcoming feature. (ros2caret #38)
- Added function to display histogram for response time (caret_analyze #165)
- Added API to calculate period and latency (caret_analyze #167, caret_analyze #168)
- Fixed some bugs (caret_analyze #141, caret_analyze #153, caret_analyze #157)
- Refactored
Architecture
object interface (caret_analyze) - Added some minor changes (caret_analyze #139, caret_analyze #146, caret_analyze #147, caret_analyze #151, caret_analyze #159, caret_analyze #162, caret_analyze #165, caret_analyze#171)
v0.3.0 _ Sept 26, 2022#
- Supported OS: Ubuntu 22.04
- Supported ROS Dist.: ROS Humble
- Imported to Ubuntu 22.04 and ROS Humble
- Added new feature to show response time (caret_analyze #96)
- Added new APIs to visualize frequency, period, and latency of publishes, subscriptions, and communications (caret_analyze #124, #130, #133, #134, #136, #140)
- Reduced memory consumption wasted for recorded data (caret_analyze #100)
- Launched caret_analyze API document
- Added small fixes
v0.2.3 _ July 14, 2022#
- Supported OS: Ubuntu 20.04
- Supported ROS Dist.: ROS Galactic
- Improved output message from
path.verify()
method - Improved view of graphs
- Added wildcard support for
Architecture.callbacks()
method - Added command line function to check trace data
- Fixed specification of
Architecture.search_paths()
method - Added function to extract duplicated timer callback
v0.2.2 _ May 2, 2022#
- Supported OS: Ubuntu 20.04
- Supported ROS Dist.: ROS Galactic
- Added feature to measure complicated node path
- Added feature to choose optional trace points
- Added
Architecture.search_paths()
method - Improved trace filtering function