diff --git a/MATLAB/log_plot.m b/MATLAB/log_plot.m
new file mode 100644
index 0000000..354c27e
--- /dev/null
+++ b/MATLAB/log_plot.m
@@ -0,0 +1,43 @@
+clear
+close all
+clc
+
+folder_path = './samples/sample4/joint_states_logs';
+files = dir(fullfile(folder_path, '*.csv'));
+
+folder_path_trajectroy = './samples/sample4/joint_trajectories';
+files_trajectroy = dir(fullfile(folder_path_trajectroy, '*.csv'));
+
+l = 2.5;
+u = 3.5;
+
+for k = 1:length(files)
+ figure(k)
+ grid on
+ file_name = files(k).name;
+ file_path = fullfile(folder_path, file_name);
+ % Example: Read the file
+ state = readtable(file_path);
+ if k == 1
+ offset = state.timestamp(1);
+ end
+ for i = 1:length(state.timestamp)
+ state.timestamp(i)=state.timestamp(i)-offset;
+ end
+ hold on
+
+ for s = 1:length(files_trajectroy)
+ file_name_trajectroy = files_trajectroy(s).name;
+ file_path_trajectroy = fullfile(folder_path_trajectroy, file_name_trajectroy);
+ % Example: Read the file
+ T = readtable(file_path_trajectroy);
+ for i=1:length(T.timestamp)
+ T.timestamp(i)=T.timestamp(i)-offset;
+ end
+ plot(T.timestamp, T.(file_name(1:end-4)), 'Color', [0 0 0])
+ dy = diff(T.(file_name(1:end-4))) ./ diff(T.timestamp);
+ x_mid = T.timestamp(1:end-1) + diff(T.timestamp)/2; % midpoints between x-values
+ plot(x_mid,dy,'Color',[1 0 0])
+ end
+
+end
\ No newline at end of file
diff --git a/MATLAB/log_plot_cart.m b/MATLAB/log_plot_cart.m
new file mode 100644
index 0000000..77da623
--- /dev/null
+++ b/MATLAB/log_plot_cart.m
@@ -0,0 +1,43 @@
+clear
+close all
+clc
+
+file = './samples/sample13/joint_states_cart_logs/cartesian.csv';
+
+folder_path_trajectroy = './samples/sample13/joint_trajectories_cart';
+files_trajectroy = dir(fullfile(folder_path_trajectroy, '*.csv'));
+
+l = 0;
+u = 60;
+state = readtable(file);
+offset = state.timestamp(1);
+for i = 1:length(state.timestamp)
+ state.timestamp(i)=state.timestamp(i)-offset;
+end
+val = ["x","y","z","roll", "pitch", "yaw"];
+for k = 1:6
+ figure(k)
+ grid on
+ hold on
+ plot(state.timestamp(state.timestamp >=l & state.timestamp <=u), state.(val(k))(state.timestamp >=l & state.timestamp <=u), 'Color',[1 0 0],'LineWidth',4, 'DisplayName','Transform');
+ title(val(k), 'FontSize',16)
+ xlabel('Time [s]', 'FontSize',30)
+ ylabel('Pos [m]', 'FontSize',30)
+ legend('FontSize',30)
+ legend show
+
+ for s = 1:length(files_trajectroy)
+ file_name_trajectroy = files_trajectroy(s).name;
+ file_path_trajectroy = fullfile(folder_path_trajectroy, file_name_trajectroy);
+ % Example: Read the file
+ T = readtable(file_path_trajectroy);
+ for i=1:length(T.timestamp)
+ T.timestamp(i)=T.timestamp(i)-offset;
+ end
+
+ plot(T.timestamp(T.timestamp >=l & T.timestamp <=u), T.(val(k))(T.timestamp >=l & T.timestamp <=u), 'Color', [0 0 0], 'HandleVisibility','off', 'LineWidth',2);
+
+ end
+ plot(T.timestamp(T.timestamp >=l & T.timestamp <=u), T.(val(k))(T.timestamp >=l & T.timestamp <=u), 'Color', [0 0 0], 'DisplayName','Trajectories', 'LineWidth',2);
+
+end
\ No newline at end of file
diff --git a/MATLAB/log_plot_subplots.m b/MATLAB/log_plot_subplots.m
new file mode 100644
index 0000000..dc8e1ec
--- /dev/null
+++ b/MATLAB/log_plot_subplots.m
@@ -0,0 +1,53 @@
+clear
+close all
+clc
+
+folder_path = './samples/sample13/joint_states_logs';
+files = dir(fullfile(folder_path, '*.csv'));
+
+folder_path_trajectroy = './samples/sample13/joint_trajectories';
+files_trajectroy = dir(fullfile(folder_path_trajectroy, '*.csv'));
+
+l = 0;
+u = 60;
+
+for k = 1:length(files)
+ figure(k)
+ grid on
+ file_name = files(k).name;
+ file_path = fullfile(folder_path, file_name);
+ % Example: Read the file
+ state = readtable(file_path);
+ if k == 1
+ offset = state.timestamp(1);
+ end
+ for i = 1:length(state.timestamp)
+ state.timestamp(i)=state.timestamp(i)-offset;
+ end
+ hold on
+ plot(state.timestamp(state.timestamp >=l & state.timestamp <=u), state.position(state.timestamp >=l & state.timestamp <=u), 'Color',[1 0 0], 'DisplayName', 'Position','LineWidth',4);
+ %plot(state.timestamp(state.timestamp >=l & state.timestamp <=u), state.velocity(state.timestamp >=l & state.timestamp <=u), 'Color',[0 1 0], 'DisplayName','Velocity')
+ %plot(state.timestamp(state.timestamp >=l & state.timestamp <=u), state.effort(state.timestamp >=l & state.timestamp <=u), 'Color',[0 0 1], 'DisplayName','Effort')
+ title(replace(file_name(1:end-4),'_',' '), 'FontSize',16)
+ xlabel('Time [s]', 'FontSize',30)
+ ylabel('Joint Angle [rad]', 'FontSize',30)
+ legend('FontSize',30)
+ legend show
+
+ for s = 1:length(files_trajectroy)
+ file_name_trajectroy = files_trajectroy(s).name;
+ file_path_trajectroy = fullfile(folder_path_trajectroy, file_name_trajectroy);
+ % Example: Read the file
+ T = readtable(file_path_trajectroy);
+ for i=1:length(T.timestamp)
+ T.timestamp(i)=T.timestamp(i)-offset;
+ end
+ if s == 1
+ plot(T.timestamp(T.timestamp >=l & T.timestamp <=u), T.(file_name(1:end-4))(T.timestamp >=l & T.timestamp <=u), 'Color', [0 0 0], 'DisplayName','Trajectories', 'LineWidth',2);
+ else
+ plot(T.timestamp(T.timestamp >=l & T.timestamp <=u), T.(file_name(1:end-4))(T.timestamp >=l & T.timestamp <=u), 'Color', [0 0 0], 'HandleVisibility','off', 'LineWidth',2);
+
+ end
+ end
+ plot(T.timestamp(T.timestamp >=l & T.timestamp <=u), T.(file_name(1:end-4))(T.timestamp >=l & T.timestamp <=u), 'Color', [0 0 0], 'DisplayName','Trajectories', 'LineWidth',2);
+end
\ No newline at end of file
diff --git a/osc_recieve.py b/osc_recieve.py
new file mode 100644
index 0000000..4051558
--- /dev/null
+++ b/osc_recieve.py
@@ -0,0 +1,14 @@
+from osc4py3.as_eventloop import *
+from osc4py3 import oscmethod as osm
+import time
+def handler(*args):
+ print(args)
+
+osc_startup()
+osc_udp_server("0.0.0.0", 8000, "osc_server")
+osc_method("/coordinates", handler, argscheme=osm.OSCARG_DATAUNPACK)
+
+
+while True:
+ osc_process()
+ time.sleep(0.01)
diff --git a/painting_robot.urdf b/painting_robot.urdf
new file mode 100644
index 0000000..b04edf3
--- /dev/null
+++ b/painting_robot.urdf
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ros2_ws/build/py_pubsub/colcon_build.rc b/ros2_ws/build/py_pubsub/colcon_build.rc
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/ros2_ws/build/py_pubsub/colcon_build.rc
@@ -0,0 +1 @@
+1
diff --git a/ros2_ws/build/py_pubsub/colcon_command_prefix_setup_py.sh b/ros2_ws/build/py_pubsub/colcon_command_prefix_setup_py.sh
new file mode 100644
index 0000000..c7ae8f0
--- /dev/null
+++ b/ros2_ws/build/py_pubsub/colcon_command_prefix_setup_py.sh
@@ -0,0 +1,2 @@
+# generated from colcon_core/shell/template/command_prefix.sh.em
+. "/BA/ros2_ws/install/tutorial_interfaces/share/tutorial_interfaces/package.sh"
diff --git a/ros2_ws/log/build_2025-03-27_14-22-13/events.log b/ros2_ws/log/build_2025-03-27_14-22-13/events.log
new file mode 100644
index 0000000..fa4fe5d
--- /dev/null
+++ b/ros2_ws/log/build_2025-03-27_14-22-13/events.log
@@ -0,0 +1,9 @@
+[0.000000] (-) TimerEvent: {}
+[0.002185] (-) JobUnselected: {'identifier': 'more_interfaces'}
+[0.002460] (-) JobUnselected: {'identifier': 'py_srvcli'}
+[0.002627] (-) JobUnselected: {'identifier': 'python_parameters'}
+[0.002684] (-) JobUnselected: {'identifier': 'tutorial_interfaces'}
+[0.003313] (py_pubsub) JobQueued: {'identifier': 'py_pubsub', 'dependencies': OrderedDict([('tutorial_interfaces', '/BA/ros2_ws/install/tutorial_interfaces')])}
+[0.003435] (py_pubsub) JobStarted: {'identifier': 'py_pubsub'}
+[0.032318] (py_pubsub) JobEnded: {'identifier': 'py_pubsub', 'rc': 1}
+[0.044342] (-) EventReactorShutdown: {}
diff --git a/ros2_ws/log/build_2025-03-27_14-22-13/logger_all.log b/ros2_ws/log/build_2025-03-27_14-22-13/logger_all.log
new file mode 100644
index 0000000..2bcb93b
--- /dev/null
+++ b/ros2_ws/log/build_2025-03-27_14-22-13/logger_all.log
@@ -0,0 +1,192 @@
+[0.088s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'py_pubsub']
+[0.088s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=False, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['py_pubsub'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.168s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.169s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.169s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.169s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.169s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.169s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.169s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.169s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.169s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/ros2_ws'
+[0.170s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.170s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.170s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.170s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.170s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.170s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.170s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.170s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.170s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.181s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.181s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.181s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.181s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.181s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.182s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.182s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.183s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.184s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.184s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.185s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.185s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.185s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.185s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.186s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.186s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.186s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.186s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.186s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.186s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.186s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.187s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.187s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.187s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.187s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.187s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.187s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.187s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.189s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extensions ['ignore', 'ignore_ament_install']
+[0.189s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extension 'ignore'
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extension 'ignore_ament_install'
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extensions ['colcon_pkg']
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extension 'colcon_pkg'
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extensions ['colcon_meta']
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extension 'colcon_meta'
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extensions ['ros']
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extension 'ros'
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extensions ['cmake', 'python']
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extension 'cmake'
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extension 'python'
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extensions ['python_setup_py']
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control) by extension 'python_setup_py'
+[0.191s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extensions ['ignore', 'ignore_ament_install']
+[0.191s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extension 'ignore'
+[0.191s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extension 'ignore_ament_install'
+[0.191s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extensions ['colcon_pkg']
+[0.191s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extension 'colcon_pkg'
+[0.191s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extensions ['colcon_meta']
+[0.191s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extension 'colcon_meta'
+[0.191s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extensions ['ros']
+[0.191s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extension 'ros'
+[0.192s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extensions ['cmake', 'python']
+[0.192s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extension 'cmake'
+[0.192s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extension 'python'
+[0.192s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extensions ['python_setup_py']
+[0.192s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_states_control/__pycache__) by extension 'python_setup_py'
+[0.192s] Level 1:colcon.colcon_core.package_identification:_identify(src/more_interfaces) by extensions ['ignore', 'ignore_ament_install']
+[0.192s] Level 1:colcon.colcon_core.package_identification:_identify(src/more_interfaces) by extension 'ignore'
+[0.193s] Level 1:colcon.colcon_core.package_identification:_identify(src/more_interfaces) by extension 'ignore_ament_install'
+[0.193s] Level 1:colcon.colcon_core.package_identification:_identify(src/more_interfaces) by extensions ['colcon_pkg']
+[0.193s] Level 1:colcon.colcon_core.package_identification:_identify(src/more_interfaces) by extension 'colcon_pkg'
+[0.193s] Level 1:colcon.colcon_core.package_identification:_identify(src/more_interfaces) by extensions ['colcon_meta']
+[0.193s] Level 1:colcon.colcon_core.package_identification:_identify(src/more_interfaces) by extension 'colcon_meta'
+[0.193s] Level 1:colcon.colcon_core.package_identification:_identify(src/more_interfaces) by extensions ['ros']
+[0.193s] Level 1:colcon.colcon_core.package_identification:_identify(src/more_interfaces) by extension 'ros'
+[0.198s] DEBUG:colcon.colcon_core.package_identification:Package 'src/more_interfaces' with type 'ros.ament_cmake' and name 'more_interfaces'
+[0.199s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_pubsub) by extensions ['ignore', 'ignore_ament_install']
+[0.199s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_pubsub) by extension 'ignore'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_pubsub) by extension 'ignore_ament_install'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_pubsub) by extensions ['colcon_pkg']
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_pubsub) by extension 'colcon_pkg'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_pubsub) by extensions ['colcon_meta']
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_pubsub) by extension 'colcon_meta'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_pubsub) by extensions ['ros']
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_pubsub) by extension 'ros'
+[0.201s] DEBUG:colcon.colcon_core.package_identification:Package 'src/py_pubsub' with type 'ros.ament_python' and name 'py_pubsub'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_srvcli) by extensions ['ignore', 'ignore_ament_install']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_srvcli) by extension 'ignore'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_srvcli) by extension 'ignore_ament_install'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_srvcli) by extensions ['colcon_pkg']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_srvcli) by extension 'colcon_pkg'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_srvcli) by extensions ['colcon_meta']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_srvcli) by extension 'colcon_meta'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_srvcli) by extensions ['ros']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/py_srvcli) by extension 'ros'
+[0.203s] DEBUG:colcon.colcon_core.package_identification:Package 'src/py_srvcli' with type 'ros.ament_python' and name 'py_srvcli'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(src/python_parameters) by extensions ['ignore', 'ignore_ament_install']
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(src/python_parameters) by extension 'ignore'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(src/python_parameters) by extension 'ignore_ament_install'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(src/python_parameters) by extensions ['colcon_pkg']
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(src/python_parameters) by extension 'colcon_pkg'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(src/python_parameters) by extensions ['colcon_meta']
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(src/python_parameters) by extension 'colcon_meta'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(src/python_parameters) by extensions ['ros']
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(src/python_parameters) by extension 'ros'
+[0.205s] DEBUG:colcon.colcon_core.package_identification:Package 'src/python_parameters' with type 'ros.ament_python' and name 'python_parameters'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src/tutorial_interfaces) by extensions ['ignore', 'ignore_ament_install']
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src/tutorial_interfaces) by extension 'ignore'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src/tutorial_interfaces) by extension 'ignore_ament_install'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src/tutorial_interfaces) by extensions ['colcon_pkg']
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src/tutorial_interfaces) by extension 'colcon_pkg'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src/tutorial_interfaces) by extensions ['colcon_meta']
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src/tutorial_interfaces) by extension 'colcon_meta'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src/tutorial_interfaces) by extensions ['ros']
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src/tutorial_interfaces) by extension 'ros'
+[0.207s] DEBUG:colcon.colcon_core.package_identification:Package 'src/tutorial_interfaces' with type 'ros.ament_cmake' and name 'tutorial_interfaces'
+[0.207s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.207s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.207s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.207s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.207s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.226s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'more_interfaces' in 'src/more_interfaces'
+[0.226s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'python_parameters' in 'src/python_parameters'
+[0.226s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'tutorial_interfaces' in 'src/tutorial_interfaces'
+[0.226s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'py_srvcli' in 'src/py_srvcli'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'py_pubsub' build argument 'cmake_args' from command line to 'None'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'py_pubsub' build argument 'cmake_target' from command line to 'None'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'py_pubsub' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'py_pubsub' build argument 'cmake_clean_cache' from command line to 'False'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'py_pubsub' build argument 'cmake_clean_first' from command line to 'False'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'py_pubsub' build argument 'cmake_force_configure' from command line to 'False'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'py_pubsub' build argument 'ament_cmake_args' from command line to 'None'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'py_pubsub' build argument 'catkin_cmake_args' from command line to 'None'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'py_pubsub' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.226s] DEBUG:colcon.colcon_core.verb:Building package 'py_pubsub' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/ros2_ws/build/py_pubsub', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/ros2_ws/install/py_pubsub', 'merge_install': False, 'path': '/BA/ros2_ws/src/py_pubsub', 'symlink_install': False, 'test_result_base': None}
+[0.227s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.229s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.230s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/ros2_ws/src/py_pubsub' with build type 'ament_python'
+[0.231s] Level 1:colcon.colcon_core.shell:create_environment_hook('py_pubsub', 'ament_prefix_path')
+[0.232s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.233s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/ros2_ws/install/py_pubsub/share/py_pubsub/hook/ament_prefix_path.ps1'
+[0.236s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/ros2_ws/install/py_pubsub/share/py_pubsub/hook/ament_prefix_path.dsv'
+[0.237s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/ros2_ws/install/py_pubsub/share/py_pubsub/hook/ament_prefix_path.sh'
+[0.239s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.239s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.262s] ERROR:colcon.colcon_core.shell:Exception in shell extension 'sh': Expected ['.', '/BA/ros2_ws/build/py_pubsub/colcon_command_prefix_setup_py.sh', '&&', 'env'] to pass: The build time path "/ros2_ws/install/tutorial_interfaces" doesn't exist. Either source a script for a different shell or set the environment variable "COLCON_CURRENT_PREFIX" explicitly.
+
+Traceback (most recent call last):
+ File "/usr/lib/python3/dist-packages/colcon_core/shell/__init__.py", line 308, in get_command_environment
+ return await extension.generate_command_environment(
+ File "/usr/lib/python3/dist-packages/colcon_core/shell/sh.py", line 154, in generate_command_environment
+ env = await get_environment_variables(cmd, cwd=str(build_base))
+ File "/usr/lib/python3/dist-packages/colcon_core/shell/__init__.py", line 344, in get_environment_variables
+ output = await check_output(cmd, cwd=cwd, shell=shell)
+ File "/usr/lib/python3/dist-packages/colcon_core/subprocess.py", line 129, in check_output
+ assert not rc, f'Expected {args} to pass: {stderr_data}'
+AssertionError: Expected ['.', '/BA/ros2_ws/build/py_pubsub/colcon_command_prefix_setup_py.sh', '&&', 'env'] to pass: The build time path "/ros2_ws/install/tutorial_interfaces" doesn't exist. Either source a script for a different shell or set the environment variable "COLCON_CURRENT_PREFIX" explicitly.
+
+
+[0.263s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'bash' for command environment
+[0.263s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'zsh' for command environment
+[0.263s] ERROR:colcon.colcon_ros.task.ament_python.build:Could not find a shell extension for the command environment
+[0.274s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[0.275s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[0.275s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '1'
+[0.275s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[0.281s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[0.281s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[0.281s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[0.281s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[0.283s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[0.283s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[0.283s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/ros2_ws/install/local_setup.ps1'
+[0.285s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/ros2_ws/install/_local_setup_util_ps1.py'
+[0.287s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/ros2_ws/install/setup.ps1'
+[0.288s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/ros2_ws/install/local_setup.sh'
+[0.289s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/ros2_ws/install/_local_setup_util_sh.py'
+[0.290s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/ros2_ws/install/setup.sh'
+[0.291s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/ros2_ws/install/local_setup.bash'
+[0.292s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/ros2_ws/install/setup.bash'
+[0.293s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/ros2_ws/install/local_setup.zsh'
+[0.294s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/ros2_ws/install/setup.zsh'
diff --git a/test/collision.py b/test/collision.py
new file mode 100644
index 0000000..9c2a59c
--- /dev/null
+++ b/test/collision.py
@@ -0,0 +1,29 @@
+import pybullet as p
+
+# Start PyBullet simulation
+physicsClient = p.connect(p.DIRECT) # or p.GUI for graphical interface
+
+# Load your robot URDF
+robot_id = p.loadURDF("/ur10e.urdf", useFixedBase=True)
+
+# Set joint angles
+joint_angles = [0, 0, 3.141/2, 0, 0, 0]
+for i, angle in enumerate(joint_angles):
+ p.setJointMotorControl2(robot_id, i, p.POSITION_CONTROL, targetPosition=angle)
+
+# Step the simulation to update the robot's state
+p.stepSimulation()
+
+# Check if any link is colliding
+collision = False
+for i in range(p.getNumBodies()):
+ contact_points = p.getContactPoints(robot_id)
+ print(contact_points)
+ if len(contact_points) > 0:
+ collision = True
+ break
+
+if collision:
+ print("The robot has collided with itself.")
+else:
+ print("No collision detected.")
diff --git a/test/joint_states_recording.py b/test/joint_states_recording.py
new file mode 100644
index 0000000..84fbd92
--- /dev/null
+++ b/test/joint_states_recording.py
@@ -0,0 +1,78 @@
+import rclpy
+from rclpy.node import Node
+from sensor_msgs.msg import JointState
+import csv
+import os
+import roboticstoolbox as rtb
+
+class JointStateLogger(Node):
+ def __init__(self):
+ super().__init__('joint_state_logger_split')
+
+ # Subscribe to /joint_states topic
+ self.subscription = self.create_subscription(
+ JointState,
+ '/joint_states',
+ self.joint_states_callback,
+ 1000
+ )
+ self.robot = rtb.ERobot.URDF('/BA/ur10e.urdf')
+ # Directory to store logs
+ self.log_dir = '/BA/joint_states_logs'
+ os.makedirs(self.log_dir, exist_ok=True)
+
+ self.log_dir_cart = '/BA/joint_states_cart_logs'
+ os.makedirs(self.log_dir_cart, exist_ok=True)
+
+ def joint_states_callback(self, msg: JointState):
+ # Use ROS time as timestamp
+ stamp = msg.header.stamp
+ timestamp = f"{stamp.sec}.{str(stamp.nanosec).zfill(9)}"
+
+ for i, name in enumerate(msg.name):
+ # File per joint
+ file_path = os.path.join(self.log_dir, f"{name}.csv")
+
+ # If file doesn't exist, create with header
+ if not os.path.exists(file_path):
+ with open(file_path, mode='w', newline='') as f:
+ writer = csv.writer(f)
+ writer.writerow(["timestamp", "position", "velocity", "effort"])
+
+ # Get values if they exist
+ position = msg.position[i] if i < len(msg.position) else ''
+ velocity = msg.velocity[i] if i < len(msg.velocity) else ''
+ effort = msg.effort[i] if i < len(msg.effort) else ''
+
+ # Append to joint-specific CSV
+ with open(file_path, mode='a', newline='') as f:
+ writer = csv.writer(f)
+ writer.writerow([timestamp, position, velocity, effort])
+
+ file_path_cart = os.path.join(self.log_dir_cart, "cartesian.csv")
+ if not os.path.exists(file_path_cart):
+ with open(file_path_cart, mode='w', newline='') as f:
+ writer = csv.writer(f)
+ writer.writerow(["timestamp", "x", "y", "z", "roll", "pitch", "yaw"])
+ with open(file_path_cart, mode='a', newline='') as f:
+ writer = csv.writer(f)
+ [x,y,z] = self.robot.fkine(list([msg.position[-1]])+list(msg.position[:4])).t
+ [roll, pitch, yaw] = self.robot.fkine(list([msg.position[-1]])+list(msg.position[:4])).rpy()
+ writer.writerow([timestamp, x, y, z, roll, pitch, yaw])
+
+
+
+
+def main():
+ rclpy.init()
+ node = JointStateLogger()
+ try:
+ rclpy.spin(node)
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+
+if __name__ == '__main__':
+ main()
diff --git a/test/joint_trajectory_recording.py b/test/joint_trajectory_recording.py
new file mode 100644
index 0000000..3ee8c0b
--- /dev/null
+++ b/test/joint_trajectory_recording.py
@@ -0,0 +1,81 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory
+import csv
+import os
+import roboticstoolbox as rtb
+
+class JointTrajectoryLogger(Node):
+ def __init__(self):
+ super().__init__('joint_trajectory_logger_minimal')
+
+ # Folder to store CSV files
+ self.log_dir = '/BA/joint_trajectories'
+ os.makedirs(self.log_dir, exist_ok=True)
+
+ self.log_dir_cart = '/BA/joint_trajectories_cart'
+ os.makedirs(self.log_dir_cart, exist_ok=True)
+
+ # Subscriber to JointTrajectory messages
+ self.subscription = self.create_subscription(
+ JointTrajectory,
+ '/scaled_joint_trajectory_controller/joint_trajectory',
+ self.trajectory_callback,
+ 10
+ )
+
+ self.counter = 0
+ self.robot = rtb.ERobot.URDF('/BA/ur10e.urdf')
+
+ def trajectory_callback(self, msg: JointTrajectory):
+ self.counter += 1
+
+ # Create a unique filename
+ filename = f"trajectory_{self.counter:04d}.csv"
+ file_path = os.path.join(self.log_dir, filename)
+ # Header: timestamp + joint names
+ header = ['timestamp'] + msg.joint_names
+ recive_time = msg.header.stamp.sec + msg.header.stamp.nanosec * 1e-9
+ with open(file_path, mode='w', newline='') as file:
+ writer = csv.writer(file)
+ writer.writerow(header)
+
+ for point in msg.points:
+ timestamp = recive_time + point.time_from_start.sec + point.time_from_start.nanosec * 1e-9
+ row = [timestamp] + list(point.positions)
+ writer.writerow(row)
+
+ filename_cart = f"trajectory_{self.counter:04d}_cart.csv"
+ file_path_cart = os.path.join(self.log_dir_cart, filename_cart)
+ header = ['timestamp', 'x', 'y', 'z', 'roll', 'pitch', 'yaw']
+ # Convert joint angles to cartesian coordinates
+ joint_angles = point.positions
+
+ # Write to CSV
+ with open(file_path_cart, mode='w', newline='') as file:
+ writer = csv.writer(file)
+ writer.writerow(header)
+
+ for point in msg.points:
+ timestamp = recive_time + point.time_from_start.sec + point.time_from_start.nanosec * 1e-9
+ T = self.robot.fkine(point.positions)
+ x = T.t[0]
+ y = T.t[1]
+ z = T.t[2]
+ roll, pitch, yaw = T.rpy()
+ row = [timestamp, x, y, z, roll, pitch, yaw]
+ writer.writerow(row)
+
+def main():
+ rclpy.init()
+ node = JointTrajectoryLogger()
+ try:
+ rclpy.spin(node)
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+
+if __name__ == '__main__':
+ main()
diff --git a/test/load_robot.py b/test/load_robot.py
new file mode 100644
index 0000000..5d4899e
--- /dev/null
+++ b/test/load_robot.py
@@ -0,0 +1,46 @@
+import xml.etree.ElementTree as ET
+import roboticstoolbox as rtb
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+ robot_urdf = input("Enter the path to the URDF file: ")
+ tree = ET.parse(robot_urdf)
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+ robot = rtb.ERobot.URDF(robot_urdf)
+ joint_velocity_limits = {}
+
+ # Iterate over all joints in the URDF
+ for joint in root.findall('.//joint'):
+ joint_name = joint.get('name') # Get the name of the joint
+
+ # Look for the tag under each joint
+ limit = joint.find('limit')
+
+ if limit is not None:
+ # Extract the velocity limit (if it exists)
+ velocity_limit = limit.get('velocity')
+
+ if velocity_limit is not None:
+ joint_velocity_limits[joint_name] = float(velocity_limit)
+
+ while True:
+ try:
+ print("The cost mask determines which coordinates are used for the IK. Each element of the cost mask corresponds to a catesian coordinate [x, y, z, Rx, Ry, Rz].")
+ print("The cost mask [1, 1, 1, 0, 0, 0] means that the IK will only consider translation and no rotaion.")
+ cost_mask = [int(i) for i in input(f"Enter the cost mask (6 integers (1 or 0), of which <= {robot.n} are 1): ")]
+ if sum(cost_mask) <= robot.n and len(cost_mask) == 6:
+ break
+ else:
+ print(f"Invalid input. Expected 6 integers of which {robot.n if robot.n < 6 else 6} or less are 1.")
+ except ValueError:
+ print("Invalid input. Please enter integers only.")
+ print(f"Cost mask: {cost_mask}")
+
+ print(f'robot: {robot}')
+ print(f'joint names: {joint_names}')
+ print(f'joint velocity limits: {joint_velocity_limits}')
+
+
+if __name__ == '__main__':
+ main()
diff --git a/test/log_recording.py b/test/log_recording.py
new file mode 100644
index 0000000..a094cbb
--- /dev/null
+++ b/test/log_recording.py
@@ -0,0 +1,61 @@
+import rclpy
+from rclpy.node import Node
+from rcl_interfaces.msg import Log
+import csv
+import os
+
+class RosoutLogger(Node):
+ def __init__(self):
+ super().__init__('rosout_logger_csv')
+
+ # Log file path
+ self.log_dir = '/BA/rosout_logs'
+ os.makedirs(self.log_dir, exist_ok=True)
+ self.csv_file_path = os.path.join(self.log_dir, 'rosout_log.csv')
+
+ # Initialize CSV with header if it doesn't exist
+ if not os.path.exists(self.csv_file_path):
+ with open(self.csv_file_path, mode='w', newline='') as f:
+ writer = csv.writer(f)
+ writer.writerow(['timestamp', 'level', 'logger_name', 'message'])
+
+ # Subscribe to /rosout
+ self.subscription = self.create_subscription(
+ Log,
+ '/rosout',
+ self.rosout_callback,
+ 10
+ )
+
+ def rosout_callback(self, msg: Log):
+ # Format timestamp
+ timestamp = f"{msg.stamp.sec}.{str(msg.stamp.nanosec).zfill(9)}"
+
+ # Convert level integer to text
+ level_dict = {
+ Log.DEBUG: 'DEBUG',
+ Log.INFO: 'INFO',
+ Log.WARN: 'WARN',
+ Log.ERROR: 'ERROR',
+ Log.FATAL: 'FATAL'
+ }
+ level_text = level_dict.get(msg.level, f"LEVEL_{msg.level}")
+
+ # Write row to CSV
+ with open(self.csv_file_path, mode='a', newline='') as f:
+ writer = csv.writer(f)
+ writer.writerow([timestamp, level_text, msg.name, msg.msg])
+
+def main():
+ rclpy.init()
+ node = RosoutLogger()
+ try:
+ rclpy.spin(node)
+ except KeyboardInterrupt:
+ node.get_logger().info("Interrupted by user.")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+
+if __name__ == '__main__':
+ main()
diff --git a/test/rampfunction.py b/test/rampfunction.py
new file mode 100644
index 0000000..e69de29
diff --git a/test/timetag_test_pub.py b/test/timetag_test_pub.py
new file mode 100644
index 0000000..8d3fee9
--- /dev/null
+++ b/test/timetag_test_pub.py
@@ -0,0 +1,28 @@
+# Import needed modules from osc4py3
+from osc4py3.as_eventloop import *
+from osc4py3 import oscbuildparse
+import time
+
+# Start the system.
+osc_startup()
+
+# Make client channels to send packets.
+osc_udp_client("172.18.0.3", 8000, "aclientname")
+
+# Buils a complete bundle, and postpone its executions by 10 sec.
+exectime = time.time() + 10 # execute in 10 seconds
+stamp = oscbuildparse.unixtime2timetag(exectime)
+
+# Build a simple message and send it.
+msg = oscbuildparse.OSCMessage("/test/me", ",sift", ["text", 672, 8.871, stamp])
+osc_send(msg, "aclientname")
+
+# Build a message with autodetection of data types, and send it.
+msg = oscbuildparse.OSCMessage("/test/me", None, ["text", 672, 8.871])
+osc_send(msg, "aclientname")
+ # …
+osc_process()
+ # …
+
+# Properly close the system.
+osc_terminate()
\ No newline at end of file
diff --git a/test/timetag_test_sub.py b/test/timetag_test_sub.py
new file mode 100644
index 0000000..6fe5029
--- /dev/null
+++ b/test/timetag_test_sub.py
@@ -0,0 +1,19 @@
+# Import needed modules from osc4py3
+from osc4py3.as_allthreads import *
+from osc4py3 import oscmethod as osm
+from osc4py3 import oscbuildparse
+
+def handlerfunction(*args):
+ # Will receive message data unpacked in s, x, y
+ print(args[-1].sec)
+ print(oscbuildparse.timetag2unixtime(args[-1]))
+# Start the system.
+osc_startup()
+
+# Make server channels to receive packets.
+osc_udp_server("0.0.0.0", 8000, "anotherserver")
+
+# Associate Python functions with message address patterns, using default
+# argument scheme OSCARG_DATAUNPACK.
+osc_method("/test/me", handlerfunction, argscheme=osm.OSCARG_TYPETAGS + osm.OSCARG_DATAUNPACK)
+
diff --git a/ur10e.urdf b/ur10e.urdf
new file mode 100644
index 0000000..9040cd9
--- /dev/null
+++ b/ur10e.urdf
@@ -0,0 +1,542 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ur_robot_driver/URPositionHardwareInterface
+ 172.18.0.2
+ /opt/ros/humble/share/ur_client_library/resources/external_control.urscript
+ /opt/ros/humble/share/ur_robot_driver/resources/rtde_output_recipe.txt
+ /opt/ros/humble/share/ur_robot_driver/resources/rtde_input_recipe.txt
+ False
+ 50001
+ 50002
+ 0.0.0.0
+ 50004
+ 50003
+
+ True
+ 2000
+ 0.03
+ False
+ calib_5119701370761913513
+ 0
+ 0
+ 115200
+ 1
+ 1.5
+ 3.5
+ /tmp/ttyUR
+ 54321
+ 2
+
+
+
+
+
+
+ 0.0
+
+
+
+
+
+
+
+
+
+ -1.57
+
+
+
+
+
+
+
+
+
+ 0.0
+
+
+
+
+
+
+
+
+
+ -1.57
+
+
+
+
+
+
+
+
+
+ 0.0
+
+
+
+
+
+
+
+
+
+ 0.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ur5.urdf b/ur5.urdf
new file mode 100644
index 0000000..d9ed757
--- /dev/null
+++ b/ur5.urdf
@@ -0,0 +1,542 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ur_robot_driver/URPositionHardwareInterface
+ 172.18.0.2
+ /opt/ros/humble/share/ur_client_library/resources/external_control.urscript
+ /opt/ros/humble/share/ur_robot_driver/resources/rtde_output_recipe.txt
+ /opt/ros/humble/share/ur_robot_driver/resources/rtde_input_recipe.txt
+ False
+ 50001
+ 50002
+ 0.0.0.0
+ 50004
+ 50003
+
+ True
+ 2000
+ 0.03
+ False
+ calib_209549117540498681
+ 0
+ 0
+ 115200
+ 1
+ 1.5
+ 3.5
+ /tmp/ttyUR
+ 54321
+ 2
+
+
+
+
+
+
+ 0.0
+
+
+
+
+
+
+
+
+
+ -1.57
+
+
+
+
+
+
+
+
+
+ 0.0
+
+
+
+
+
+
+
+
+
+ -1.57
+
+
+
+
+
+
+
+
+
+ 0.0
+
+
+
+
+
+
+
+
+
+ 0.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/workspace/.DS_Store b/workspace/.DS_Store
new file mode 100644
index 0000000..46e8f7f
Binary files /dev/null and b/workspace/.DS_Store differ
diff --git a/workspace/build/joint_control/build/lib/joint_control/__init__.py b/workspace/build/joint_control/build/lib/joint_control/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/build/joint_control/build/lib/joint_control/cart_tcp_server.py b/workspace/build/joint_control/build/lib/joint_control/cart_tcp_server.py
new file mode 100644
index 0000000..6a8f244
--- /dev/null
+++ b/workspace/build/joint_control/build/lib/joint_control/cart_tcp_server.py
@@ -0,0 +1,108 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from osc4py3.as_eventloop import *
+from osc4py3 import oscmethod as osm
+import roboticstoolbox as rtb
+import spatialmath as sm
+import xml.etree.ElementTree as ET
+import time
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+ def __init__(self, robot, joint_names):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ '/scaled_joint_trajectory_controller/joint_trajectory',
+ 10
+ )
+
+ # Store received joint positions
+ self.joint_positions = [0.0] * len(joint_names)
+ self.joint_names = joint_names
+ self.robot = robot
+
+ osc_startup()
+ osc_udp_server("0.0.0.0", 8000, "osc_server")
+ print("Server started on 0.0.0.0:8000 \nready to receive messages in the following format: /tcp_coordinates [x, y, z, roll, pitch, yaw] optional: duration as last argument: /tcp_coordinates [x, y, z, roll, pitch, yaw, duration]")
+ # Register OSC handler
+ osc_method("/tcp_coordinates", self.tcp_coordinates_handler, argscheme=osm.OSCARG_DATAUNPACK)
+
+ def tcp_coordinates_handler(self, *args):
+ """Handles incoming OSC messages for tcp position."""
+ time1 = time.time()
+ if len(args) == len(self.joint_positions):
+ x, y, z, roll, pitch, yaw = args
+ duration = 4.0 # Default duration
+ elif len(args) == len(self.joint_positions) + 1:
+ x, y, z, roll, pitch, yaw, duration = args
+ else:
+ print("Invalid number of arguments")
+ return
+
+ # Create the desired end-effector pose
+ Tep = sm.SE3(x, y, z) * sm.SE3.RPY([roll, pitch, yaw], order='xyz')
+
+ # Compute the inverse kinematics to get the joint angles
+ #time1 = time.time()
+ #sol = self.robot.ikine_LM(Tep)
+ #print(f"Time taken for ERobot: {time.time() - time1}")
+ #time1 = time.time()
+ #sol = self.robot.ikine_LM(Tep, q0=self.joint_positions)
+ #print(f"Time taken for ERobot with initial guess: {time.time() - time1}")
+ #time1 = time.time()
+ #sol = self.robot.ets().ikine_LM(Tep)
+ #print(f"Time taken for ETS: {time.time() - time1}")
+ #time1 = time.time()
+ sol = self.robot.ik_LM(Tep, q0=self.joint_positions)
+ #print(f"Time taken for ETS with initial guess: {time.time() - time1}")
+ if sol[1]:
+ joint_positions = list(sol[0])
+ self.send_trajectory(joint_positions, duration)
+ #print(f"Computed joint positions: {joint_positions}")
+ else:
+ print("Inverse kinematics failed")
+ print(f"Frequency: {1/(time.time() - time1)} Hz")
+
+ def send_trajectory(self, joint_positions, duration=4.0):
+ """Publish a joint trajectory command to move the robot."""
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ point = JointTrajectoryPoint()
+ point.positions = joint_positions # Updated joint positions
+ point.time_from_start.sec = int(duration)
+ point.time_from_start.nanosec = int((duration - int(duration)) * 1e9)
+
+ msg.points.append(point)
+ self.publisher.publish(msg)
+ print(f"Updated joint positions: {joint_positions}")
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+
+ tree = ET.parse('/BA/robot.urdf')
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+ robot = rtb.ERobot.URDF('/BA/robot.urdf')
+
+ rclpy.init()
+
+ node = ScaledJointTrajectoryPublisher(robot.ets(), joint_names)
+
+ # Run both ROS 2 and OSC Server together
+ try:
+ while rclpy.ok():
+ osc_process() # Handle one OSC request at a time
+ rclpy.spin_once(node, timeout_sec=0.1) # Process ROS callbacks
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
\ No newline at end of file
diff --git a/workspace/build/joint_control/build/lib/joint_control/joint_angles_server.py b/workspace/build/joint_control/build/lib/joint_control/joint_angles_server.py
new file mode 100644
index 0000000..c5a7733
--- /dev/null
+++ b/workspace/build/joint_control/build/lib/joint_control/joint_angles_server.py
@@ -0,0 +1,80 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from osc4py3.as_eventloop import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+ def __init__(self, joint_names):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ '/scaled_joint_trajectory_controller/joint_trajectory',
+ 10
+ )
+
+ # Store received joint positions
+ self.joint_positions = [0.0] * len(joint_names)
+ self.joint_names = joint_names
+
+ osc_startup()
+ osc_udp_server("0.0.0.0", 8000, "osc_server")
+ print("Server started on 0.0.0.0:8000 \nready to receive messages in the following format: \n /joint_angles [joint_positions]; optional: duration as last element, default is 3sec")
+ # Register OSC handler
+ osc_method("/joint_angles", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+
+ def joint_angles_handler(self, *args):
+ """Handles incoming OSC messages for joint positions."""
+ if len(args) == len(self.joint_positions):
+ self.joint_positions = args
+ self.send_trajectory(self.joint_positions)
+ elif len(args) == len(self.joint_positions) + 1:
+ self.joint_positions = args[:-1]
+ self.send_trajectory(self.joint_positions, args[-1])
+ print(f'Duration: {args[-1]}')
+
+
+
+ def send_trajectory(self, joint_positions, duration=3.0):
+ """Publish a joint trajectory command to move the robot."""
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ point = JointTrajectoryPoint()
+ point.positions = joint_positions # Updated joint positions
+ point.time_from_start.sec = int(duration)
+ point.time_from_start.nanosec = int((duration - int(duration)) * 1e9)
+
+ msg.points.append(point)
+ self.publisher.publish(msg)
+ print(f"Updated joint positions: {self.joint_positions}")
+
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+
+ tree = ET.parse('/BA/robot.urdf')
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+
+ rclpy.init()
+
+ node = ScaledJointTrajectoryPublisher(joint_names)
+
+ # Run both ROS 2 and OSC Server together
+ try:
+ while rclpy.ok():
+ osc_process() # Handle one OSC request at a time
+ rclpy.spin_once(node, timeout_sec=0.1) # Process ROS callbacks
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/build/joint_control/build/lib/joint_control/trajectory_server.py b/workspace/build/joint_control/build/lib/joint_control/trajectory_server.py
new file mode 100644
index 0000000..6636b08
--- /dev/null
+++ b/workspace/build/joint_control/build/lib/joint_control/trajectory_server.py
@@ -0,0 +1,78 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from osc4py3.as_eventloop import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+ def __init__(self, joint_names):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ '/scaled_joint_trajectory_controller/joint_trajectory',
+ 10
+ )
+
+ # Store received joint positions
+ self.joint_positions = []
+ self.joint_names = joint_names
+
+ osc_startup()
+ osc_udp_server("0.0.0.0", 8000, "osc_server")
+ print("Server started on 0.0.0.0:8000 \n ready to receive messages in the following format: /joint_trajectroy [joint_positions] optional: duration as last argument")
+ # Register OSC handler
+ osc_method("/joint_angles", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+
+ def joint_angles_handler(self, *args):
+ """Handles incoming OSC messages for joint positions."""
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ n=2
+ for arg in args:
+ if len(arg) == len(self.joint_names):
+ point = JointTrajectoryPoint()
+ point.positions = list(arg)
+ point.time_from_start.sec = n
+ n+=2
+ point.time_from_start.nanosec = 0
+ msg.points.append(point)
+ elif len(arg) == len(self.joint_names) + 1:
+ point = JointTrajectoryPoint()
+ point.positions = list(arg[:-1])
+ point.time_from_start.sec = int(arg[-1])
+ point.time_from_start.nanosec = int((arg[-1] - int(arg[-1])) * 1e9)
+ msg.points.append(point)
+
+ self.publisher.publish(msg)
+ print("published joint positions")
+
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+
+ tree = ET.parse('/BA/robot.urdf')
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+
+ rclpy.init()
+
+ node = ScaledJointTrajectoryPublisher(joint_names)
+
+ # Run both ROS 2 and OSC Server together
+ try:
+ while rclpy.ok():
+ osc_process() # Handle one OSC request at a time
+ rclpy.spin_once(node, timeout_sec=0.1) # Process ROS callbacks
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/build/joint_control/build/lib/joint_control/trajectory_server_cart.py b/workspace/build/joint_control/build/lib/joint_control/trajectory_server_cart.py
new file mode 100644
index 0000000..eaf11e0
--- /dev/null
+++ b/workspace/build/joint_control/build/lib/joint_control/trajectory_server_cart.py
@@ -0,0 +1,106 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from osc4py3.as_eventloop import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+import roboticstoolbox as rtb
+import spatialmath as sm
+import numpy as np
+import time
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+ def __init__(self, joint_names, robot):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ self.robot = robot
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ '/scaled_joint_trajectory_controller/joint_trajectory',
+ 10
+ )
+
+ # Store received joint positions
+ self.joint_names = joint_names
+
+ osc_startup()
+ osc_udp_server("0.0.0.0", 6080, "osc_server")
+ print("Server started on 0.0.0.0:8000 \n ready to receive messages in the following format: /joint_trajectroy [tcp_coordinates0, tcp_coordinates1, ...] optional: timestamp as last element of each tcp_coordinates")
+ # Register OSC handler
+ osc_method("/joint_trajectory", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+
+ def joint_angles_handler(self, *args):
+ """Handles incoming OSC messages for joint positions."""
+ time1 = time.time()
+ print("Received joint positions")
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ joint_positions = [0.0] * len(self.joint_names)
+ steps = 30
+ vel = 0.4
+ if len(args[0]) == len(self.joint_names):
+ n=2.0
+ for i in range(len(args)-1):
+ x, y, z, roll, pitch, yaw = args[i]
+ Tep1 = sm.SE3(x, y, z) * sm.SE3.RPY([roll, pitch, yaw], order='xyz')
+ x, y, z, roll, pitch, yaw = args[i+1]
+ Tep2 = sm.SE3(x, y, z) * sm.SE3.RPY([roll, pitch, yaw], order='xyz')
+ cart_traj = rtb.ctraj(Tep1, Tep2, steps)
+ for j in range(steps-1):
+ sol = self.robot.ik_LM(cart_traj[j], q0=joint_positions)
+ dist = np.linalg.norm(cart_traj[j].t - cart_traj[j+1].t)
+ point = JointTrajectoryPoint()
+ point.positions = list(sol[0])
+ joint_positions = list(sol[0])
+ point.time_from_start.sec = int(n)
+ point.time_from_start.nanosec = int((n - int(n)) * 1e9)
+ n+=dist/vel
+ n+=0.1
+ msg.points.append(point)
+
+ elif len(args[0]) == len(self.joint_names) + 1:
+ for i in range(len(args)):
+ x, y, z, roll, pitch, yaw, timetag = args[i]
+ Tep = sm.SE3(x, y, z) * sm.SE3.RPY([roll, pitch, yaw], order='xyz')
+ x, y, z, roll, pitch, yaw = args[i+1][:-1]
+ Tep2 = sm.SE3(x, y, z) * sm.SE3.RPY([roll, pitch, yaw], order='xyz')
+ cart_traj = rtb.ctraj(Tep, Tep2, steps)
+ for Tep in cart_traj:
+ sol = self.robot.ik_LM(Tep, q0=joint_positions)
+
+ else:
+ print("Invalid number or format of arguments")
+
+ self.publisher.publish(msg)
+ print("published joint positions")
+ print(f'Frequency: {round(1/(time.time()-time1),2)} Hz')
+
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+
+ tree = ET.parse('/BA/robot.urdf')
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+ robot = rtb.ERobot.URDF('/BA/robot.urdf')
+ rclpy.init()
+
+ node = ScaledJointTrajectoryPublisher(joint_names, robot)
+
+ # Run both ROS 2 and OSC Server together
+ try:
+ while rclpy.ok():
+ osc_process() # Handle one OSC request at a time
+ rclpy.spin_once(node, timeout_sec=0.1) # Process ROS callbacks
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/build/joint_info/build/lib/joint_info/__init__.py b/workspace/build/joint_info/build/lib/joint_info/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_pub.py b/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_pub.py
new file mode 100644
index 0000000..b27a8b1
--- /dev/null
+++ b/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_pub.py
@@ -0,0 +1,101 @@
+import rclpy
+from rclpy.node import Node
+from sensor_msgs.msg import JointState
+from osc4py3.as_eventloop import *
+from osc4py3 import oscbuildparse
+
+class JointStateOSC(Node):
+ def __init__(self):
+ super().__init__('joint_states_osc')
+
+ # Create a ROS 2 subscriber to /joint_states topic
+ self.subscription = self.create_subscription(
+ JointState,
+ '/joint_states',
+ self.joint_states_callback,
+ 1 # Queue size
+ )
+
+ # Open Sound Control (OSC) Client settings
+ self.osc_ip = "127.0.0.1" # Replace with the target IP
+ self.osc_port = 8000 # Replace with the target port
+ # Start the OSC system
+ osc_startup()
+
+ # Make client channels to send packets
+ osc_udp_client(self.osc_ip, self.osc_port, "osc_client")
+
+ def joint_states_callback(self, msg):
+ """Callback function to handle incoming joint states."""
+ header = msg.header
+ joint_names = msg.name
+ joint_positions = msg.position
+ joint_velocity = msg.velocity
+ joint_effort = msg.effort
+
+ joint_names_str = "\n- ".join(joint_names)
+ joint_positions_str = "\n- ".join(map(str, joint_positions))
+ joint_velocity_str = "\n- ".join(map(str, joint_velocity))
+ joint_effort_str = "\n- ".join(map(str, joint_effort))
+
+ info = f"""
+---
+header:
+ stamp:
+ sec: {header.stamp.sec}
+ nanosec: {header.stamp.nanosec}
+name:
+- {joint_names_str}
+position:
+- {joint_positions_str}
+velocity:
+- {joint_velocity_str}
+effort:
+- {joint_effort_str}
+---"""
+
+ # Send the info message
+ msg_info = oscbuildparse.OSCMessage("/joint_states", None, [info])
+ msg_name = oscbuildparse.OSCMessage("/joint_states/name", None, [i for i in joint_names])
+ msg_position = oscbuildparse.OSCMessage("/joint_states/position", None, [i for i in joint_positions])
+ msg_velocity = oscbuildparse.OSCMessage("/joint_states/velocity", None, [i for i in joint_velocity])
+ msg_effort = oscbuildparse.OSCMessage("/joint_states/effort", None, [i for i in joint_effort])
+
+ bun = oscbuildparse.OSCBundle(oscbuildparse.OSC_IMMEDIATELY, [msg_info, msg_name, msg_position, msg_velocity, msg_effort])
+
+ osc_send(bun, "osc_client")
+ osc_process()
+ #print(f"Publishing: {info}")
+
+
+'''
+ # Send each joint state as an OSC message
+ for i, name in enumerate(joint_names):
+ #msg_sec = oscbuildparse.OSCMessage(f"/joint_states/header/sec", None, [header.stamp.sec])
+ #msg_nanosec = oscbuildparse.OSCMessage(f"/joint_states/header/nanosec", None, [header.stamp.nanosec])
+ msg_position = oscbuildparse.OSCMessage(f"/joint_states/{name}/position", None, [joint_positions[i]])
+ msg_velocity = oscbuildparse.OSCMessage(f"/joint_states/{name}/velocity", None, [joint_velocity[i]])
+ msg_effort = oscbuildparse.OSCMessage(f"/joint_states/{name}/effort", None, [joint_effort[i]])
+
+ bun = oscbuildparse.OSCBundle(oscbuildparse.unixtime2timetag(header.stamp.sec + header.stamp.nanosec), [msg_position, msg_velocity, msg_effort])
+ #bun = oscbuildparse.OSCBundle(oscbuildparse.OSC_IMMEDIATELY , [msg_position, msg_velocity, msg_effort])
+ osc_send(bun, "osc_client")
+ osc_process()
+ #print(f"OSC bundle sent for joint {name}")
+'''
+
+def main():
+ rclpy.init()
+ node = JointStateOSC()
+ print(f"Publishing joint states to OSC on {node.osc_ip}:{node.osc_port}...")
+ try:
+ rclpy.spin(node)
+ except KeyboardInterrupt:
+ print("shutting down...")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
\ No newline at end of file
diff --git a/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_sub.py b/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_sub.py
new file mode 100644
index 0000000..d96d3c5
--- /dev/null
+++ b/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_sub.py
@@ -0,0 +1,41 @@
+from osc4py3.as_eventloop import *
+from osc4py3 import oscmethod as osm
+import time
+
+def joint_states_handler(address, *args):
+ """Handler function to process incoming joint states."""
+ #print([i*180/3.141 for i in args]) # for printing joint angles in degrees
+
+ if address == "/joint_states":
+ print(args[0])
+
+def main():
+ ip = "0.0.0.0" # IP address to listen on
+ port = 8000 # Port to listen on
+
+ # Start the OSC system
+ osc_startup()
+
+ # Make server channels to receive packets
+ osc_udp_server(ip, port, "osc_server")
+
+ # Associate Python functions with message address patterns
+ osc_method("/joint_states", joint_states_handler, argscheme=osm.OSCARG_ADDRESS + osm.OSCARG_DATAUNPACK)
+
+ print(f"Listening for OSC messages on {ip}:{port}...")
+
+ try:
+ # Run the event loop
+ while True:
+ osc_process() # Process OSC messages
+ time.sleep(0.01) # Sleep to avoid high CPU usage
+
+ except KeyboardInterrupt:
+ print("")
+
+ finally:
+ # Properly close the system
+ osc_terminate()
+
+if __name__ == "__main__":
+ main()
\ No newline at end of file
diff --git a/workspace/build/joint_info/build/lib/joint_info/tcp_cart_pos.py b/workspace/build/joint_info/build/lib/joint_info/tcp_cart_pos.py
new file mode 100644
index 0000000..3d6e76b
--- /dev/null
+++ b/workspace/build/joint_info/build/lib/joint_info/tcp_cart_pos.py
@@ -0,0 +1,75 @@
+import rclpy
+from rclpy.node import Node
+from sensor_msgs.msg import JointState
+from osc4py3.as_eventloop import *
+from osc4py3 import oscbuildparse
+import roboticstoolbox as rtb
+import xml.etree.ElementTree as ET
+import numpy as np
+from scipy.spatial.transform import Rotation as R
+
+class JointStateOSC(Node):
+ def __init__(self, robot, joint_names):
+ super().__init__('joint_states_osc')
+
+ self.joint_names_urdf = joint_names
+ self.robot = robot
+
+ # Create a ROS 2 subscriber to /joint_states topic
+ self.subscription = self.create_subscription(
+ JointState,
+ '/joint_states',
+ self.joint_states_callback,
+ 1 # Queue size
+ )
+
+ # Open Sound Control (OSC) Client settings
+ self.osc_ip = "127.0.0.1" # Replace with the target IP
+ self.osc_port = 8000 # Replace with the target port
+
+ # Start the OSC system
+ osc_startup()
+
+ # Make client channels to send packets
+ osc_udp_client(self.osc_ip, self.osc_port, "osc_client")
+
+ def joint_states_callback(self, msg):
+ """Callback function to handle incoming joint states."""
+ header = msg.header
+ joint_names = msg.name
+ joint_positions = msg.position
+ joint_positions = [joint_positions[joint_names.index(joint)] for joint in self.joint_names_urdf]
+ tcp_pos = self.robot.fkine(joint_positions) #, end='ft_frame')
+ tcp_xyz = tcp_pos.t
+ tcp_rot = tcp_pos.R
+ rotation_vector = R.from_matrix(tcp_rot).as_rotvec()
+ translation = oscbuildparse.OSCMessage("/tcp_position_t", None, tcp_xyz.tolist())
+ osc_send(translation, "osc_client")
+ rotation = oscbuildparse.OSCMessage("/tcp_position_R", None, rotation_vector.tolist())
+ osc_send(rotation, "osc_client")
+ osc_process()
+ #print(f"Published TCP position: {tcp_pos}")
+
+
+
+def main():
+ rclpy.init()
+ robot = rtb.ERobot.URDF('/BA/robot.urdf')
+ tree = ET.parse('/BA/robot.urdf')
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+
+ node = JointStateOSC(robot, joint_names)
+
+ print(f"Publishing TCP coordinates to OSC on {node.osc_ip}:{node.osc_port}...")
+ try:
+ rclpy.spin(node)
+ except KeyboardInterrupt:
+ print("shutting down...")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
\ No newline at end of file
diff --git a/workspace/build/mock_robot/build/lib/mock_robot/__init__.py b/workspace/build/mock_robot/build/lib/mock_robot/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/build/mock_robot/build/lib/mock_robot/robot_node.py b/workspace/build/mock_robot/build/lib/mock_robot/robot_node.py
new file mode 100644
index 0000000..8da4638
--- /dev/null
+++ b/workspace/build/mock_robot/build/lib/mock_robot/robot_node.py
@@ -0,0 +1,63 @@
+import rclpy
+from rclpy.node import Node
+from sensor_msgs.msg import JointState
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+
+import numpy as np
+import time
+
+class RobotNode(Node):
+
+ def __init__(self):
+ super().__init__('robot_node')
+
+ self.l1 = 0.5
+ self.l2 = 0.3
+ self.x = self.l1 + self.l2
+ self.y = 0.0
+ self.theta1 = 0.0
+ self.theta2 = 0.0
+
+ self.publisher = self.create_publisher(
+ JointState,
+ '/joint_states',
+ 10
+ )
+
+ timer_period = 0.5 # seconds
+ self.timer = self.create_timer(timer_period, self.timer_callback)
+ self.i = 0
+
+ def timer_callback(self):
+ msg = JointState()
+ msg.name = ['joint1', 'joint2']
+ msg.position = [self.theta1, self.theta2]
+ self.publisher.publish(msg)
+ self.get_logger().info(f'x = {self.x}, y = {self.y}, theta1 = {self.theta1}, theta2 = {self.theta2}')
+
+
+ self.subcriber = self.create_subscription(
+ JointTrajectory,
+ '/joint_trajectory_controller/joint_trajectory',
+ self.joint_trajectory_callback,
+ 10
+ )
+
+ def joint_trajectory_callback(self, msg):
+ joint_names = msg.joint_names
+ duration = 0
+ for point in msg.points:
+ duration = msg.time_from_start_sec + msg.time_from_start_nanosec / 1e9 - duration
+ for i in range(duration *10):
+ self.theta1 += (point.positions[0] - self.theta1) / 10
+ self.theta2 += (point.positions[1] - self.theta2) / 10
+ self.x = self.l1 * np.cos(self.theta1) + self.l2 * np.cos(self.theta1 + self.theta2)
+ self.y = self.l1 * np.sin(self.theta1) + self.l2 * np.sin(self.theta1 + self.theta2)
+ time.sleep(0.1)
+
+
+def main(args=None):
+ rclpy.init(args=args)
+ node = RobotNode()
+ rclpy.spin(node)
+ rclpy.shutdown()
\ No newline at end of file
diff --git a/workspace/build/mock_robot/colcon_build.rc b/workspace/build/mock_robot/colcon_build.rc
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/workspace/build/mock_robot/colcon_build.rc
@@ -0,0 +1 @@
+0
diff --git a/workspace/build/mock_robot/colcon_command_prefix_setup_py.sh b/workspace/build/mock_robot/colcon_command_prefix_setup_py.sh
new file mode 100644
index 0000000..f9867d5
--- /dev/null
+++ b/workspace/build/mock_robot/colcon_command_prefix_setup_py.sh
@@ -0,0 +1 @@
+# generated from colcon_core/shell/template/command_prefix.sh.em
diff --git a/workspace/build/mock_robot/colcon_command_prefix_setup_py.sh.env b/workspace/build/mock_robot/colcon_command_prefix_setup_py.sh.env
new file mode 100644
index 0000000..ef2660e
--- /dev/null
+++ b/workspace/build/mock_robot/colcon_command_prefix_setup_py.sh.env
@@ -0,0 +1,20 @@
+AMENT_PREFIX_PATH=/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble
+COLCON=1
+COLCON_PREFIX_PATH=/BA/workspace/install
+HOME=/root
+HOSTNAME=0e38e264ac6b
+LANG=C.UTF-8
+LC_ALL=C.UTF-8
+LD_LIBRARY_PATH=/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib
+LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
+OLDPWD=/BA/workspace/src
+PATH=/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
+PWD=/BA/workspace/build/mock_robot
+PYTHONPATH=/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages
+ROS_DISTRO=humble
+ROS_LOCALHOST_ONLY=0
+ROS_PYTHON_VERSION=3
+ROS_VERSION=2
+SHLVL=1
+TERM=xterm
+_=/usr/bin/colcon
diff --git a/workspace/build/mock_robot/mock_robot b/workspace/build/mock_robot/mock_robot
new file mode 120000
index 0000000..3c950d9
--- /dev/null
+++ b/workspace/build/mock_robot/mock_robot
@@ -0,0 +1 @@
+/BA/workspace/src/mock_robot/mock_robot
\ No newline at end of file
diff --git a/workspace/build/mock_robot/mock_robot.egg-info/PKG-INFO b/workspace/build/mock_robot/mock_robot.egg-info/PKG-INFO
new file mode 100644
index 0000000..b86928d
--- /dev/null
+++ b/workspace/build/mock_robot/mock_robot.egg-info/PKG-INFO
@@ -0,0 +1,12 @@
+Metadata-Version: 2.1
+Name: mock-robot
+Version: 0.0.0
+Summary: TODO: Package description
+Home-page: UNKNOWN
+Maintainer: root
+Maintainer-email: root@todo.todo
+License: TODO: License declaration
+Platform: UNKNOWN
+
+UNKNOWN
+
diff --git a/workspace/build/mock_robot/mock_robot.egg-info/SOURCES.txt b/workspace/build/mock_robot/mock_robot.egg-info/SOURCES.txt
new file mode 100644
index 0000000..fe55e68
--- /dev/null
+++ b/workspace/build/mock_robot/mock_robot.egg-info/SOURCES.txt
@@ -0,0 +1,20 @@
+package.xml
+setup.cfg
+setup.py
+../../build/mock_robot/mock_robot.egg-info/PKG-INFO
+../../build/mock_robot/mock_robot.egg-info/SOURCES.txt
+../../build/mock_robot/mock_robot.egg-info/dependency_links.txt
+../../build/mock_robot/mock_robot.egg-info/entry_points.txt
+../../build/mock_robot/mock_robot.egg-info/requires.txt
+../../build/mock_robot/mock_robot.egg-info/top_level.txt
+../../build/mock_robot/mock_robot.egg-info/zip-safe
+mock_robot/__init__.py
+mock_robot/robot_node.py
+mock_robot.egg-info/PKG-INFO
+mock_robot.egg-info/SOURCES.txt
+mock_robot.egg-info/dependency_links.txt
+mock_robot.egg-info/entry_points.txt
+mock_robot.egg-info/requires.txt
+mock_robot.egg-info/top_level.txt
+mock_robot.egg-info/zip-safe
+resource/mock_robot
\ No newline at end of file
diff --git a/workspace/build/mock_robot/mock_robot.egg-info/dependency_links.txt b/workspace/build/mock_robot/mock_robot.egg-info/dependency_links.txt
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/workspace/build/mock_robot/mock_robot.egg-info/dependency_links.txt
@@ -0,0 +1 @@
+
diff --git a/workspace/build/mock_robot/mock_robot.egg-info/entry_points.txt b/workspace/build/mock_robot/mock_robot.egg-info/entry_points.txt
new file mode 100644
index 0000000..e9a1bda
--- /dev/null
+++ b/workspace/build/mock_robot/mock_robot.egg-info/entry_points.txt
@@ -0,0 +1,3 @@
+[console_scripts]
+mock_robot = mock_robot.robot_node:main
+
diff --git a/workspace/build/mock_robot/mock_robot.egg-info/requires.txt b/workspace/build/mock_robot/mock_robot.egg-info/requires.txt
new file mode 100644
index 0000000..49fe098
--- /dev/null
+++ b/workspace/build/mock_robot/mock_robot.egg-info/requires.txt
@@ -0,0 +1 @@
+setuptools
diff --git a/workspace/build/mock_robot/mock_robot.egg-info/top_level.txt b/workspace/build/mock_robot/mock_robot.egg-info/top_level.txt
new file mode 100644
index 0000000..7207821
--- /dev/null
+++ b/workspace/build/mock_robot/mock_robot.egg-info/top_level.txt
@@ -0,0 +1 @@
+mock_robot
diff --git a/workspace/build/mock_robot/mock_robot.egg-info/zip-safe b/workspace/build/mock_robot/mock_robot.egg-info/zip-safe
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/workspace/build/mock_robot/mock_robot.egg-info/zip-safe
@@ -0,0 +1 @@
+
diff --git a/workspace/build/mock_robot/package.xml b/workspace/build/mock_robot/package.xml
new file mode 120000
index 0000000..9323bba
--- /dev/null
+++ b/workspace/build/mock_robot/package.xml
@@ -0,0 +1 @@
+/BA/workspace/src/mock_robot/package.xml
\ No newline at end of file
diff --git a/workspace/build/mock_robot/prefix_override/__pycache__/sitecustomize.cpython-310.pyc b/workspace/build/mock_robot/prefix_override/__pycache__/sitecustomize.cpython-310.pyc
new file mode 100644
index 0000000..dd04c8d
Binary files /dev/null and b/workspace/build/mock_robot/prefix_override/__pycache__/sitecustomize.cpython-310.pyc differ
diff --git a/workspace/build/mock_robot/prefix_override/sitecustomize.py b/workspace/build/mock_robot/prefix_override/sitecustomize.py
new file mode 100644
index 0000000..bd9a12f
--- /dev/null
+++ b/workspace/build/mock_robot/prefix_override/sitecustomize.py
@@ -0,0 +1,4 @@
+import sys
+if sys.prefix == '/usr':
+ sys.real_prefix = sys.prefix
+ sys.prefix = sys.exec_prefix = '/BA/workspace/install/mock_robot'
diff --git a/workspace/build/mock_robot/resource/mock_robot b/workspace/build/mock_robot/resource/mock_robot
new file mode 120000
index 0000000..066e13f
--- /dev/null
+++ b/workspace/build/mock_robot/resource/mock_robot
@@ -0,0 +1 @@
+/BA/workspace/src/mock_robot/resource/mock_robot
\ No newline at end of file
diff --git a/workspace/build/mock_robot/setup.cfg b/workspace/build/mock_robot/setup.cfg
new file mode 120000
index 0000000..f3a3073
--- /dev/null
+++ b/workspace/build/mock_robot/setup.cfg
@@ -0,0 +1 @@
+/BA/workspace/src/mock_robot/setup.cfg
\ No newline at end of file
diff --git a/workspace/build/mock_robot/setup.py b/workspace/build/mock_robot/setup.py
new file mode 120000
index 0000000..5b139d2
--- /dev/null
+++ b/workspace/build/mock_robot/setup.py
@@ -0,0 +1 @@
+/BA/workspace/src/mock_robot/setup.py
\ No newline at end of file
diff --git a/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv b/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv
new file mode 100644
index 0000000..1febf0b
--- /dev/null
+++ b/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv
@@ -0,0 +1 @@
+prepend-non-duplicate;PYTHONPATH;/BA/workspace/build/mock_robot
diff --git a/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1 b/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1
new file mode 100644
index 0000000..4f040a9
--- /dev/null
+++ b/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1
@@ -0,0 +1,3 @@
+# generated from colcon_powershell/shell/template/hook_prepend_value.ps1.em
+
+colcon_prepend_unique_value PYTHONPATH "$env:COLCON_CURRENT_PREFIX\/BA/workspace/build/mock_robot"
diff --git a/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh b/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh
new file mode 100644
index 0000000..25074ad
--- /dev/null
+++ b/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh
@@ -0,0 +1,3 @@
+# generated from colcon_core/shell/template/hook_prepend_value.sh.em
+
+_colcon_prepend_unique_value PYTHONPATH "/BA/workspace/build/mock_robot"
diff --git a/workspace/build/painting_robot_control/colcon_build.rc b/workspace/build/painting_robot_control/colcon_build.rc
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/workspace/build/painting_robot_control/colcon_build.rc
@@ -0,0 +1 @@
+0
diff --git a/workspace/build/painting_robot_control/colcon_command_prefix_setup_py.sh b/workspace/build/painting_robot_control/colcon_command_prefix_setup_py.sh
new file mode 100644
index 0000000..f9867d5
--- /dev/null
+++ b/workspace/build/painting_robot_control/colcon_command_prefix_setup_py.sh
@@ -0,0 +1 @@
+# generated from colcon_core/shell/template/command_prefix.sh.em
diff --git a/workspace/build/painting_robot_control/colcon_command_prefix_setup_py.sh.env b/workspace/build/painting_robot_control/colcon_command_prefix_setup_py.sh.env
new file mode 100644
index 0000000..ca6c78b
--- /dev/null
+++ b/workspace/build/painting_robot_control/colcon_command_prefix_setup_py.sh.env
@@ -0,0 +1,20 @@
+AMENT_PREFIX_PATH=/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble
+COLCON=1
+COLCON_PREFIX_PATH=/BA/workspace/install
+HOME=/root
+HOSTNAME=0e38e264ac6b
+LANG=C.UTF-8
+LC_ALL=C.UTF-8
+LD_LIBRARY_PATH=/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib
+LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
+OLDPWD=/BA/workspace/src
+PATH=/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
+PWD=/BA/workspace/build/painting_robot_control
+PYTHONPATH=/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages
+ROS_DISTRO=humble
+ROS_LOCALHOST_ONLY=0
+ROS_PYTHON_VERSION=3
+ROS_VERSION=2
+SHLVL=1
+TERM=xterm
+_=/usr/bin/colcon
diff --git a/workspace/build/painting_robot_control/package.xml b/workspace/build/painting_robot_control/package.xml
new file mode 120000
index 0000000..49115d9
--- /dev/null
+++ b/workspace/build/painting_robot_control/package.xml
@@ -0,0 +1 @@
+/BA/workspace/src/painting_robot_control/package.xml
\ No newline at end of file
diff --git a/workspace/build/painting_robot_control/painting_robot_control b/workspace/build/painting_robot_control/painting_robot_control
new file mode 120000
index 0000000..87d8320
--- /dev/null
+++ b/workspace/build/painting_robot_control/painting_robot_control
@@ -0,0 +1 @@
+/BA/workspace/src/painting_robot_control/painting_robot_control
\ No newline at end of file
diff --git a/workspace/build/painting_robot_control/painting_robot_control.egg-info/PKG-INFO b/workspace/build/painting_robot_control/painting_robot_control.egg-info/PKG-INFO
new file mode 100644
index 0000000..29d968d
--- /dev/null
+++ b/workspace/build/painting_robot_control/painting_robot_control.egg-info/PKG-INFO
@@ -0,0 +1,12 @@
+Metadata-Version: 2.1
+Name: painting-robot-control
+Version: 0.0.0
+Summary: TODO: Package description
+Home-page: UNKNOWN
+Maintainer: root
+Maintainer-email: root@todo.todo
+License: TODO: License declaration
+Platform: UNKNOWN
+
+UNKNOWN
+
diff --git a/workspace/build/painting_robot_control/painting_robot_control.egg-info/SOURCES.txt b/workspace/build/painting_robot_control/painting_robot_control.egg-info/SOURCES.txt
new file mode 100644
index 0000000..01f4f34
--- /dev/null
+++ b/workspace/build/painting_robot_control/painting_robot_control.egg-info/SOURCES.txt
@@ -0,0 +1,13 @@
+package.xml
+setup.cfg
+setup.py
+painting_robot_control/__init__.py
+painting_robot_control/com_node.py
+painting_robot_control.egg-info/PKG-INFO
+painting_robot_control.egg-info/SOURCES.txt
+painting_robot_control.egg-info/dependency_links.txt
+painting_robot_control.egg-info/entry_points.txt
+painting_robot_control.egg-info/requires.txt
+painting_robot_control.egg-info/top_level.txt
+painting_robot_control.egg-info/zip-safe
+resource/painting_robot_control
\ No newline at end of file
diff --git a/workspace/build/painting_robot_control/painting_robot_control.egg-info/dependency_links.txt b/workspace/build/painting_robot_control/painting_robot_control.egg-info/dependency_links.txt
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/workspace/build/painting_robot_control/painting_robot_control.egg-info/dependency_links.txt
@@ -0,0 +1 @@
+
diff --git a/workspace/build/painting_robot_control/painting_robot_control.egg-info/entry_points.txt b/workspace/build/painting_robot_control/painting_robot_control.egg-info/entry_points.txt
new file mode 100644
index 0000000..3b21bfa
--- /dev/null
+++ b/workspace/build/painting_robot_control/painting_robot_control.egg-info/entry_points.txt
@@ -0,0 +1,3 @@
+[console_scripts]
+painting_robot_controller = painting_robot_control.com_node:main
+
diff --git a/workspace/build/painting_robot_control/painting_robot_control.egg-info/requires.txt b/workspace/build/painting_robot_control/painting_robot_control.egg-info/requires.txt
new file mode 100644
index 0000000..49fe098
--- /dev/null
+++ b/workspace/build/painting_robot_control/painting_robot_control.egg-info/requires.txt
@@ -0,0 +1 @@
+setuptools
diff --git a/workspace/build/painting_robot_control/painting_robot_control.egg-info/top_level.txt b/workspace/build/painting_robot_control/painting_robot_control.egg-info/top_level.txt
new file mode 100644
index 0000000..1501135
--- /dev/null
+++ b/workspace/build/painting_robot_control/painting_robot_control.egg-info/top_level.txt
@@ -0,0 +1 @@
+painting_robot_control
diff --git a/workspace/build/painting_robot_control/painting_robot_control.egg-info/zip-safe b/workspace/build/painting_robot_control/painting_robot_control.egg-info/zip-safe
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/workspace/build/painting_robot_control/painting_robot_control.egg-info/zip-safe
@@ -0,0 +1 @@
+
diff --git a/workspace/build/painting_robot_control/prefix_override/__pycache__/sitecustomize.cpython-310.pyc b/workspace/build/painting_robot_control/prefix_override/__pycache__/sitecustomize.cpython-310.pyc
new file mode 100644
index 0000000..da79a94
Binary files /dev/null and b/workspace/build/painting_robot_control/prefix_override/__pycache__/sitecustomize.cpython-310.pyc differ
diff --git a/workspace/build/painting_robot_control/prefix_override/sitecustomize.py b/workspace/build/painting_robot_control/prefix_override/sitecustomize.py
new file mode 100644
index 0000000..1ab627a
--- /dev/null
+++ b/workspace/build/painting_robot_control/prefix_override/sitecustomize.py
@@ -0,0 +1,4 @@
+import sys
+if sys.prefix == '/usr':
+ sys.real_prefix = sys.prefix
+ sys.prefix = sys.exec_prefix = '/BA/workspace/install/painting_robot_control'
diff --git a/workspace/build/painting_robot_control/resource/painting_robot_control b/workspace/build/painting_robot_control/resource/painting_robot_control
new file mode 120000
index 0000000..7c56120
--- /dev/null
+++ b/workspace/build/painting_robot_control/resource/painting_robot_control
@@ -0,0 +1 @@
+/BA/workspace/src/painting_robot_control/resource/painting_robot_control
\ No newline at end of file
diff --git a/workspace/build/painting_robot_control/setup.cfg b/workspace/build/painting_robot_control/setup.cfg
new file mode 120000
index 0000000..5eff321
--- /dev/null
+++ b/workspace/build/painting_robot_control/setup.cfg
@@ -0,0 +1 @@
+/BA/workspace/src/painting_robot_control/setup.cfg
\ No newline at end of file
diff --git a/workspace/build/painting_robot_control/setup.py b/workspace/build/painting_robot_control/setup.py
new file mode 120000
index 0000000..d17ef0c
--- /dev/null
+++ b/workspace/build/painting_robot_control/setup.py
@@ -0,0 +1 @@
+/BA/workspace/src/painting_robot_control/setup.py
\ No newline at end of file
diff --git a/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.dsv b/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.dsv
new file mode 100644
index 0000000..b18a76e
--- /dev/null
+++ b/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.dsv
@@ -0,0 +1 @@
+prepend-non-duplicate;PYTHONPATH;/BA/workspace/build/painting_robot_control
diff --git a/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.ps1 b/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.ps1
new file mode 100644
index 0000000..58f05c2
--- /dev/null
+++ b/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.ps1
@@ -0,0 +1,3 @@
+# generated from colcon_powershell/shell/template/hook_prepend_value.ps1.em
+
+colcon_prepend_unique_value PYTHONPATH "$env:COLCON_CURRENT_PREFIX\/BA/workspace/build/painting_robot_control"
diff --git a/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.sh b/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.sh
new file mode 100644
index 0000000..21325b7
--- /dev/null
+++ b/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.sh
@@ -0,0 +1,3 @@
+# generated from colcon_core/shell/template/hook_prepend_value.sh.em
+
+_colcon_prepend_unique_value PYTHONPATH "/BA/workspace/build/painting_robot_control"
diff --git a/workspace/install/joint_control/lib/joint_control/joint_control 2 b/workspace/install/joint_control/lib/joint_control/joint_control 2
new file mode 100755
index 0000000..41f313f
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/joint_control 2
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','joint_control'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'joint_control')())
diff --git a/workspace/install/joint_control/lib/joint_control/plugdata b/workspace/install/joint_control/lib/joint_control/plugdata
new file mode 100755
index 0000000..4dd3e31
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/plugdata
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','plugdata'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'plugdata')())
diff --git a/workspace/install/joint_control/lib/joint_control/plugdata2 b/workspace/install/joint_control/lib/joint_control/plugdata2
new file mode 100755
index 0000000..74b946d
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/plugdata2
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','plugdata2'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'plugdata2')())
diff --git a/workspace/install/joint_control/lib/joint_control/plugdata3 b/workspace/install/joint_control/lib/joint_control/plugdata3
new file mode 100755
index 0000000..96d1461
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/plugdata3
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','plugdata3'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'plugdata3')())
diff --git a/workspace/install/joint_control/lib/joint_control/plugdata_cart b/workspace/install/joint_control/lib/joint_control/plugdata_cart
new file mode 100755
index 0000000..dff8e65
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/plugdata_cart
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','plugdata_cart'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'plugdata_cart')())
diff --git a/workspace/install/joint_control/lib/joint_control/plugdata_cart_fix b/workspace/install/joint_control/lib/joint_control/plugdata_cart_fix
new file mode 100755
index 0000000..c9c9705
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/plugdata_cart_fix
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','plugdata_cart_fix'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'plugdata_cart_fix')())
diff --git a/workspace/install/joint_control/lib/joint_control/plugdata_cart_smooth b/workspace/install/joint_control/lib/joint_control/plugdata_cart_smooth
new file mode 100755
index 0000000..f49c07f
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/plugdata_cart_smooth
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','plugdata_cart_smooth'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'plugdata_cart_smooth')())
diff --git a/workspace/install/joint_control/lib/joint_control/test b/workspace/install/joint_control/lib/joint_control/test
new file mode 100755
index 0000000..91e1f2d
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/test
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','test'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'test')())
diff --git a/workspace/install/joint_control/lib/joint_control/trajectory_server 2 b/workspace/install/joint_control/lib/joint_control/trajectory_server 2
new file mode 100755
index 0000000..9044046
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/trajectory_server 2
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','trajectory_server'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'trajectory_server')())
diff --git a/workspace/install/joint_control/lib/joint_control/trajectory_server_cart_fast b/workspace/install/joint_control/lib/joint_control/trajectory_server_cart_fast
new file mode 100755
index 0000000..d778680
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/trajectory_server_cart_fast
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','trajectory_server_cart_fast'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'trajectory_server_cart_fast')())
diff --git a/workspace/install/joint_control/lib/joint_control/trajectory_server_cart_fast_1 b/workspace/install/joint_control/lib/joint_control/trajectory_server_cart_fast_1
new file mode 100755
index 0000000..ddb9029
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/trajectory_server_cart_fast_1
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','trajectory_server_cart_fast_1'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'trajectory_server_cart_fast_1')())
diff --git a/workspace/install/joint_control/lib/joint_control/trajectory_server_cart_fast_max_acc b/workspace/install/joint_control/lib/joint_control/trajectory_server_cart_fast_max_acc
new file mode 100755
index 0000000..a664adf
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/trajectory_server_cart_fast_max_acc
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','trajectory_server_cart_fast_max_acc'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'trajectory_server_cart_fast_max_acc')())
diff --git a/workspace/install/joint_control/lib/joint_control/trajectory_server_cart_fast_smooth b/workspace/install/joint_control/lib/joint_control/trajectory_server_cart_fast_smooth
new file mode 100755
index 0000000..ff4d8a4
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/trajectory_server_cart_fast_smooth
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','trajectory_server_cart_fast_smooth'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'trajectory_server_cart_fast_smooth')())
diff --git a/workspace/install/joint_control/lib/joint_control/trajectory_server_new b/workspace/install/joint_control/lib/joint_control/trajectory_server_new
new file mode 100755
index 0000000..1311ebb
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/trajectory_server_new
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','trajectory_server_new'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'trajectory_server_new')())
diff --git a/workspace/install/joint_control/lib/joint_control/trajectory_server_new_cart b/workspace/install/joint_control/lib/joint_control/trajectory_server_new_cart
new file mode 100755
index 0000000..9794d4d
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/trajectory_server_new_cart
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','trajectory_server_new_cart'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'trajectory_server_new_cart')())
diff --git a/workspace/install/joint_control/lib/joint_control/trajectory_server_trapezoidal b/workspace/install/joint_control/lib/joint_control/trajectory_server_trapezoidal
new file mode 100755
index 0000000..e9df30c
--- /dev/null
+++ b/workspace/install/joint_control/lib/joint_control/trajectory_server_trapezoidal
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-control','console_scripts','trajectory_server_trapezoidal'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-control', 'console_scripts', 'trajectory_server_trapezoidal')())
diff --git a/workspace/install/joint_control/share/ament_index/resource_index/packages/joint_control 2 b/workspace/install/joint_control/share/ament_index/resource_index/packages/joint_control 2
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/install/joint_control/share/ament_index/resource_index/packages/joint_control 3 b/workspace/install/joint_control/share/ament_index/resource_index/packages/joint_control 3
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/install/joint_control/share/joint_control/package 2.xml b/workspace/install/joint_control/share/joint_control/package 2.xml
new file mode 100644
index 0000000..13fa1a2
--- /dev/null
+++ b/workspace/install/joint_control/share/joint_control/package 2.xml
@@ -0,0 +1,21 @@
+
+
+
+ joint_control
+ 0.0.0
+ TODO: Package description
+ root
+ TODO: License declaration
+
+ ament_copyright
+ ament_flake8
+ ament_pep257
+ python3-pytest
+
+ osc4py3
+ trajectory_msgs
+ xml
+
+ ament_python
+
+
diff --git a/workspace/install/joint_control/share/joint_control/package 3.xml b/workspace/install/joint_control/share/joint_control/package 3.xml
new file mode 100644
index 0000000..13fa1a2
--- /dev/null
+++ b/workspace/install/joint_control/share/joint_control/package 3.xml
@@ -0,0 +1,21 @@
+
+
+
+ joint_control
+ 0.0.0
+ TODO: Package description
+ root
+ TODO: License declaration
+
+ ament_copyright
+ ament_flake8
+ ament_pep257
+ python3-pytest
+
+ osc4py3
+ trajectory_msgs
+ xml
+
+ ament_python
+
+
diff --git a/workspace/install/joint_info/lib/joint_info/joint_states_pub 2 b/workspace/install/joint_info/lib/joint_info/joint_states_pub 2
new file mode 100755
index 0000000..17c3520
--- /dev/null
+++ b/workspace/install/joint_info/lib/joint_info/joint_states_pub 2
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-info','console_scripts','joint_states_pub'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-info'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-info', 'console_scripts', 'joint_states_pub')())
diff --git a/workspace/install/joint_info/lib/joint_info/joint_states_sub 2 b/workspace/install/joint_info/lib/joint_info/joint_states_sub 2
new file mode 100755
index 0000000..d3813cd
--- /dev/null
+++ b/workspace/install/joint_info/lib/joint_info/joint_states_sub 2
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-info','console_scripts','joint_states_sub'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-info'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-info', 'console_scripts', 'joint_states_sub')())
diff --git a/workspace/install/joint_info/lib/joint_info/tcp_cart_pos 2 b/workspace/install/joint_info/lib/joint_info/tcp_cart_pos 2
new file mode 100755
index 0000000..15cc67e
--- /dev/null
+++ b/workspace/install/joint_info/lib/joint_info/tcp_cart_pos 2
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'joint-info','console_scripts','tcp_cart_pos'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'joint-info'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('joint-info', 'console_scripts', 'tcp_cart_pos')())
diff --git a/workspace/install/joint_info/share/ament_index/resource_index/packages/joint_info 2 b/workspace/install/joint_info/share/ament_index/resource_index/packages/joint_info 2
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/install/joint_info/share/ament_index/resource_index/packages/joint_info 3 b/workspace/install/joint_info/share/ament_index/resource_index/packages/joint_info 3
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/install/joint_info/share/joint_info/package 2.xml b/workspace/install/joint_info/share/joint_info/package 2.xml
new file mode 100644
index 0000000..fd86926
--- /dev/null
+++ b/workspace/install/joint_info/share/joint_info/package 2.xml
@@ -0,0 +1,24 @@
+
+
+
+ joint_info
+ 0.0.0
+ TODO: Package description
+ root
+ TODO: License declaration
+
+ rclpy
+ sensor_msgs
+ osc4py3
+ roboticstoolbox
+
+ ament_copyright
+ ament_flake8
+ ament_pep257
+ python3-pytest
+
+
+
+ ament_python
+
+
diff --git a/workspace/install/joint_info/share/joint_info/package 3.xml b/workspace/install/joint_info/share/joint_info/package 3.xml
new file mode 100644
index 0000000..fd86926
--- /dev/null
+++ b/workspace/install/joint_info/share/joint_info/package 3.xml
@@ -0,0 +1,24 @@
+
+
+
+ joint_info
+ 0.0.0
+ TODO: Package description
+ root
+ TODO: License declaration
+
+ rclpy
+ sensor_msgs
+ osc4py3
+ roboticstoolbox
+
+ ament_copyright
+ ament_flake8
+ ament_pep257
+ python3-pytest
+
+
+
+ ament_python
+
+
diff --git a/workspace/install/mock_robot/lib/mock_robot/mock_robot b/workspace/install/mock_robot/lib/mock_robot/mock_robot
new file mode 100755
index 0000000..548c64e
--- /dev/null
+++ b/workspace/install/mock_robot/lib/mock_robot/mock_robot
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'mock-robot','console_scripts','mock_robot'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'mock-robot'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('mock-robot', 'console_scripts', 'mock_robot')())
diff --git a/workspace/install/mock_robot/lib/mock_robot/mock_robot_2 b/workspace/install/mock_robot/lib/mock_robot/mock_robot_2
new file mode 100755
index 0000000..635af93
--- /dev/null
+++ b/workspace/install/mock_robot/lib/mock_robot/mock_robot_2
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'mock-robot','console_scripts','mock_robot_2'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'mock-robot'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('mock-robot', 'console_scripts', 'mock_robot_2')())
diff --git a/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link b/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link
new file mode 100644
index 0000000..3cff871
--- /dev/null
+++ b/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link
@@ -0,0 +1,2 @@
+/BA/workspace/build/mock_robot
+.
\ No newline at end of file
diff --git a/workspace/install/mock_robot/share/ament_index/resource_index/packages/mock_robot b/workspace/install/mock_robot/share/ament_index/resource_index/packages/mock_robot
new file mode 120000
index 0000000..cf25e21
--- /dev/null
+++ b/workspace/install/mock_robot/share/ament_index/resource_index/packages/mock_robot
@@ -0,0 +1 @@
+/BA/workspace/build/mock_robot/resource/mock_robot
\ No newline at end of file
diff --git a/workspace/install/mock_robot/share/ament_index/resource_index/packages/mock_robot 2 b/workspace/install/mock_robot/share/ament_index/resource_index/packages/mock_robot 2
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/install/mock_robot/share/ament_index/resource_index/packages/mock_robot 3 b/workspace/install/mock_robot/share/ament_index/resource_index/packages/mock_robot 3
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/install/mock_robot/share/colcon-core/packages/mock_robot b/workspace/install/mock_robot/share/colcon-core/packages/mock_robot
new file mode 100644
index 0000000..aff3120
--- /dev/null
+++ b/workspace/install/mock_robot/share/colcon-core/packages/mock_robot
@@ -0,0 +1 @@
+rclpy
\ No newline at end of file
diff --git a/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv b/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv
new file mode 100644
index 0000000..79d4c95
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv
@@ -0,0 +1 @@
+prepend-non-duplicate;AMENT_PREFIX_PATH;
diff --git a/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1 b/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1
new file mode 100644
index 0000000..26b9997
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1
@@ -0,0 +1,3 @@
+# generated from colcon_powershell/shell/template/hook_prepend_value.ps1.em
+
+colcon_prepend_unique_value AMENT_PREFIX_PATH "$env:COLCON_CURRENT_PREFIX"
diff --git a/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh b/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh
new file mode 100644
index 0000000..f3041f6
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh
@@ -0,0 +1,3 @@
+# generated from colcon_core/shell/template/hook_prepend_value.sh.em
+
+_colcon_prepend_unique_value AMENT_PREFIX_PATH "$COLCON_CURRENT_PREFIX"
diff --git a/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv b/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv
new file mode 100644
index 0000000..257067d
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv
@@ -0,0 +1 @@
+prepend-non-duplicate;PYTHONPATH;lib/python3.10/site-packages
diff --git a/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1 b/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1
new file mode 100644
index 0000000..caffe83
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1
@@ -0,0 +1,3 @@
+# generated from colcon_powershell/shell/template/hook_prepend_value.ps1.em
+
+colcon_prepend_unique_value PYTHONPATH "$env:COLCON_CURRENT_PREFIX\lib/python3.10/site-packages"
diff --git a/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh b/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh
new file mode 100644
index 0000000..660c348
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh
@@ -0,0 +1,3 @@
+# generated from colcon_core/shell/template/hook_prepend_value.sh.em
+
+_colcon_prepend_unique_value PYTHONPATH "$COLCON_CURRENT_PREFIX/lib/python3.10/site-packages"
diff --git a/workspace/install/mock_robot/share/mock_robot/package 2.xml b/workspace/install/mock_robot/share/mock_robot/package 2.xml
new file mode 100644
index 0000000..43057d7
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/package 2.xml
@@ -0,0 +1,20 @@
+
+
+
+ mock_robot
+ 0.0.0
+ TODO: Package description
+ root
+ TODO: License declaration
+
+ rclpy
+
+ ament_copyright
+ ament_flake8
+ ament_pep257
+ python3-pytest
+
+
+ ament_python
+
+
diff --git a/workspace/install/mock_robot/share/mock_robot/package 3.xml b/workspace/install/mock_robot/share/mock_robot/package 3.xml
new file mode 100644
index 0000000..43057d7
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/package 3.xml
@@ -0,0 +1,20 @@
+
+
+
+ mock_robot
+ 0.0.0
+ TODO: Package description
+ root
+ TODO: License declaration
+
+ rclpy
+
+ ament_copyright
+ ament_flake8
+ ament_pep257
+ python3-pytest
+
+
+ ament_python
+
+
diff --git a/workspace/install/mock_robot/share/mock_robot/package.bash b/workspace/install/mock_robot/share/mock_robot/package.bash
new file mode 100644
index 0000000..81668fa
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/package.bash
@@ -0,0 +1,31 @@
+# generated from colcon_bash/shell/template/package.bash.em
+
+# This script extends the environment for this package.
+
+# a bash script is able to determine its own path if necessary
+if [ -z "$COLCON_CURRENT_PREFIX" ]; then
+ # the prefix is two levels up from the package specific share directory
+ _colcon_package_bash_COLCON_CURRENT_PREFIX="$(builtin cd "`dirname "${BASH_SOURCE[0]}"`/../.." > /dev/null && pwd)"
+else
+ _colcon_package_bash_COLCON_CURRENT_PREFIX="$COLCON_CURRENT_PREFIX"
+fi
+
+# function to source another script with conditional trace output
+# first argument: the path of the script
+# additional arguments: arguments to the script
+_colcon_package_bash_source_script() {
+ if [ -f "$1" ]; then
+ if [ -n "$COLCON_TRACE" ]; then
+ echo "# . \"$1\""
+ fi
+ . "$@"
+ else
+ echo "not found: \"$1\"" 1>&2
+ fi
+}
+
+# source sh script of this package
+_colcon_package_bash_source_script "$_colcon_package_bash_COLCON_CURRENT_PREFIX/share/mock_robot/package.sh"
+
+unset _colcon_package_bash_source_script
+unset _colcon_package_bash_COLCON_CURRENT_PREFIX
diff --git a/workspace/install/mock_robot/share/mock_robot/package.dsv b/workspace/install/mock_robot/share/mock_robot/package.dsv
new file mode 100644
index 0000000..9482246
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/package.dsv
@@ -0,0 +1,9 @@
+source;share/mock_robot/hook/pythonpath.ps1
+source;share/mock_robot/hook/pythonpath.dsv
+source;share/mock_robot/hook/pythonpath.sh
+source;share/mock_robot/hook/ament_prefix_path.ps1
+source;share/mock_robot/hook/ament_prefix_path.dsv
+source;share/mock_robot/hook/ament_prefix_path.sh
+source;../../build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1
+source;../../build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv
+source;../../build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh
diff --git a/workspace/install/mock_robot/share/mock_robot/package.ps1 b/workspace/install/mock_robot/share/mock_robot/package.ps1
new file mode 100644
index 0000000..2f1db11
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/package.ps1
@@ -0,0 +1,117 @@
+# generated from colcon_powershell/shell/template/package.ps1.em
+
+# function to append a value to a variable
+# which uses colons as separators
+# duplicates as well as leading separators are avoided
+# first argument: the name of the result variable
+# second argument: the value to be prepended
+function colcon_append_unique_value {
+ param (
+ $_listname,
+ $_value
+ )
+
+ # get values from variable
+ if (Test-Path Env:$_listname) {
+ $_values=(Get-Item env:$_listname).Value
+ } else {
+ $_values=""
+ }
+ $_duplicate=""
+ # start with no values
+ $_all_values=""
+ # iterate over existing values in the variable
+ if ($_values) {
+ $_values.Split(";") | ForEach {
+ # not an empty string
+ if ($_) {
+ # not a duplicate of _value
+ if ($_ -eq $_value) {
+ $_duplicate="1"
+ }
+ if ($_all_values) {
+ $_all_values="${_all_values};$_"
+ } else {
+ $_all_values="$_"
+ }
+ }
+ }
+ }
+ # append only non-duplicates
+ if (!$_duplicate) {
+ # avoid leading separator
+ if ($_all_values) {
+ $_all_values="${_all_values};${_value}"
+ } else {
+ $_all_values="${_value}"
+ }
+ }
+
+ # export the updated variable
+ Set-Item env:\$_listname -Value "$_all_values"
+}
+
+# function to prepend a value to a variable
+# which uses colons as separators
+# duplicates as well as trailing separators are avoided
+# first argument: the name of the result variable
+# second argument: the value to be prepended
+function colcon_prepend_unique_value {
+ param (
+ $_listname,
+ $_value
+ )
+
+ # get values from variable
+ if (Test-Path Env:$_listname) {
+ $_values=(Get-Item env:$_listname).Value
+ } else {
+ $_values=""
+ }
+ # start with the new value
+ $_all_values="$_value"
+ # iterate over existing values in the variable
+ if ($_values) {
+ $_values.Split(";") | ForEach {
+ # not an empty string
+ if ($_) {
+ # not a duplicate of _value
+ if ($_ -ne $_value) {
+ # keep non-duplicate values
+ $_all_values="${_all_values};$_"
+ }
+ }
+ }
+ }
+ # export the updated variable
+ Set-Item env:\$_listname -Value "$_all_values"
+}
+
+# function to source another script with conditional trace output
+# first argument: the path of the script
+# additional arguments: arguments to the script
+function colcon_package_source_powershell_script {
+ param (
+ $_colcon_package_source_powershell_script
+ )
+ # source script with conditional trace output
+ if (Test-Path $_colcon_package_source_powershell_script) {
+ if ($env:COLCON_TRACE) {
+ echo ". '$_colcon_package_source_powershell_script'"
+ }
+ . "$_colcon_package_source_powershell_script"
+ } else {
+ Write-Error "not found: '$_colcon_package_source_powershell_script'"
+ }
+}
+
+
+# a powershell script is able to determine its own path
+# the prefix is two levels up from the package specific share directory
+$env:COLCON_CURRENT_PREFIX=(Get-Item $PSCommandPath).Directory.Parent.Parent.FullName
+
+colcon_package_source_powershell_script "$env:COLCON_CURRENT_PREFIX\share/mock_robot/hook/pythonpath.ps1"
+colcon_package_source_powershell_script "$env:COLCON_CURRENT_PREFIX\share/mock_robot/hook/ament_prefix_path.ps1"
+colcon_package_source_powershell_script "$env:COLCON_CURRENT_PREFIX\../../build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1"
+
+Remove-Item Env:\COLCON_CURRENT_PREFIX
diff --git a/workspace/install/mock_robot/share/mock_robot/package.sh b/workspace/install/mock_robot/share/mock_robot/package.sh
new file mode 100644
index 0000000..62aea1b
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/package.sh
@@ -0,0 +1,88 @@
+# generated from colcon_core/shell/template/package.sh.em
+
+# This script extends the environment for this package.
+
+# function to prepend a value to a variable
+# which uses colons as separators
+# duplicates as well as trailing separators are avoided
+# first argument: the name of the result variable
+# second argument: the value to be prepended
+_colcon_prepend_unique_value() {
+ # arguments
+ _listname="$1"
+ _value="$2"
+
+ # get values from variable
+ eval _values=\"\$$_listname\"
+ # backup the field separator
+ _colcon_prepend_unique_value_IFS=$IFS
+ IFS=":"
+ # start with the new value
+ _all_values="$_value"
+ # workaround SH_WORD_SPLIT not being set in zsh
+ if [ "$(command -v colcon_zsh_convert_to_array)" ]; then
+ colcon_zsh_convert_to_array _values
+ fi
+ # iterate over existing values in the variable
+ for _item in $_values; do
+ # ignore empty strings
+ if [ -z "$_item" ]; then
+ continue
+ fi
+ # ignore duplicates of _value
+ if [ "$_item" = "$_value" ]; then
+ continue
+ fi
+ # keep non-duplicate values
+ _all_values="$_all_values:$_item"
+ done
+ unset _item
+ # restore the field separator
+ IFS=$_colcon_prepend_unique_value_IFS
+ unset _colcon_prepend_unique_value_IFS
+ # export the updated variable
+ eval export $_listname=\"$_all_values\"
+ unset _all_values
+ unset _values
+
+ unset _value
+ unset _listname
+}
+
+# since a plain shell script can't determine its own path when being sourced
+# either use the provided COLCON_CURRENT_PREFIX
+# or fall back to the build time prefix (if it exists)
+_colcon_package_sh_COLCON_CURRENT_PREFIX="/BA/workspace/install/mock_robot"
+if [ -z "$COLCON_CURRENT_PREFIX" ]; then
+ if [ ! -d "$_colcon_package_sh_COLCON_CURRENT_PREFIX" ]; then
+ echo "The build time path \"$_colcon_package_sh_COLCON_CURRENT_PREFIX\" doesn't exist. Either source a script for a different shell or set the environment variable \"COLCON_CURRENT_PREFIX\" explicitly." 1>&2
+ unset _colcon_package_sh_COLCON_CURRENT_PREFIX
+ return 1
+ fi
+ COLCON_CURRENT_PREFIX="$_colcon_package_sh_COLCON_CURRENT_PREFIX"
+fi
+unset _colcon_package_sh_COLCON_CURRENT_PREFIX
+
+# function to source another script with conditional trace output
+# first argument: the path of the script
+# additional arguments: arguments to the script
+_colcon_package_sh_source_script() {
+ if [ -f "$1" ]; then
+ if [ -n "$COLCON_TRACE" ]; then
+ echo "# . \"$1\""
+ fi
+ . "$@"
+ else
+ echo "not found: \"$1\"" 1>&2
+ fi
+}
+
+# source sh hooks
+_colcon_package_sh_source_script "$COLCON_CURRENT_PREFIX/share/mock_robot/hook/pythonpath.sh"
+_colcon_package_sh_source_script "$COLCON_CURRENT_PREFIX/share/mock_robot/hook/ament_prefix_path.sh"
+_colcon_package_sh_source_script "$COLCON_CURRENT_PREFIX/../../build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh"
+
+unset _colcon_package_sh_source_script
+unset COLCON_CURRENT_PREFIX
+
+# do not unset _colcon_prepend_unique_value since it might be used by non-primary shell hooks
diff --git a/workspace/install/mock_robot/share/mock_robot/package.xml b/workspace/install/mock_robot/share/mock_robot/package.xml
new file mode 120000
index 0000000..082c094
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/package.xml
@@ -0,0 +1 @@
+/BA/workspace/build/mock_robot/package.xml
\ No newline at end of file
diff --git a/workspace/install/mock_robot/share/mock_robot/package.zsh b/workspace/install/mock_robot/share/mock_robot/package.zsh
new file mode 100644
index 0000000..aab2a45
--- /dev/null
+++ b/workspace/install/mock_robot/share/mock_robot/package.zsh
@@ -0,0 +1,42 @@
+# generated from colcon_zsh/shell/template/package.zsh.em
+
+# This script extends the environment for this package.
+
+# a zsh script is able to determine its own path if necessary
+if [ -z "$COLCON_CURRENT_PREFIX" ]; then
+ # the prefix is two levels up from the package specific share directory
+ _colcon_package_zsh_COLCON_CURRENT_PREFIX="$(builtin cd -q "`dirname "${(%):-%N}"`/../.." > /dev/null && pwd)"
+else
+ _colcon_package_zsh_COLCON_CURRENT_PREFIX="$COLCON_CURRENT_PREFIX"
+fi
+
+# function to source another script with conditional trace output
+# first argument: the path of the script
+# additional arguments: arguments to the script
+_colcon_package_zsh_source_script() {
+ if [ -f "$1" ]; then
+ if [ -n "$COLCON_TRACE" ]; then
+ echo "# . \"$1\""
+ fi
+ . "$@"
+ else
+ echo "not found: \"$1\"" 1>&2
+ fi
+}
+
+# function to convert array-like strings into arrays
+# to workaround SH_WORD_SPLIT not being set
+colcon_zsh_convert_to_array() {
+ local _listname=$1
+ local _dollar="$"
+ local _split="{="
+ local _to_array="(\"$_dollar$_split$_listname}\")"
+ eval $_listname=$_to_array
+}
+
+# source sh script of this package
+_colcon_package_zsh_source_script "$_colcon_package_zsh_COLCON_CURRENT_PREFIX/share/mock_robot/package.sh"
+unset convert_zsh_to_array
+
+unset _colcon_package_zsh_source_script
+unset _colcon_package_zsh_COLCON_CURRENT_PREFIX
diff --git a/workspace/install/painting_robot_control/lib/painting_robot_control/painting_robot_controller b/workspace/install/painting_robot_control/lib/painting_robot_control/painting_robot_controller
new file mode 100755
index 0000000..3b2639f
--- /dev/null
+++ b/workspace/install/painting_robot_control/lib/painting_robot_control/painting_robot_controller
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+# EASY-INSTALL-ENTRY-SCRIPT: 'painting-robot-control','console_scripts','painting_robot_controller'
+import re
+import sys
+
+# for compatibility with easy_install; see #2198
+__requires__ = 'painting-robot-control'
+
+try:
+ from importlib.metadata import distribution
+except ImportError:
+ try:
+ from importlib_metadata import distribution
+ except ImportError:
+ from pkg_resources import load_entry_point
+
+
+def importlib_load_entry_point(spec, group, name):
+ dist_name, _, _ = spec.partition('==')
+ matches = (
+ entry_point
+ for entry_point in distribution(dist_name).entry_points
+ if entry_point.group == group and entry_point.name == name
+ )
+ return next(matches).load()
+
+
+globals().setdefault('load_entry_point', importlib_load_entry_point)
+
+
+if __name__ == '__main__':
+ sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
+ sys.exit(load_entry_point('painting-robot-control', 'console_scripts', 'painting_robot_controller')())
diff --git a/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link b/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link
new file mode 100644
index 0000000..53e0bd7
--- /dev/null
+++ b/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link
@@ -0,0 +1,2 @@
+/BA/workspace/build/painting_robot_control
+.
\ No newline at end of file
diff --git a/workspace/install/painting_robot_control/share/ament_index/resource_index/packages/painting_robot_control b/workspace/install/painting_robot_control/share/ament_index/resource_index/packages/painting_robot_control
new file mode 120000
index 0000000..f141270
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/ament_index/resource_index/packages/painting_robot_control
@@ -0,0 +1 @@
+/BA/workspace/build/painting_robot_control/resource/painting_robot_control
\ No newline at end of file
diff --git a/workspace/install/painting_robot_control/share/colcon-core/packages/painting_robot_control b/workspace/install/painting_robot_control/share/colcon-core/packages/painting_robot_control
new file mode 100644
index 0000000..aff3120
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/colcon-core/packages/painting_robot_control
@@ -0,0 +1 @@
+rclpy
\ No newline at end of file
diff --git a/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.dsv b/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.dsv
new file mode 100644
index 0000000..79d4c95
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.dsv
@@ -0,0 +1 @@
+prepend-non-duplicate;AMENT_PREFIX_PATH;
diff --git a/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.ps1 b/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.ps1
new file mode 100644
index 0000000..26b9997
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.ps1
@@ -0,0 +1,3 @@
+# generated from colcon_powershell/shell/template/hook_prepend_value.ps1.em
+
+colcon_prepend_unique_value AMENT_PREFIX_PATH "$env:COLCON_CURRENT_PREFIX"
diff --git a/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.sh b/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.sh
new file mode 100644
index 0000000..f3041f6
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.sh
@@ -0,0 +1,3 @@
+# generated from colcon_core/shell/template/hook_prepend_value.sh.em
+
+_colcon_prepend_unique_value AMENT_PREFIX_PATH "$COLCON_CURRENT_PREFIX"
diff --git a/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.dsv b/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.dsv
new file mode 100644
index 0000000..257067d
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.dsv
@@ -0,0 +1 @@
+prepend-non-duplicate;PYTHONPATH;lib/python3.10/site-packages
diff --git a/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.ps1 b/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.ps1
new file mode 100644
index 0000000..caffe83
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.ps1
@@ -0,0 +1,3 @@
+# generated from colcon_powershell/shell/template/hook_prepend_value.ps1.em
+
+colcon_prepend_unique_value PYTHONPATH "$env:COLCON_CURRENT_PREFIX\lib/python3.10/site-packages"
diff --git a/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.sh b/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.sh
new file mode 100644
index 0000000..660c348
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.sh
@@ -0,0 +1,3 @@
+# generated from colcon_core/shell/template/hook_prepend_value.sh.em
+
+_colcon_prepend_unique_value PYTHONPATH "$COLCON_CURRENT_PREFIX/lib/python3.10/site-packages"
diff --git a/workspace/install/painting_robot_control/share/painting_robot_control/package.bash b/workspace/install/painting_robot_control/share/painting_robot_control/package.bash
new file mode 100644
index 0000000..3051da0
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/painting_robot_control/package.bash
@@ -0,0 +1,31 @@
+# generated from colcon_bash/shell/template/package.bash.em
+
+# This script extends the environment for this package.
+
+# a bash script is able to determine its own path if necessary
+if [ -z "$COLCON_CURRENT_PREFIX" ]; then
+ # the prefix is two levels up from the package specific share directory
+ _colcon_package_bash_COLCON_CURRENT_PREFIX="$(builtin cd "`dirname "${BASH_SOURCE[0]}"`/../.." > /dev/null && pwd)"
+else
+ _colcon_package_bash_COLCON_CURRENT_PREFIX="$COLCON_CURRENT_PREFIX"
+fi
+
+# function to source another script with conditional trace output
+# first argument: the path of the script
+# additional arguments: arguments to the script
+_colcon_package_bash_source_script() {
+ if [ -f "$1" ]; then
+ if [ -n "$COLCON_TRACE" ]; then
+ echo "# . \"$1\""
+ fi
+ . "$@"
+ else
+ echo "not found: \"$1\"" 1>&2
+ fi
+}
+
+# source sh script of this package
+_colcon_package_bash_source_script "$_colcon_package_bash_COLCON_CURRENT_PREFIX/share/painting_robot_control/package.sh"
+
+unset _colcon_package_bash_source_script
+unset _colcon_package_bash_COLCON_CURRENT_PREFIX
diff --git a/workspace/install/painting_robot_control/share/painting_robot_control/package.dsv b/workspace/install/painting_robot_control/share/painting_robot_control/package.dsv
new file mode 100644
index 0000000..f7785d7
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/painting_robot_control/package.dsv
@@ -0,0 +1,9 @@
+source;share/painting_robot_control/hook/pythonpath.ps1
+source;share/painting_robot_control/hook/pythonpath.dsv
+source;share/painting_robot_control/hook/pythonpath.sh
+source;share/painting_robot_control/hook/ament_prefix_path.ps1
+source;share/painting_robot_control/hook/ament_prefix_path.dsv
+source;share/painting_robot_control/hook/ament_prefix_path.sh
+source;../../build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.ps1
+source;../../build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.dsv
+source;../../build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.sh
diff --git a/workspace/install/painting_robot_control/share/painting_robot_control/package.ps1 b/workspace/install/painting_robot_control/share/painting_robot_control/package.ps1
new file mode 100644
index 0000000..64ebbf6
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/painting_robot_control/package.ps1
@@ -0,0 +1,117 @@
+# generated from colcon_powershell/shell/template/package.ps1.em
+
+# function to append a value to a variable
+# which uses colons as separators
+# duplicates as well as leading separators are avoided
+# first argument: the name of the result variable
+# second argument: the value to be prepended
+function colcon_append_unique_value {
+ param (
+ $_listname,
+ $_value
+ )
+
+ # get values from variable
+ if (Test-Path Env:$_listname) {
+ $_values=(Get-Item env:$_listname).Value
+ } else {
+ $_values=""
+ }
+ $_duplicate=""
+ # start with no values
+ $_all_values=""
+ # iterate over existing values in the variable
+ if ($_values) {
+ $_values.Split(";") | ForEach {
+ # not an empty string
+ if ($_) {
+ # not a duplicate of _value
+ if ($_ -eq $_value) {
+ $_duplicate="1"
+ }
+ if ($_all_values) {
+ $_all_values="${_all_values};$_"
+ } else {
+ $_all_values="$_"
+ }
+ }
+ }
+ }
+ # append only non-duplicates
+ if (!$_duplicate) {
+ # avoid leading separator
+ if ($_all_values) {
+ $_all_values="${_all_values};${_value}"
+ } else {
+ $_all_values="${_value}"
+ }
+ }
+
+ # export the updated variable
+ Set-Item env:\$_listname -Value "$_all_values"
+}
+
+# function to prepend a value to a variable
+# which uses colons as separators
+# duplicates as well as trailing separators are avoided
+# first argument: the name of the result variable
+# second argument: the value to be prepended
+function colcon_prepend_unique_value {
+ param (
+ $_listname,
+ $_value
+ )
+
+ # get values from variable
+ if (Test-Path Env:$_listname) {
+ $_values=(Get-Item env:$_listname).Value
+ } else {
+ $_values=""
+ }
+ # start with the new value
+ $_all_values="$_value"
+ # iterate over existing values in the variable
+ if ($_values) {
+ $_values.Split(";") | ForEach {
+ # not an empty string
+ if ($_) {
+ # not a duplicate of _value
+ if ($_ -ne $_value) {
+ # keep non-duplicate values
+ $_all_values="${_all_values};$_"
+ }
+ }
+ }
+ }
+ # export the updated variable
+ Set-Item env:\$_listname -Value "$_all_values"
+}
+
+# function to source another script with conditional trace output
+# first argument: the path of the script
+# additional arguments: arguments to the script
+function colcon_package_source_powershell_script {
+ param (
+ $_colcon_package_source_powershell_script
+ )
+ # source script with conditional trace output
+ if (Test-Path $_colcon_package_source_powershell_script) {
+ if ($env:COLCON_TRACE) {
+ echo ". '$_colcon_package_source_powershell_script'"
+ }
+ . "$_colcon_package_source_powershell_script"
+ } else {
+ Write-Error "not found: '$_colcon_package_source_powershell_script'"
+ }
+}
+
+
+# a powershell script is able to determine its own path
+# the prefix is two levels up from the package specific share directory
+$env:COLCON_CURRENT_PREFIX=(Get-Item $PSCommandPath).Directory.Parent.Parent.FullName
+
+colcon_package_source_powershell_script "$env:COLCON_CURRENT_PREFIX\share/painting_robot_control/hook/pythonpath.ps1"
+colcon_package_source_powershell_script "$env:COLCON_CURRENT_PREFIX\share/painting_robot_control/hook/ament_prefix_path.ps1"
+colcon_package_source_powershell_script "$env:COLCON_CURRENT_PREFIX\../../build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.ps1"
+
+Remove-Item Env:\COLCON_CURRENT_PREFIX
diff --git a/workspace/install/painting_robot_control/share/painting_robot_control/package.sh b/workspace/install/painting_robot_control/share/painting_robot_control/package.sh
new file mode 100644
index 0000000..12219af
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/painting_robot_control/package.sh
@@ -0,0 +1,88 @@
+# generated from colcon_core/shell/template/package.sh.em
+
+# This script extends the environment for this package.
+
+# function to prepend a value to a variable
+# which uses colons as separators
+# duplicates as well as trailing separators are avoided
+# first argument: the name of the result variable
+# second argument: the value to be prepended
+_colcon_prepend_unique_value() {
+ # arguments
+ _listname="$1"
+ _value="$2"
+
+ # get values from variable
+ eval _values=\"\$$_listname\"
+ # backup the field separator
+ _colcon_prepend_unique_value_IFS=$IFS
+ IFS=":"
+ # start with the new value
+ _all_values="$_value"
+ # workaround SH_WORD_SPLIT not being set in zsh
+ if [ "$(command -v colcon_zsh_convert_to_array)" ]; then
+ colcon_zsh_convert_to_array _values
+ fi
+ # iterate over existing values in the variable
+ for _item in $_values; do
+ # ignore empty strings
+ if [ -z "$_item" ]; then
+ continue
+ fi
+ # ignore duplicates of _value
+ if [ "$_item" = "$_value" ]; then
+ continue
+ fi
+ # keep non-duplicate values
+ _all_values="$_all_values:$_item"
+ done
+ unset _item
+ # restore the field separator
+ IFS=$_colcon_prepend_unique_value_IFS
+ unset _colcon_prepend_unique_value_IFS
+ # export the updated variable
+ eval export $_listname=\"$_all_values\"
+ unset _all_values
+ unset _values
+
+ unset _value
+ unset _listname
+}
+
+# since a plain shell script can't determine its own path when being sourced
+# either use the provided COLCON_CURRENT_PREFIX
+# or fall back to the build time prefix (if it exists)
+_colcon_package_sh_COLCON_CURRENT_PREFIX="/BA/workspace/install/painting_robot_control"
+if [ -z "$COLCON_CURRENT_PREFIX" ]; then
+ if [ ! -d "$_colcon_package_sh_COLCON_CURRENT_PREFIX" ]; then
+ echo "The build time path \"$_colcon_package_sh_COLCON_CURRENT_PREFIX\" doesn't exist. Either source a script for a different shell or set the environment variable \"COLCON_CURRENT_PREFIX\" explicitly." 1>&2
+ unset _colcon_package_sh_COLCON_CURRENT_PREFIX
+ return 1
+ fi
+ COLCON_CURRENT_PREFIX="$_colcon_package_sh_COLCON_CURRENT_PREFIX"
+fi
+unset _colcon_package_sh_COLCON_CURRENT_PREFIX
+
+# function to source another script with conditional trace output
+# first argument: the path of the script
+# additional arguments: arguments to the script
+_colcon_package_sh_source_script() {
+ if [ -f "$1" ]; then
+ if [ -n "$COLCON_TRACE" ]; then
+ echo "# . \"$1\""
+ fi
+ . "$@"
+ else
+ echo "not found: \"$1\"" 1>&2
+ fi
+}
+
+# source sh hooks
+_colcon_package_sh_source_script "$COLCON_CURRENT_PREFIX/share/painting_robot_control/hook/pythonpath.sh"
+_colcon_package_sh_source_script "$COLCON_CURRENT_PREFIX/share/painting_robot_control/hook/ament_prefix_path.sh"
+_colcon_package_sh_source_script "$COLCON_CURRENT_PREFIX/../../build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.sh"
+
+unset _colcon_package_sh_source_script
+unset COLCON_CURRENT_PREFIX
+
+# do not unset _colcon_prepend_unique_value since it might be used by non-primary shell hooks
diff --git a/workspace/install/painting_robot_control/share/painting_robot_control/package.xml b/workspace/install/painting_robot_control/share/painting_robot_control/package.xml
new file mode 120000
index 0000000..e28fd56
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/painting_robot_control/package.xml
@@ -0,0 +1 @@
+/BA/workspace/build/painting_robot_control/package.xml
\ No newline at end of file
diff --git a/workspace/install/painting_robot_control/share/painting_robot_control/package.zsh b/workspace/install/painting_robot_control/share/painting_robot_control/package.zsh
new file mode 100644
index 0000000..518ce70
--- /dev/null
+++ b/workspace/install/painting_robot_control/share/painting_robot_control/package.zsh
@@ -0,0 +1,42 @@
+# generated from colcon_zsh/shell/template/package.zsh.em
+
+# This script extends the environment for this package.
+
+# a zsh script is able to determine its own path if necessary
+if [ -z "$COLCON_CURRENT_PREFIX" ]; then
+ # the prefix is two levels up from the package specific share directory
+ _colcon_package_zsh_COLCON_CURRENT_PREFIX="$(builtin cd -q "`dirname "${(%):-%N}"`/../.." > /dev/null && pwd)"
+else
+ _colcon_package_zsh_COLCON_CURRENT_PREFIX="$COLCON_CURRENT_PREFIX"
+fi
+
+# function to source another script with conditional trace output
+# first argument: the path of the script
+# additional arguments: arguments to the script
+_colcon_package_zsh_source_script() {
+ if [ -f "$1" ]; then
+ if [ -n "$COLCON_TRACE" ]; then
+ echo "# . \"$1\""
+ fi
+ . "$@"
+ else
+ echo "not found: \"$1\"" 1>&2
+ fi
+}
+
+# function to convert array-like strings into arrays
+# to workaround SH_WORD_SPLIT not being set
+colcon_zsh_convert_to_array() {
+ local _listname=$1
+ local _dollar="$"
+ local _split="{="
+ local _to_array="(\"$_dollar$_split$_listname}\")"
+ eval $_listname=$_to_array
+}
+
+# source sh script of this package
+_colcon_package_zsh_source_script "$_colcon_package_zsh_COLCON_CURRENT_PREFIX/share/painting_robot_control/package.sh"
+unset convert_zsh_to_array
+
+unset _colcon_package_zsh_source_script
+unset _colcon_package_zsh_COLCON_CURRENT_PREFIX
diff --git a/workspace/log/build_2025-03-26_16-39-44/events.log b/workspace/log/build_2025-03-26_16-39-44/events.log
new file mode 100644
index 0000000..432265b
--- /dev/null
+++ b/workspace/log/build_2025-03-26_16-39-44/events.log
@@ -0,0 +1,41 @@
+[0.000000] (-) TimerEvent: {}
+[0.003800] (-) JobUnselected: {'identifier': 'joint_control'}
+[0.004083] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.004251] (mock_robot) JobQueued: {'identifier': 'mock_robot', 'dependencies': OrderedDict()}
+[0.004370] (mock_robot) JobStarted: {'identifier': 'mock_robot'}
+[0.098510] (-) TimerEvent: {}
+[0.199320] (-) TimerEvent: {}
+[0.304396] (-) TimerEvent: {}
+[0.405498] (-) TimerEvent: {}
+[0.509565] (-) TimerEvent: {}
+[0.610425] (-) TimerEvent: {}
+[0.713501] (-) TimerEvent: {}
+[0.765944] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/mock_robot/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/mock_robot', 'env': {'HOSTNAME': '3230bc57d699', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', '_colcon_cd_root': '/opt/ros/foxy/', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/src/build/joint_info:/BA/workspace/src/install/joint_info/lib/python3.10/site-packages:/BA/workspace/src/build/joint_control:/BA/workspace/src/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.814368] (-) TimerEvent: {}
+[0.918465] (-) TimerEvent: {}
+[1.020332] (-) TimerEvent: {}
+[1.031906] (mock_robot) StdoutLine: {'line': b'running develop\n'}
+[1.121321] (-) TimerEvent: {}
+[1.123735] (mock_robot) StdoutLine: {'line': b'running egg_info\n'}
+[1.125165] (mock_robot) StdoutLine: {'line': b'creating mock_robot.egg-info\n'}
+[1.126097] (mock_robot) StdoutLine: {'line': b'writing mock_robot.egg-info/PKG-INFO\n'}
+[1.128889] (mock_robot) StdoutLine: {'line': b'writing dependency_links to mock_robot.egg-info/dependency_links.txt\n'}
+[1.129646] (mock_robot) StdoutLine: {'line': b'writing entry points to mock_robot.egg-info/entry_points.txt\n'}
+[1.130175] (mock_robot) StdoutLine: {'line': b'writing requirements to mock_robot.egg-info/requires.txt\n'}
+[1.130664] (mock_robot) StdoutLine: {'line': b'writing top-level names to mock_robot.egg-info/top_level.txt\n'}
+[1.131186] (mock_robot) StdoutLine: {'line': b"writing manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.134403] (mock_robot) StdoutLine: {'line': b"reading manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.135949] (mock_robot) StdoutLine: {'line': b"writing manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.137365] (mock_robot) StdoutLine: {'line': b'running build_ext\n'}
+[1.137655] (mock_robot) StdoutLine: {'line': b'Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)\n'}
+[1.139364] (mock_robot) StdoutLine: {'line': b'\n'}
+[1.139793] (mock_robot) StdoutLine: {'line': b'Installed /BA/workspace/build/mock_robot\n'}
+[1.140107] (mock_robot) StdoutLine: {'line': b'running symlink_data\n'}
+[1.140954] (mock_robot) StdoutLine: {'line': b'creating /BA/workspace/install/mock_robot/share/ament_index\n'}
+[1.141527] (mock_robot) StdoutLine: {'line': b'creating /BA/workspace/install/mock_robot/share/ament_index/resource_index\n'}
+[1.141906] (mock_robot) StdoutLine: {'line': b'creating /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages\n'}
+[1.142243] (mock_robot) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/mock_robot/resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages\n'}
+[1.146865] (mock_robot) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/mock_robot/package.xml -> /BA/workspace/install/mock_robot/share/mock_robot\n'}
+[1.161323] (mock_robot) CommandEnded: {'returncode': 0}
+[1.188976] (mock_robot) JobEnded: {'identifier': 'mock_robot', 'rc': 0}
+[1.190593] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-26_16-39-44/logger_all.log b/workspace/log/build_2025-03-26_16-39-44/logger_all.log
new file mode 100644
index 0000000..92d216e
--- /dev/null
+++ b/workspace/log/build_2025-03-26_16-39-44/logger_all.log
@@ -0,0 +1,152 @@
+[0.098s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'mock_robot', '--symlink-install']
+[0.099s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['mock_robot'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.246s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.246s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.247s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.247s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.247s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.247s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.247s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.247s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.247s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.261s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.261s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.261s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.261s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.261s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.261s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.261s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.261s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.261s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.262s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.262s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.262s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.262s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.262s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.269s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.269s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.271s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.272s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.272s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.272s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.272s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.272s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.272s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.272s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.272s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.272s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.273s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.273s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.273s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.273s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.273s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.273s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.291s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_control' in 'src/joint_control'
+[0.291s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.291s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_args' from command line to 'None'
+[0.291s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target' from command line to 'None'
+[0.291s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.291s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_cache' from command line to 'False'
+[0.291s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_first' from command line to 'False'
+[0.292s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_force_configure' from command line to 'False'
+[0.292s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'ament_cmake_args' from command line to 'None'
+[0.292s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_cmake_args' from command line to 'None'
+[0.292s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.292s] DEBUG:colcon.colcon_core.verb:Building package 'mock_robot' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/mock_robot', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/mock_robot', 'merge_install': False, 'path': '/BA/workspace/src/mock_robot', 'symlink_install': True, 'test_result_base': None}
+[0.292s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.295s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.296s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/mock_robot' with build type 'ament_python'
+[0.296s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'ament_prefix_path')
+[0.299s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.300s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1'
+[0.302s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv'
+[0.303s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh'
+[0.304s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.304s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.615s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/mock_robot'
+[0.616s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.616s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.071s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.457s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath_develop')
+[1.458s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1'
+[1.458s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.460s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv'
+[1.460s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh'
+[1.464s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake module files
+[1.465s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake config files
+[1.467s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib'
+[1.468s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[1.468s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/pkgconfig/mock_robot.pc'
+[1.468s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/python3.10/site-packages'
+[1.468s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath')
+[1.468s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1'
+[1.469s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv'
+[1.470s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh'
+[1.470s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[1.470s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(mock_robot)
+[1.471s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.ps1'
+[1.472s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/mock_robot/share/mock_robot/package.dsv'
+[1.480s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.sh'
+[1.482s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.bash'
+[1.483s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.zsh'
+[1.484s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/mock_robot/share/colcon-core/packages/mock_robot)
+[1.485s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.485s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.485s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.486s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.494s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.494s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.494s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.494s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.496s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.496s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.496s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.497s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.499s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.501s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.501s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.502s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.504s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.504s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.505s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.506s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-26_16-39-44/mock_robot/command.log b/workspace/log/build_2025-03-26_16-39-44/mock_robot/command.log
new file mode 100644
index 0000000..fefebe5
--- /dev/null
+++ b/workspace/log/build_2025-03-26_16-39-44/mock_robot/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-26_16-39-44/mock_robot/stderr.log b/workspace/log/build_2025-03-26_16-39-44/mock_robot/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-26_16-39-44/mock_robot/stdout.log b/workspace/log/build_2025-03-26_16-39-44/mock_robot/stdout.log
new file mode 100644
index 0000000..4837b2d
--- /dev/null
+++ b/workspace/log/build_2025-03-26_16-39-44/mock_robot/stdout.log
@@ -0,0 +1,21 @@
+running develop
+running egg_info
+creating mock_robot.egg-info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
+creating /BA/workspace/install/mock_robot/share/ament_index
+creating /BA/workspace/install/mock_robot/share/ament_index/resource_index
+creating /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/mock_robot/resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/mock_robot/package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
diff --git a/workspace/log/build_2025-03-26_16-39-44/mock_robot/stdout_stderr.log b/workspace/log/build_2025-03-26_16-39-44/mock_robot/stdout_stderr.log
new file mode 100644
index 0000000..4837b2d
--- /dev/null
+++ b/workspace/log/build_2025-03-26_16-39-44/mock_robot/stdout_stderr.log
@@ -0,0 +1,21 @@
+running develop
+running egg_info
+creating mock_robot.egg-info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
+creating /BA/workspace/install/mock_robot/share/ament_index
+creating /BA/workspace/install/mock_robot/share/ament_index/resource_index
+creating /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/mock_robot/resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/mock_robot/package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
diff --git a/workspace/log/build_2025-03-26_16-39-44/mock_robot/streams.log b/workspace/log/build_2025-03-26_16-39-44/mock_robot/streams.log
new file mode 100644
index 0000000..2704dc1
--- /dev/null
+++ b/workspace/log/build_2025-03-26_16-39-44/mock_robot/streams.log
@@ -0,0 +1,23 @@
+[0.770s] Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.028s] running develop
+[1.120s] running egg_info
+[1.121s] creating mock_robot.egg-info
+[1.121s] writing mock_robot.egg-info/PKG-INFO
+[1.124s] writing dependency_links to mock_robot.egg-info/dependency_links.txt
+[1.125s] writing entry points to mock_robot.egg-info/entry_points.txt
+[1.126s] writing requirements to mock_robot.egg-info/requires.txt
+[1.126s] writing top-level names to mock_robot.egg-info/top_level.txt
+[1.126s] writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.130s] reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.131s] writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.133s] running build_ext
+[1.133s] Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+[1.135s]
+[1.135s] Installed /BA/workspace/build/mock_robot
+[1.136s] running symlink_data
+[1.136s] creating /BA/workspace/install/mock_robot/share/ament_index
+[1.137s] creating /BA/workspace/install/mock_robot/share/ament_index/resource_index
+[1.137s] creating /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+[1.142s] symbolically linking /BA/workspace/build/mock_robot/resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+[1.143s] symbolically linking /BA/workspace/build/mock_robot/package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
+[1.157s] Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_11-01-14/events.log b/workspace/log/build_2025-03-27_11-01-14/events.log
new file mode 100644
index 0000000..efdbd45
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/events.log
@@ -0,0 +1,158 @@
+[0.000000] (-) TimerEvent: {}
+[0.002383] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.002695] (joint_info) JobQueued: {'identifier': 'joint_info', 'dependencies': OrderedDict()}
+[0.002826] (mock_robot) JobQueued: {'identifier': 'mock_robot', 'dependencies': OrderedDict()}
+[0.002883] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.012485] (joint_info) JobStarted: {'identifier': 'joint_info'}
+[0.022387] (mock_robot) JobStarted: {'identifier': 'mock_robot'}
+[0.098323] (-) TimerEvent: {}
+[0.199220] (-) TimerEvent: {}
+[0.304400] (-) TimerEvent: {}
+[0.405234] (-) TimerEvent: {}
+[0.510434] (-) TimerEvent: {}
+[0.615459] (-) TimerEvent: {}
+[0.717435] (-) TimerEvent: {}
+[0.820217] (-) TimerEvent: {}
+[0.922393] (-) TimerEvent: {}
+[1.023268] (-) TimerEvent: {}
+[1.125379] (-) TimerEvent: {}
+[1.187802] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--uninstall', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': 'b21527604014', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.215442] (joint_info) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--uninstall', '--editable', '--build-directory', '/BA/workspace/build/joint_info/build'], 'cwd': '/BA/workspace/build/joint_info', 'env': {'HOSTNAME': 'b21527604014', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_info', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.217972] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--uninstall', '--editable', '--build-directory', '/BA/workspace/build/mock_robot/build'], 'cwd': '/BA/workspace/build/mock_robot', 'env': {'HOSTNAME': 'b21527604014', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.226199] (-) TimerEvent: {}
+[1.327233] (-) TimerEvent: {}
+[1.428231] (-) TimerEvent: {}
+[1.469801] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.472889] (joint_info) StdoutLine: {'line': b'running develop\n'}
+[1.500177] (mock_robot) StdoutLine: {'line': b'running develop\n'}
+[1.531243] (-) TimerEvent: {}
+[1.571482] (joint_control) StdoutLine: {'line': b'Removing /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.588453] (joint_info) StdoutLine: {'line': b'Removing /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)\n'}
+[1.594784] (joint_control) CommandEnded: {'returncode': 0}
+[1.601818] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'egg_info', '--egg-base', '../../build/joint_control', 'build', '--build-base', '/BA/workspace/build/joint_control/build', 'install', '--record', '/BA/workspace/build/joint_control/install.log', '--single-version-externally-managed', 'install_data', '--force'], 'cwd': '/BA/workspace/src/joint_control', 'env': {'HOSTNAME': 'b21527604014', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.610679] (mock_robot) StdoutLine: {'line': b'Removing /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)\n'}
+[1.611455] (joint_info) CommandEnded: {'returncode': 0}
+[1.619758] (joint_info) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'egg_info', '--egg-base', '../../build/joint_info', 'build', '--build-base', '/BA/workspace/build/joint_info/build', 'install', '--record', '/BA/workspace/build/joint_info/install.log', '--single-version-externally-managed', 'install_data', '--force'], 'cwd': '/BA/workspace/src/joint_info', 'env': {'HOSTNAME': 'b21527604014', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_info', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.630395] (mock_robot) CommandEnded: {'returncode': 0}
+[1.631347] (-) TimerEvent: {}
+[1.636858] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'egg_info', '--egg-base', '../../build/mock_robot', 'build', '--build-base', '/BA/workspace/build/mock_robot/build', 'install', '--record', '/BA/workspace/build/mock_robot/install.log', '--single-version-externally-managed', 'install_data', '--force'], 'cwd': '/BA/workspace/src/mock_robot', 'env': {'HOSTNAME': 'b21527604014', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.732229] (-) TimerEvent: {}
+[1.833232] (-) TimerEvent: {}
+[1.862744] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.863627] (joint_control) StdoutLine: {'line': b'writing ../../build/joint_control/joint_control.egg-info/PKG-INFO\n'}
+[1.864720] (joint_control) StdoutLine: {'line': b'writing dependency_links to ../../build/joint_control/joint_control.egg-info/dependency_links.txt\n'}
+[1.865258] (joint_control) StdoutLine: {'line': b'writing entry points to ../../build/joint_control/joint_control.egg-info/entry_points.txt\n'}
+[1.865909] (joint_control) StdoutLine: {'line': b'writing requirements to ../../build/joint_control/joint_control.egg-info/requires.txt\n'}
+[1.866331] (joint_control) StdoutLine: {'line': b'writing top-level names to ../../build/joint_control/joint_control.egg-info/top_level.txt\n'}
+[1.873376] (joint_info) StdoutLine: {'line': b'running egg_info\n'}
+[1.875102] (joint_info) StdoutLine: {'line': b'writing ../../build/joint_info/joint_info.egg-info/PKG-INFO\n'}
+[1.877727] (joint_info) StdoutLine: {'line': b'writing dependency_links to ../../build/joint_info/joint_info.egg-info/dependency_links.txt\n'}
+[1.878357] (joint_control) StdoutLine: {'line': b"reading manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'\n"}
+[1.879096] (joint_info) StdoutLine: {'line': b'writing entry points to ../../build/joint_info/joint_info.egg-info/entry_points.txt\n'}
+[1.879964] (joint_info) StdoutLine: {'line': b'writing requirements to ../../build/joint_info/joint_info.egg-info/requires.txt\n'}
+[1.880318] (joint_control) StdoutLine: {'line': b"writing manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'\n"}
+[1.880760] (joint_control) StdoutLine: {'line': b'running build\n'}
+[1.881394] (joint_control) StdoutLine: {'line': b'running build_py\n'}
+[1.882197] (joint_info) StdoutLine: {'line': b'writing top-level names to ../../build/joint_info/joint_info.egg-info/top_level.txt\n'}
+[1.882929] (joint_control) StdoutLine: {'line': b'creating /BA/workspace/build/joint_control/build\n'}
+[1.883699] (joint_control) StdoutLine: {'line': b'creating /BA/workspace/build/joint_control/build/lib\n'}
+[1.884286] (joint_control) StdoutLine: {'line': b'creating /BA/workspace/build/joint_control/build/lib/joint_control\n'}
+[1.885008] (joint_control) StdoutLine: {'line': b'copying joint_control/cart_tcp_server.py -> /BA/workspace/build/joint_control/build/lib/joint_control\n'}
+[1.885636] (joint_control) StdoutLine: {'line': b'copying joint_control/__init__.py -> /BA/workspace/build/joint_control/build/lib/joint_control\n'}
+[1.887802] (joint_control) StdoutLine: {'line': b'copying joint_control/trajectory_server_cart.py -> /BA/workspace/build/joint_control/build/lib/joint_control\n'}
+[1.888853] (joint_info) StdoutLine: {'line': b"reading manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'\n"}
+[1.889289] (joint_control) StdoutLine: {'line': b'copying joint_control/trajectory_server.py -> /BA/workspace/build/joint_control/build/lib/joint_control\n'}
+[1.890467] (joint_control) StdoutLine: {'line': b'copying joint_control/joint_angles_server.py -> /BA/workspace/build/joint_control/build/lib/joint_control\n'}
+[1.890889] (joint_info) StdoutLine: {'line': b"writing manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'\n"}
+[1.892007] (joint_info) StdoutLine: {'line': b'running build\n'}
+[1.892356] (joint_info) StdoutLine: {'line': b'running build_py\n'}
+[1.892862] (joint_info) StdoutLine: {'line': b'creating /BA/workspace/build/joint_info/build\n'}
+[1.893268] (joint_info) StdoutLine: {'line': b'creating /BA/workspace/build/joint_info/build/lib\n'}
+[1.893950] (joint_info) StdoutLine: {'line': b'creating /BA/workspace/build/joint_info/build/lib/joint_info\n'}
+[1.894752] (joint_control) StdoutLine: {'line': b'running install\n'}
+[1.895170] (joint_info) StdoutLine: {'line': b'copying joint_info/osc_joint_states_pub.py -> /BA/workspace/build/joint_info/build/lib/joint_info\n'}
+[1.895605] (joint_control) StdoutLine: {'line': b'running install_lib\n'}
+[1.895942] (joint_info) StdoutLine: {'line': b'copying joint_info/__init__.py -> /BA/workspace/build/joint_info/build/lib/joint_info\n'}
+[1.896408] (joint_control) StdoutLine: {'line': b'creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control\n'}
+[1.897054] (joint_info) StdoutLine: {'line': b'copying joint_info/osc_joint_states_sub.py -> /BA/workspace/build/joint_info/build/lib/joint_info\n'}
+[1.897643] (joint_control) StdoutLine: {'line': b'copying /BA/workspace/build/joint_control/build/lib/joint_control/cart_tcp_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control\n'}
+[1.898349] (mock_robot) StdoutLine: {'line': b'running egg_info\n'}
+[1.898833] (joint_info) StdoutLine: {'line': b'copying joint_info/tcp_cart_pos.py -> /BA/workspace/build/joint_info/build/lib/joint_info\n'}
+[1.899214] (mock_robot) StdoutLine: {'line': b'writing ../../build/mock_robot/mock_robot.egg-info/PKG-INFO\n'}
+[1.899734] (joint_control) StdoutLine: {'line': b'copying /BA/workspace/build/joint_control/build/lib/joint_control/__init__.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control\n'}
+[1.900670] (mock_robot) StdoutLine: {'line': b'writing dependency_links to ../../build/mock_robot/mock_robot.egg-info/dependency_links.txt\n'}
+[1.901170] (mock_robot) StdoutLine: {'line': b'writing entry points to ../../build/mock_robot/mock_robot.egg-info/entry_points.txt\n'}
+[1.901851] (joint_info) StdoutLine: {'line': b'running install\n'}
+[1.902446] (joint_info) StdoutLine: {'line': b'running install_lib\n'}
+[1.903134] (joint_control) StdoutLine: {'line': b'copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server_cart.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control\n'}
+[1.903703] (mock_robot) StdoutLine: {'line': b'writing requirements to ../../build/mock_robot/mock_robot.egg-info/requires.txt\n'}
+[1.904440] (mock_robot) StdoutLine: {'line': b'writing top-level names to ../../build/mock_robot/mock_robot.egg-info/top_level.txt\n'}
+[1.905258] (joint_info) StdoutLine: {'line': b'creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info\n'}
+[1.906160] (joint_control) StdoutLine: {'line': b'copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control\n'}
+[1.906780] (joint_info) StdoutLine: {'line': b'copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_pub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info\n'}
+[1.907544] (joint_info) StdoutLine: {'line': b'copying /BA/workspace/build/joint_info/build/lib/joint_info/__init__.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info\n'}
+[1.908641] (joint_control) StdoutLine: {'line': b'copying /BA/workspace/build/joint_control/build/lib/joint_control/joint_angles_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control\n'}
+[1.909216] (joint_info) StdoutLine: {'line': b'copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_sub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info\n'}
+[1.910098] (mock_robot) StdoutLine: {'line': b"reading manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'\n"}
+[1.911391] (joint_control) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/cart_tcp_server.py to cart_tcp_server.cpython-310.pyc\n'}
+[1.912207] (joint_info) StdoutLine: {'line': b'copying /BA/workspace/build/joint_info/build/lib/joint_info/tcp_cart_pos.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info\n'}
+[1.912598] (mock_robot) StdoutLine: {'line': b"writing manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'\n"}
+[1.912961] (mock_robot) StdoutLine: {'line': b'running build\n'}
+[1.913459] (mock_robot) StdoutLine: {'line': b'running build_py\n'}
+[1.914882] (joint_info) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_pub.py to osc_joint_states_pub.cpython-310.pyc\n'}
+[1.915219] (mock_robot) StdoutLine: {'line': b'creating /BA/workspace/build/mock_robot/build\n'}
+[1.915452] (mock_robot) StdoutLine: {'line': b'creating /BA/workspace/build/mock_robot/build/lib\n'}
+[1.915737] (mock_robot) StdoutLine: {'line': b'creating /BA/workspace/build/mock_robot/build/lib/mock_robot\n'}
+[1.918068] (mock_robot) StdoutLine: {'line': b'copying mock_robot/robot_node.py -> /BA/workspace/build/mock_robot/build/lib/mock_robot\n'}
+[1.919846] (mock_robot) StdoutLine: {'line': b'copying mock_robot/__init__.py -> /BA/workspace/build/mock_robot/build/lib/mock_robot\n'}
+[1.923166] (joint_control) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/__init__.py to __init__.cpython-310.pyc\n'}
+[1.924381] (mock_robot) StdoutLine: {'line': b'running install\n'}
+[1.927403] (joint_info) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/__init__.py to __init__.cpython-310.pyc\n'}
+[1.928074] (mock_robot) StdoutLine: {'line': b'running install_lib\n'}
+[1.928576] (joint_control) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server_cart.py to trajectory_server_cart.cpython-310.pyc\n'}
+[1.929171] (mock_robot) StdoutLine: {'line': b'creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot\n'}
+[1.930629] (mock_robot) StdoutLine: {'line': b'copying /BA/workspace/build/mock_robot/build/lib/mock_robot/robot_node.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot\n'}
+[1.931705] (joint_info) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_sub.py to osc_joint_states_sub.cpython-310.pyc\n'}
+[1.932546] (mock_robot) StdoutLine: {'line': b'copying /BA/workspace/build/mock_robot/build/lib/mock_robot/__init__.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot\n'}
+[1.933734] (-) TimerEvent: {}
+[1.933908] (joint_control) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server.py to trajectory_server.cpython-310.pyc\n'}
+[1.934550] (joint_info) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/tcp_cart_pos.py to tcp_cart_pos.cpython-310.pyc\n'}
+[1.935325] (joint_info) StdoutLine: {'line': b'running install_data\n'}
+[1.938479] (mock_robot) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/robot_node.py to robot_node.cpython-310.pyc\n'}
+[1.938774] (joint_info) StdoutLine: {'line': b'copying resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages\n'}
+[1.939373] (joint_control) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/joint_angles_server.py to joint_angles_server.cpython-310.pyc\n'}
+[1.939628] (joint_info) StdoutLine: {'line': b'copying package.xml -> /BA/workspace/install/joint_info/share/joint_info\n'}
+[1.940613] (joint_control) StdoutLine: {'line': b'running install_data\n'}
+[1.941170] (joint_control) StdoutLine: {'line': b'copying resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages\n'}
+[1.941723] (mock_robot) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/__init__.py to __init__.cpython-310.pyc\n'}
+[1.942180] (joint_info) StdoutLine: {'line': b'running install_egg_info\n'}
+[1.942670] (mock_robot) StdoutLine: {'line': b'running install_data\n'}
+[1.943335] (joint_control) StdoutLine: {'line': b'copying package.xml -> /BA/workspace/install/joint_control/share/joint_control\n'}
+[1.943976] (mock_robot) StdoutLine: {'line': b'copying resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages\n'}
+[1.944427] (joint_info) StdoutLine: {'line': b'Copying ../../build/joint_info/joint_info.egg-info to /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info-0.0.0-py3.10.egg-info\n'}
+[1.945261] (joint_control) StdoutLine: {'line': b'running install_egg_info\n'}
+[1.945761] (mock_robot) StdoutLine: {'line': b'copying package.xml -> /BA/workspace/install/mock_robot/share/mock_robot\n'}
+[1.946179] (joint_control) StdoutLine: {'line': b'Copying ../../build/joint_control/joint_control.egg-info to /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control-0.0.0-py3.10.egg-info\n'}
+[1.946782] (mock_robot) StdoutLine: {'line': b'running install_egg_info\n'}
+[1.948907] (mock_robot) StdoutLine: {'line': b'Copying ../../build/mock_robot/mock_robot.egg-info to /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot-0.0.0-py3.10.egg-info\n'}
+[1.955886] (joint_info) StdoutLine: {'line': b'running install_scripts\n'}
+[1.959379] (joint_control) StdoutLine: {'line': b'running install_scripts\n'}
+[1.961205] (mock_robot) StdoutLine: {'line': b'running install_scripts\n'}
+[1.982050] (joint_info) StdoutLine: {'line': b'Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.985006] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.985935] (joint_info) StdoutLine: {'line': b'Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.986844] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.987445] (joint_info) StdoutLine: {'line': b'Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.988231] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.989379] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.990007] (joint_info) StdoutLine: {'line': b"writing list of installed files to '/BA/workspace/build/joint_info/install.log'\n"}
+[1.990668] (joint_control) StdoutLine: {'line': b"writing list of installed files to '/BA/workspace/build/joint_control/install.log'\n"}
+[1.996122] (mock_robot) StdoutLine: {'line': b"writing list of installed files to '/BA/workspace/build/mock_robot/install.log'\n"}
+[2.014839] (joint_info) CommandEnded: {'returncode': 0}
+[2.034279] (-) TimerEvent: {}
+[2.044918] (joint_info) JobEnded: {'identifier': 'joint_info', 'rc': 0}
+[2.046821] (joint_control) CommandEnded: {'returncode': 0}
+[2.056580] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[2.057995] (mock_robot) CommandEnded: {'returncode': 0}
+[2.066712] (mock_robot) JobEnded: {'identifier': 'mock_robot', 'rc': 0}
+[2.068005] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-27_11-01-14/joint_control/command.log b/workspace/log/build_2025-03-27_11-01-14/joint_control/command.log
new file mode 100644
index 0000000..d69aa13
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/joint_control/command.log
@@ -0,0 +1,4 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_control/build
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_control/build
+Invoking command in '/BA/workspace/src/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_control build --build-base /BA/workspace/build/joint_control/build install --record /BA/workspace/build/joint_control/install.log --single-version-externally-managed install_data --force
+Invoked command in '/BA/workspace/src/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_control build --build-base /BA/workspace/build/joint_control/build install --record /BA/workspace/build/joint_control/install.log --single-version-externally-managed install_data --force
diff --git a/workspace/log/build_2025-03-27_11-01-14/joint_control/stderr.log b/workspace/log/build_2025-03-27_11-01-14/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_11-01-14/joint_control/stdout.log b/workspace/log/build_2025-03-27_11-01-14/joint_control/stdout.log
new file mode 100644
index 0000000..6d71da9
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/joint_control/stdout.log
@@ -0,0 +1,44 @@
+running develop
+Removing /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+running egg_info
+writing ../../build/joint_control/joint_control.egg-info/PKG-INFO
+writing dependency_links to ../../build/joint_control/joint_control.egg-info/dependency_links.txt
+writing entry points to ../../build/joint_control/joint_control.egg-info/entry_points.txt
+writing requirements to ../../build/joint_control/joint_control.egg-info/requires.txt
+writing top-level names to ../../build/joint_control/joint_control.egg-info/top_level.txt
+reading manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'
+writing manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'
+running build
+running build_py
+creating /BA/workspace/build/joint_control/build
+creating /BA/workspace/build/joint_control/build/lib
+creating /BA/workspace/build/joint_control/build/lib/joint_control
+copying joint_control/cart_tcp_server.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+copying joint_control/__init__.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+copying joint_control/trajectory_server_cart.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+copying joint_control/trajectory_server.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+copying joint_control/joint_angles_server.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+running install
+running install_lib
+creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/cart_tcp_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/__init__.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server_cart.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/joint_angles_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/cart_tcp_server.py to cart_tcp_server.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/__init__.py to __init__.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server_cart.py to trajectory_server_cart.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server.py to trajectory_server.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/joint_angles_server.py to joint_angles_server.cpython-310.pyc
+running install_data
+copying resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages
+copying package.xml -> /BA/workspace/install/joint_control/share/joint_control
+running install_egg_info
+Copying ../../build/joint_control/joint_control.egg-info to /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control-0.0.0-py3.10.egg-info
+running install_scripts
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+writing list of installed files to '/BA/workspace/build/joint_control/install.log'
diff --git a/workspace/log/build_2025-03-27_11-01-14/joint_control/stdout_stderr.log b/workspace/log/build_2025-03-27_11-01-14/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..6d71da9
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/joint_control/stdout_stderr.log
@@ -0,0 +1,44 @@
+running develop
+Removing /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+running egg_info
+writing ../../build/joint_control/joint_control.egg-info/PKG-INFO
+writing dependency_links to ../../build/joint_control/joint_control.egg-info/dependency_links.txt
+writing entry points to ../../build/joint_control/joint_control.egg-info/entry_points.txt
+writing requirements to ../../build/joint_control/joint_control.egg-info/requires.txt
+writing top-level names to ../../build/joint_control/joint_control.egg-info/top_level.txt
+reading manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'
+writing manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'
+running build
+running build_py
+creating /BA/workspace/build/joint_control/build
+creating /BA/workspace/build/joint_control/build/lib
+creating /BA/workspace/build/joint_control/build/lib/joint_control
+copying joint_control/cart_tcp_server.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+copying joint_control/__init__.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+copying joint_control/trajectory_server_cart.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+copying joint_control/trajectory_server.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+copying joint_control/joint_angles_server.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+running install
+running install_lib
+creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/cart_tcp_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/__init__.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server_cart.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/joint_angles_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/cart_tcp_server.py to cart_tcp_server.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/__init__.py to __init__.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server_cart.py to trajectory_server_cart.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server.py to trajectory_server.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/joint_angles_server.py to joint_angles_server.cpython-310.pyc
+running install_data
+copying resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages
+copying package.xml -> /BA/workspace/install/joint_control/share/joint_control
+running install_egg_info
+Copying ../../build/joint_control/joint_control.egg-info to /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control-0.0.0-py3.10.egg-info
+running install_scripts
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+writing list of installed files to '/BA/workspace/build/joint_control/install.log'
diff --git a/workspace/log/build_2025-03-27_11-01-14/joint_control/streams.log b/workspace/log/build_2025-03-27_11-01-14/joint_control/streams.log
new file mode 100644
index 0000000..4893557
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/joint_control/streams.log
@@ -0,0 +1,48 @@
+[1.203s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_control/build
+[1.470s] running develop
+[1.571s] Removing /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.592s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_control/build
+[1.605s] Invoking command in '/BA/workspace/src/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_control build --build-base /BA/workspace/build/joint_control/build install --record /BA/workspace/build/joint_control/install.log --single-version-externally-managed install_data --force
+[1.860s] running egg_info
+[1.862s] writing ../../build/joint_control/joint_control.egg-info/PKG-INFO
+[1.862s] writing dependency_links to ../../build/joint_control/joint_control.egg-info/dependency_links.txt
+[1.863s] writing entry points to ../../build/joint_control/joint_control.egg-info/entry_points.txt
+[1.863s] writing requirements to ../../build/joint_control/joint_control.egg-info/requires.txt
+[1.864s] writing top-level names to ../../build/joint_control/joint_control.egg-info/top_level.txt
+[1.876s] reading manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'
+[1.878s] writing manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'
+[1.878s] running build
+[1.879s] running build_py
+[1.881s] creating /BA/workspace/build/joint_control/build
+[1.881s] creating /BA/workspace/build/joint_control/build/lib
+[1.882s] creating /BA/workspace/build/joint_control/build/lib/joint_control
+[1.883s] copying joint_control/cart_tcp_server.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+[1.883s] copying joint_control/__init__.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+[1.886s] copying joint_control/trajectory_server_cart.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+[1.887s] copying joint_control/trajectory_server.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+[1.888s] copying joint_control/joint_angles_server.py -> /BA/workspace/build/joint_control/build/lib/joint_control
+[1.892s] running install
+[1.893s] running install_lib
+[1.894s] creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+[1.895s] copying /BA/workspace/build/joint_control/build/lib/joint_control/cart_tcp_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+[1.898s] copying /BA/workspace/build/joint_control/build/lib/joint_control/__init__.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+[1.901s] copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server_cart.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+[1.904s] copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+[1.906s] copying /BA/workspace/build/joint_control/build/lib/joint_control/joint_angles_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+[1.909s] byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/cart_tcp_server.py to cart_tcp_server.cpython-310.pyc
+[1.921s] byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/__init__.py to __init__.cpython-310.pyc
+[1.926s] byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server_cart.py to trajectory_server_cart.cpython-310.pyc
+[1.931s] byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server.py to trajectory_server.cpython-310.pyc
+[1.937s] byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/joint_angles_server.py to joint_angles_server.cpython-310.pyc
+[1.938s] running install_data
+[1.939s] copying resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages
+[1.941s] copying package.xml -> /BA/workspace/install/joint_control/share/joint_control
+[1.943s] running install_egg_info
+[1.944s] Copying ../../build/joint_control/joint_control.egg-info to /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control-0.0.0-py3.10.egg-info
+[1.957s] running install_scripts
+[1.983s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.984s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.986s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.987s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.988s] writing list of installed files to '/BA/workspace/build/joint_control/install.log'
+[2.044s] Invoked command in '/BA/workspace/src/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_control build --build-base /BA/workspace/build/joint_control/build install --record /BA/workspace/build/joint_control/install.log --single-version-externally-managed install_data --force
diff --git a/workspace/log/build_2025-03-27_11-01-14/joint_info/command.log b/workspace/log/build_2025-03-27_11-01-14/joint_info/command.log
new file mode 100644
index 0000000..f633bef
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/joint_info/command.log
@@ -0,0 +1,4 @@
+Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_info/build
+Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_info/build
+Invoking command in '/BA/workspace/src/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_info build --build-base /BA/workspace/build/joint_info/build install --record /BA/workspace/build/joint_info/install.log --single-version-externally-managed install_data --force
+Invoked command in '/BA/workspace/src/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_info build --build-base /BA/workspace/build/joint_info/build install --record /BA/workspace/build/joint_info/install.log --single-version-externally-managed install_data --force
diff --git a/workspace/log/build_2025-03-27_11-01-14/joint_info/stderr.log b/workspace/log/build_2025-03-27_11-01-14/joint_info/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_11-01-14/joint_info/stdout.log b/workspace/log/build_2025-03-27_11-01-14/joint_info/stdout.log
new file mode 100644
index 0000000..03c50a0
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/joint_info/stdout.log
@@ -0,0 +1,40 @@
+running develop
+Removing /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+running egg_info
+writing ../../build/joint_info/joint_info.egg-info/PKG-INFO
+writing dependency_links to ../../build/joint_info/joint_info.egg-info/dependency_links.txt
+writing entry points to ../../build/joint_info/joint_info.egg-info/entry_points.txt
+writing requirements to ../../build/joint_info/joint_info.egg-info/requires.txt
+writing top-level names to ../../build/joint_info/joint_info.egg-info/top_level.txt
+reading manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'
+writing manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'
+running build
+running build_py
+creating /BA/workspace/build/joint_info/build
+creating /BA/workspace/build/joint_info/build/lib
+creating /BA/workspace/build/joint_info/build/lib/joint_info
+copying joint_info/osc_joint_states_pub.py -> /BA/workspace/build/joint_info/build/lib/joint_info
+copying joint_info/__init__.py -> /BA/workspace/build/joint_info/build/lib/joint_info
+copying joint_info/osc_joint_states_sub.py -> /BA/workspace/build/joint_info/build/lib/joint_info
+copying joint_info/tcp_cart_pos.py -> /BA/workspace/build/joint_info/build/lib/joint_info
+running install
+running install_lib
+creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_pub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/__init__.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_sub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/tcp_cart_pos.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_pub.py to osc_joint_states_pub.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/__init__.py to __init__.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_sub.py to osc_joint_states_sub.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/tcp_cart_pos.py to tcp_cart_pos.cpython-310.pyc
+running install_data
+copying resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages
+copying package.xml -> /BA/workspace/install/joint_info/share/joint_info
+running install_egg_info
+Copying ../../build/joint_info/joint_info.egg-info to /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info-0.0.0-py3.10.egg-info
+running install_scripts
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+writing list of installed files to '/BA/workspace/build/joint_info/install.log'
diff --git a/workspace/log/build_2025-03-27_11-01-14/joint_info/stdout_stderr.log b/workspace/log/build_2025-03-27_11-01-14/joint_info/stdout_stderr.log
new file mode 100644
index 0000000..03c50a0
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/joint_info/stdout_stderr.log
@@ -0,0 +1,40 @@
+running develop
+Removing /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+running egg_info
+writing ../../build/joint_info/joint_info.egg-info/PKG-INFO
+writing dependency_links to ../../build/joint_info/joint_info.egg-info/dependency_links.txt
+writing entry points to ../../build/joint_info/joint_info.egg-info/entry_points.txt
+writing requirements to ../../build/joint_info/joint_info.egg-info/requires.txt
+writing top-level names to ../../build/joint_info/joint_info.egg-info/top_level.txt
+reading manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'
+writing manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'
+running build
+running build_py
+creating /BA/workspace/build/joint_info/build
+creating /BA/workspace/build/joint_info/build/lib
+creating /BA/workspace/build/joint_info/build/lib/joint_info
+copying joint_info/osc_joint_states_pub.py -> /BA/workspace/build/joint_info/build/lib/joint_info
+copying joint_info/__init__.py -> /BA/workspace/build/joint_info/build/lib/joint_info
+copying joint_info/osc_joint_states_sub.py -> /BA/workspace/build/joint_info/build/lib/joint_info
+copying joint_info/tcp_cart_pos.py -> /BA/workspace/build/joint_info/build/lib/joint_info
+running install
+running install_lib
+creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_pub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/__init__.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_sub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/tcp_cart_pos.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_pub.py to osc_joint_states_pub.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/__init__.py to __init__.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_sub.py to osc_joint_states_sub.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/tcp_cart_pos.py to tcp_cart_pos.cpython-310.pyc
+running install_data
+copying resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages
+copying package.xml -> /BA/workspace/install/joint_info/share/joint_info
+running install_egg_info
+Copying ../../build/joint_info/joint_info.egg-info to /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info-0.0.0-py3.10.egg-info
+running install_scripts
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+writing list of installed files to '/BA/workspace/build/joint_info/install.log'
diff --git a/workspace/log/build_2025-03-27_11-01-14/joint_info/streams.log b/workspace/log/build_2025-03-27_11-01-14/joint_info/streams.log
new file mode 100644
index 0000000..1200233
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/joint_info/streams.log
@@ -0,0 +1,44 @@
+[1.205s] Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_info/build
+[1.460s] running develop
+[1.581s] Removing /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+[1.599s] Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_info/build
+[1.608s] Invoking command in '/BA/workspace/src/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_info build --build-base /BA/workspace/build/joint_info/build install --record /BA/workspace/build/joint_info/install.log --single-version-externally-managed install_data --force
+[1.862s] running egg_info
+[1.864s] writing ../../build/joint_info/joint_info.egg-info/PKG-INFO
+[1.866s] writing dependency_links to ../../build/joint_info/joint_info.egg-info/dependency_links.txt
+[1.867s] writing entry points to ../../build/joint_info/joint_info.egg-info/entry_points.txt
+[1.868s] writing requirements to ../../build/joint_info/joint_info.egg-info/requires.txt
+[1.870s] writing top-level names to ../../build/joint_info/joint_info.egg-info/top_level.txt
+[1.876s] reading manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'
+[1.879s] writing manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'
+[1.880s] running build
+[1.880s] running build_py
+[1.880s] creating /BA/workspace/build/joint_info/build
+[1.881s] creating /BA/workspace/build/joint_info/build/lib
+[1.882s] creating /BA/workspace/build/joint_info/build/lib/joint_info
+[1.883s] copying joint_info/osc_joint_states_pub.py -> /BA/workspace/build/joint_info/build/lib/joint_info
+[1.884s] copying joint_info/__init__.py -> /BA/workspace/build/joint_info/build/lib/joint_info
+[1.885s] copying joint_info/osc_joint_states_sub.py -> /BA/workspace/build/joint_info/build/lib/joint_info
+[1.886s] copying joint_info/tcp_cart_pos.py -> /BA/workspace/build/joint_info/build/lib/joint_info
+[1.889s] running install
+[1.890s] running install_lib
+[1.893s] creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+[1.895s] copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_pub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+[1.896s] copying /BA/workspace/build/joint_info/build/lib/joint_info/__init__.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+[1.897s] copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_sub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+[1.900s] copying /BA/workspace/build/joint_info/build/lib/joint_info/tcp_cart_pos.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+[1.902s] byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_pub.py to osc_joint_states_pub.cpython-310.pyc
+[1.915s] byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/__init__.py to __init__.cpython-310.pyc
+[1.919s] byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_sub.py to osc_joint_states_sub.cpython-310.pyc
+[1.922s] byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/tcp_cart_pos.py to tcp_cart_pos.cpython-310.pyc
+[1.926s] running install_data
+[1.926s] copying resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages
+[1.927s] copying package.xml -> /BA/workspace/install/joint_info/share/joint_info
+[1.930s] running install_egg_info
+[1.932s] Copying ../../build/joint_info/joint_info.egg-info to /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info-0.0.0-py3.10.egg-info
+[1.944s] running install_scripts
+[1.972s] Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.974s] Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.975s] Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+[1.978s] writing list of installed files to '/BA/workspace/build/joint_info/install.log'
+[2.003s] Invoked command in '/BA/workspace/src/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_info build --build-base /BA/workspace/build/joint_info/build install --record /BA/workspace/build/joint_info/install.log --single-version-externally-managed install_data --force
diff --git a/workspace/log/build_2025-03-27_11-01-14/logger_all.log b/workspace/log/build_2025-03-27_11-01-14/logger_all.log
new file mode 100644
index 0000000..ca0268f
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/logger_all.log
@@ -0,0 +1,232 @@
+[0.105s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build']
+[0.106s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=False, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=None, packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.210s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.211s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.212s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.212s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.212s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.212s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.212s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.212s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.212s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.238s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.242s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.242s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.244s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.245s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.245s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.245s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.245s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.245s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.266s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': False, 'test_result_base': None}
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_args' from command line to 'None'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target' from command line to 'None'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_cache' from command line to 'False'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_first' from command line to 'False'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_force_configure' from command line to 'False'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'ament_cmake_args' from command line to 'None'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_cmake_args' from command line to 'None'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.267s] DEBUG:colcon.colcon_core.verb:Building package 'joint_info' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_info', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_info', 'merge_install': False, 'path': '/BA/workspace/src/joint_info', 'symlink_install': False, 'test_result_base': None}
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_args' from command line to 'None'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target' from command line to 'None'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_cache' from command line to 'False'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_first' from command line to 'False'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_force_configure' from command line to 'False'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'ament_cmake_args' from command line to 'None'
+[0.267s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_cmake_args' from command line to 'None'
+[0.268s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.268s] DEBUG:colcon.colcon_core.verb:Building package 'mock_robot' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/mock_robot', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/mock_robot', 'merge_install': False, 'path': '/BA/workspace/src/mock_robot', 'symlink_install': False, 'test_result_base': None}
+[0.268s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.271s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.272s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.272s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.273s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.274s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.277s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.277s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.279s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.279s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.284s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_info' with build type 'ament_python'
+[0.284s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'ament_prefix_path')
+[0.285s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.ps1'
+[0.286s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.dsv'
+[0.287s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.sh'
+[0.288s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.288s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.294s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/mock_robot' with build type 'ament_python'
+[0.295s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'ament_prefix_path')
+[0.296s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1'
+[0.298s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv'
+[0.302s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh'
+[0.306s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.307s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.563s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.563s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.564s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.817s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_info'
+[0.817s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.817s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.058s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/mock_robot'
+[1.058s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[1.058s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.478s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_control/build
+[1.490s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_info/build
+[1.492s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/mock_robot/build
+[1.867s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_control/build
+[1.880s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/src/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_control build --build-base /BA/workspace/build/joint_control/build install --record /BA/workspace/build/joint_control/install.log --single-version-externally-managed install_data --force
+[1.884s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_info/build
+[1.894s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/src/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_info build --build-base /BA/workspace/build/joint_info/build install --record /BA/workspace/build/joint_info/install.log --single-version-externally-managed install_data --force
+[1.903s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/mock_robot/build
+[1.914s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/src/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/mock_robot build --build-base /BA/workspace/build/mock_robot/build install --record /BA/workspace/build/mock_robot/install.log --single-version-externally-managed install_data --force
+[2.287s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/src/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_info build --build-base /BA/workspace/build/joint_info/build install --record /BA/workspace/build/joint_info/install.log --single-version-externally-managed install_data --force
+[2.290s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake module files
+[2.293s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake config files
+[2.298s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib'
+[2.300s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.300s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/pkgconfig/joint_info.pc'
+[2.301s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/python3.10/site-packages'
+[2.301s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath')
+[2.301s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.ps1'
+[2.302s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.dsv'
+[2.303s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.sh'
+[2.304s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.305s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_info)
+[2.305s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.ps1'
+[2.312s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_info/share/joint_info/package.dsv'
+[2.313s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.sh'
+[2.314s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.bash'
+[2.315s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.zsh'
+[2.315s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_info/share/colcon-core/packages/joint_info)
+[2.317s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[2.319s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/src/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_control build --build-base /BA/workspace/build/joint_control/build install --record /BA/workspace/build/joint_control/install.log --single-version-externally-managed install_data --force
+[2.320s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[2.323s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[2.323s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[2.323s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[2.323s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[2.323s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[2.324s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[2.324s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[2.325s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[2.325s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[2.325s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[2.325s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[2.326s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[2.326s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[2.327s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[2.327s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[2.328s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[2.328s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake module files
+[2.330s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/src/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/mock_robot build --build-base /BA/workspace/build/mock_robot/build install --record /BA/workspace/build/mock_robot/install.log --single-version-externally-managed install_data --force
+[2.330s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake config files
+[2.333s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib'
+[2.333s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.333s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/pkgconfig/mock_robot.pc'
+[2.333s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/python3.10/site-packages'
+[2.333s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath')
+[2.334s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1'
+[2.334s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv'
+[2.334s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh'
+[2.335s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.335s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(mock_robot)
+[2.335s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.ps1'
+[2.336s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/mock_robot/share/mock_robot/package.dsv'
+[2.337s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.sh'
+[2.337s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.bash'
+[2.338s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.zsh'
+[2.338s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/mock_robot/share/colcon-core/packages/mock_robot)
+[2.338s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[2.339s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[2.339s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[2.339s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[2.345s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[2.345s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[2.345s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[2.345s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[2.347s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[2.347s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[2.347s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[2.348s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[2.350s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[2.352s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[2.353s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[2.353s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[2.354s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[2.355s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[2.356s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[2.357s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-27_11-01-14/mock_robot/command.log b/workspace/log/build_2025-03-27_11-01-14/mock_robot/command.log
new file mode 100644
index 0000000..7394b9a
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/mock_robot/command.log
@@ -0,0 +1,4 @@
+Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/mock_robot/build
+Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/mock_robot/build
+Invoking command in '/BA/workspace/src/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/mock_robot build --build-base /BA/workspace/build/mock_robot/build install --record /BA/workspace/build/mock_robot/install.log --single-version-externally-managed install_data --force
+Invoked command in '/BA/workspace/src/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/mock_robot build --build-base /BA/workspace/build/mock_robot/build install --record /BA/workspace/build/mock_robot/install.log --single-version-externally-managed install_data --force
diff --git a/workspace/log/build_2025-03-27_11-01-14/mock_robot/stderr.log b/workspace/log/build_2025-03-27_11-01-14/mock_robot/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_11-01-14/mock_robot/stdout.log b/workspace/log/build_2025-03-27_11-01-14/mock_robot/stdout.log
new file mode 100644
index 0000000..182d676
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/mock_robot/stdout.log
@@ -0,0 +1,31 @@
+running develop
+Removing /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+running egg_info
+writing ../../build/mock_robot/mock_robot.egg-info/PKG-INFO
+writing dependency_links to ../../build/mock_robot/mock_robot.egg-info/dependency_links.txt
+writing entry points to ../../build/mock_robot/mock_robot.egg-info/entry_points.txt
+writing requirements to ../../build/mock_robot/mock_robot.egg-info/requires.txt
+writing top-level names to ../../build/mock_robot/mock_robot.egg-info/top_level.txt
+reading manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'
+writing manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'
+running build
+running build_py
+creating /BA/workspace/build/mock_robot/build
+creating /BA/workspace/build/mock_robot/build/lib
+creating /BA/workspace/build/mock_robot/build/lib/mock_robot
+copying mock_robot/robot_node.py -> /BA/workspace/build/mock_robot/build/lib/mock_robot
+copying mock_robot/__init__.py -> /BA/workspace/build/mock_robot/build/lib/mock_robot
+running install
+running install_lib
+creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+copying /BA/workspace/build/mock_robot/build/lib/mock_robot/robot_node.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+copying /BA/workspace/build/mock_robot/build/lib/mock_robot/__init__.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/robot_node.py to robot_node.cpython-310.pyc
+byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/__init__.py to __init__.cpython-310.pyc
+running install_data
+copying resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+copying package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
+running install_egg_info
+Copying ../../build/mock_robot/mock_robot.egg-info to /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot-0.0.0-py3.10.egg-info
+running install_scripts
+writing list of installed files to '/BA/workspace/build/mock_robot/install.log'
diff --git a/workspace/log/build_2025-03-27_11-01-14/mock_robot/stdout_stderr.log b/workspace/log/build_2025-03-27_11-01-14/mock_robot/stdout_stderr.log
new file mode 100644
index 0000000..182d676
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/mock_robot/stdout_stderr.log
@@ -0,0 +1,31 @@
+running develop
+Removing /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+running egg_info
+writing ../../build/mock_robot/mock_robot.egg-info/PKG-INFO
+writing dependency_links to ../../build/mock_robot/mock_robot.egg-info/dependency_links.txt
+writing entry points to ../../build/mock_robot/mock_robot.egg-info/entry_points.txt
+writing requirements to ../../build/mock_robot/mock_robot.egg-info/requires.txt
+writing top-level names to ../../build/mock_robot/mock_robot.egg-info/top_level.txt
+reading manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'
+writing manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'
+running build
+running build_py
+creating /BA/workspace/build/mock_robot/build
+creating /BA/workspace/build/mock_robot/build/lib
+creating /BA/workspace/build/mock_robot/build/lib/mock_robot
+copying mock_robot/robot_node.py -> /BA/workspace/build/mock_robot/build/lib/mock_robot
+copying mock_robot/__init__.py -> /BA/workspace/build/mock_robot/build/lib/mock_robot
+running install
+running install_lib
+creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+copying /BA/workspace/build/mock_robot/build/lib/mock_robot/robot_node.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+copying /BA/workspace/build/mock_robot/build/lib/mock_robot/__init__.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/robot_node.py to robot_node.cpython-310.pyc
+byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/__init__.py to __init__.cpython-310.pyc
+running install_data
+copying resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+copying package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
+running install_egg_info
+Copying ../../build/mock_robot/mock_robot.egg-info to /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot-0.0.0-py3.10.egg-info
+running install_scripts
+writing list of installed files to '/BA/workspace/build/mock_robot/install.log'
diff --git a/workspace/log/build_2025-03-27_11-01-14/mock_robot/streams.log b/workspace/log/build_2025-03-27_11-01-14/mock_robot/streams.log
new file mode 100644
index 0000000..34d9841
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-01-14/mock_robot/streams.log
@@ -0,0 +1,35 @@
+[1.197s] Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/mock_robot/build
+[1.477s] running develop
+[1.588s] Removing /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+[1.607s] Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/mock_robot/build
+[1.615s] Invoking command in '/BA/workspace/src/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/mock_robot build --build-base /BA/workspace/build/mock_robot/build install --record /BA/workspace/build/mock_robot/install.log --single-version-externally-managed install_data --force
+[1.875s] running egg_info
+[1.876s] writing ../../build/mock_robot/mock_robot.egg-info/PKG-INFO
+[1.878s] writing dependency_links to ../../build/mock_robot/mock_robot.egg-info/dependency_links.txt
+[1.878s] writing entry points to ../../build/mock_robot/mock_robot.egg-info/entry_points.txt
+[1.881s] writing requirements to ../../build/mock_robot/mock_robot.egg-info/requires.txt
+[1.882s] writing top-level names to ../../build/mock_robot/mock_robot.egg-info/top_level.txt
+[1.888s] reading manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'
+[1.890s] writing manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'
+[1.890s] running build
+[1.891s] running build_py
+[1.892s] creating /BA/workspace/build/mock_robot/build
+[1.892s] creating /BA/workspace/build/mock_robot/build/lib
+[1.894s] creating /BA/workspace/build/mock_robot/build/lib/mock_robot
+[1.896s] copying mock_robot/robot_node.py -> /BA/workspace/build/mock_robot/build/lib/mock_robot
+[1.898s] copying mock_robot/__init__.py -> /BA/workspace/build/mock_robot/build/lib/mock_robot
+[1.903s] running install
+[1.905s] running install_lib
+[1.907s] creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+[1.908s] copying /BA/workspace/build/mock_robot/build/lib/mock_robot/robot_node.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+[1.910s] copying /BA/workspace/build/mock_robot/build/lib/mock_robot/__init__.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+[1.915s] byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/robot_node.py to robot_node.cpython-310.pyc
+[1.919s] byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/__init__.py to __init__.cpython-310.pyc
+[1.920s] running install_data
+[1.921s] copying resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+[1.923s] copying package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
+[1.925s] running install_egg_info
+[1.926s] Copying ../../build/mock_robot/mock_robot.egg-info to /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot-0.0.0-py3.10.egg-info
+[1.938s] running install_scripts
+[1.973s] writing list of installed files to '/BA/workspace/build/mock_robot/install.log'
+[2.035s] Invoked command in '/BA/workspace/src/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/mock_robot build --build-base /BA/workspace/build/mock_robot/build install --record /BA/workspace/build/mock_robot/install.log --single-version-externally-managed install_data --force
diff --git a/workspace/log/build_2025-03-27_11-23-58/events.log b/workspace/log/build_2025-03-27_11-23-58/events.log
new file mode 100644
index 0000000..14ed749
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/events.log
@@ -0,0 +1,90 @@
+[0.000000] (-) TimerEvent: {}
+[0.001492] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.002313] (joint_info) JobQueued: {'identifier': 'joint_info', 'dependencies': OrderedDict()}
+[0.002512] (mock_robot) JobQueued: {'identifier': 'mock_robot', 'dependencies': OrderedDict()}
+[0.002554] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.012961] (joint_info) JobStarted: {'identifier': 'joint_info'}
+[0.028222] (mock_robot) JobStarted: {'identifier': 'mock_robot'}
+[0.098295] (-) TimerEvent: {}
+[0.201056] (-) TimerEvent: {}
+[0.305091] (-) TimerEvent: {}
+[0.410313] (-) TimerEvent: {}
+[0.511089] (-) TimerEvent: {}
+[0.612085] (-) TimerEvent: {}
+[0.715139] (-) TimerEvent: {}
+[0.816090] (-) TimerEvent: {}
+[0.920318] (-) TimerEvent: {}
+[1.024089] (-) TimerEvent: {}
+[1.129079] (-) TimerEvent: {}
+[1.230102] (-) TimerEvent: {}
+[1.320153] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data', '--force'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.330829] (-) TimerEvent: {}
+[1.345359] (joint_info) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_info/build', '--no-deps', 'symlink_data', '--force'], 'cwd': '/BA/workspace/build/joint_info', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_info', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.364636] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/mock_robot/build', '--no-deps', 'symlink_data', '--force'], 'cwd': '/BA/workspace/build/mock_robot', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.431309] (-) TimerEvent: {}
+[1.533095] (-) TimerEvent: {}
+[1.634318] (-) TimerEvent: {}
+[1.672640] (joint_info) StdoutLine: {'line': b'running develop\n'}
+[1.676568] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.692608] (mock_robot) StdoutLine: {'line': b'running develop\n'}
+[1.735076] (-) TimerEvent: {}
+[1.764862] (joint_info) StdoutLine: {'line': b'running egg_info\n'}
+[1.766046] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.766320] (joint_info) StdoutLine: {'line': b'writing joint_info.egg-info/PKG-INFO\n'}
+[1.766658] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.767132] (joint_info) StdoutLine: {'line': b'writing dependency_links to joint_info.egg-info/dependency_links.txt\n'}
+[1.768169] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.769010] (joint_info) StdoutLine: {'line': b'writing entry points to joint_info.egg-info/entry_points.txt\n'}
+[1.770154] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.770823] (joint_info) StdoutLine: {'line': b'writing requirements to joint_info.egg-info/requires.txt\n'}
+[1.773402] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.773893] (joint_info) StdoutLine: {'line': b'writing top-level names to joint_info.egg-info/top_level.txt\n'}
+[1.774534] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.774958] (joint_info) StdoutLine: {'line': b"reading manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.778435] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.779437] (joint_info) StdoutLine: {'line': b"writing manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.780780] (joint_info) StdoutLine: {'line': b'running build_ext\n'}
+[1.781114] (joint_info) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)\n'}
+[1.782391] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.783641] (joint_info) StdoutLine: {'line': b'Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.784419] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.784833] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.785356] (joint_info) StdoutLine: {'line': b'Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.786959] (joint_info) StdoutLine: {'line': b'Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.790326] (joint_info) StdoutLine: {'line': b'\n'}
+[1.791652] (joint_info) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_info\n'}
+[1.792173] (joint_info) StdoutLine: {'line': b'running symlink_data\n'}
+[1.796303] (joint_info) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/joint_info/resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages\n'}
+[1.796579] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.796784] (joint_info) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/joint_info/package.xml -> /BA/workspace/install/joint_info/share/joint_info\n'}
+[1.797386] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.798968] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.799739] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.801064] (joint_control) StdoutLine: {'line': b'\n'}
+[1.801622] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.802320] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.803168] (joint_control) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/joint_control/resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages\n'}
+[1.804563] (joint_control) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/joint_control/package.xml -> /BA/workspace/install/joint_control/share/joint_control\n'}
+[1.804747] (mock_robot) StdoutLine: {'line': b'running egg_info\n'}
+[1.804950] (mock_robot) StdoutLine: {'line': b'writing mock_robot.egg-info/PKG-INFO\n'}
+[1.808285] (mock_robot) StdoutLine: {'line': b'writing dependency_links to mock_robot.egg-info/dependency_links.txt\n'}
+[1.809040] (mock_robot) StdoutLine: {'line': b'writing entry points to mock_robot.egg-info/entry_points.txt\n'}
+[1.809476] (mock_robot) StdoutLine: {'line': b'writing requirements to mock_robot.egg-info/requires.txt\n'}
+[1.809884] (mock_robot) StdoutLine: {'line': b'writing top-level names to mock_robot.egg-info/top_level.txt\n'}
+[1.814826] (joint_info) CommandEnded: {'returncode': 0}
+[1.816440] (mock_robot) StdoutLine: {'line': b"reading manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.819360] (mock_robot) StdoutLine: {'line': b"writing manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.824498] (mock_robot) StdoutLine: {'line': b'running build_ext\n'}
+[1.824990] (mock_robot) StdoutLine: {'line': b'Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)\n'}
+[1.826888] (mock_robot) StdoutLine: {'line': b'\n'}
+[1.827278] (mock_robot) StdoutLine: {'line': b'Installed /BA/workspace/build/mock_robot\n'}
+[1.827677] (mock_robot) StdoutLine: {'line': b'running symlink_data\n'}
+[1.828106] (mock_robot) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/mock_robot/resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages\n'}
+[1.828490] (mock_robot) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/mock_robot/package.xml -> /BA/workspace/install/mock_robot/share/mock_robot\n'}
+[1.836118] (-) TimerEvent: {}
+[1.843213] (joint_info) JobEnded: {'identifier': 'joint_info', 'rc': 0}
+[1.844965] (joint_control) CommandEnded: {'returncode': 0}
+[1.857148] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.859103] (mock_robot) CommandEnded: {'returncode': 0}
+[1.868948] (mock_robot) JobEnded: {'identifier': 'mock_robot', 'rc': 0}
+[1.870470] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-27_11-23-58/joint_control/command.log b/workspace/log/build_2025-03-27_11-23-58/joint_control/command.log
new file mode 100644
index 0000000..447e3b5
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data --force
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data --force
diff --git a/workspace/log/build_2025-03-27_11-23-58/joint_control/stderr.log b/workspace/log/build_2025-03-27_11-23-58/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_11-23-58/joint_control/stdout.log b/workspace/log/build_2025-03-27_11-23-58/joint_control/stdout.log
new file mode 100644
index 0000000..43c900d
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/joint_control/stdout.log
@@ -0,0 +1,20 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
+symbolically linking /BA/workspace/build/joint_control/resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/joint_control/package.xml -> /BA/workspace/install/joint_control/share/joint_control
diff --git a/workspace/log/build_2025-03-27_11-23-58/joint_control/stdout_stderr.log b/workspace/log/build_2025-03-27_11-23-58/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..43c900d
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/joint_control/stdout_stderr.log
@@ -0,0 +1,20 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
+symbolically linking /BA/workspace/build/joint_control/resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/joint_control/package.xml -> /BA/workspace/install/joint_control/share/joint_control
diff --git a/workspace/log/build_2025-03-27_11-23-58/joint_control/streams.log b/workspace/log/build_2025-03-27_11-23-58/joint_control/streams.log
new file mode 100644
index 0000000..c9ef01e
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/joint_control/streams.log
@@ -0,0 +1,22 @@
+[1.327s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data --force
+[1.674s] running develop
+[1.763s] running egg_info
+[1.764s] writing joint_control.egg-info/PKG-INFO
+[1.766s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.767s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.771s] writing requirements to joint_control.egg-info/requires.txt
+[1.772s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.775s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.780s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.782s] running build_ext
+[1.782s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.793s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.794s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.796s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.797s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.798s]
+[1.799s] Installed /BA/workspace/build/joint_control
+[1.800s] running symlink_data
+[1.801s] symbolically linking /BA/workspace/build/joint_control/resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages
+[1.801s] symbolically linking /BA/workspace/build/joint_control/package.xml -> /BA/workspace/install/joint_control/share/joint_control
+[1.842s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data --force
diff --git a/workspace/log/build_2025-03-27_11-23-58/joint_info/command.log b/workspace/log/build_2025-03-27_11-23-58/joint_info/command.log
new file mode 100644
index 0000000..e43b856
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/joint_info/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data --force
+Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data --force
diff --git a/workspace/log/build_2025-03-27_11-23-58/joint_info/stderr.log b/workspace/log/build_2025-03-27_11-23-58/joint_info/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_11-23-58/joint_info/stdout.log b/workspace/log/build_2025-03-27_11-23-58/joint_info/stdout.log
new file mode 100644
index 0000000..9c6fb03
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/joint_info/stdout.log
@@ -0,0 +1,19 @@
+running develop
+running egg_info
+writing joint_info.egg-info/PKG-INFO
+writing dependency_links to joint_info.egg-info/dependency_links.txt
+writing entry points to joint_info.egg-info/entry_points.txt
+writing requirements to joint_info.egg-info/requires.txt
+writing top-level names to joint_info.egg-info/top_level.txt
+reading manifest file 'joint_info.egg-info/SOURCES.txt'
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+
+Installed /BA/workspace/build/joint_info
+running symlink_data
+symbolically linking /BA/workspace/build/joint_info/resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/joint_info/package.xml -> /BA/workspace/install/joint_info/share/joint_info
diff --git a/workspace/log/build_2025-03-27_11-23-58/joint_info/stdout_stderr.log b/workspace/log/build_2025-03-27_11-23-58/joint_info/stdout_stderr.log
new file mode 100644
index 0000000..9c6fb03
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/joint_info/stdout_stderr.log
@@ -0,0 +1,19 @@
+running develop
+running egg_info
+writing joint_info.egg-info/PKG-INFO
+writing dependency_links to joint_info.egg-info/dependency_links.txt
+writing entry points to joint_info.egg-info/entry_points.txt
+writing requirements to joint_info.egg-info/requires.txt
+writing top-level names to joint_info.egg-info/top_level.txt
+reading manifest file 'joint_info.egg-info/SOURCES.txt'
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+
+Installed /BA/workspace/build/joint_info
+running symlink_data
+symbolically linking /BA/workspace/build/joint_info/resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/joint_info/package.xml -> /BA/workspace/install/joint_info/share/joint_info
diff --git a/workspace/log/build_2025-03-27_11-23-58/joint_info/streams.log b/workspace/log/build_2025-03-27_11-23-58/joint_info/streams.log
new file mode 100644
index 0000000..9664f43
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/joint_info/streams.log
@@ -0,0 +1,21 @@
+[1.334s] Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data --force
+[1.659s] running develop
+[1.751s] running egg_info
+[1.752s] writing joint_info.egg-info/PKG-INFO
+[1.754s] writing dependency_links to joint_info.egg-info/dependency_links.txt
+[1.755s] writing entry points to joint_info.egg-info/entry_points.txt
+[1.759s] writing requirements to joint_info.egg-info/requires.txt
+[1.760s] writing top-level names to joint_info.egg-info/top_level.txt
+[1.761s] reading manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.765s] writing manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.767s] running build_ext
+[1.767s] Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+[1.769s] Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.772s] Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.773s] Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+[1.777s]
+[1.778s] Installed /BA/workspace/build/joint_info
+[1.782s] running symlink_data
+[1.782s] symbolically linking /BA/workspace/build/joint_info/resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages
+[1.782s] symbolically linking /BA/workspace/build/joint_info/package.xml -> /BA/workspace/install/joint_info/share/joint_info
+[1.801s] Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data --force
diff --git a/workspace/log/build_2025-03-27_11-23-58/logger_all.log b/workspace/log/build_2025-03-27_11-23-58/logger_all.log
new file mode 100644
index 0000000..69e029b
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/logger_all.log
@@ -0,0 +1,251 @@
+[0.100s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install']
+[0.101s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=None, packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.201s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.202s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.202s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.202s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.202s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.202s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.202s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.202s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.203s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.225s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.227s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.228s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.229s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.229s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.229s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.229s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.229s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.246s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_args' from command line to 'None'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target' from command line to 'None'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_cache' from command line to 'False'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_first' from command line to 'False'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_force_configure' from command line to 'False'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'ament_cmake_args' from command line to 'None'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_cmake_args' from command line to 'None'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.247s] DEBUG:colcon.colcon_core.verb:Building package 'joint_info' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_info', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_info', 'merge_install': False, 'path': '/BA/workspace/src/joint_info', 'symlink_install': True, 'test_result_base': None}
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_args' from command line to 'None'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target' from command line to 'None'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_cache' from command line to 'False'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_first' from command line to 'False'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_force_configure' from command line to 'False'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'ament_cmake_args' from command line to 'None'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_cmake_args' from command line to 'None'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.248s] DEBUG:colcon.colcon_core.verb:Building package 'mock_robot' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/mock_robot', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/mock_robot', 'merge_install': False, 'path': '/BA/workspace/src/mock_robot', 'symlink_install': True, 'test_result_base': None}
+[0.248s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.251s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.252s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.252s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.254s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.254s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.256s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.258s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.259s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.259s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.265s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_info' with build type 'ament_python'
+[0.266s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'ament_prefix_path')
+[0.267s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.ps1'
+[0.269s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.dsv'
+[0.270s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.sh'
+[0.271s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.271s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.280s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/mock_robot' with build type 'ament_python'
+[0.280s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'ament_prefix_path')
+[0.284s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1'
+[0.285s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv'
+[0.286s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh'
+[0.292s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.293s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.568s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.569s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.569s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.840s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_info'
+[0.840s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.840s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.100s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/mock_robot'
+[1.101s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[1.101s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.564s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_control/share/ament_index/resource_index/packages/joint_control
+[1.564s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_control/share/joint_control/package.xml
+[1.566s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_control/lib/joint_control/cart_coords
+[1.566s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_control/lib/joint_control/joint_control
+[1.566s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_control/lib/joint_control/trajectory_server
+[1.567s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_control/lib/joint_control/trajectory_server_cart
+[1.582s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data --force
+[1.584s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_info/share/ament_index/resource_index/packages/joint_info
+[1.584s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_info/share/joint_info/package.xml
+[1.588s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_info/lib/joint_info/joint_states_pub
+[1.590s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_info/lib/joint_info/joint_states_sub
+[1.590s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_info/lib/joint_info/tcp_cart_pos
+[1.602s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data --force
+[1.606s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages/mock_robot
+[1.607s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/mock_robot/share/mock_robot/package.xml
+[1.633s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data --force
+[2.066s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath_develop')
+[2.067s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.ps1'
+[2.067s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data --force
+[2.069s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.dsv'
+[2.070s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.sh'
+[2.075s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake module files
+[2.079s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake config files
+[2.085s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib'
+[2.085s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.085s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/pkgconfig/joint_info.pc'
+[2.086s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/python3.10/site-packages'
+[2.086s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath')
+[2.086s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.ps1'
+[2.087s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.dsv'
+[2.087s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.sh'
+[2.088s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.089s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_info)
+[2.089s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.ps1'
+[2.090s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_info/share/joint_info/package.dsv'
+[2.091s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.sh'
+[2.092s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.bash'
+[2.093s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.zsh'
+[2.094s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_info/share/colcon-core/packages/joint_info)
+[2.095s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[2.095s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[2.097s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data --force
+[2.097s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[2.097s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[2.098s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[2.101s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[2.103s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[2.103s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[2.103s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[2.104s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[2.104s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[2.104s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[2.104s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[2.105s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[2.105s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[2.106s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[2.106s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[2.106s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[2.107s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[2.107s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[2.108s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[2.108s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[2.109s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath_develop')
+[2.109s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1'
+[2.110s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv'
+[2.111s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data --force
+[2.111s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh'
+[2.112s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake module files
+[2.113s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake config files
+[2.115s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib'
+[2.115s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.115s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/pkgconfig/mock_robot.pc'
+[2.115s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/python3.10/site-packages'
+[2.115s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath')
+[2.116s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1'
+[2.116s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv'
+[2.117s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh'
+[2.117s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.117s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(mock_robot)
+[2.118s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.ps1'
+[2.118s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/mock_robot/share/mock_robot/package.dsv'
+[2.119s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.sh'
+[2.119s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.bash'
+[2.120s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.zsh'
+[2.120s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/mock_robot/share/colcon-core/packages/mock_robot)
+[2.120s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[2.121s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[2.121s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[2.121s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[2.127s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[2.127s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[2.127s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[2.127s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[2.128s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[2.129s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[2.129s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[2.130s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[2.132s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[2.133s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[2.133s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[2.134s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[2.135s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[2.136s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[2.136s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[2.137s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-27_11-23-58/mock_robot/command.log b/workspace/log/build_2025-03-27_11-23-58/mock_robot/command.log
new file mode 100644
index 0000000..5c9800a
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/mock_robot/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data --force
+Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data --force
diff --git a/workspace/log/build_2025-03-27_11-23-58/mock_robot/stderr.log b/workspace/log/build_2025-03-27_11-23-58/mock_robot/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_11-23-58/mock_robot/stdout.log b/workspace/log/build_2025-03-27_11-23-58/mock_robot/stdout.log
new file mode 100644
index 0000000..36bdcd3
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/mock_robot/stdout.log
@@ -0,0 +1,16 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
+symbolically linking /BA/workspace/build/mock_robot/resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/mock_robot/package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
diff --git a/workspace/log/build_2025-03-27_11-23-58/mock_robot/stdout_stderr.log b/workspace/log/build_2025-03-27_11-23-58/mock_robot/stdout_stderr.log
new file mode 100644
index 0000000..36bdcd3
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/mock_robot/stdout_stderr.log
@@ -0,0 +1,16 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
+symbolically linking /BA/workspace/build/mock_robot/resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/mock_robot/package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
diff --git a/workspace/log/build_2025-03-27_11-23-58/mock_robot/streams.log b/workspace/log/build_2025-03-27_11-23-58/mock_robot/streams.log
new file mode 100644
index 0000000..15ca79e
--- /dev/null
+++ b/workspace/log/build_2025-03-27_11-23-58/mock_robot/streams.log
@@ -0,0 +1,18 @@
+[1.351s] Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data --force
+[1.663s] running develop
+[1.775s] running egg_info
+[1.775s] writing mock_robot.egg-info/PKG-INFO
+[1.779s] writing dependency_links to mock_robot.egg-info/dependency_links.txt
+[1.779s] writing entry points to mock_robot.egg-info/entry_points.txt
+[1.780s] writing requirements to mock_robot.egg-info/requires.txt
+[1.780s] writing top-level names to mock_robot.egg-info/top_level.txt
+[1.787s] reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.794s] writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.795s] running build_ext
+[1.795s] Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+[1.797s]
+[1.797s] Installed /BA/workspace/build/mock_robot
+[1.798s] running symlink_data
+[1.798s] symbolically linking /BA/workspace/build/mock_robot/resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+[1.799s] symbolically linking /BA/workspace/build/mock_robot/package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
+[1.829s] Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data --force
diff --git a/workspace/log/build_2025-03-27_14-26-06/events.log b/workspace/log/build_2025-03-27_14-26-06/events.log
new file mode 100644
index 0000000..06e5151
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-26-06/events.log
@@ -0,0 +1,32 @@
+[0.000000] (-) TimerEvent: {}
+[0.000789] (-) JobUnselected: {'identifier': 'joint_control'}
+[0.002137] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002362] (mock_robot) JobQueued: {'identifier': 'mock_robot', 'dependencies': OrderedDict()}
+[0.002432] (mock_robot) JobStarted: {'identifier': 'mock_robot'}
+[0.098292] (-) TimerEvent: {}
+[0.199639] (-) TimerEvent: {}
+[0.301383] (-) TimerEvent: {}
+[0.405227] (-) TimerEvent: {}
+[0.506681] (-) TimerEvent: {}
+[0.610302] (-) TimerEvent: {}
+[0.647314] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/mock_robot/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/mock_robot', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'TERM': 'xterm', 'PATH': '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'COLCON': '1', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:'}, 'shell': False}
+[0.711235] (-) TimerEvent: {}
+[0.812223] (-) TimerEvent: {}
+[0.870418] (mock_robot) StdoutLine: {'line': b'running develop\n'}
+[0.913262] (-) TimerEvent: {}
+[0.914496] (mock_robot) StdoutLine: {'line': b'running egg_info\n'}
+[0.915719] (mock_robot) StdoutLine: {'line': b'writing mock_robot.egg-info/PKG-INFO\n'}
+[0.917080] (mock_robot) StdoutLine: {'line': b'writing dependency_links to mock_robot.egg-info/dependency_links.txt\n'}
+[0.917976] (mock_robot) StdoutLine: {'line': b'writing entry points to mock_robot.egg-info/entry_points.txt\n'}
+[0.918590] (mock_robot) StdoutLine: {'line': b'writing requirements to mock_robot.egg-info/requires.txt\n'}
+[0.919172] (mock_robot) StdoutLine: {'line': b'writing top-level names to mock_robot.egg-info/top_level.txt\n'}
+[0.922547] (mock_robot) StdoutLine: {'line': b"reading manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[0.925574] (mock_robot) StdoutLine: {'line': b"writing manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[0.927458] (mock_robot) StdoutLine: {'line': b'running build_ext\n'}
+[0.927961] (mock_robot) StdoutLine: {'line': b'Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)\n'}
+[0.929391] (mock_robot) StdoutLine: {'line': b'\n'}
+[0.929828] (mock_robot) StdoutLine: {'line': b'Installed /BA/workspace/build/mock_robot\n'}
+[0.930075] (mock_robot) StdoutLine: {'line': b'running symlink_data\n'}
+[0.948631] (mock_robot) CommandEnded: {'returncode': 0}
+[0.967186] (mock_robot) JobEnded: {'identifier': 'mock_robot', 'rc': 0}
+[0.968679] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-27_14-26-06/logger_all.log b/workspace/log/build_2025-03-27_14-26-06/logger_all.log
new file mode 100644
index 0000000..b00a49e
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-26-06/logger_all.log
@@ -0,0 +1,152 @@
+[0.116s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'mock_robot', '--symlink-install']
+[0.117s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['mock_robot'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.200s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.201s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.201s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.201s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.201s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.201s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.201s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.201s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.201s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.220s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.220s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.232s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.235s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.238s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.238s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.238s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.238s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.238s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.238s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.264s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_control' in 'src/joint_control'
+[0.264s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.265s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_args' from command line to 'None'
+[0.265s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target' from command line to 'None'
+[0.265s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.265s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_cache' from command line to 'False'
+[0.265s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_first' from command line to 'False'
+[0.265s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_force_configure' from command line to 'False'
+[0.265s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'ament_cmake_args' from command line to 'None'
+[0.265s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_cmake_args' from command line to 'None'
+[0.265s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.265s] DEBUG:colcon.colcon_core.verb:Building package 'mock_robot' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/mock_robot', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/mock_robot', 'merge_install': False, 'path': '/BA/workspace/src/mock_robot', 'symlink_install': True, 'test_result_base': None}
+[0.265s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.268s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.269s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/mock_robot' with build type 'ament_python'
+[0.269s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'ament_prefix_path')
+[0.271s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.272s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1'
+[0.274s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv'
+[0.274s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh'
+[0.275s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.275s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.531s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/mock_robot'
+[0.531s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.531s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.925s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.218s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath_develop')
+[1.218s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1'
+[1.219s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.221s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv'
+[1.221s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh'
+[1.224s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake module files
+[1.225s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake config files
+[1.228s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib'
+[1.228s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[1.228s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/pkgconfig/mock_robot.pc'
+[1.228s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/python3.10/site-packages'
+[1.229s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath')
+[1.229s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1'
+[1.229s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv'
+[1.230s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh'
+[1.230s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[1.230s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(mock_robot)
+[1.231s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.ps1'
+[1.232s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/mock_robot/share/mock_robot/package.dsv'
+[1.233s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.sh'
+[1.234s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.bash'
+[1.234s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.zsh'
+[1.236s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/mock_robot/share/colcon-core/packages/mock_robot)
+[1.237s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.237s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.237s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.237s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.243s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.243s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.243s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.243s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.244s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.244s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.245s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.246s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.247s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.248s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.249s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.249s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.250s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.251s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.252s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.253s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-27_14-26-06/mock_robot/command.log b/workspace/log/build_2025-03-27_14-26-06/mock_robot/command.log
new file mode 100644
index 0000000..b5a54b4
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-26-06/mock_robot/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_14-26-06/mock_robot/stderr.log b/workspace/log/build_2025-03-27_14-26-06/mock_robot/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_14-26-06/mock_robot/stdout.log b/workspace/log/build_2025-03-27_14-26-06/mock_robot/stdout.log
new file mode 100644
index 0000000..f26d0cb
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-26-06/mock_robot/stdout.log
@@ -0,0 +1,14 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_14-26-06/mock_robot/stdout_stderr.log b/workspace/log/build_2025-03-27_14-26-06/mock_robot/stdout_stderr.log
new file mode 100644
index 0000000..f26d0cb
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-26-06/mock_robot/stdout_stderr.log
@@ -0,0 +1,14 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_14-26-06/mock_robot/streams.log b/workspace/log/build_2025-03-27_14-26-06/mock_robot/streams.log
new file mode 100644
index 0000000..3076d8b
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-26-06/mock_robot/streams.log
@@ -0,0 +1,16 @@
+[0.653s] Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[0.869s] running develop
+[0.912s] running egg_info
+[0.914s] writing mock_robot.egg-info/PKG-INFO
+[0.914s] writing dependency_links to mock_robot.egg-info/dependency_links.txt
+[0.915s] writing entry points to mock_robot.egg-info/entry_points.txt
+[0.916s] writing requirements to mock_robot.egg-info/requires.txt
+[0.916s] writing top-level names to mock_robot.egg-info/top_level.txt
+[0.920s] reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+[0.923s] writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+[0.925s] running build_ext
+[0.925s] Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+[0.927s]
+[0.927s] Installed /BA/workspace/build/mock_robot
+[0.927s] running symlink_data
+[0.946s] Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_14-27-17/events.log b/workspace/log/build_2025-03-27_14-27-17/events.log
new file mode 100644
index 0000000..b8d2c84
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-27-17/events.log
@@ -0,0 +1,33 @@
+[0.000000] (-) TimerEvent: {}
+[0.002009] (-) JobUnselected: {'identifier': 'joint_control'}
+[0.002280] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.003106] (mock_robot) JobQueued: {'identifier': 'mock_robot', 'dependencies': OrderedDict()}
+[0.003190] (mock_robot) JobStarted: {'identifier': 'mock_robot'}
+[0.098699] (-) TimerEvent: {}
+[0.200704] (-) TimerEvent: {}
+[0.302647] (-) TimerEvent: {}
+[0.409631] (-) TimerEvent: {}
+[0.510862] (-) TimerEvent: {}
+[0.616185] (-) TimerEvent: {}
+[0.623767] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/mock_robot/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/mock_robot', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'TERM': 'xterm', 'PATH': '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'COLCON': '1', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:'}, 'shell': False}
+[0.716616] (-) TimerEvent: {}
+[0.821615] (-) TimerEvent: {}
+[0.843493] (mock_robot) StdoutLine: {'line': b'running develop\n'}
+[0.885971] (mock_robot) StdoutLine: {'line': b'running egg_info\n'}
+[0.886884] (mock_robot) StdoutLine: {'line': b'writing mock_robot.egg-info/PKG-INFO\n'}
+[0.887415] (mock_robot) StdoutLine: {'line': b'writing dependency_links to mock_robot.egg-info/dependency_links.txt\n'}
+[0.888017] (mock_robot) StdoutLine: {'line': b'writing entry points to mock_robot.egg-info/entry_points.txt\n'}
+[0.888667] (mock_robot) StdoutLine: {'line': b'writing requirements to mock_robot.egg-info/requires.txt\n'}
+[0.889091] (mock_robot) StdoutLine: {'line': b'writing top-level names to mock_robot.egg-info/top_level.txt\n'}
+[0.891305] (mock_robot) StdoutLine: {'line': b"reading manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[0.892802] (mock_robot) StdoutLine: {'line': b"writing manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[0.894053] (mock_robot) StdoutLine: {'line': b'running build_ext\n'}
+[0.894490] (mock_robot) StdoutLine: {'line': b'Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)\n'}
+[0.895519] (mock_robot) StdoutLine: {'line': b'Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot\n'}
+[0.897398] (mock_robot) StdoutLine: {'line': b'\n'}
+[0.897960] (mock_robot) StdoutLine: {'line': b'Installed /BA/workspace/build/mock_robot\n'}
+[0.898463] (mock_robot) StdoutLine: {'line': b'running symlink_data\n'}
+[0.915333] (mock_robot) CommandEnded: {'returncode': 0}
+[0.922555] (-) TimerEvent: {}
+[0.931758] (mock_robot) JobEnded: {'identifier': 'mock_robot', 'rc': 0}
+[0.932828] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-27_14-27-17/logger_all.log b/workspace/log/build_2025-03-27_14-27-17/logger_all.log
new file mode 100644
index 0000000..33a893c
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-27-17/logger_all.log
@@ -0,0 +1,152 @@
+[0.108s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'mock_robot', '--symlink-install']
+[0.109s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['mock_robot'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.194s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.195s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.195s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.195s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.195s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.195s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.195s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.195s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.195s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.196s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.196s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.196s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.221s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.223s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.225s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.225s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.225s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.225s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.225s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.225s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.243s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_control' in 'src/joint_control'
+[0.243s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_args' from command line to 'None'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target' from command line to 'None'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_cache' from command line to 'False'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_first' from command line to 'False'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_force_configure' from command line to 'False'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'ament_cmake_args' from command line to 'None'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_cmake_args' from command line to 'None'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.244s] DEBUG:colcon.colcon_core.verb:Building package 'mock_robot' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/mock_robot', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/mock_robot', 'merge_install': False, 'path': '/BA/workspace/src/mock_robot', 'symlink_install': True, 'test_result_base': None}
+[0.244s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.247s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.248s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/mock_robot' with build type 'ament_python'
+[0.248s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'ament_prefix_path')
+[0.250s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.250s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1'
+[0.252s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv'
+[0.253s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh'
+[0.254s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.254s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.510s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/mock_robot'
+[0.511s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.511s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.884s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.163s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath_develop')
+[1.164s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1'
+[1.164s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.165s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv'
+[1.166s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh'
+[1.168s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake module files
+[1.170s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake config files
+[1.172s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib'
+[1.173s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[1.173s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/pkgconfig/mock_robot.pc'
+[1.173s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/python3.10/site-packages'
+[1.173s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath')
+[1.173s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1'
+[1.174s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv'
+[1.174s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh'
+[1.175s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[1.175s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(mock_robot)
+[1.175s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.ps1'
+[1.176s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/mock_robot/share/mock_robot/package.dsv'
+[1.177s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.sh'
+[1.178s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.bash'
+[1.179s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.zsh'
+[1.179s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/mock_robot/share/colcon-core/packages/mock_robot)
+[1.180s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.180s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.180s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.180s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.186s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.186s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.186s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.186s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.187s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.187s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.188s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.189s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.191s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.192s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.193s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.193s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.194s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.195s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.197s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.197s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-27_14-27-17/mock_robot/command.log b/workspace/log/build_2025-03-27_14-27-17/mock_robot/command.log
new file mode 100644
index 0000000..b5a54b4
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-27-17/mock_robot/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_14-27-17/mock_robot/stderr.log b/workspace/log/build_2025-03-27_14-27-17/mock_robot/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_14-27-17/mock_robot/stdout.log b/workspace/log/build_2025-03-27_14-27-17/mock_robot/stdout.log
new file mode 100644
index 0000000..05c4319
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-27-17/mock_robot/stdout.log
@@ -0,0 +1,15 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_14-27-17/mock_robot/stdout_stderr.log b/workspace/log/build_2025-03-27_14-27-17/mock_robot/stdout_stderr.log
new file mode 100644
index 0000000..05c4319
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-27-17/mock_robot/stdout_stderr.log
@@ -0,0 +1,15 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_14-27-17/mock_robot/streams.log b/workspace/log/build_2025-03-27_14-27-17/mock_robot/streams.log
new file mode 100644
index 0000000..4aab5ff
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-27-17/mock_robot/streams.log
@@ -0,0 +1,17 @@
+[0.633s] Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[0.841s] running develop
+[0.883s] running egg_info
+[0.884s] writing mock_robot.egg-info/PKG-INFO
+[0.884s] writing dependency_links to mock_robot.egg-info/dependency_links.txt
+[0.885s] writing entry points to mock_robot.egg-info/entry_points.txt
+[0.886s] writing requirements to mock_robot.egg-info/requires.txt
+[0.886s] writing top-level names to mock_robot.egg-info/top_level.txt
+[0.888s] reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+[0.891s] writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+[0.891s] running build_ext
+[0.892s] Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+[0.893s] Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+[0.895s]
+[0.895s] Installed /BA/workspace/build/mock_robot
+[0.895s] running symlink_data
+[0.913s] Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_14-31-25/events.log b/workspace/log/build_2025-03-27_14-31-25/events.log
new file mode 100644
index 0000000..550cd27
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/events.log
@@ -0,0 +1,140 @@
+[0.000000] (-) TimerEvent: {}
+[0.001597] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.001714] (joint_info) JobQueued: {'identifier': 'joint_info', 'dependencies': OrderedDict()}
+[0.002051] (mock_robot) JobQueued: {'identifier': 'mock_robot', 'dependencies': OrderedDict()}
+[0.002308] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.011918] (joint_info) JobStarted: {'identifier': 'joint_info'}
+[0.019402] (mock_robot) JobStarted: {'identifier': 'mock_robot'}
+[0.099749] (-) TimerEvent: {}
+[0.200998] (-) TimerEvent: {}
+[0.306220] (-) TimerEvent: {}
+[0.407210] (-) TimerEvent: {}
+[0.511190] (-) TimerEvent: {}
+[0.614101] (-) TimerEvent: {}
+[0.716053] (-) TimerEvent: {}
+[0.821017] (-) TimerEvent: {}
+[0.923020] (-) TimerEvent: {}
+[1.024217] (-) TimerEvent: {}
+[1.128260] (-) TimerEvent: {}
+[1.229192] (-) TimerEvent: {}
+[1.240896] (joint_info) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--uninstall', '--editable', '--build-directory', '/BA/workspace/build/joint_info/build'], 'cwd': '/BA/workspace/build/joint_info', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_info', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.253345] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--uninstall', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.258073] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--uninstall', '--editable', '--build-directory', '/BA/workspace/build/mock_robot/build'], 'cwd': '/BA/workspace/build/mock_robot', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.330412] (-) TimerEvent: {}
+[1.432577] (-) TimerEvent: {}
+[1.513532] (joint_info) StdoutLine: {'line': b'running develop\n'}
+[1.532365] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.533254] (-) TimerEvent: {}
+[1.550695] (mock_robot) StdoutLine: {'line': b'running develop\n'}
+[1.617662] (joint_info) StdoutLine: {'line': b'Removing /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)\n'}
+[1.634025] (-) TimerEvent: {}
+[1.634718] (joint_control) StdoutLine: {'line': b'Removing /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.639704] (joint_info) CommandEnded: {'returncode': 0}
+[1.645760] (joint_info) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'egg_info', '--egg-base', '../../build/joint_info', 'build', '--build-base', '/BA/workspace/build/joint_info/build', 'install', '--record', '/BA/workspace/build/joint_info/install.log', '--single-version-externally-managed', 'install_data', '--force'], 'cwd': '/BA/workspace/src/joint_info', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_info', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.655458] (joint_control) CommandEnded: {'returncode': 0}
+[1.660413] (mock_robot) StdoutLine: {'line': b'Removing /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)\n'}
+[1.665756] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'egg_info', '--egg-base', '../../build/joint_control', 'build', '--build-base', '/BA/workspace/build/joint_control/build', 'install', '--record', '/BA/workspace/build/joint_control/install.log', '--single-version-externally-managed', 'install_data', '--force'], 'cwd': '/BA/workspace/src/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.675551] (mock_robot) CommandEnded: {'returncode': 0}
+[1.682212] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'egg_info', '--egg-base', '../../build/mock_robot', 'build', '--build-base', '/BA/workspace/build/mock_robot/build', 'install', '--record', '/BA/workspace/build/mock_robot/install.log', '--single-version-externally-managed', 'install_data', '--force'], 'cwd': '/BA/workspace/src/mock_robot', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.734985] (-) TimerEvent: {}
+[1.836156] (-) TimerEvent: {}
+[1.899917] (joint_info) StdoutLine: {'line': b'running egg_info\n'}
+[1.900555] (joint_info) StdoutLine: {'line': b'writing ../../build/joint_info/joint_info.egg-info/PKG-INFO\n'}
+[1.901111] (joint_info) StdoutLine: {'line': b'writing dependency_links to ../../build/joint_info/joint_info.egg-info/dependency_links.txt\n'}
+[1.901934] (joint_info) StdoutLine: {'line': b'writing entry points to ../../build/joint_info/joint_info.egg-info/entry_points.txt\n'}
+[1.902571] (joint_info) StdoutLine: {'line': b'writing requirements to ../../build/joint_info/joint_info.egg-info/requires.txt\n'}
+[1.902955] (joint_info) StdoutLine: {'line': b'writing top-level names to ../../build/joint_info/joint_info.egg-info/top_level.txt\n'}
+[1.909944] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.911116] (joint_control) StdoutLine: {'line': b'writing ../../build/joint_control/joint_control.egg-info/PKG-INFO\n'}
+[1.914485] (joint_control) StdoutLine: {'line': b'writing dependency_links to ../../build/joint_control/joint_control.egg-info/dependency_links.txt\n'}
+[1.915665] (joint_info) StdoutLine: {'line': b"reading manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'\n"}
+[1.916153] (joint_control) StdoutLine: {'line': b'writing entry points to ../../build/joint_control/joint_control.egg-info/entry_points.txt\n'}
+[1.916594] (joint_control) StdoutLine: {'line': b'writing requirements to ../../build/joint_control/joint_control.egg-info/requires.txt\n'}
+[1.917041] (joint_control) StdoutLine: {'line': b'writing top-level names to ../../build/joint_control/joint_control.egg-info/top_level.txt\n'}
+[1.918816] (joint_info) StdoutLine: {'line': b"writing manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'\n"}
+[1.920023] (joint_info) StdoutLine: {'line': b'running build\n'}
+[1.920541] (joint_info) StdoutLine: {'line': b'running build_py\n'}
+[1.921600] (joint_info) StdoutLine: {'line': b'running install\n'}
+[1.922937] (joint_info) StdoutLine: {'line': b'running install_lib\n'}
+[1.923264] (joint_control) StdoutLine: {'line': b"reading manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'\n"}
+[1.923819] (joint_info) StdoutLine: {'line': b'creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info\n'}
+[1.924249] (joint_info) StdoutLine: {'line': b'copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_pub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info\n'}
+[1.925263] (joint_info) StdoutLine: {'line': b'copying /BA/workspace/build/joint_info/build/lib/joint_info/__init__.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info\n'}
+[1.926065] (joint_info) StdoutLine: {'line': b'copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_sub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info\n'}
+[1.926614] (joint_control) StdoutLine: {'line': b"writing manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'\n"}
+[1.927168] (joint_control) StdoutLine: {'line': b'running build\n'}
+[1.927581] (joint_control) StdoutLine: {'line': b'running build_py\n'}
+[1.928085] (joint_info) StdoutLine: {'line': b'copying /BA/workspace/build/joint_info/build/lib/joint_info/tcp_cart_pos.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info\n'}
+[1.928959] (joint_control) StdoutLine: {'line': b'running install\n'}
+[1.929613] (joint_control) StdoutLine: {'line': b'running install_lib\n'}
+[1.929822] (joint_info) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_pub.py to osc_joint_states_pub.cpython-310.pyc\n'}
+[1.934531] (joint_control) StdoutLine: {'line': b'creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control\n'}
+[1.935290] (joint_control) StdoutLine: {'line': b'copying /BA/workspace/build/joint_control/build/lib/joint_control/cart_tcp_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control\n'}
+[1.936261] (-) TimerEvent: {}
+[1.936600] (joint_info) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/__init__.py to __init__.cpython-310.pyc\n'}
+[1.937435] (joint_control) StdoutLine: {'line': b'copying /BA/workspace/build/joint_control/build/lib/joint_control/__init__.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control\n'}
+[1.937793] (joint_info) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_sub.py to osc_joint_states_sub.cpython-310.pyc\n'}
+[1.938133] (joint_control) StdoutLine: {'line': b'copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server_cart.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control\n'}
+[1.940291] (joint_control) StdoutLine: {'line': b'copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control\n'}
+[1.940949] (joint_info) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/tcp_cart_pos.py to tcp_cart_pos.cpython-310.pyc\n'}
+[1.941368] (joint_control) StdoutLine: {'line': b'copying /BA/workspace/build/joint_control/build/lib/joint_control/joint_angles_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control\n'}
+[1.942190] (joint_info) StdoutLine: {'line': b'running install_data\n'}
+[1.943096] (joint_info) StdoutLine: {'line': b'copying resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages\n'}
+[1.944946] (joint_control) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/cart_tcp_server.py to cart_tcp_server.cpython-310.pyc\n'}
+[1.945702] (joint_info) StdoutLine: {'line': b'copying package.xml -> /BA/workspace/install/joint_info/share/joint_info\n'}
+[1.946976] (mock_robot) StdoutLine: {'line': b'running egg_info\n'}
+[1.949151] (mock_robot) StdoutLine: {'line': b'writing ../../build/mock_robot/mock_robot.egg-info/PKG-INFO\n'}
+[1.949659] (mock_robot) StdoutLine: {'line': b'writing dependency_links to ../../build/mock_robot/mock_robot.egg-info/dependency_links.txt\n'}
+[1.950567] (joint_info) StdoutLine: {'line': b'running install_egg_info\n'}
+[1.951698] (mock_robot) StdoutLine: {'line': b'writing entry points to ../../build/mock_robot/mock_robot.egg-info/entry_points.txt\n'}
+[1.952645] (joint_info) StdoutLine: {'line': b'Copying ../../build/joint_info/joint_info.egg-info to /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info-0.0.0-py3.10.egg-info\n'}
+[1.955201] (mock_robot) StdoutLine: {'line': b'writing requirements to ../../build/mock_robot/mock_robot.egg-info/requires.txt\n'}
+[1.956113] (mock_robot) StdoutLine: {'line': b'writing top-level names to ../../build/mock_robot/mock_robot.egg-info/top_level.txt\n'}
+[1.957205] (joint_control) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/__init__.py to __init__.cpython-310.pyc\n'}
+[1.959445] (joint_control) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server_cart.py to trajectory_server_cart.cpython-310.pyc\n'}
+[1.962086] (joint_control) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server.py to trajectory_server.cpython-310.pyc\n'}
+[1.963558] (mock_robot) StdoutLine: {'line': b"reading manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'\n"}
+[1.965598] (joint_control) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/joint_angles_server.py to joint_angles_server.cpython-310.pyc\n'}
+[1.967512] (joint_control) StdoutLine: {'line': b'running install_data\n'}
+[1.967934] (joint_control) StdoutLine: {'line': b'copying resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages\n'}
+[1.968631] (mock_robot) StdoutLine: {'line': b"writing manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'\n"}
+[1.969186] (mock_robot) StdoutLine: {'line': b'running build\n'}
+[1.969641] (mock_robot) StdoutLine: {'line': b'running build_py\n'}
+[1.970173] (mock_robot) StdoutLine: {'line': b'copying mock_robot/robot_node.py -> /BA/workspace/build/mock_robot/build/lib/mock_robot\n'}
+[1.970818] (joint_control) StdoutLine: {'line': b'copying package.xml -> /BA/workspace/install/joint_control/share/joint_control\n'}
+[1.971212] (joint_info) StdoutLine: {'line': b'running install_scripts\n'}
+[1.972949] (joint_control) StdoutLine: {'line': b'running install_egg_info\n'}
+[1.973626] (mock_robot) StdoutLine: {'line': b'running install\n'}
+[1.974214] (joint_control) StdoutLine: {'line': b'Copying ../../build/joint_control/joint_control.egg-info to /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control-0.0.0-py3.10.egg-info\n'}
+[1.974942] (mock_robot) StdoutLine: {'line': b'running install_lib\n'}
+[1.975420] (mock_robot) StdoutLine: {'line': b'creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot\n'}
+[1.975976] (mock_robot) StdoutLine: {'line': b'copying /BA/workspace/build/mock_robot/build/lib/mock_robot/robot_node.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot\n'}
+[1.977029] (mock_robot) StdoutLine: {'line': b'copying /BA/workspace/build/mock_robot/build/lib/mock_robot/__init__.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot\n'}
+[1.979074] (mock_robot) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/robot_node.py to robot_node.cpython-310.pyc\n'}
+[1.984087] (mock_robot) StdoutLine: {'line': b'byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/__init__.py to __init__.cpython-310.pyc\n'}
+[1.985495] (mock_robot) StdoutLine: {'line': b'running install_data\n'}
+[1.985948] (mock_robot) StdoutLine: {'line': b'copying resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages\n'}
+[1.986768] (joint_control) StdoutLine: {'line': b'running install_scripts\n'}
+[1.987157] (mock_robot) StdoutLine: {'line': b'copying package.xml -> /BA/workspace/install/mock_robot/share/mock_robot\n'}
+[1.988280] (mock_robot) StdoutLine: {'line': b'running install_egg_info\n'}
+[1.990560] (mock_robot) StdoutLine: {'line': b'Copying ../../build/mock_robot/mock_robot.egg-info to /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot-0.0.0-py3.10.egg-info\n'}
+[1.997234] (joint_info) StdoutLine: {'line': b'Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.998472] (joint_info) StdoutLine: {'line': b'Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.999031] (mock_robot) StdoutLine: {'line': b'running install_scripts\n'}
+[1.999508] (joint_info) StdoutLine: {'line': b'Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[2.000658] (joint_info) StdoutLine: {'line': b"writing list of installed files to '/BA/workspace/build/joint_info/install.log'\n"}
+[2.017703] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[2.022314] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[2.024175] (mock_robot) StdoutLine: {'line': b'Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot\n'}
+[2.025290] (joint_info) CommandEnded: {'returncode': 0}
+[2.026895] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[2.028781] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[2.029180] (mock_robot) StdoutLine: {'line': b"writing list of installed files to '/BA/workspace/build/mock_robot/install.log'\n"}
+[2.029411] (joint_control) StdoutLine: {'line': b"writing list of installed files to '/BA/workspace/build/joint_control/install.log'\n"}
+[2.037317] (-) TimerEvent: {}
+[2.052315] (joint_info) JobEnded: {'identifier': 'joint_info', 'rc': 0}
+[2.054711] (joint_control) CommandEnded: {'returncode': 0}
+[2.065357] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[2.068220] (mock_robot) CommandEnded: {'returncode': 0}
+[2.077776] (mock_robot) JobEnded: {'identifier': 'mock_robot', 'rc': 0}
+[2.079551] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-27_14-31-25/joint_control/command.log b/workspace/log/build_2025-03-27_14-31-25/joint_control/command.log
new file mode 100644
index 0000000..d69aa13
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/joint_control/command.log
@@ -0,0 +1,4 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_control/build
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_control/build
+Invoking command in '/BA/workspace/src/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_control build --build-base /BA/workspace/build/joint_control/build install --record /BA/workspace/build/joint_control/install.log --single-version-externally-managed install_data --force
+Invoked command in '/BA/workspace/src/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_control build --build-base /BA/workspace/build/joint_control/build install --record /BA/workspace/build/joint_control/install.log --single-version-externally-managed install_data --force
diff --git a/workspace/log/build_2025-03-27_14-31-25/joint_control/stderr.log b/workspace/log/build_2025-03-27_14-31-25/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_14-31-25/joint_control/stdout.log b/workspace/log/build_2025-03-27_14-31-25/joint_control/stdout.log
new file mode 100644
index 0000000..d90ce35
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/joint_control/stdout.log
@@ -0,0 +1,36 @@
+running develop
+Removing /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+running egg_info
+writing ../../build/joint_control/joint_control.egg-info/PKG-INFO
+writing dependency_links to ../../build/joint_control/joint_control.egg-info/dependency_links.txt
+writing entry points to ../../build/joint_control/joint_control.egg-info/entry_points.txt
+writing requirements to ../../build/joint_control/joint_control.egg-info/requires.txt
+writing top-level names to ../../build/joint_control/joint_control.egg-info/top_level.txt
+reading manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'
+writing manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'
+running build
+running build_py
+running install
+running install_lib
+creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/cart_tcp_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/__init__.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server_cart.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/joint_angles_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/cart_tcp_server.py to cart_tcp_server.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/__init__.py to __init__.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server_cart.py to trajectory_server_cart.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server.py to trajectory_server.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/joint_angles_server.py to joint_angles_server.cpython-310.pyc
+running install_data
+copying resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages
+copying package.xml -> /BA/workspace/install/joint_control/share/joint_control
+running install_egg_info
+Copying ../../build/joint_control/joint_control.egg-info to /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control-0.0.0-py3.10.egg-info
+running install_scripts
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+writing list of installed files to '/BA/workspace/build/joint_control/install.log'
diff --git a/workspace/log/build_2025-03-27_14-31-25/joint_control/stdout_stderr.log b/workspace/log/build_2025-03-27_14-31-25/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..d90ce35
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/joint_control/stdout_stderr.log
@@ -0,0 +1,36 @@
+running develop
+Removing /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+running egg_info
+writing ../../build/joint_control/joint_control.egg-info/PKG-INFO
+writing dependency_links to ../../build/joint_control/joint_control.egg-info/dependency_links.txt
+writing entry points to ../../build/joint_control/joint_control.egg-info/entry_points.txt
+writing requirements to ../../build/joint_control/joint_control.egg-info/requires.txt
+writing top-level names to ../../build/joint_control/joint_control.egg-info/top_level.txt
+reading manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'
+writing manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'
+running build
+running build_py
+running install
+running install_lib
+creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/cart_tcp_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/__init__.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server_cart.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+copying /BA/workspace/build/joint_control/build/lib/joint_control/joint_angles_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/cart_tcp_server.py to cart_tcp_server.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/__init__.py to __init__.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server_cart.py to trajectory_server_cart.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server.py to trajectory_server.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/joint_angles_server.py to joint_angles_server.cpython-310.pyc
+running install_data
+copying resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages
+copying package.xml -> /BA/workspace/install/joint_control/share/joint_control
+running install_egg_info
+Copying ../../build/joint_control/joint_control.egg-info to /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control-0.0.0-py3.10.egg-info
+running install_scripts
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+writing list of installed files to '/BA/workspace/build/joint_control/install.log'
diff --git a/workspace/log/build_2025-03-27_14-31-25/joint_control/streams.log b/workspace/log/build_2025-03-27_14-31-25/joint_control/streams.log
new file mode 100644
index 0000000..3768177
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/joint_control/streams.log
@@ -0,0 +1,40 @@
+[1.254s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_control/build
+[1.531s] running develop
+[1.633s] Removing /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.654s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_control/build
+[1.664s] Invoking command in '/BA/workspace/src/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_control build --build-base /BA/workspace/build/joint_control/build install --record /BA/workspace/build/joint_control/install.log --single-version-externally-managed install_data --force
+[1.908s] running egg_info
+[1.911s] writing ../../build/joint_control/joint_control.egg-info/PKG-INFO
+[1.913s] writing dependency_links to ../../build/joint_control/joint_control.egg-info/dependency_links.txt
+[1.914s] writing entry points to ../../build/joint_control/joint_control.egg-info/entry_points.txt
+[1.914s] writing requirements to ../../build/joint_control/joint_control.egg-info/requires.txt
+[1.915s] writing top-level names to ../../build/joint_control/joint_control.egg-info/top_level.txt
+[1.921s] reading manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'
+[1.925s] writing manifest file '../../build/joint_control/joint_control.egg-info/SOURCES.txt'
+[1.925s] running build
+[1.925s] running build_py
+[1.927s] running install
+[1.927s] running install_lib
+[1.932s] creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+[1.933s] copying /BA/workspace/build/joint_control/build/lib/joint_control/cart_tcp_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+[1.935s] copying /BA/workspace/build/joint_control/build/lib/joint_control/__init__.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+[1.936s] copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server_cart.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+[1.938s] copying /BA/workspace/build/joint_control/build/lib/joint_control/trajectory_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+[1.939s] copying /BA/workspace/build/joint_control/build/lib/joint_control/joint_angles_server.py -> /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control
+[1.943s] byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/cart_tcp_server.py to cart_tcp_server.cpython-310.pyc
+[1.955s] byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/__init__.py to __init__.cpython-310.pyc
+[1.957s] byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server_cart.py to trajectory_server_cart.cpython-310.pyc
+[1.960s] byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/trajectory_server.py to trajectory_server.cpython-310.pyc
+[1.963s] byte-compiling /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control/joint_angles_server.py to joint_angles_server.cpython-310.pyc
+[1.965s] running install_data
+[1.966s] copying resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages
+[1.969s] copying package.xml -> /BA/workspace/install/joint_control/share/joint_control
+[1.971s] running install_egg_info
+[1.972s] Copying ../../build/joint_control/joint_control.egg-info to /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint_control-0.0.0-py3.10.egg-info
+[1.985s] running install_scripts
+[2.016s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[2.021s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[2.026s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[2.027s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[2.027s] writing list of installed files to '/BA/workspace/build/joint_control/install.log'
+[2.052s] Invoked command in '/BA/workspace/src/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_control build --build-base /BA/workspace/build/joint_control/build install --record /BA/workspace/build/joint_control/install.log --single-version-externally-managed install_data --force
diff --git a/workspace/log/build_2025-03-27_14-31-25/joint_info/command.log b/workspace/log/build_2025-03-27_14-31-25/joint_info/command.log
new file mode 100644
index 0000000..f633bef
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/joint_info/command.log
@@ -0,0 +1,4 @@
+Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_info/build
+Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_info/build
+Invoking command in '/BA/workspace/src/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_info build --build-base /BA/workspace/build/joint_info/build install --record /BA/workspace/build/joint_info/install.log --single-version-externally-managed install_data --force
+Invoked command in '/BA/workspace/src/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_info build --build-base /BA/workspace/build/joint_info/build install --record /BA/workspace/build/joint_info/install.log --single-version-externally-managed install_data --force
diff --git a/workspace/log/build_2025-03-27_14-31-25/joint_info/stderr.log b/workspace/log/build_2025-03-27_14-31-25/joint_info/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_14-31-25/joint_info/stdout.log b/workspace/log/build_2025-03-27_14-31-25/joint_info/stdout.log
new file mode 100644
index 0000000..32386ae
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/joint_info/stdout.log
@@ -0,0 +1,33 @@
+running develop
+Removing /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+running egg_info
+writing ../../build/joint_info/joint_info.egg-info/PKG-INFO
+writing dependency_links to ../../build/joint_info/joint_info.egg-info/dependency_links.txt
+writing entry points to ../../build/joint_info/joint_info.egg-info/entry_points.txt
+writing requirements to ../../build/joint_info/joint_info.egg-info/requires.txt
+writing top-level names to ../../build/joint_info/joint_info.egg-info/top_level.txt
+reading manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'
+writing manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'
+running build
+running build_py
+running install
+running install_lib
+creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_pub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/__init__.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_sub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/tcp_cart_pos.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_pub.py to osc_joint_states_pub.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/__init__.py to __init__.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_sub.py to osc_joint_states_sub.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/tcp_cart_pos.py to tcp_cart_pos.cpython-310.pyc
+running install_data
+copying resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages
+copying package.xml -> /BA/workspace/install/joint_info/share/joint_info
+running install_egg_info
+Copying ../../build/joint_info/joint_info.egg-info to /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info-0.0.0-py3.10.egg-info
+running install_scripts
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+writing list of installed files to '/BA/workspace/build/joint_info/install.log'
diff --git a/workspace/log/build_2025-03-27_14-31-25/joint_info/stdout_stderr.log b/workspace/log/build_2025-03-27_14-31-25/joint_info/stdout_stderr.log
new file mode 100644
index 0000000..32386ae
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/joint_info/stdout_stderr.log
@@ -0,0 +1,33 @@
+running develop
+Removing /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+running egg_info
+writing ../../build/joint_info/joint_info.egg-info/PKG-INFO
+writing dependency_links to ../../build/joint_info/joint_info.egg-info/dependency_links.txt
+writing entry points to ../../build/joint_info/joint_info.egg-info/entry_points.txt
+writing requirements to ../../build/joint_info/joint_info.egg-info/requires.txt
+writing top-level names to ../../build/joint_info/joint_info.egg-info/top_level.txt
+reading manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'
+writing manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'
+running build
+running build_py
+running install
+running install_lib
+creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_pub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/__init__.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_sub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+copying /BA/workspace/build/joint_info/build/lib/joint_info/tcp_cart_pos.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_pub.py to osc_joint_states_pub.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/__init__.py to __init__.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_sub.py to osc_joint_states_sub.cpython-310.pyc
+byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/tcp_cart_pos.py to tcp_cart_pos.cpython-310.pyc
+running install_data
+copying resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages
+copying package.xml -> /BA/workspace/install/joint_info/share/joint_info
+running install_egg_info
+Copying ../../build/joint_info/joint_info.egg-info to /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info-0.0.0-py3.10.egg-info
+running install_scripts
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+writing list of installed files to '/BA/workspace/build/joint_info/install.log'
diff --git a/workspace/log/build_2025-03-27_14-31-25/joint_info/streams.log b/workspace/log/build_2025-03-27_14-31-25/joint_info/streams.log
new file mode 100644
index 0000000..c9b7ed1
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/joint_info/streams.log
@@ -0,0 +1,37 @@
+[1.241s] Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_info/build
+[1.503s] running develop
+[1.606s] Removing /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+[1.628s] Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_info/build
+[1.635s] Invoking command in '/BA/workspace/src/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_info build --build-base /BA/workspace/build/joint_info/build install --record /BA/workspace/build/joint_info/install.log --single-version-externally-managed install_data --force
+[1.888s] running egg_info
+[1.889s] writing ../../build/joint_info/joint_info.egg-info/PKG-INFO
+[1.889s] writing dependency_links to ../../build/joint_info/joint_info.egg-info/dependency_links.txt
+[1.890s] writing entry points to ../../build/joint_info/joint_info.egg-info/entry_points.txt
+[1.891s] writing requirements to ../../build/joint_info/joint_info.egg-info/requires.txt
+[1.891s] writing top-level names to ../../build/joint_info/joint_info.egg-info/top_level.txt
+[1.904s] reading manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'
+[1.908s] writing manifest file '../../build/joint_info/joint_info.egg-info/SOURCES.txt'
+[1.908s] running build
+[1.909s] running build_py
+[1.911s] running install
+[1.911s] running install_lib
+[1.912s] creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+[1.912s] copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_pub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+[1.913s] copying /BA/workspace/build/joint_info/build/lib/joint_info/__init__.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+[1.914s] copying /BA/workspace/build/joint_info/build/lib/joint_info/osc_joint_states_sub.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+[1.916s] copying /BA/workspace/build/joint_info/build/lib/joint_info/tcp_cart_pos.py -> /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info
+[1.918s] byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_pub.py to osc_joint_states_pub.cpython-310.pyc
+[1.925s] byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/__init__.py to __init__.cpython-310.pyc
+[1.926s] byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/osc_joint_states_sub.py to osc_joint_states_sub.cpython-310.pyc
+[1.929s] byte-compiling /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info/tcp_cart_pos.py to tcp_cart_pos.cpython-310.pyc
+[1.931s] running install_data
+[1.932s] copying resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages
+[1.934s] copying package.xml -> /BA/workspace/install/joint_info/share/joint_info
+[1.939s] running install_egg_info
+[1.943s] Copying ../../build/joint_info/joint_info.egg-info to /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint_info-0.0.0-py3.10.egg-info
+[1.959s] running install_scripts
+[1.986s] Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.987s] Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.988s] Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+[1.989s] writing list of installed files to '/BA/workspace/build/joint_info/install.log'
+[2.014s] Invoked command in '/BA/workspace/src/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_info build --build-base /BA/workspace/build/joint_info/build install --record /BA/workspace/build/joint_info/install.log --single-version-externally-managed install_data --force
diff --git a/workspace/log/build_2025-03-27_14-31-25/logger_all.log b/workspace/log/build_2025-03-27_14-31-25/logger_all.log
new file mode 100644
index 0000000..2df02b3
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/logger_all.log
@@ -0,0 +1,232 @@
+[0.098s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build']
+[0.098s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=False, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=None, packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.198s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.199s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.199s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.199s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.199s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.199s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.200s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.200s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.200s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.222s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.225s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.226s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.227s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.227s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.227s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.227s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.227s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.243s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.243s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.243s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.243s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.243s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.243s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.244s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': False, 'test_result_base': None}
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_args' from command line to 'None'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target' from command line to 'None'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_cache' from command line to 'False'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_first' from command line to 'False'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_force_configure' from command line to 'False'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'ament_cmake_args' from command line to 'None'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_cmake_args' from command line to 'None'
+[0.244s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.245s] DEBUG:colcon.colcon_core.verb:Building package 'joint_info' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_info', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_info', 'merge_install': False, 'path': '/BA/workspace/src/joint_info', 'symlink_install': False, 'test_result_base': None}
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_args' from command line to 'None'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target' from command line to 'None'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_cache' from command line to 'False'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_first' from command line to 'False'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_force_configure' from command line to 'False'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'ament_cmake_args' from command line to 'None'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_cmake_args' from command line to 'None'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.245s] DEBUG:colcon.colcon_core.verb:Building package 'mock_robot' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/mock_robot', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/mock_robot', 'merge_install': False, 'path': '/BA/workspace/src/mock_robot', 'symlink_install': False, 'test_result_base': None}
+[0.245s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.248s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.249s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.249s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.251s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.252s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.254s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.254s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.256s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.256s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.261s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_info' with build type 'ament_python'
+[0.261s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'ament_prefix_path')
+[0.262s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.ps1'
+[0.263s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.dsv'
+[0.264s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.sh'
+[0.265s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.265s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.268s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/mock_robot' with build type 'ament_python'
+[0.269s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'ament_prefix_path')
+[0.269s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1'
+[0.270s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv'
+[0.271s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh'
+[0.272s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.272s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.529s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.529s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.529s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.770s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_info'
+[0.770s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.771s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.041s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/mock_robot'
+[1.041s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[1.042s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.502s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_info/build
+[1.507s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_control/build
+[1.522s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/mock_robot/build
+[1.890s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_info/build
+[1.897s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/src/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_info build --build-base /BA/workspace/build/joint_info/build install --record /BA/workspace/build/joint_info/install.log --single-version-externally-managed install_data --force
+[1.906s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/joint_control/build
+[1.915s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/src/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_control build --build-base /BA/workspace/build/joint_control/build install --record /BA/workspace/build/joint_control/install.log --single-version-externally-managed install_data --force
+[1.927s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/mock_robot/build
+[1.933s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/src/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/mock_robot build --build-base /BA/workspace/build/mock_robot/build install --record /BA/workspace/build/mock_robot/install.log --single-version-externally-managed install_data --force
+[2.276s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/src/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_info build --build-base /BA/workspace/build/joint_info/build install --record /BA/workspace/build/joint_info/install.log --single-version-externally-managed install_data --force
+[2.277s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake module files
+[2.282s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake config files
+[2.292s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib'
+[2.293s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.293s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/pkgconfig/joint_info.pc'
+[2.293s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/python3.10/site-packages'
+[2.293s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath')
+[2.293s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.ps1'
+[2.295s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.dsv'
+[2.295s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.sh'
+[2.296s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.296s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_info)
+[2.297s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.ps1'
+[2.298s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_info/share/joint_info/package.dsv'
+[2.299s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.sh'
+[2.299s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.bash'
+[2.300s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.zsh'
+[2.301s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_info/share/colcon-core/packages/joint_info)
+[2.302s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[2.304s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/src/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/joint_control build --build-base /BA/workspace/build/joint_control/build install --record /BA/workspace/build/joint_control/install.log --single-version-externally-managed install_data --force
+[2.305s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[2.309s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[2.309s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[2.309s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[2.309s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[2.309s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[2.310s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[2.310s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[2.311s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[2.311s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[2.312s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[2.312s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[2.312s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[2.313s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[2.313s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[2.314s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[2.314s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[2.315s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake module files
+[2.318s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/src/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/mock_robot build --build-base /BA/workspace/build/mock_robot/build install --record /BA/workspace/build/mock_robot/install.log --single-version-externally-managed install_data --force
+[2.318s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake config files
+[2.321s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib'
+[2.321s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.321s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/pkgconfig/mock_robot.pc'
+[2.322s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/python3.10/site-packages'
+[2.322s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath')
+[2.322s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1'
+[2.323s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv'
+[2.323s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh'
+[2.324s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.324s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(mock_robot)
+[2.324s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.ps1'
+[2.325s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/mock_robot/share/mock_robot/package.dsv'
+[2.325s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.sh'
+[2.326s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.bash'
+[2.326s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.zsh'
+[2.326s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/mock_robot/share/colcon-core/packages/mock_robot)
+[2.327s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[2.327s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[2.328s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[2.328s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[2.333s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[2.333s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[2.333s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[2.333s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[2.335s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[2.335s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[2.335s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[2.336s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[2.338s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[2.339s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[2.339s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[2.340s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[2.341s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[2.342s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[2.343s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[2.343s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-27_14-31-25/mock_robot/command.log b/workspace/log/build_2025-03-27_14-31-25/mock_robot/command.log
new file mode 100644
index 0000000..7394b9a
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/mock_robot/command.log
@@ -0,0 +1,4 @@
+Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/mock_robot/build
+Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/mock_robot/build
+Invoking command in '/BA/workspace/src/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/mock_robot build --build-base /BA/workspace/build/mock_robot/build install --record /BA/workspace/build/mock_robot/install.log --single-version-externally-managed install_data --force
+Invoked command in '/BA/workspace/src/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/mock_robot build --build-base /BA/workspace/build/mock_robot/build install --record /BA/workspace/build/mock_robot/install.log --single-version-externally-managed install_data --force
diff --git a/workspace/log/build_2025-03-27_14-31-25/mock_robot/stderr.log b/workspace/log/build_2025-03-27_14-31-25/mock_robot/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_14-31-25/mock_robot/stdout.log b/workspace/log/build_2025-03-27_14-31-25/mock_robot/stdout.log
new file mode 100644
index 0000000..a9f45bc
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/mock_robot/stdout.log
@@ -0,0 +1,28 @@
+running develop
+Removing /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+running egg_info
+writing ../../build/mock_robot/mock_robot.egg-info/PKG-INFO
+writing dependency_links to ../../build/mock_robot/mock_robot.egg-info/dependency_links.txt
+writing entry points to ../../build/mock_robot/mock_robot.egg-info/entry_points.txt
+writing requirements to ../../build/mock_robot/mock_robot.egg-info/requires.txt
+writing top-level names to ../../build/mock_robot/mock_robot.egg-info/top_level.txt
+reading manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'
+writing manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'
+running build
+running build_py
+copying mock_robot/robot_node.py -> /BA/workspace/build/mock_robot/build/lib/mock_robot
+running install
+running install_lib
+creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+copying /BA/workspace/build/mock_robot/build/lib/mock_robot/robot_node.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+copying /BA/workspace/build/mock_robot/build/lib/mock_robot/__init__.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/robot_node.py to robot_node.cpython-310.pyc
+byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/__init__.py to __init__.cpython-310.pyc
+running install_data
+copying resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+copying package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
+running install_egg_info
+Copying ../../build/mock_robot/mock_robot.egg-info to /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot-0.0.0-py3.10.egg-info
+running install_scripts
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+writing list of installed files to '/BA/workspace/build/mock_robot/install.log'
diff --git a/workspace/log/build_2025-03-27_14-31-25/mock_robot/stdout_stderr.log b/workspace/log/build_2025-03-27_14-31-25/mock_robot/stdout_stderr.log
new file mode 100644
index 0000000..a9f45bc
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/mock_robot/stdout_stderr.log
@@ -0,0 +1,28 @@
+running develop
+Removing /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+running egg_info
+writing ../../build/mock_robot/mock_robot.egg-info/PKG-INFO
+writing dependency_links to ../../build/mock_robot/mock_robot.egg-info/dependency_links.txt
+writing entry points to ../../build/mock_robot/mock_robot.egg-info/entry_points.txt
+writing requirements to ../../build/mock_robot/mock_robot.egg-info/requires.txt
+writing top-level names to ../../build/mock_robot/mock_robot.egg-info/top_level.txt
+reading manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'
+writing manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'
+running build
+running build_py
+copying mock_robot/robot_node.py -> /BA/workspace/build/mock_robot/build/lib/mock_robot
+running install
+running install_lib
+creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+copying /BA/workspace/build/mock_robot/build/lib/mock_robot/robot_node.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+copying /BA/workspace/build/mock_robot/build/lib/mock_robot/__init__.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/robot_node.py to robot_node.cpython-310.pyc
+byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/__init__.py to __init__.cpython-310.pyc
+running install_data
+copying resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+copying package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
+running install_egg_info
+Copying ../../build/mock_robot/mock_robot.egg-info to /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot-0.0.0-py3.10.egg-info
+running install_scripts
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+writing list of installed files to '/BA/workspace/build/mock_robot/install.log'
diff --git a/workspace/log/build_2025-03-27_14-31-25/mock_robot/streams.log b/workspace/log/build_2025-03-27_14-31-25/mock_robot/streams.log
new file mode 100644
index 0000000..786ca48
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-25/mock_robot/streams.log
@@ -0,0 +1,32 @@
+[1.253s] Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/mock_robot/build
+[1.533s] running develop
+[1.646s] Removing /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+[1.658s] Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --uninstall --editable --build-directory /BA/workspace/build/mock_robot/build
+[1.664s] Invoking command in '/BA/workspace/src/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/mock_robot build --build-base /BA/workspace/build/mock_robot/build install --record /BA/workspace/build/mock_robot/install.log --single-version-externally-managed install_data --force
+[1.929s] running egg_info
+[1.930s] writing ../../build/mock_robot/mock_robot.egg-info/PKG-INFO
+[1.930s] writing dependency_links to ../../build/mock_robot/mock_robot.egg-info/dependency_links.txt
+[1.933s] writing entry points to ../../build/mock_robot/mock_robot.egg-info/entry_points.txt
+[1.936s] writing requirements to ../../build/mock_robot/mock_robot.egg-info/requires.txt
+[1.937s] writing top-level names to ../../build/mock_robot/mock_robot.egg-info/top_level.txt
+[1.945s] reading manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'
+[1.949s] writing manifest file '../../build/mock_robot/mock_robot.egg-info/SOURCES.txt'
+[1.950s] running build
+[1.950s] running build_py
+[1.951s] copying mock_robot/robot_node.py -> /BA/workspace/build/mock_robot/build/lib/mock_robot
+[1.954s] running install
+[1.956s] running install_lib
+[1.956s] creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+[1.957s] copying /BA/workspace/build/mock_robot/build/lib/mock_robot/robot_node.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+[1.958s] copying /BA/workspace/build/mock_robot/build/lib/mock_robot/__init__.py -> /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot
+[1.960s] byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/robot_node.py to robot_node.cpython-310.pyc
+[1.965s] byte-compiling /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot/__init__.py to __init__.cpython-310.pyc
+[1.966s] running install_data
+[1.967s] copying resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+[1.968s] copying package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
+[1.971s] running install_egg_info
+[1.972s] Copying ../../build/mock_robot/mock_robot.egg-info to /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock_robot-0.0.0-py3.10.egg-info
+[1.980s] running install_scripts
+[2.005s] Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+[2.010s] writing list of installed files to '/BA/workspace/build/mock_robot/install.log'
+[2.049s] Invoked command in '/BA/workspace/src/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py egg_info --egg-base ../../build/mock_robot build --build-base /BA/workspace/build/mock_robot/build install --record /BA/workspace/build/mock_robot/install.log --single-version-externally-managed install_data --force
diff --git a/workspace/log/build_2025-03-27_14-31-36/events.log b/workspace/log/build_2025-03-27_14-31-36/events.log
new file mode 100644
index 0000000..a229ac5
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/events.log
@@ -0,0 +1,89 @@
+[0.000000] (-) TimerEvent: {}
+[0.001127] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.001409] (joint_info) JobQueued: {'identifier': 'joint_info', 'dependencies': OrderedDict()}
+[0.001501] (mock_robot) JobQueued: {'identifier': 'mock_robot', 'dependencies': OrderedDict()}
+[0.002272] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.011117] (joint_info) JobStarted: {'identifier': 'joint_info'}
+[0.020054] (mock_robot) JobStarted: {'identifier': 'mock_robot'}
+[0.098183] (-) TimerEvent: {}
+[0.199696] (-) TimerEvent: {}
+[0.304175] (-) TimerEvent: {}
+[0.404990] (-) TimerEvent: {}
+[0.511598] (-) TimerEvent: {}
+[0.613002] (-) TimerEvent: {}
+[0.714025] (-) TimerEvent: {}
+[0.817166] (-) TimerEvent: {}
+[0.922128] (-) TimerEvent: {}
+[1.023008] (-) TimerEvent: {}
+[1.124257] (-) TimerEvent: {}
+[1.225512] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data', '--force'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.233335] (-) TimerEvent: {}
+[1.245304] (joint_info) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_info/build', '--no-deps', 'symlink_data', '--force'], 'cwd': '/BA/workspace/build/joint_info', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_info', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.259396] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/mock_robot/build', '--no-deps', 'symlink_data', '--force'], 'cwd': '/BA/workspace/build/mock_robot', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.333995] (-) TimerEvent: {}
+[1.435385] (-) TimerEvent: {}
+[1.515409] (joint_info) StdoutLine: {'line': b'running develop\n'}
+[1.516300] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.529059] (mock_robot) StdoutLine: {'line': b'running develop\n'}
+[1.535981] (-) TimerEvent: {}
+[1.600952] (joint_info) StdoutLine: {'line': b'running egg_info\n'}
+[1.601515] (joint_info) StdoutLine: {'line': b'writing joint_info.egg-info/PKG-INFO\n'}
+[1.601904] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.602321] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.602724] (joint_info) StdoutLine: {'line': b'writing dependency_links to joint_info.egg-info/dependency_links.txt\n'}
+[1.603043] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.603371] (joint_info) StdoutLine: {'line': b'writing entry points to joint_info.egg-info/entry_points.txt\n'}
+[1.603948] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.604666] (joint_info) StdoutLine: {'line': b'writing requirements to joint_info.egg-info/requires.txt\n'}
+[1.605042] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.605400] (joint_info) StdoutLine: {'line': b'writing top-level names to joint_info.egg-info/top_level.txt\n'}
+[1.605754] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.609905] (joint_info) StdoutLine: {'line': b"reading manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.610272] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.613238] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.613654] (joint_info) StdoutLine: {'line': b"writing manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.614631] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.615075] (joint_info) StdoutLine: {'line': b'running build_ext\n'}
+[1.615506] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.615876] (joint_info) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)\n'}
+[1.616252] (mock_robot) StdoutLine: {'line': b'running egg_info\n'}
+[1.616572] (mock_robot) StdoutLine: {'line': b'writing mock_robot.egg-info/PKG-INFO\n'}
+[1.616819] (mock_robot) StdoutLine: {'line': b'writing dependency_links to mock_robot.egg-info/dependency_links.txt\n'}
+[1.617128] (mock_robot) StdoutLine: {'line': b'writing entry points to mock_robot.egg-info/entry_points.txt\n'}
+[1.617453] (joint_info) StdoutLine: {'line': b'Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.618195] (mock_robot) StdoutLine: {'line': b'writing requirements to mock_robot.egg-info/requires.txt\n'}
+[1.618698] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.619212] (mock_robot) StdoutLine: {'line': b'writing top-level names to mock_robot.egg-info/top_level.txt\n'}
+[1.619630] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.620145] (joint_info) StdoutLine: {'line': b'Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.620688] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.621213] (joint_info) StdoutLine: {'line': b'Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.621999] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.622709] (joint_info) StdoutLine: {'line': b'\n'}
+[1.623101] (joint_info) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_info\n'}
+[1.623404] (joint_info) StdoutLine: {'line': b'running symlink_data\n'}
+[1.623737] (joint_info) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/joint_info/resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages\n'}
+[1.624430] (mock_robot) StdoutLine: {'line': b"reading manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.624903] (joint_control) StdoutLine: {'line': b'\n'}
+[1.625407] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.625837] (joint_info) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/joint_info/package.xml -> /BA/workspace/install/joint_info/share/joint_info\n'}
+[1.626248] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.626626] (joint_control) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/joint_control/resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages\n'}
+[1.626866] (joint_control) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/joint_control/package.xml -> /BA/workspace/install/joint_control/share/joint_control\n'}
+[1.628285] (mock_robot) StdoutLine: {'line': b"writing manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.630126] (mock_robot) StdoutLine: {'line': b'running build_ext\n'}
+[1.630743] (mock_robot) StdoutLine: {'line': b'Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)\n'}
+[1.636090] (mock_robot) StdoutLine: {'line': b'Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot\n'}
+[1.636961] (-) TimerEvent: {}
+[1.638718] (mock_robot) StdoutLine: {'line': b'\n'}
+[1.640769] (mock_robot) StdoutLine: {'line': b'Installed /BA/workspace/build/mock_robot\n'}
+[1.641110] (mock_robot) StdoutLine: {'line': b'running symlink_data\n'}
+[1.641484] (mock_robot) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/mock_robot/resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages\n'}
+[1.641763] (mock_robot) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/mock_robot/package.xml -> /BA/workspace/install/mock_robot/share/mock_robot\n'}
+[1.649715] (joint_info) CommandEnded: {'returncode': 0}
+[1.666608] (joint_info) JobEnded: {'identifier': 'joint_info', 'rc': 0}
+[1.668357] (mock_robot) CommandEnded: {'returncode': 0}
+[1.679317] (mock_robot) JobEnded: {'identifier': 'mock_robot', 'rc': 0}
+[1.681002] (joint_control) CommandEnded: {'returncode': 0}
+[1.692354] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.694333] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-27_14-31-36/joint_control/command.log b/workspace/log/build_2025-03-27_14-31-36/joint_control/command.log
new file mode 100644
index 0000000..447e3b5
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data --force
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data --force
diff --git a/workspace/log/build_2025-03-27_14-31-36/joint_control/stderr.log b/workspace/log/build_2025-03-27_14-31-36/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_14-31-36/joint_control/stdout.log b/workspace/log/build_2025-03-27_14-31-36/joint_control/stdout.log
new file mode 100644
index 0000000..43c900d
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/joint_control/stdout.log
@@ -0,0 +1,20 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
+symbolically linking /BA/workspace/build/joint_control/resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/joint_control/package.xml -> /BA/workspace/install/joint_control/share/joint_control
diff --git a/workspace/log/build_2025-03-27_14-31-36/joint_control/stdout_stderr.log b/workspace/log/build_2025-03-27_14-31-36/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..43c900d
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/joint_control/stdout_stderr.log
@@ -0,0 +1,20 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
+symbolically linking /BA/workspace/build/joint_control/resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/joint_control/package.xml -> /BA/workspace/install/joint_control/share/joint_control
diff --git a/workspace/log/build_2025-03-27_14-31-36/joint_control/streams.log b/workspace/log/build_2025-03-27_14-31-36/joint_control/streams.log
new file mode 100644
index 0000000..f8c8897
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/joint_control/streams.log
@@ -0,0 +1,22 @@
+[1.230s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data --force
+[1.515s] running develop
+[1.600s] running egg_info
+[1.600s] writing joint_control.egg-info/PKG-INFO
+[1.601s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.602s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.603s] writing requirements to joint_control.egg-info/requires.txt
+[1.605s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.608s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.611s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.613s] running build_ext
+[1.613s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.617s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.618s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.618s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.620s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.623s]
+[1.623s] Installed /BA/workspace/build/joint_control
+[1.624s] running symlink_data
+[1.624s] symbolically linking /BA/workspace/build/joint_control/resource/joint_control -> /BA/workspace/install/joint_control/share/ament_index/resource_index/packages
+[1.625s] symbolically linking /BA/workspace/build/joint_control/package.xml -> /BA/workspace/install/joint_control/share/joint_control
+[1.679s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data --force
diff --git a/workspace/log/build_2025-03-27_14-31-36/joint_info/command.log b/workspace/log/build_2025-03-27_14-31-36/joint_info/command.log
new file mode 100644
index 0000000..e43b856
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/joint_info/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data --force
+Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data --force
diff --git a/workspace/log/build_2025-03-27_14-31-36/joint_info/stderr.log b/workspace/log/build_2025-03-27_14-31-36/joint_info/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_14-31-36/joint_info/stdout.log b/workspace/log/build_2025-03-27_14-31-36/joint_info/stdout.log
new file mode 100644
index 0000000..9c6fb03
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/joint_info/stdout.log
@@ -0,0 +1,19 @@
+running develop
+running egg_info
+writing joint_info.egg-info/PKG-INFO
+writing dependency_links to joint_info.egg-info/dependency_links.txt
+writing entry points to joint_info.egg-info/entry_points.txt
+writing requirements to joint_info.egg-info/requires.txt
+writing top-level names to joint_info.egg-info/top_level.txt
+reading manifest file 'joint_info.egg-info/SOURCES.txt'
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+
+Installed /BA/workspace/build/joint_info
+running symlink_data
+symbolically linking /BA/workspace/build/joint_info/resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/joint_info/package.xml -> /BA/workspace/install/joint_info/share/joint_info
diff --git a/workspace/log/build_2025-03-27_14-31-36/joint_info/stdout_stderr.log b/workspace/log/build_2025-03-27_14-31-36/joint_info/stdout_stderr.log
new file mode 100644
index 0000000..9c6fb03
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/joint_info/stdout_stderr.log
@@ -0,0 +1,19 @@
+running develop
+running egg_info
+writing joint_info.egg-info/PKG-INFO
+writing dependency_links to joint_info.egg-info/dependency_links.txt
+writing entry points to joint_info.egg-info/entry_points.txt
+writing requirements to joint_info.egg-info/requires.txt
+writing top-level names to joint_info.egg-info/top_level.txt
+reading manifest file 'joint_info.egg-info/SOURCES.txt'
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+
+Installed /BA/workspace/build/joint_info
+running symlink_data
+symbolically linking /BA/workspace/build/joint_info/resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/joint_info/package.xml -> /BA/workspace/install/joint_info/share/joint_info
diff --git a/workspace/log/build_2025-03-27_14-31-36/joint_info/streams.log b/workspace/log/build_2025-03-27_14-31-36/joint_info/streams.log
new file mode 100644
index 0000000..3a8504e
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/joint_info/streams.log
@@ -0,0 +1,21 @@
+[1.237s] Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data --force
+[1.505s] running develop
+[1.590s] running egg_info
+[1.590s] writing joint_info.egg-info/PKG-INFO
+[1.592s] writing dependency_links to joint_info.egg-info/dependency_links.txt
+[1.593s] writing entry points to joint_info.egg-info/entry_points.txt
+[1.594s] writing requirements to joint_info.egg-info/requires.txt
+[1.594s] writing top-level names to joint_info.egg-info/top_level.txt
+[1.599s] reading manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.602s] writing manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.604s] running build_ext
+[1.605s] Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+[1.607s] Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.609s] Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.610s] Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+[1.612s]
+[1.612s] Installed /BA/workspace/build/joint_info
+[1.612s] running symlink_data
+[1.613s] symbolically linking /BA/workspace/build/joint_info/resource/joint_info -> /BA/workspace/install/joint_info/share/ament_index/resource_index/packages
+[1.615s] symbolically linking /BA/workspace/build/joint_info/package.xml -> /BA/workspace/install/joint_info/share/joint_info
+[1.639s] Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data --force
diff --git a/workspace/log/build_2025-03-27_14-31-36/logger_all.log b/workspace/log/build_2025-03-27_14-31-36/logger_all.log
new file mode 100644
index 0000000..a43d195
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/logger_all.log
@@ -0,0 +1,252 @@
+[0.091s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install']
+[0.092s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=None, packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.187s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.188s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.188s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.188s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.188s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.188s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.189s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.189s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.189s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.189s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.189s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.189s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.190s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.198s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.198s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.198s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.198s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.198s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.199s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.199s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.199s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.199s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.207s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.209s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.210s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.210s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.211s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.211s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.211s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.211s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.225s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.225s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.225s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.225s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.225s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.225s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.225s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.226s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_args' from command line to 'None'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target' from command line to 'None'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_cache' from command line to 'False'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_first' from command line to 'False'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_force_configure' from command line to 'False'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'ament_cmake_args' from command line to 'None'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_cmake_args' from command line to 'None'
+[0.226s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.227s] DEBUG:colcon.colcon_core.verb:Building package 'joint_info' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_info', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_info', 'merge_install': False, 'path': '/BA/workspace/src/joint_info', 'symlink_install': True, 'test_result_base': None}
+[0.227s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_args' from command line to 'None'
+[0.227s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target' from command line to 'None'
+[0.227s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.227s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_cache' from command line to 'False'
+[0.227s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_first' from command line to 'False'
+[0.227s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_force_configure' from command line to 'False'
+[0.227s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'ament_cmake_args' from command line to 'None'
+[0.227s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_cmake_args' from command line to 'None'
+[0.227s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.227s] DEBUG:colcon.colcon_core.verb:Building package 'mock_robot' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/mock_robot', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/mock_robot', 'merge_install': False, 'path': '/BA/workspace/src/mock_robot', 'symlink_install': True, 'test_result_base': None}
+[0.227s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.230s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.231s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.231s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.233s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.233s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.235s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.236s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.237s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.237s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.242s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_info' with build type 'ament_python'
+[0.242s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'ament_prefix_path')
+[0.243s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.ps1'
+[0.245s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.dsv'
+[0.246s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.sh'
+[0.246s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.247s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.251s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/mock_robot' with build type 'ament_python'
+[0.251s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'ament_prefix_path')
+[0.252s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1'
+[0.256s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv'
+[0.257s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh'
+[0.258s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.258s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.522s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.522s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.522s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.814s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_info'
+[0.814s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.815s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.054s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/mock_robot'
+[1.054s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[1.054s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.443s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_control/share/ament_index/resource_index/packages/joint_control
+[1.444s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_control/share/joint_control/package.xml
+[1.449s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_control/lib/joint_control/cart_coords
+[1.449s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_control/lib/joint_control/joint_control
+[1.449s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_control/lib/joint_control/trajectory_server
+[1.450s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_control/lib/joint_control/trajectory_server_cart
+[1.464s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data --force
+[1.466s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_info/share/ament_index/resource_index/packages/joint_info
+[1.466s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_info/share/joint_info/package.xml
+[1.469s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_info/lib/joint_info/joint_states_pub
+[1.469s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_info/lib/joint_info/joint_states_sub
+[1.469s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/joint_info/lib/joint_info/tcp_cart_pos
+[1.480s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data --force
+[1.480s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages/mock_robot
+[1.480s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/mock_robot/share/mock_robot/package.xml
+[1.482s] DEBUG:colcon.colcon_core.task.python.build:While undoing a previous installation files outside the Python library path are being ignored: /BA/workspace/install/mock_robot/lib/mock_robot/mock_robot
+[1.505s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data --force
+[1.881s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath_develop')
+[1.881s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.ps1'
+[1.881s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data --force
+[1.882s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.dsv'
+[1.883s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.sh'
+[1.885s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake module files
+[1.886s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake config files
+[1.890s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib'
+[1.890s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[1.890s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/pkgconfig/joint_info.pc'
+[1.891s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/python3.10/site-packages'
+[1.891s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath')
+[1.891s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.ps1'
+[1.892s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.dsv'
+[1.892s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.sh'
+[1.893s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[1.893s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_info)
+[1.893s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.ps1'
+[1.894s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_info/share/joint_info/package.dsv'
+[1.895s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.sh'
+[1.896s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.bash'
+[1.897s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.zsh'
+[1.897s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_info/share/colcon-core/packages/joint_info)
+[1.898s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath_develop')
+[1.899s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1'
+[1.900s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data --force
+[1.900s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv'
+[1.900s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh'
+[1.901s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake module files
+[1.903s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake config files
+[1.905s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib'
+[1.905s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[1.905s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/pkgconfig/mock_robot.pc'
+[1.905s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/python3.10/site-packages'
+[1.905s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath')
+[1.905s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1'
+[1.906s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv'
+[1.907s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh'
+[1.907s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[1.907s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(mock_robot)
+[1.908s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.ps1'
+[1.908s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/mock_robot/share/mock_robot/package.dsv'
+[1.909s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.sh'
+[1.909s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.bash'
+[1.909s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.zsh'
+[1.910s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/mock_robot/share/colcon-core/packages/mock_robot)
+[1.910s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.911s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.912s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.912s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data --force
+[1.912s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.913s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.915s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.918s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.918s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.918s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.919s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.919s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.919s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.919s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.920s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.920s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.920s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.921s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.921s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.922s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.922s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.923s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.923s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.923s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.924s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.924s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.924s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.930s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.930s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.930s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.930s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.932s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.932s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.932s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.933s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.935s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.936s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.936s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.937s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.938s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.939s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.939s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.940s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-27_14-31-36/mock_robot/command.log b/workspace/log/build_2025-03-27_14-31-36/mock_robot/command.log
new file mode 100644
index 0000000..5c9800a
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/mock_robot/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data --force
+Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data --force
diff --git a/workspace/log/build_2025-03-27_14-31-36/mock_robot/stderr.log b/workspace/log/build_2025-03-27_14-31-36/mock_robot/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_14-31-36/mock_robot/stdout.log b/workspace/log/build_2025-03-27_14-31-36/mock_robot/stdout.log
new file mode 100644
index 0000000..c46b78b
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/mock_robot/stdout.log
@@ -0,0 +1,17 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
+symbolically linking /BA/workspace/build/mock_robot/resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/mock_robot/package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
diff --git a/workspace/log/build_2025-03-27_14-31-36/mock_robot/stdout_stderr.log b/workspace/log/build_2025-03-27_14-31-36/mock_robot/stdout_stderr.log
new file mode 100644
index 0000000..c46b78b
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/mock_robot/stdout_stderr.log
@@ -0,0 +1,17 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
+symbolically linking /BA/workspace/build/mock_robot/resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/mock_robot/package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
diff --git a/workspace/log/build_2025-03-27_14-31-36/mock_robot/streams.log b/workspace/log/build_2025-03-27_14-31-36/mock_robot/streams.log
new file mode 100644
index 0000000..9bc7dbe
--- /dev/null
+++ b/workspace/log/build_2025-03-27_14-31-36/mock_robot/streams.log
@@ -0,0 +1,19 @@
+[1.253s] Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data --force
+[1.508s] running develop
+[1.595s] running egg_info
+[1.596s] writing mock_robot.egg-info/PKG-INFO
+[1.596s] writing dependency_links to mock_robot.egg-info/dependency_links.txt
+[1.596s] writing entry points to mock_robot.egg-info/entry_points.txt
+[1.597s] writing requirements to mock_robot.egg-info/requires.txt
+[1.598s] writing top-level names to mock_robot.egg-info/top_level.txt
+[1.604s] reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.607s] writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.610s] running build_ext
+[1.610s] Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+[1.616s] Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+[1.620s]
+[1.620s] Installed /BA/workspace/build/mock_robot
+[1.620s] running symlink_data
+[1.621s] symbolically linking /BA/workspace/build/mock_robot/resource/mock_robot -> /BA/workspace/install/mock_robot/share/ament_index/resource_index/packages
+[1.621s] symbolically linking /BA/workspace/build/mock_robot/package.xml -> /BA/workspace/install/mock_robot/share/mock_robot
+[1.648s] Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data --force
diff --git a/workspace/log/build_2025-03-27_16-16-01/events.log b/workspace/log/build_2025-03-27_16-16-01/events.log
new file mode 100644
index 0000000..8b022d1
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/events.log
@@ -0,0 +1,85 @@
+[0.000000] (-) TimerEvent: {}
+[0.001740] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.001903] (joint_info) JobQueued: {'identifier': 'joint_info', 'dependencies': OrderedDict()}
+[0.002205] (mock_robot) JobQueued: {'identifier': 'mock_robot', 'dependencies': OrderedDict()}
+[0.002509] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.015502] (joint_info) JobStarted: {'identifier': 'joint_info'}
+[0.032603] (mock_robot) JobStarted: {'identifier': 'mock_robot'}
+[0.098415] (-) TimerEvent: {}
+[0.199229] (-) TimerEvent: {}
+[0.300397] (-) TimerEvent: {}
+[0.402327] (-) TimerEvent: {}
+[0.503261] (-) TimerEvent: {}
+[0.604152] (-) TimerEvent: {}
+[0.705442] (-) TimerEvent: {}
+[0.806208] (-) TimerEvent: {}
+[0.910298] (-) TimerEvent: {}
+[1.012252] (-) TimerEvent: {}
+[1.113383] (-) TimerEvent: {}
+[1.215235] (-) TimerEvent: {}
+[1.310455] (joint_info) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_info/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_info', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control', 'PWD': '/BA/workspace/build/joint_info', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages', 'COLCON': '1'}, 'shell': False}
+[1.320799] (-) TimerEvent: {}
+[1.327256] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages', 'COLCON': '1'}, 'shell': False}
+[1.347977] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/mock_robot/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/mock_robot', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages', 'COLCON': '1'}, 'shell': False}
+[1.421220] (-) TimerEvent: {}
+[1.522460] (-) TimerEvent: {}
+[1.622610] (joint_info) StdoutLine: {'line': b'running develop\n'}
+[1.624483] (-) TimerEvent: {}
+[1.634495] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.657649] (mock_robot) StdoutLine: {'line': b'running develop\n'}
+[1.725229] (-) TimerEvent: {}
+[1.750377] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.751075] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.753389] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.754461] (joint_info) StdoutLine: {'line': b'running egg_info\n'}
+[1.754976] (joint_info) StdoutLine: {'line': b'writing joint_info.egg-info/PKG-INFO\n'}
+[1.757500] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.758239] (joint_info) StdoutLine: {'line': b'writing dependency_links to joint_info.egg-info/dependency_links.txt\n'}
+[1.758685] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.759537] (joint_info) StdoutLine: {'line': b'writing entry points to joint_info.egg-info/entry_points.txt\n'}
+[1.761046] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.761442] (joint_info) StdoutLine: {'line': b'writing requirements to joint_info.egg-info/requires.txt\n'}
+[1.762151] (joint_info) StdoutLine: {'line': b'writing top-level names to joint_info.egg-info/top_level.txt\n'}
+[1.763367] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.765889] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.766480] (joint_info) StdoutLine: {'line': b"reading manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.767675] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.768317] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.768999] (joint_info) StdoutLine: {'line': b"writing manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.770913] (joint_info) StdoutLine: {'line': b'running build_ext\n'}
+[1.771908] (joint_info) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)\n'}
+[1.773563] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.776499] (joint_info) StdoutLine: {'line': b'Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.776973] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.777339] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.777814] (joint_info) StdoutLine: {'line': b'Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.778470] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.779257] (joint_info) StdoutLine: {'line': b'Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.780204] (joint_control) StdoutLine: {'line': b'\n'}
+[1.780728] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.781095] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.781582] (joint_info) StdoutLine: {'line': b'\n'}
+[1.781973] (joint_info) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_info\n'}
+[1.782376] (joint_info) StdoutLine: {'line': b'running symlink_data\n'}
+[1.805467] (joint_control) CommandEnded: {'returncode': 0}
+[1.819219] (mock_robot) StdoutLine: {'line': b'running egg_info\n'}
+[1.820382] (mock_robot) StdoutLine: {'line': b'writing mock_robot.egg-info/PKG-INFO\n'}
+[1.821024] (mock_robot) StdoutLine: {'line': b'writing dependency_links to mock_robot.egg-info/dependency_links.txt\n'}
+[1.821865] (mock_robot) StdoutLine: {'line': b'writing entry points to mock_robot.egg-info/entry_points.txt\n'}
+[1.822464] (mock_robot) StdoutLine: {'line': b'writing requirements to mock_robot.egg-info/requires.txt\n'}
+[1.824101] (mock_robot) StdoutLine: {'line': b'writing top-level names to mock_robot.egg-info/top_level.txt\n'}
+[1.826225] (-) TimerEvent: {}
+[1.829007] (mock_robot) StdoutLine: {'line': b"reading manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.831939] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.834862] (joint_info) CommandEnded: {'returncode': 0}
+[1.835972] (mock_robot) StdoutLine: {'line': b"writing manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.836620] (mock_robot) StdoutLine: {'line': b'running build_ext\n'}
+[1.837317] (mock_robot) StdoutLine: {'line': b'Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)\n'}
+[1.837950] (mock_robot) StdoutLine: {'line': b'Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot\n'}
+[1.838994] (mock_robot) StdoutLine: {'line': b'\n'}
+[1.839402] (mock_robot) StdoutLine: {'line': b'Installed /BA/workspace/build/mock_robot\n'}
+[1.839950] (mock_robot) StdoutLine: {'line': b'running symlink_data\n'}
+[1.866696] (joint_info) JobEnded: {'identifier': 'joint_info', 'rc': 0}
+[1.868767] (mock_robot) CommandEnded: {'returncode': 0}
+[1.880365] (mock_robot) JobEnded: {'identifier': 'mock_robot', 'rc': 0}
+[1.881934] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-27_16-16-01/joint_control/command.log b/workspace/log/build_2025-03-27_16-16-01/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-16-01/joint_control/stderr.log b/workspace/log/build_2025-03-27_16-16-01/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_16-16-01/joint_control/stdout.log b/workspace/log/build_2025-03-27_16-16-01/joint_control/stdout.log
new file mode 100644
index 0000000..f01e18e
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/joint_control/stdout.log
@@ -0,0 +1,18 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-16-01/joint_control/stdout_stderr.log b/workspace/log/build_2025-03-27_16-16-01/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..f01e18e
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/joint_control/stdout_stderr.log
@@ -0,0 +1,18 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-16-01/joint_control/streams.log b/workspace/log/build_2025-03-27_16-16-01/joint_control/streams.log
new file mode 100644
index 0000000..4666ccc
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/joint_control/streams.log
@@ -0,0 +1,20 @@
+[1.331s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.632s] running develop
+[1.748s] running egg_info
+[1.750s] writing joint_control.egg-info/PKG-INFO
+[1.751s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.755s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.756s] writing requirements to joint_control.egg-info/requires.txt
+[1.759s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.761s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.763s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.765s] running build_ext
+[1.766s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.773s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.774s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.775s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.776s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.778s]
+[1.778s] Installed /BA/workspace/build/joint_control
+[1.779s] running symlink_data
+[1.804s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-16-01/joint_info/command.log b/workspace/log/build_2025-03-27_16-16-01/joint_info/command.log
new file mode 100644
index 0000000..c26e66f
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/joint_info/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-16-01/joint_info/stderr.log b/workspace/log/build_2025-03-27_16-16-01/joint_info/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_16-16-01/joint_info/stdout.log b/workspace/log/build_2025-03-27_16-16-01/joint_info/stdout.log
new file mode 100644
index 0000000..54dd46c
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/joint_info/stdout.log
@@ -0,0 +1,17 @@
+running develop
+running egg_info
+writing joint_info.egg-info/PKG-INFO
+writing dependency_links to joint_info.egg-info/dependency_links.txt
+writing entry points to joint_info.egg-info/entry_points.txt
+writing requirements to joint_info.egg-info/requires.txt
+writing top-level names to joint_info.egg-info/top_level.txt
+reading manifest file 'joint_info.egg-info/SOURCES.txt'
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+
+Installed /BA/workspace/build/joint_info
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-16-01/joint_info/stdout_stderr.log b/workspace/log/build_2025-03-27_16-16-01/joint_info/stdout_stderr.log
new file mode 100644
index 0000000..54dd46c
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/joint_info/stdout_stderr.log
@@ -0,0 +1,17 @@
+running develop
+running egg_info
+writing joint_info.egg-info/PKG-INFO
+writing dependency_links to joint_info.egg-info/dependency_links.txt
+writing entry points to joint_info.egg-info/entry_points.txt
+writing requirements to joint_info.egg-info/requires.txt
+writing top-level names to joint_info.egg-info/top_level.txt
+reading manifest file 'joint_info.egg-info/SOURCES.txt'
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+
+Installed /BA/workspace/build/joint_info
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-16-01/joint_info/streams.log b/workspace/log/build_2025-03-27_16-16-01/joint_info/streams.log
new file mode 100644
index 0000000..a5ec034
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/joint_info/streams.log
@@ -0,0 +1,19 @@
+[1.302s] Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+[1.605s] running develop
+[1.736s] running egg_info
+[1.739s] writing joint_info.egg-info/PKG-INFO
+[1.740s] writing dependency_links to joint_info.egg-info/dependency_links.txt
+[1.742s] writing entry points to joint_info.egg-info/entry_points.txt
+[1.744s] writing requirements to joint_info.egg-info/requires.txt
+[1.744s] writing top-level names to joint_info.egg-info/top_level.txt
+[1.748s] reading manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.751s] writing manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.753s] running build_ext
+[1.754s] Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+[1.759s] Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.760s] Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.761s] Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+[1.764s]
+[1.764s] Installed /BA/workspace/build/joint_info
+[1.764s] running symlink_data
+[1.817s] Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-16-01/logger_all.log b/workspace/log/build_2025-03-27_16-16-01/logger_all.log
new file mode 100644
index 0000000..3a1870c
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/logger_all.log
@@ -0,0 +1,238 @@
+[0.114s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install']
+[0.114s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=None, packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.232s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.233s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.233s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.234s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.234s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.234s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.234s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.234s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.234s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.256s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.258s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.260s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.260s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.260s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.260s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.260s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.260s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.278s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.278s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.278s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.278s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.278s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.278s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.278s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.278s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.279s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.279s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.279s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_args' from command line to 'None'
+[0.279s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target' from command line to 'None'
+[0.279s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.279s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_cache' from command line to 'False'
+[0.279s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_first' from command line to 'False'
+[0.279s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_force_configure' from command line to 'False'
+[0.279s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'ament_cmake_args' from command line to 'None'
+[0.279s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_cmake_args' from command line to 'None'
+[0.279s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.279s] DEBUG:colcon.colcon_core.verb:Building package 'joint_info' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_info', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_info', 'merge_install': False, 'path': '/BA/workspace/src/joint_info', 'symlink_install': True, 'test_result_base': None}
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_args' from command line to 'None'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target' from command line to 'None'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_cache' from command line to 'False'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_first' from command line to 'False'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_force_configure' from command line to 'False'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'ament_cmake_args' from command line to 'None'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_cmake_args' from command line to 'None'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.280s] DEBUG:colcon.colcon_core.verb:Building package 'mock_robot' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/mock_robot', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/mock_robot', 'merge_install': False, 'path': '/BA/workspace/src/mock_robot', 'symlink_install': True, 'test_result_base': None}
+[0.280s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.283s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.284s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.285s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.288s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.288s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.289s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.290s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.291s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.291s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.300s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_info' with build type 'ament_python'
+[0.300s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'ament_prefix_path')
+[0.304s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.ps1'
+[0.307s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.dsv'
+[0.309s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.sh'
+[0.311s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.311s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.317s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/mock_robot' with build type 'ament_python'
+[0.318s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'ament_prefix_path')
+[0.319s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1'
+[0.325s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv'
+[0.325s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh'
+[0.326s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.327s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.611s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.611s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.611s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.886s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_info'
+[0.887s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.887s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.152s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/mock_robot'
+[1.153s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[1.153s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.605s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+[1.619s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.635s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[2.090s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[2.091s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[2.091s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[2.093s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[2.094s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[2.096s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[2.099s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[2.103s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[2.103s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[2.103s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[2.104s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[2.104s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[2.104s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[2.106s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[2.107s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[2.109s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[2.109s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[2.110s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[2.111s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[2.112s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[2.114s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[2.115s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[2.116s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[2.117s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath_develop')
+[2.117s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.ps1'
+[2.120s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.dsv'
+[2.121s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+[2.121s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.sh'
+[2.123s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake module files
+[2.129s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake config files
+[2.144s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib'
+[2.146s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.146s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/pkgconfig/joint_info.pc'
+[2.146s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/python3.10/site-packages'
+[2.146s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath')
+[2.146s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.ps1'
+[2.147s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.dsv'
+[2.147s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.sh'
+[2.148s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.148s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_info)
+[2.148s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.ps1'
+[2.149s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_info/share/joint_info/package.dsv'
+[2.150s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.sh'
+[2.150s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.bash'
+[2.150s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.zsh'
+[2.151s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_info/share/colcon-core/packages/joint_info)
+[2.152s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath_develop')
+[2.152s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1'
+[2.153s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv'
+[2.154s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[2.154s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh'
+[2.155s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake module files
+[2.156s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake config files
+[2.159s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib'
+[2.160s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.160s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/pkgconfig/mock_robot.pc'
+[2.160s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/python3.10/site-packages'
+[2.160s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath')
+[2.160s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1'
+[2.161s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv'
+[2.161s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh'
+[2.162s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.162s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(mock_robot)
+[2.162s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.ps1'
+[2.163s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/mock_robot/share/mock_robot/package.dsv'
+[2.163s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.sh'
+[2.164s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.bash'
+[2.164s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.zsh'
+[2.165s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/mock_robot/share/colcon-core/packages/mock_robot)
+[2.165s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[2.166s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[2.166s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[2.166s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[2.172s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[2.172s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[2.172s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[2.172s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[2.174s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[2.174s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[2.174s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[2.175s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[2.177s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[2.179s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[2.179s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[2.180s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[2.182s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[2.182s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[2.184s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[2.184s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-27_16-16-01/mock_robot/command.log b/workspace/log/build_2025-03-27_16-16-01/mock_robot/command.log
new file mode 100644
index 0000000..fefebe5
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/mock_robot/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-16-01/mock_robot/stderr.log b/workspace/log/build_2025-03-27_16-16-01/mock_robot/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_16-16-01/mock_robot/stdout.log b/workspace/log/build_2025-03-27_16-16-01/mock_robot/stdout.log
new file mode 100644
index 0000000..05c4319
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/mock_robot/stdout.log
@@ -0,0 +1,15 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-16-01/mock_robot/stdout_stderr.log b/workspace/log/build_2025-03-27_16-16-01/mock_robot/stdout_stderr.log
new file mode 100644
index 0000000..05c4319
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/mock_robot/stdout_stderr.log
@@ -0,0 +1,15 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-16-01/mock_robot/streams.log b/workspace/log/build_2025-03-27_16-16-01/mock_robot/streams.log
new file mode 100644
index 0000000..fac963d
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-16-01/mock_robot/streams.log
@@ -0,0 +1,17 @@
+[1.318s] Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.625s] running develop
+[1.788s] running egg_info
+[1.788s] writing mock_robot.egg-info/PKG-INFO
+[1.789s] writing dependency_links to mock_robot.egg-info/dependency_links.txt
+[1.790s] writing entry points to mock_robot.egg-info/entry_points.txt
+[1.791s] writing requirements to mock_robot.egg-info/requires.txt
+[1.792s] writing top-level names to mock_robot.egg-info/top_level.txt
+[1.797s] reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.804s] writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.805s] running build_ext
+[1.805s] Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+[1.806s] Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+[1.807s]
+[1.807s] Installed /BA/workspace/build/mock_robot
+[1.808s] running symlink_data
+[1.836s] Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-17-09/events.log b/workspace/log/build_2025-03-27_16-17-09/events.log
new file mode 100644
index 0000000..3c9dc3e
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/events.log
@@ -0,0 +1,85 @@
+[0.000000] (-) TimerEvent: {}
+[0.001893] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.002229] (joint_info) JobQueued: {'identifier': 'joint_info', 'dependencies': OrderedDict()}
+[0.002361] (mock_robot) JobQueued: {'identifier': 'mock_robot', 'dependencies': OrderedDict()}
+[0.002400] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.016090] (joint_info) JobStarted: {'identifier': 'joint_info'}
+[0.041234] (mock_robot) JobStarted: {'identifier': 'mock_robot'}
+[0.099052] (-) TimerEvent: {}
+[0.199931] (-) TimerEvent: {}
+[0.301988] (-) TimerEvent: {}
+[0.404972] (-) TimerEvent: {}
+[0.505946] (-) TimerEvent: {}
+[0.608000] (-) TimerEvent: {}
+[0.708948] (-) TimerEvent: {}
+[0.810130] (-) TimerEvent: {}
+[0.912207] (-) TimerEvent: {}
+[1.014111] (-) TimerEvent: {}
+[1.115127] (-) TimerEvent: {}
+[1.215958] (-) TimerEvent: {}
+[1.235392] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages', 'COLCON': '1'}, 'shell': False}
+[1.245424] (joint_info) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_info/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_info', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control', 'PWD': '/BA/workspace/build/joint_info', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages', 'COLCON': '1'}, 'shell': False}
+[1.277904] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/mock_robot/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/mock_robot', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages', 'COLCON': '1'}, 'shell': False}
+[1.316925] (-) TimerEvent: {}
+[1.417926] (-) TimerEvent: {}
+[1.520938] (-) TimerEvent: {}
+[1.546788] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.553677] (joint_info) StdoutLine: {'line': b'running develop\n'}
+[1.606377] (mock_robot) StdoutLine: {'line': b'running develop\n'}
+[1.621966] (-) TimerEvent: {}
+[1.678595] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.679675] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.680418] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.681011] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.681902] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.682437] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.684283] (joint_info) StdoutLine: {'line': b'running egg_info\n'}
+[1.684978] (joint_info) StdoutLine: {'line': b'writing joint_info.egg-info/PKG-INFO\n'}
+[1.685515] (joint_info) StdoutLine: {'line': b'writing dependency_links to joint_info.egg-info/dependency_links.txt\n'}
+[1.686240] (joint_info) StdoutLine: {'line': b'writing entry points to joint_info.egg-info/entry_points.txt\n'}
+[1.686740] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.687184] (joint_info) StdoutLine: {'line': b'writing requirements to joint_info.egg-info/requires.txt\n'}
+[1.687663] (joint_info) StdoutLine: {'line': b'writing top-level names to joint_info.egg-info/top_level.txt\n'}
+[1.689644] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.692134] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.692739] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.693462] (joint_info) StdoutLine: {'line': b"reading manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.694639] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.695858] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.698732] (joint_info) StdoutLine: {'line': b"writing manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.700953] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.701873] (joint_info) StdoutLine: {'line': b'running build_ext\n'}
+[1.702390] (joint_info) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)\n'}
+[1.702826] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.704118] (joint_control) StdoutLine: {'line': b'\n'}
+[1.704904] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.705321] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.705802] (joint_info) StdoutLine: {'line': b'Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.706664] (joint_info) StdoutLine: {'line': b'Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.707923] (joint_info) StdoutLine: {'line': b'Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.709555] (joint_info) StdoutLine: {'line': b'\n'}
+[1.710346] (joint_info) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_info\n'}
+[1.710715] (joint_info) StdoutLine: {'line': b'running symlink_data\n'}
+[1.722984] (-) TimerEvent: {}
+[1.728457] (joint_control) CommandEnded: {'returncode': 0}
+[1.741222] (mock_robot) StdoutLine: {'line': b'running egg_info\n'}
+[1.741981] (mock_robot) StdoutLine: {'line': b'writing mock_robot.egg-info/PKG-INFO\n'}
+[1.742699] (mock_robot) StdoutLine: {'line': b'writing dependency_links to mock_robot.egg-info/dependency_links.txt\n'}
+[1.743196] (mock_robot) StdoutLine: {'line': b'writing entry points to mock_robot.egg-info/entry_points.txt\n'}
+[1.744420] (mock_robot) StdoutLine: {'line': b'writing requirements to mock_robot.egg-info/requires.txt\n'}
+[1.745004] (mock_robot) StdoutLine: {'line': b'writing top-level names to mock_robot.egg-info/top_level.txt\n'}
+[1.751058] (mock_robot) StdoutLine: {'line': b"reading manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.754848] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.758258] (joint_info) CommandEnded: {'returncode': 0}
+[1.759326] (mock_robot) StdoutLine: {'line': b"writing manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.759978] (mock_robot) StdoutLine: {'line': b'running build_ext\n'}
+[1.760257] (mock_robot) StdoutLine: {'line': b'Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)\n'}
+[1.761189] (mock_robot) StdoutLine: {'line': b'Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot\n'}
+[1.762934] (mock_robot) StdoutLine: {'line': b'Installing mock_robot_2 script to /BA/workspace/install/mock_robot/lib/mock_robot\n'}
+[1.764110] (mock_robot) StdoutLine: {'line': b'\n'}
+[1.764616] (mock_robot) StdoutLine: {'line': b'Installed /BA/workspace/build/mock_robot\n'}
+[1.765097] (mock_robot) StdoutLine: {'line': b'running symlink_data\n'}
+[1.790526] (joint_info) JobEnded: {'identifier': 'joint_info', 'rc': 0}
+[1.792171] (mock_robot) CommandEnded: {'returncode': 0}
+[1.804973] (mock_robot) JobEnded: {'identifier': 'mock_robot', 'rc': 0}
+[1.806530] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-27_16-17-09/joint_control/command.log b/workspace/log/build_2025-03-27_16-17-09/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-17-09/joint_control/stderr.log b/workspace/log/build_2025-03-27_16-17-09/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_16-17-09/joint_control/stdout.log b/workspace/log/build_2025-03-27_16-17-09/joint_control/stdout.log
new file mode 100644
index 0000000..f01e18e
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/joint_control/stdout.log
@@ -0,0 +1,18 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-17-09/joint_control/stdout_stderr.log b/workspace/log/build_2025-03-27_16-17-09/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..f01e18e
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/joint_control/stdout_stderr.log
@@ -0,0 +1,18 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-17-09/joint_control/streams.log b/workspace/log/build_2025-03-27_16-17-09/joint_control/streams.log
new file mode 100644
index 0000000..07314cf
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/joint_control/streams.log
@@ -0,0 +1,20 @@
+[1.243s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.547s] running develop
+[1.677s] running egg_info
+[1.678s] writing joint_control.egg-info/PKG-INFO
+[1.678s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.679s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.680s] writing requirements to joint_control.egg-info/requires.txt
+[1.680s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.685s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.688s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.690s] running build_ext
+[1.691s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.693s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.694s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.699s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.701s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.702s]
+[1.703s] Installed /BA/workspace/build/joint_control
+[1.703s] running symlink_data
+[1.728s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-17-09/joint_info/command.log b/workspace/log/build_2025-03-27_16-17-09/joint_info/command.log
new file mode 100644
index 0000000..c26e66f
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/joint_info/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-17-09/joint_info/stderr.log b/workspace/log/build_2025-03-27_16-17-09/joint_info/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_16-17-09/joint_info/stdout.log b/workspace/log/build_2025-03-27_16-17-09/joint_info/stdout.log
new file mode 100644
index 0000000..54dd46c
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/joint_info/stdout.log
@@ -0,0 +1,17 @@
+running develop
+running egg_info
+writing joint_info.egg-info/PKG-INFO
+writing dependency_links to joint_info.egg-info/dependency_links.txt
+writing entry points to joint_info.egg-info/entry_points.txt
+writing requirements to joint_info.egg-info/requires.txt
+writing top-level names to joint_info.egg-info/top_level.txt
+reading manifest file 'joint_info.egg-info/SOURCES.txt'
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+
+Installed /BA/workspace/build/joint_info
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-17-09/joint_info/stdout_stderr.log b/workspace/log/build_2025-03-27_16-17-09/joint_info/stdout_stderr.log
new file mode 100644
index 0000000..54dd46c
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/joint_info/stdout_stderr.log
@@ -0,0 +1,17 @@
+running develop
+running egg_info
+writing joint_info.egg-info/PKG-INFO
+writing dependency_links to joint_info.egg-info/dependency_links.txt
+writing entry points to joint_info.egg-info/entry_points.txt
+writing requirements to joint_info.egg-info/requires.txt
+writing top-level names to joint_info.egg-info/top_level.txt
+reading manifest file 'joint_info.egg-info/SOURCES.txt'
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+
+Installed /BA/workspace/build/joint_info
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-17-09/joint_info/streams.log b/workspace/log/build_2025-03-27_16-17-09/joint_info/streams.log
new file mode 100644
index 0000000..1dc2703
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/joint_info/streams.log
@@ -0,0 +1,19 @@
+[1.231s] Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+[1.537s] running develop
+[1.667s] running egg_info
+[1.667s] writing joint_info.egg-info/PKG-INFO
+[1.668s] writing dependency_links to joint_info.egg-info/dependency_links.txt
+[1.669s] writing entry points to joint_info.egg-info/entry_points.txt
+[1.669s] writing requirements to joint_info.egg-info/requires.txt
+[1.670s] writing top-level names to joint_info.egg-info/top_level.txt
+[1.676s] reading manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.682s] writing manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.684s] running build_ext
+[1.685s] Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+[1.688s] Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.689s] Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.690s] Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+[1.692s]
+[1.693s] Installed /BA/workspace/build/joint_info
+[1.693s] running symlink_data
+[1.741s] Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-17-09/logger_all.log b/workspace/log/build_2025-03-27_16-17-09/logger_all.log
new file mode 100644
index 0000000..deefab4
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/logger_all.log
@@ -0,0 +1,238 @@
+[0.093s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install']
+[0.093s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=None, packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.192s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.192s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.193s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.193s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.193s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.193s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.193s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.193s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.193s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.193s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.194s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.194s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.194s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.194s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.194s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.194s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.195s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.195s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.205s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.205s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.205s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.205s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.205s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.205s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.213s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.215s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.216s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.216s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.216s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.216s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.216s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.216s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.231s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.231s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.231s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.232s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_args' from command line to 'None'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target' from command line to 'None'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_cache' from command line to 'False'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_first' from command line to 'False'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_force_configure' from command line to 'False'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'ament_cmake_args' from command line to 'None'
+[0.232s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_cmake_args' from command line to 'None'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.233s] DEBUG:colcon.colcon_core.verb:Building package 'joint_info' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_info', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_info', 'merge_install': False, 'path': '/BA/workspace/src/joint_info', 'symlink_install': True, 'test_result_base': None}
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_args' from command line to 'None'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target' from command line to 'None'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_cache' from command line to 'False'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_first' from command line to 'False'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_force_configure' from command line to 'False'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'ament_cmake_args' from command line to 'None'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_cmake_args' from command line to 'None'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.233s] DEBUG:colcon.colcon_core.verb:Building package 'mock_robot' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/mock_robot', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/mock_robot', 'merge_install': False, 'path': '/BA/workspace/src/mock_robot', 'symlink_install': True, 'test_result_base': None}
+[0.234s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.236s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.237s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.237s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.239s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.239s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.241s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.242s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.243s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.243s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.253s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_info' with build type 'ament_python'
+[0.254s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'ament_prefix_path')
+[0.256s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.ps1'
+[0.260s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.dsv'
+[0.264s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.sh'
+[0.265s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.266s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.278s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/mock_robot' with build type 'ament_python'
+[0.279s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'ament_prefix_path')
+[0.279s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1'
+[0.281s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv'
+[0.283s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh'
+[0.285s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.285s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.553s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.553s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.553s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.813s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_info'
+[0.813s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.813s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.067s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/mock_robot'
+[1.068s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[1.068s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.483s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.487s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+[1.521s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.966s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.967s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.968s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.969s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.971s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.974s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.977s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.980s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.980s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.980s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.981s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.981s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.982s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.983s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.983s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.984s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.984s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.984s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.986s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.987s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.988s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.990s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.991s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.993s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath_develop')
+[1.993s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.ps1'
+[1.995s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.dsv'
+[1.996s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+[1.997s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.sh'
+[1.998s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake module files
+[2.001s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake config files
+[2.009s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib'
+[2.010s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.011s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/pkgconfig/joint_info.pc'
+[2.011s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/python3.10/site-packages'
+[2.012s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath')
+[2.012s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.ps1'
+[2.016s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.dsv'
+[2.020s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.sh'
+[2.023s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.024s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_info)
+[2.024s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.ps1'
+[2.025s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_info/share/joint_info/package.dsv'
+[2.026s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.sh'
+[2.026s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.bash'
+[2.027s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.zsh'
+[2.027s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_info/share/colcon-core/packages/joint_info)
+[2.028s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath_develop')
+[2.028s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1'
+[2.030s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv'
+[2.030s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[2.031s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh'
+[2.032s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake module files
+[2.033s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake config files
+[2.035s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib'
+[2.035s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.035s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/pkgconfig/mock_robot.pc'
+[2.036s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/python3.10/site-packages'
+[2.036s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath')
+[2.036s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1'
+[2.037s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv'
+[2.038s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh'
+[2.039s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.039s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(mock_robot)
+[2.039s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.ps1'
+[2.040s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/mock_robot/share/mock_robot/package.dsv'
+[2.040s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.sh'
+[2.041s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.bash'
+[2.041s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.zsh'
+[2.042s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/mock_robot/share/colcon-core/packages/mock_robot)
+[2.042s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[2.042s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[2.043s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[2.043s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[2.048s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[2.048s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[2.048s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[2.048s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[2.049s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[2.049s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[2.050s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[2.051s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[2.052s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[2.054s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[2.055s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[2.055s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[2.057s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[2.057s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[2.059s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[2.060s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-27_16-17-09/mock_robot/command.log b/workspace/log/build_2025-03-27_16-17-09/mock_robot/command.log
new file mode 100644
index 0000000..fefebe5
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/mock_robot/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-17-09/mock_robot/stderr.log b/workspace/log/build_2025-03-27_16-17-09/mock_robot/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_16-17-09/mock_robot/stdout.log b/workspace/log/build_2025-03-27_16-17-09/mock_robot/stdout.log
new file mode 100644
index 0000000..e177dad
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/mock_robot/stdout.log
@@ -0,0 +1,16 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+Installing mock_robot_2 script to /BA/workspace/install/mock_robot/lib/mock_robot
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-17-09/mock_robot/stdout_stderr.log b/workspace/log/build_2025-03-27_16-17-09/mock_robot/stdout_stderr.log
new file mode 100644
index 0000000..e177dad
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/mock_robot/stdout_stderr.log
@@ -0,0 +1,16 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+Installing mock_robot_2 script to /BA/workspace/install/mock_robot/lib/mock_robot
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-17-09/mock_robot/streams.log b/workspace/log/build_2025-03-27_16-17-09/mock_robot/streams.log
new file mode 100644
index 0000000..839ce23
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-17-09/mock_robot/streams.log
@@ -0,0 +1,18 @@
+[1.242s] Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.565s] running develop
+[1.700s] running egg_info
+[1.701s] writing mock_robot.egg-info/PKG-INFO
+[1.701s] writing dependency_links to mock_robot.egg-info/dependency_links.txt
+[1.703s] writing entry points to mock_robot.egg-info/entry_points.txt
+[1.703s] writing requirements to mock_robot.egg-info/requires.txt
+[1.704s] writing top-level names to mock_robot.egg-info/top_level.txt
+[1.710s] reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.718s] writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.719s] running build_ext
+[1.720s] Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+[1.720s] Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+[1.722s] Installing mock_robot_2 script to /BA/workspace/install/mock_robot/lib/mock_robot
+[1.723s]
+[1.724s] Installed /BA/workspace/build/mock_robot
+[1.725s] running symlink_data
+[1.751s] Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-18-07/events.log b/workspace/log/build_2025-03-27_16-18-07/events.log
new file mode 100644
index 0000000..2128f9f
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/events.log
@@ -0,0 +1,86 @@
+[0.000000] (-) TimerEvent: {}
+[0.001970] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.002250] (joint_info) JobQueued: {'identifier': 'joint_info', 'dependencies': OrderedDict()}
+[0.003060] (mock_robot) JobQueued: {'identifier': 'mock_robot', 'dependencies': OrderedDict()}
+[0.003157] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.014062] (joint_info) JobStarted: {'identifier': 'joint_info'}
+[0.041608] (mock_robot) JobStarted: {'identifier': 'mock_robot'}
+[0.098952] (-) TimerEvent: {}
+[0.200738] (-) TimerEvent: {}
+[0.302958] (-) TimerEvent: {}
+[0.405956] (-) TimerEvent: {}
+[0.506774] (-) TimerEvent: {}
+[0.608189] (-) TimerEvent: {}
+[0.712048] (-) TimerEvent: {}
+[0.812765] (-) TimerEvent: {}
+[0.914720] (-) TimerEvent: {}
+[1.016723] (-) TimerEvent: {}
+[1.120750] (-) TimerEvent: {}
+[1.223728] (-) TimerEvent: {}
+[1.272908] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages', 'COLCON': '1'}, 'shell': False}
+[1.304992] (joint_info) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_info/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_info', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control', 'PWD': '/BA/workspace/build/joint_info', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages', 'COLCON': '1'}, 'shell': False}
+[1.313542] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/mock_robot/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/mock_robot', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages', 'COLCON': '1'}, 'shell': False}
+[1.324685] (-) TimerEvent: {}
+[1.425727] (-) TimerEvent: {}
+[1.529683] (-) TimerEvent: {}
+[1.593720] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.613701] (joint_info) StdoutLine: {'line': b'running develop\n'}
+[1.621157] (mock_robot) StdoutLine: {'line': b'running develop\n'}
+[1.630710] (-) TimerEvent: {}
+[1.731998] (-) TimerEvent: {}
+[1.738233] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.739794] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.742000] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.742416] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.742877] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.743098] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.751042] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.753476] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.756201] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.756603] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.760735] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.761495] (joint_info) StdoutLine: {'line': b'running egg_info\n'}
+[1.762058] (joint_info) StdoutLine: {'line': b'writing joint_info.egg-info/PKG-INFO\n'}
+[1.762806] (joint_info) StdoutLine: {'line': b'writing dependency_links to joint_info.egg-info/dependency_links.txt\n'}
+[1.763500] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.764259] (joint_info) StdoutLine: {'line': b'writing entry points to joint_info.egg-info/entry_points.txt\n'}
+[1.764967] (joint_info) StdoutLine: {'line': b'writing requirements to joint_info.egg-info/requires.txt\n'}
+[1.765683] (joint_info) StdoutLine: {'line': b'writing top-level names to joint_info.egg-info/top_level.txt\n'}
+[1.766133] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.766544] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.767665] (joint_control) StdoutLine: {'line': b'\n'}
+[1.768287] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.768620] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.768995] (mock_robot) StdoutLine: {'line': b'running egg_info\n'}
+[1.769769] (mock_robot) StdoutLine: {'line': b'writing mock_robot.egg-info/PKG-INFO\n'}
+[1.770433] (joint_info) StdoutLine: {'line': b"reading manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.770806] (mock_robot) StdoutLine: {'line': b'writing dependency_links to mock_robot.egg-info/dependency_links.txt\n'}
+[1.771337] (mock_robot) StdoutLine: {'line': b'writing entry points to mock_robot.egg-info/entry_points.txt\n'}
+[1.772045] (mock_robot) StdoutLine: {'line': b'writing requirements to mock_robot.egg-info/requires.txt\n'}
+[1.772339] (mock_robot) StdoutLine: {'line': b'writing top-level names to mock_robot.egg-info/top_level.txt\n'}
+[1.773312] (joint_info) StdoutLine: {'line': b"writing manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.775912] (joint_info) StdoutLine: {'line': b'running build_ext\n'}
+[1.776698] (joint_info) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)\n'}
+[1.778200] (joint_info) StdoutLine: {'line': b'Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.778643] (mock_robot) StdoutLine: {'line': b"reading manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.779589] (joint_info) StdoutLine: {'line': b'Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.780590] (joint_info) StdoutLine: {'line': b'Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.781622] (mock_robot) StdoutLine: {'line': b"writing manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.782672] (joint_info) StdoutLine: {'line': b'\n'}
+[1.783182] (joint_info) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_info\n'}
+[1.783453] (joint_info) StdoutLine: {'line': b'running symlink_data\n'}
+[1.783816] (mock_robot) StdoutLine: {'line': b'running build_ext\n'}
+[1.785904] (mock_robot) StdoutLine: {'line': b'Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)\n'}
+[1.787952] (mock_robot) StdoutLine: {'line': b'Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot\n'}
+[1.791216] (mock_robot) StdoutLine: {'line': b'Installing mock_robot_2 script to /BA/workspace/install/mock_robot/lib/mock_robot\n'}
+[1.792385] (joint_control) CommandEnded: {'returncode': 0}
+[1.793259] (mock_robot) StdoutLine: {'line': b'\n'}
+[1.793826] (mock_robot) StdoutLine: {'line': b'Installed /BA/workspace/build/mock_robot\n'}
+[1.794377] (mock_robot) StdoutLine: {'line': b'running symlink_data\n'}
+[1.824497] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.827242] (joint_info) CommandEnded: {'returncode': 0}
+[1.832724] (-) TimerEvent: {}
+[1.838923] (joint_info) JobEnded: {'identifier': 'joint_info', 'rc': 0}
+[1.840512] (mock_robot) CommandEnded: {'returncode': 0}
+[1.851185] (mock_robot) JobEnded: {'identifier': 'mock_robot', 'rc': 0}
+[1.852813] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-27_16-18-07/joint_control/command.log b/workspace/log/build_2025-03-27_16-18-07/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-18-07/joint_control/stderr.log b/workspace/log/build_2025-03-27_16-18-07/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_16-18-07/joint_control/stdout.log b/workspace/log/build_2025-03-27_16-18-07/joint_control/stdout.log
new file mode 100644
index 0000000..f01e18e
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/joint_control/stdout.log
@@ -0,0 +1,18 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-18-07/joint_control/stdout_stderr.log b/workspace/log/build_2025-03-27_16-18-07/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..f01e18e
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/joint_control/stdout_stderr.log
@@ -0,0 +1,18 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-18-07/joint_control/streams.log b/workspace/log/build_2025-03-27_16-18-07/joint_control/streams.log
new file mode 100644
index 0000000..e2cbffb
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/joint_control/streams.log
@@ -0,0 +1,20 @@
+[1.276s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.595s] running develop
+[1.736s] running egg_info
+[1.738s] writing joint_control.egg-info/PKG-INFO
+[1.739s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.739s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.740s] writing requirements to joint_control.egg-info/requires.txt
+[1.740s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.749s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.751s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.753s] running build_ext
+[1.754s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.758s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.761s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.763s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.763s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.765s]
+[1.765s] Installed /BA/workspace/build/joint_control
+[1.766s] running symlink_data
+[1.789s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-18-07/joint_info/command.log b/workspace/log/build_2025-03-27_16-18-07/joint_info/command.log
new file mode 100644
index 0000000..c26e66f
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/joint_info/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-18-07/joint_info/stderr.log b/workspace/log/build_2025-03-27_16-18-07/joint_info/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_16-18-07/joint_info/stdout.log b/workspace/log/build_2025-03-27_16-18-07/joint_info/stdout.log
new file mode 100644
index 0000000..54dd46c
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/joint_info/stdout.log
@@ -0,0 +1,17 @@
+running develop
+running egg_info
+writing joint_info.egg-info/PKG-INFO
+writing dependency_links to joint_info.egg-info/dependency_links.txt
+writing entry points to joint_info.egg-info/entry_points.txt
+writing requirements to joint_info.egg-info/requires.txt
+writing top-level names to joint_info.egg-info/top_level.txt
+reading manifest file 'joint_info.egg-info/SOURCES.txt'
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+
+Installed /BA/workspace/build/joint_info
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-18-07/joint_info/stdout_stderr.log b/workspace/log/build_2025-03-27_16-18-07/joint_info/stdout_stderr.log
new file mode 100644
index 0000000..54dd46c
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/joint_info/stdout_stderr.log
@@ -0,0 +1,17 @@
+running develop
+running egg_info
+writing joint_info.egg-info/PKG-INFO
+writing dependency_links to joint_info.egg-info/dependency_links.txt
+writing entry points to joint_info.egg-info/entry_points.txt
+writing requirements to joint_info.egg-info/requires.txt
+writing top-level names to joint_info.egg-info/top_level.txt
+reading manifest file 'joint_info.egg-info/SOURCES.txt'
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+
+Installed /BA/workspace/build/joint_info
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-18-07/joint_info/streams.log b/workspace/log/build_2025-03-27_16-18-07/joint_info/streams.log
new file mode 100644
index 0000000..32f33c3
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/joint_info/streams.log
@@ -0,0 +1,19 @@
+[1.293s] Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+[1.599s] running develop
+[1.747s] running egg_info
+[1.748s] writing joint_info.egg-info/PKG-INFO
+[1.749s] writing dependency_links to joint_info.egg-info/dependency_links.txt
+[1.750s] writing entry points to joint_info.egg-info/entry_points.txt
+[1.751s] writing requirements to joint_info.egg-info/requires.txt
+[1.751s] writing top-level names to joint_info.egg-info/top_level.txt
+[1.756s] reading manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.760s] writing manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.762s] running build_ext
+[1.762s] Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+[1.764s] Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.765s] Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.766s] Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+[1.768s]
+[1.769s] Installed /BA/workspace/build/joint_info
+[1.769s] running symlink_data
+[1.813s] Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-18-07/logger_all.log b/workspace/log/build_2025-03-27_16-18-07/logger_all.log
new file mode 100644
index 0000000..95cca79
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/logger_all.log
@@ -0,0 +1,238 @@
+[0.100s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install']
+[0.100s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=None, packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.202s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.202s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.203s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.203s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.203s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.203s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.203s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.203s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.203s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.204s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.223s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.225s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.228s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.228s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.228s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.228s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.228s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.228s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.245s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.246s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_args' from command line to 'None'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target' from command line to 'None'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_cache' from command line to 'False'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_first' from command line to 'False'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_force_configure' from command line to 'False'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'ament_cmake_args' from command line to 'None'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_cmake_args' from command line to 'None'
+[0.246s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.246s] DEBUG:colcon.colcon_core.verb:Building package 'joint_info' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_info', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_info', 'merge_install': False, 'path': '/BA/workspace/src/joint_info', 'symlink_install': True, 'test_result_base': None}
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_args' from command line to 'None'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target' from command line to 'None'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_cache' from command line to 'False'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_first' from command line to 'False'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_force_configure' from command line to 'False'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'ament_cmake_args' from command line to 'None'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_cmake_args' from command line to 'None'
+[0.247s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.247s] DEBUG:colcon.colcon_core.verb:Building package 'mock_robot' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/mock_robot', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/mock_robot', 'merge_install': False, 'path': '/BA/workspace/src/mock_robot', 'symlink_install': True, 'test_result_base': None}
+[0.247s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.250s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.251s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.251s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.253s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.253s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.255s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.256s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.257s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.257s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.265s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_info' with build type 'ament_python'
+[0.265s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'ament_prefix_path')
+[0.266s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.ps1'
+[0.269s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.dsv'
+[0.273s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.sh'
+[0.277s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.277s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.293s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/mock_robot' with build type 'ament_python'
+[0.294s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'ament_prefix_path')
+[0.294s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1'
+[0.296s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv'
+[0.297s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh'
+[0.299s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.300s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.582s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.583s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.584s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.863s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_info'
+[0.863s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.863s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.121s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/mock_robot'
+[1.122s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[1.122s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.533s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.559s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+[1.572s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[2.043s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[2.043s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[2.044s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[2.045s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[2.048s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[2.054s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[2.057s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[2.066s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[2.067s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[2.067s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[2.067s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[2.068s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[2.068s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[2.069s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[2.069s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[2.070s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[2.070s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[2.070s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[2.071s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[2.072s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[2.073s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[2.074s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[2.075s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[2.077s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath_develop')
+[2.077s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.ps1'
+[2.078s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.dsv'
+[2.079s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.sh'
+[2.079s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+[2.079s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake module files
+[2.081s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake config files
+[2.084s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib'
+[2.084s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.084s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/pkgconfig/joint_info.pc'
+[2.085s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/python3.10/site-packages'
+[2.085s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath')
+[2.085s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.ps1'
+[2.085s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.dsv'
+[2.086s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.sh'
+[2.087s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.087s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_info)
+[2.087s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.ps1'
+[2.087s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_info/share/joint_info/package.dsv'
+[2.088s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.sh'
+[2.089s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.bash'
+[2.089s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.zsh'
+[2.089s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_info/share/colcon-core/packages/joint_info)
+[2.090s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath_develop')
+[2.090s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1'
+[2.091s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv'
+[2.092s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh'
+[2.092s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[2.093s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake module files
+[2.094s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake config files
+[2.096s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib'
+[2.097s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.097s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/pkgconfig/mock_robot.pc'
+[2.097s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/python3.10/site-packages'
+[2.097s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath')
+[2.097s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1'
+[2.098s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv'
+[2.098s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh'
+[2.099s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.099s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(mock_robot)
+[2.099s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.ps1'
+[2.100s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/mock_robot/share/mock_robot/package.dsv'
+[2.101s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.sh'
+[2.101s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.bash'
+[2.101s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.zsh'
+[2.102s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/mock_robot/share/colcon-core/packages/mock_robot)
+[2.102s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[2.103s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[2.103s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[2.103s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[2.108s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[2.108s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[2.108s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[2.109s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[2.110s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[2.110s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[2.110s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[2.112s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[2.114s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[2.115s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[2.116s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[2.117s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[2.119s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[2.119s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[2.121s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[2.122s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-27_16-18-07/mock_robot/command.log b/workspace/log/build_2025-03-27_16-18-07/mock_robot/command.log
new file mode 100644
index 0000000..fefebe5
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/mock_robot/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-27_16-18-07/mock_robot/stderr.log b/workspace/log/build_2025-03-27_16-18-07/mock_robot/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-27_16-18-07/mock_robot/stdout.log b/workspace/log/build_2025-03-27_16-18-07/mock_robot/stdout.log
new file mode 100644
index 0000000..e177dad
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/mock_robot/stdout.log
@@ -0,0 +1,16 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+Installing mock_robot_2 script to /BA/workspace/install/mock_robot/lib/mock_robot
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-18-07/mock_robot/stdout_stderr.log b/workspace/log/build_2025-03-27_16-18-07/mock_robot/stdout_stderr.log
new file mode 100644
index 0000000..e177dad
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/mock_robot/stdout_stderr.log
@@ -0,0 +1,16 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+Installing mock_robot_2 script to /BA/workspace/install/mock_robot/lib/mock_robot
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
diff --git a/workspace/log/build_2025-03-27_16-18-07/mock_robot/streams.log b/workspace/log/build_2025-03-27_16-18-07/mock_robot/streams.log
new file mode 100644
index 0000000..ed8128e
--- /dev/null
+++ b/workspace/log/build_2025-03-27_16-18-07/mock_robot/streams.log
@@ -0,0 +1,18 @@
+[1.278s] Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.581s] running develop
+[1.727s] running egg_info
+[1.728s] writing mock_robot.egg-info/PKG-INFO
+[1.729s] writing dependency_links to mock_robot.egg-info/dependency_links.txt
+[1.730s] writing entry points to mock_robot.egg-info/entry_points.txt
+[1.730s] writing requirements to mock_robot.egg-info/requires.txt
+[1.730s] writing top-level names to mock_robot.egg-info/top_level.txt
+[1.737s] reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.740s] writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.742s] running build_ext
+[1.744s] Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+[1.746s] Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+[1.750s] Installing mock_robot_2 script to /BA/workspace/install/mock_robot/lib/mock_robot
+[1.751s]
+[1.752s] Installed /BA/workspace/build/mock_robot
+[1.754s] running symlink_data
+[1.799s] Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-31_11-54-33/events.log b/workspace/log/build_2025-03-31_11-54-33/events.log
new file mode 100644
index 0000000..be1681a
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-54-33/events.log
@@ -0,0 +1,6 @@
+[0.000000] (-) TimerEvent: {}
+[0.000639] (-) JobUnselected: {'identifier': 'joint_control'}
+[0.000738] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.000802] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.000872] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.000938] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-31_11-54-33/logger_all.log b/workspace/log/build_2025-03-31_11-54-33/logger_all.log
new file mode 100644
index 0000000..ae36ff9
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-54-33/logger_all.log
@@ -0,0 +1,121 @@
+[0.160s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'painting_tobot_control', '--symlink-install']
+[0.161s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['painting_tobot_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.319s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.320s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.320s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.320s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.320s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.320s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.320s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.320s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.320s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.321s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.321s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.321s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.321s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.322s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.322s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.322s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.322s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.322s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.335s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.335s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.335s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.335s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.335s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.335s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.335s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.335s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.340s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.340s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.340s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.340s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.340s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.340s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.340s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.347s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.347s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.347s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.352s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.354s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.354s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.354s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.354s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.356s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.356s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.357s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.357s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.357s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.357s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.357s] WARNING:colcon.colcon_core.package_selection:ignoring unknown package 'painting_tobot_control' in --packages-select
+[0.393s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_control' in 'src/joint_control'
+[0.393s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.393s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.393s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.393s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.396s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.397s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[0.397s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[0.397s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[0.397s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[0.407s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[0.408s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[0.408s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[0.408s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[0.409s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[0.410s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[0.413s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.413s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[0.415s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[0.416s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[0.419s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[0.425s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[0.426s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[0.428s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[0.429s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[0.431s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[0.431s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-31_11-54-43/events.log b/workspace/log/build_2025-03-31_11-54-43/events.log
new file mode 100644
index 0000000..e68090c
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-54-43/events.log
@@ -0,0 +1,43 @@
+[0.000000] (-) TimerEvent: {}
+[0.001824] (-) JobUnselected: {'identifier': 'joint_control'}
+[0.002135] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002191] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.003177] (painting_robot_control) JobQueued: {'identifier': 'painting_robot_control', 'dependencies': OrderedDict()}
+[0.003269] (painting_robot_control) JobStarted: {'identifier': 'painting_robot_control'}
+[0.097514] (-) TimerEvent: {}
+[0.202287] (-) TimerEvent: {}
+[0.303960] (-) TimerEvent: {}
+[0.405506] (-) TimerEvent: {}
+[0.507470] (-) TimerEvent: {}
+[0.610505] (-) TimerEvent: {}
+[0.716015] (-) TimerEvent: {}
+[0.787782] (painting_robot_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/painting_robot_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/painting_robot_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/painting_robot_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.816237] (-) TimerEvent: {}
+[0.919454] (-) TimerEvent: {}
+[1.022454] (-) TimerEvent: {}
+[1.127298] (-) TimerEvent: {}
+[1.131712] (painting_robot_control) StdoutLine: {'line': b'running develop\n'}
+[1.228279] (-) TimerEvent: {}
+[1.233848] (painting_robot_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.234819] (painting_robot_control) StdoutLine: {'line': b'creating painting_robot_control.egg-info\n'}
+[1.235400] (painting_robot_control) StdoutLine: {'line': b'writing painting_robot_control.egg-info/PKG-INFO\n'}
+[1.236715] (painting_robot_control) StdoutLine: {'line': b'writing dependency_links to painting_robot_control.egg-info/dependency_links.txt\n'}
+[1.237248] (painting_robot_control) StdoutLine: {'line': b'writing entry points to painting_robot_control.egg-info/entry_points.txt\n'}
+[1.238028] (painting_robot_control) StdoutLine: {'line': b'writing requirements to painting_robot_control.egg-info/requires.txt\n'}
+[1.238646] (painting_robot_control) StdoutLine: {'line': b'writing top-level names to painting_robot_control.egg-info/top_level.txt\n'}
+[1.239094] (painting_robot_control) StdoutLine: {'line': b"writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'\n"}
+[1.242000] (painting_robot_control) StdoutLine: {'line': b"reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'\n"}
+[1.243385] (painting_robot_control) StdoutLine: {'line': b"writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'\n"}
+[1.244878] (painting_robot_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.245510] (painting_robot_control) StdoutLine: {'line': b'Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)\n'}
+[1.247118] (painting_robot_control) StdoutLine: {'line': b'\n'}
+[1.247704] (painting_robot_control) StdoutLine: {'line': b'Installed /BA/workspace/build/painting_robot_control\n'}
+[1.247846] (painting_robot_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.248197] (painting_robot_control) StdoutLine: {'line': b'creating /BA/workspace/install/painting_robot_control/share/ament_index\n'}
+[1.248525] (painting_robot_control) StdoutLine: {'line': b'creating /BA/workspace/install/painting_robot_control/share/ament_index/resource_index\n'}
+[1.248777] (painting_robot_control) StdoutLine: {'line': b'creating /BA/workspace/install/painting_robot_control/share/ament_index/resource_index/packages\n'}
+[1.249457] (painting_robot_control) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/painting_robot_control/resource/painting_robot_control -> /BA/workspace/install/painting_robot_control/share/ament_index/resource_index/packages\n'}
+[1.249743] (painting_robot_control) StdoutLine: {'line': b'symbolically linking /BA/workspace/build/painting_robot_control/package.xml -> /BA/workspace/install/painting_robot_control/share/painting_robot_control\n'}
+[1.268512] (painting_robot_control) CommandEnded: {'returncode': 0}
+[1.297752] (painting_robot_control) JobEnded: {'identifier': 'painting_robot_control', 'rc': 0}
+[1.299289] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-31_11-54-43/logger_all.log b/workspace/log/build_2025-03-31_11-54-43/logger_all.log
new file mode 100644
index 0000000..13b3f81
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-54-43/logger_all.log
@@ -0,0 +1,163 @@
+[0.095s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'painting_robot_control', '--symlink-install']
+[0.096s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['painting_robot_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.195s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.196s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.196s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.196s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.196s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.196s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.196s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.197s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.197s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.198s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.198s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.198s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.198s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.198s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.205s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.205s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.205s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.206s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.207s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.208s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.210s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.216s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.218s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.219s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.220s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.220s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.220s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.222s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.222s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.222s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.222s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.222s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.222s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.238s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_control' in 'src/joint_control'
+[0.238s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.238s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.239s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_args' from command line to 'None'
+[0.239s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_target' from command line to 'None'
+[0.239s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.239s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.239s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.239s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.239s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.239s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.239s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.239s] DEBUG:colcon.colcon_core.verb:Building package 'painting_robot_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/painting_robot_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/painting_robot_control', 'merge_install': False, 'path': '/BA/workspace/src/painting_robot_control', 'symlink_install': True, 'test_result_base': None}
+[0.239s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.242s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.243s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/painting_robot_control' with build type 'ament_python'
+[0.244s] Level 1:colcon.colcon_core.shell:create_environment_hook('painting_robot_control', 'ament_prefix_path')
+[0.245s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.246s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.ps1'
+[0.249s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.dsv'
+[0.250s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.sh'
+[0.252s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.252s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.547s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/painting_robot_control'
+[0.548s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.548s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.042s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/painting_robot_control': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+[1.512s] Level 1:colcon.colcon_core.shell:create_environment_hook('painting_robot_control', 'pythonpath_develop')
+[1.513s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.ps1'
+[1.513s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/painting_robot_control' returned '0': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+[1.515s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.dsv'
+[1.516s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.sh'
+[1.520s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control' for CMake module files
+[1.521s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control' for CMake config files
+[1.523s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/lib'
+[1.524s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/bin'
+[1.524s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/lib/pkgconfig/painting_robot_control.pc'
+[1.524s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages'
+[1.524s] Level 1:colcon.colcon_core.shell:create_environment_hook('painting_robot_control', 'pythonpath')
+[1.524s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.ps1'
+[1.525s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.dsv'
+[1.526s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.sh'
+[1.534s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/bin'
+[1.535s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(painting_robot_control)
+[1.535s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.ps1'
+[1.536s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.dsv'
+[1.538s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.sh'
+[1.539s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.bash'
+[1.540s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.zsh'
+[1.541s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/painting_robot_control/share/colcon-core/packages/painting_robot_control)
+[1.542s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.542s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.542s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.542s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.547s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.547s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.547s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.548s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.549s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.549s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.549s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.550s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.552s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.554s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.555s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.555s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.557s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.557s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.559s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.559s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/command.log b/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/command.log
new file mode 100644
index 0000000..7aac0a8
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/painting_robot_control': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/painting_robot_control' returned '0': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/stderr.log b/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/stdout.log b/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/stdout.log
new file mode 100644
index 0000000..5746724
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/stdout.log
@@ -0,0 +1,21 @@
+running develop
+running egg_info
+creating painting_robot_control.egg-info
+writing painting_robot_control.egg-info/PKG-INFO
+writing dependency_links to painting_robot_control.egg-info/dependency_links.txt
+writing entry points to painting_robot_control.egg-info/entry_points.txt
+writing requirements to painting_robot_control.egg-info/requires.txt
+writing top-level names to painting_robot_control.egg-info/top_level.txt
+writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)
+
+Installed /BA/workspace/build/painting_robot_control
+running symlink_data
+creating /BA/workspace/install/painting_robot_control/share/ament_index
+creating /BA/workspace/install/painting_robot_control/share/ament_index/resource_index
+creating /BA/workspace/install/painting_robot_control/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/painting_robot_control/resource/painting_robot_control -> /BA/workspace/install/painting_robot_control/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/painting_robot_control/package.xml -> /BA/workspace/install/painting_robot_control/share/painting_robot_control
diff --git a/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/stdout_stderr.log b/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/stdout_stderr.log
new file mode 100644
index 0000000..5746724
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/stdout_stderr.log
@@ -0,0 +1,21 @@
+running develop
+running egg_info
+creating painting_robot_control.egg-info
+writing painting_robot_control.egg-info/PKG-INFO
+writing dependency_links to painting_robot_control.egg-info/dependency_links.txt
+writing entry points to painting_robot_control.egg-info/entry_points.txt
+writing requirements to painting_robot_control.egg-info/requires.txt
+writing top-level names to painting_robot_control.egg-info/top_level.txt
+writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)
+
+Installed /BA/workspace/build/painting_robot_control
+running symlink_data
+creating /BA/workspace/install/painting_robot_control/share/ament_index
+creating /BA/workspace/install/painting_robot_control/share/ament_index/resource_index
+creating /BA/workspace/install/painting_robot_control/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/painting_robot_control/resource/painting_robot_control -> /BA/workspace/install/painting_robot_control/share/ament_index/resource_index/packages
+symbolically linking /BA/workspace/build/painting_robot_control/package.xml -> /BA/workspace/install/painting_robot_control/share/painting_robot_control
diff --git a/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/streams.log b/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/streams.log
new file mode 100644
index 0000000..43802c5
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-54-43/painting_robot_control/streams.log
@@ -0,0 +1,23 @@
+[0.794s] Invoking command in '/BA/workspace/build/painting_robot_control': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+[1.129s] running develop
+[1.231s] running egg_info
+[1.232s] creating painting_robot_control.egg-info
+[1.233s] writing painting_robot_control.egg-info/PKG-INFO
+[1.234s] writing dependency_links to painting_robot_control.egg-info/dependency_links.txt
+[1.234s] writing entry points to painting_robot_control.egg-info/entry_points.txt
+[1.235s] writing requirements to painting_robot_control.egg-info/requires.txt
+[1.235s] writing top-level names to painting_robot_control.egg-info/top_level.txt
+[1.236s] writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+[1.239s] reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+[1.240s] writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+[1.242s] running build_ext
+[1.242s] Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)
+[1.244s]
+[1.244s] Installed /BA/workspace/build/painting_robot_control
+[1.245s] running symlink_data
+[1.245s] creating /BA/workspace/install/painting_robot_control/share/ament_index
+[1.245s] creating /BA/workspace/install/painting_robot_control/share/ament_index/resource_index
+[1.246s] creating /BA/workspace/install/painting_robot_control/share/ament_index/resource_index/packages
+[1.246s] symbolically linking /BA/workspace/build/painting_robot_control/resource/painting_robot_control -> /BA/workspace/install/painting_robot_control/share/ament_index/resource_index/packages
+[1.250s] symbolically linking /BA/workspace/build/painting_robot_control/package.xml -> /BA/workspace/install/painting_robot_control/share/painting_robot_control
+[1.266s] Invoked command in '/BA/workspace/build/painting_robot_control' returned '0': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-31_11-55-49/events.log b/workspace/log/build_2025-03-31_11-55-49/events.log
new file mode 100644
index 0000000..f5adc95
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-55-49/events.log
@@ -0,0 +1,35 @@
+[0.000000] (-) TimerEvent: {}
+[0.001559] (-) JobUnselected: {'identifier': 'joint_control'}
+[0.001757] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002181] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.002232] (painting_robot_control) JobQueued: {'identifier': 'painting_robot_control', 'dependencies': OrderedDict()}
+[0.002508] (painting_robot_control) JobStarted: {'identifier': 'painting_robot_control'}
+[0.098528] (-) TimerEvent: {}
+[0.200513] (-) TimerEvent: {}
+[0.304503] (-) TimerEvent: {}
+[0.406339] (-) TimerEvent: {}
+[0.507722] (-) TimerEvent: {}
+[0.611285] (-) TimerEvent: {}
+[0.659088] (painting_robot_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/painting_robot_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/painting_robot_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/painting_robot_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.712274] (-) TimerEvent: {}
+[0.816279] (-) TimerEvent: {}
+[0.918495] (-) TimerEvent: {}
+[0.921945] (painting_robot_control) StdoutLine: {'line': b'running develop\n'}
+[1.019306] (painting_robot_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.020641] (-) TimerEvent: {}
+[1.020854] (painting_robot_control) StdoutLine: {'line': b'writing painting_robot_control.egg-info/PKG-INFO\n'}
+[1.021491] (painting_robot_control) StdoutLine: {'line': b'writing dependency_links to painting_robot_control.egg-info/dependency_links.txt\n'}
+[1.021900] (painting_robot_control) StdoutLine: {'line': b'writing entry points to painting_robot_control.egg-info/entry_points.txt\n'}
+[1.022386] (painting_robot_control) StdoutLine: {'line': b'writing requirements to painting_robot_control.egg-info/requires.txt\n'}
+[1.022765] (painting_robot_control) StdoutLine: {'line': b'writing top-level names to painting_robot_control.egg-info/top_level.txt\n'}
+[1.025335] (painting_robot_control) StdoutLine: {'line': b"reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'\n"}
+[1.027162] (painting_robot_control) StdoutLine: {'line': b"writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'\n"}
+[1.028912] (painting_robot_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.029250] (painting_robot_control) StdoutLine: {'line': b'Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)\n'}
+[1.030432] (painting_robot_control) StdoutLine: {'line': b'Installing painting_robot_controller script to /BA/workspace/install/painting_robot_control/lib/painting_robot_control\n'}
+[1.031792] (painting_robot_control) StdoutLine: {'line': b'\n'}
+[1.032166] (painting_robot_control) StdoutLine: {'line': b'Installed /BA/workspace/build/painting_robot_control\n'}
+[1.032548] (painting_robot_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.050738] (painting_robot_control) CommandEnded: {'returncode': 0}
+[1.075227] (painting_robot_control) JobEnded: {'identifier': 'painting_robot_control', 'rc': 0}
+[1.076541] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-31_11-55-49/logger_all.log b/workspace/log/build_2025-03-31_11-55-49/logger_all.log
new file mode 100644
index 0000000..12ae624
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-55-49/logger_all.log
@@ -0,0 +1,163 @@
+[0.101s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'painting_robot_control', '--symlink-install']
+[0.102s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['painting_robot_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.213s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.214s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.214s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.215s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.215s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.215s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.215s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.215s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.215s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.216s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.229s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.237s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.239s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.241s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.242s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.242s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.242s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.242s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.242s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.242s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.242s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.260s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_control' in 'src/joint_control'
+[0.260s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.260s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.260s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_args' from command line to 'None'
+[0.260s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_target' from command line to 'None'
+[0.260s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.260s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.261s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.261s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.261s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.261s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.261s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.261s] DEBUG:colcon.colcon_core.verb:Building package 'painting_robot_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/painting_robot_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/painting_robot_control', 'merge_install': False, 'path': '/BA/workspace/src/painting_robot_control', 'symlink_install': True, 'test_result_base': None}
+[0.261s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.264s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.265s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/painting_robot_control' with build type 'ament_python'
+[0.265s] Level 1:colcon.colcon_core.shell:create_environment_hook('painting_robot_control', 'ament_prefix_path')
+[0.267s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.267s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.ps1'
+[0.269s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.dsv'
+[0.270s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.sh'
+[0.271s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.271s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.555s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/painting_robot_control'
+[0.555s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.555s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.938s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/painting_robot_control': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+[1.316s] Level 1:colcon.colcon_core.shell:create_environment_hook('painting_robot_control', 'pythonpath_develop')
+[1.316s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.ps1'
+[1.317s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/painting_robot_control' returned '0': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+[1.317s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.dsv'
+[1.318s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.sh'
+[1.320s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control' for CMake module files
+[1.322s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control' for CMake config files
+[1.326s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/lib'
+[1.326s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/bin'
+[1.326s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/lib/pkgconfig/painting_robot_control.pc'
+[1.326s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages'
+[1.326s] Level 1:colcon.colcon_core.shell:create_environment_hook('painting_robot_control', 'pythonpath')
+[1.327s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.ps1'
+[1.327s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.dsv'
+[1.328s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.sh'
+[1.335s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/bin'
+[1.335s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(painting_robot_control)
+[1.336s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.ps1'
+[1.337s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.dsv'
+[1.337s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.sh'
+[1.338s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.bash'
+[1.339s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.zsh'
+[1.340s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/painting_robot_control/share/colcon-core/packages/painting_robot_control)
+[1.341s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.341s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.341s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.341s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.346s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.346s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.346s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.346s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.347s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.347s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.348s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.348s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.350s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.352s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.352s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.353s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.355s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.355s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.357s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.357s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/command.log b/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/command.log
new file mode 100644
index 0000000..7aac0a8
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/painting_robot_control': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/painting_robot_control' returned '0': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/stderr.log b/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/stdout.log b/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/stdout.log
new file mode 100644
index 0000000..d1cb5fb
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/stdout.log
@@ -0,0 +1,15 @@
+running develop
+running egg_info
+writing painting_robot_control.egg-info/PKG-INFO
+writing dependency_links to painting_robot_control.egg-info/dependency_links.txt
+writing entry points to painting_robot_control.egg-info/entry_points.txt
+writing requirements to painting_robot_control.egg-info/requires.txt
+writing top-level names to painting_robot_control.egg-info/top_level.txt
+reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)
+Installing painting_robot_controller script to /BA/workspace/install/painting_robot_control/lib/painting_robot_control
+
+Installed /BA/workspace/build/painting_robot_control
+running symlink_data
diff --git a/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/stdout_stderr.log b/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/stdout_stderr.log
new file mode 100644
index 0000000..d1cb5fb
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/stdout_stderr.log
@@ -0,0 +1,15 @@
+running develop
+running egg_info
+writing painting_robot_control.egg-info/PKG-INFO
+writing dependency_links to painting_robot_control.egg-info/dependency_links.txt
+writing entry points to painting_robot_control.egg-info/entry_points.txt
+writing requirements to painting_robot_control.egg-info/requires.txt
+writing top-level names to painting_robot_control.egg-info/top_level.txt
+reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)
+Installing painting_robot_controller script to /BA/workspace/install/painting_robot_control/lib/painting_robot_control
+
+Installed /BA/workspace/build/painting_robot_control
+running symlink_data
diff --git a/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/streams.log b/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/streams.log
new file mode 100644
index 0000000..5e26f73
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-55-49/painting_robot_control/streams.log
@@ -0,0 +1,17 @@
+[0.670s] Invoking command in '/BA/workspace/build/painting_robot_control': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+[0.920s] running develop
+[1.018s] running egg_info
+[1.019s] writing painting_robot_control.egg-info/PKG-INFO
+[1.019s] writing dependency_links to painting_robot_control.egg-info/dependency_links.txt
+[1.020s] writing entry points to painting_robot_control.egg-info/entry_points.txt
+[1.020s] writing requirements to painting_robot_control.egg-info/requires.txt
+[1.020s] writing top-level names to painting_robot_control.egg-info/top_level.txt
+[1.023s] reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+[1.025s] writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+[1.027s] running build_ext
+[1.027s] Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)
+[1.028s] Installing painting_robot_controller script to /BA/workspace/install/painting_robot_control/lib/painting_robot_control
+[1.029s]
+[1.030s] Installed /BA/workspace/build/painting_robot_control
+[1.030s] running symlink_data
+[1.049s] Invoked command in '/BA/workspace/build/painting_robot_control' returned '0': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-31_11-56-00/events.log b/workspace/log/build_2025-03-31_11-56-00/events.log
new file mode 100644
index 0000000..44e5483
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-56-00/events.log
@@ -0,0 +1,35 @@
+[0.000000] (-) TimerEvent: {}
+[0.002296] (-) JobUnselected: {'identifier': 'joint_control'}
+[0.002773] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.003621] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.003706] (painting_robot_control) JobQueued: {'identifier': 'painting_robot_control', 'dependencies': OrderedDict()}
+[0.003823] (painting_robot_control) JobStarted: {'identifier': 'painting_robot_control'}
+[0.098062] (-) TimerEvent: {}
+[0.205963] (-) TimerEvent: {}
+[0.308731] (-) TimerEvent: {}
+[0.412103] (-) TimerEvent: {}
+[0.515939] (-) TimerEvent: {}
+[0.620935] (-) TimerEvent: {}
+[0.700741] (painting_robot_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/painting_robot_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/painting_robot_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/painting_robot_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.722889] (-) TimerEvent: {}
+[0.823930] (-) TimerEvent: {}
+[0.927930] (-) TimerEvent: {}
+[0.964539] (painting_robot_control) StdoutLine: {'line': b'running develop\n'}
+[1.028929] (-) TimerEvent: {}
+[1.065569] (painting_robot_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.066202] (painting_robot_control) StdoutLine: {'line': b'writing painting_robot_control.egg-info/PKG-INFO\n'}
+[1.067060] (painting_robot_control) StdoutLine: {'line': b'writing dependency_links to painting_robot_control.egg-info/dependency_links.txt\n'}
+[1.067515] (painting_robot_control) StdoutLine: {'line': b'writing entry points to painting_robot_control.egg-info/entry_points.txt\n'}
+[1.068063] (painting_robot_control) StdoutLine: {'line': b'writing requirements to painting_robot_control.egg-info/requires.txt\n'}
+[1.068439] (painting_robot_control) StdoutLine: {'line': b'writing top-level names to painting_robot_control.egg-info/top_level.txt\n'}
+[1.070981] (painting_robot_control) StdoutLine: {'line': b"reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'\n"}
+[1.073223] (painting_robot_control) StdoutLine: {'line': b"writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'\n"}
+[1.074678] (painting_robot_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.075046] (painting_robot_control) StdoutLine: {'line': b'Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)\n'}
+[1.076164] (painting_robot_control) StdoutLine: {'line': b'Installing painting_robot_controller script to /BA/workspace/install/painting_robot_control/lib/painting_robot_control\n'}
+[1.077383] (painting_robot_control) StdoutLine: {'line': b'\n'}
+[1.077770] (painting_robot_control) StdoutLine: {'line': b'Installed /BA/workspace/build/painting_robot_control\n'}
+[1.078170] (painting_robot_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.097669] (painting_robot_control) CommandEnded: {'returncode': 0}
+[1.122217] (painting_robot_control) JobEnded: {'identifier': 'painting_robot_control', 'rc': 0}
+[1.125265] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-03-31_11-56-00/logger_all.log b/workspace/log/build_2025-03-31_11-56-00/logger_all.log
new file mode 100644
index 0000000..4b7e4c1
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-56-00/logger_all.log
@@ -0,0 +1,163 @@
+[0.096s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'painting_robot_control', '--symlink-install']
+[0.097s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['painting_robot_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.200s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.200s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.201s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.201s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.201s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.201s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.201s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.201s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.201s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.203s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.215s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.220s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.220s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.228s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.234s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.237s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.240s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.240s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.241s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.242s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.242s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.242s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.242s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.242s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.242s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.265s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_control' in 'src/joint_control'
+[0.265s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.265s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_args' from command line to 'None'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_target' from command line to 'None'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.266s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.266s] DEBUG:colcon.colcon_core.verb:Building package 'painting_robot_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/painting_robot_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/painting_robot_control', 'merge_install': False, 'path': '/BA/workspace/src/painting_robot_control', 'symlink_install': True, 'test_result_base': None}
+[0.267s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.270s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.271s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/painting_robot_control' with build type 'ament_python'
+[0.271s] Level 1:colcon.colcon_core.shell:create_environment_hook('painting_robot_control', 'ament_prefix_path')
+[0.273s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.274s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.ps1'
+[0.276s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.dsv'
+[0.277s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.sh'
+[0.278s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.278s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.585s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/painting_robot_control'
+[0.585s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.585s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.986s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/painting_robot_control': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+[1.369s] Level 1:colcon.colcon_core.shell:create_environment_hook('painting_robot_control', 'pythonpath_develop')
+[1.369s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.ps1'
+[1.370s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/painting_robot_control' returned '0': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+[1.371s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.dsv'
+[1.371s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.sh'
+[1.373s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control' for CMake module files
+[1.375s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control' for CMake config files
+[1.377s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/lib'
+[1.377s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/bin'
+[1.377s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/lib/pkgconfig/painting_robot_control.pc'
+[1.377s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages'
+[1.378s] Level 1:colcon.colcon_core.shell:create_environment_hook('painting_robot_control', 'pythonpath')
+[1.378s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.ps1'
+[1.378s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.dsv'
+[1.380s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.sh'
+[1.388s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/bin'
+[1.388s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(painting_robot_control)
+[1.389s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.ps1'
+[1.390s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.dsv'
+[1.390s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.sh'
+[1.391s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.bash'
+[1.392s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.zsh'
+[1.393s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/painting_robot_control/share/colcon-core/packages/painting_robot_control)
+[1.394s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.394s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.394s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.395s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.401s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.401s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.401s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.402s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.403s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.404s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.404s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.405s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.407s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.410s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.411s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.411s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.414s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.415s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.417s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.418s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/command.log b/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/command.log
new file mode 100644
index 0000000..7aac0a8
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/painting_robot_control': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/painting_robot_control' returned '0': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/stderr.log b/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/stdout.log b/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/stdout.log
new file mode 100644
index 0000000..d1cb5fb
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/stdout.log
@@ -0,0 +1,15 @@
+running develop
+running egg_info
+writing painting_robot_control.egg-info/PKG-INFO
+writing dependency_links to painting_robot_control.egg-info/dependency_links.txt
+writing entry points to painting_robot_control.egg-info/entry_points.txt
+writing requirements to painting_robot_control.egg-info/requires.txt
+writing top-level names to painting_robot_control.egg-info/top_level.txt
+reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)
+Installing painting_robot_controller script to /BA/workspace/install/painting_robot_control/lib/painting_robot_control
+
+Installed /BA/workspace/build/painting_robot_control
+running symlink_data
diff --git a/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/stdout_stderr.log b/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/stdout_stderr.log
new file mode 100644
index 0000000..d1cb5fb
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/stdout_stderr.log
@@ -0,0 +1,15 @@
+running develop
+running egg_info
+writing painting_robot_control.egg-info/PKG-INFO
+writing dependency_links to painting_robot_control.egg-info/dependency_links.txt
+writing entry points to painting_robot_control.egg-info/entry_points.txt
+writing requirements to painting_robot_control.egg-info/requires.txt
+writing top-level names to painting_robot_control.egg-info/top_level.txt
+reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)
+Installing painting_robot_controller script to /BA/workspace/install/painting_robot_control/lib/painting_robot_control
+
+Installed /BA/workspace/build/painting_robot_control
+running symlink_data
diff --git a/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/streams.log b/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/streams.log
new file mode 100644
index 0000000..9558a01
--- /dev/null
+++ b/workspace/log/build_2025-03-31_11-56-00/painting_robot_control/streams.log
@@ -0,0 +1,17 @@
+[0.710s] Invoking command in '/BA/workspace/build/painting_robot_control': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+[0.963s] running develop
+[1.062s] running egg_info
+[1.063s] writing painting_robot_control.egg-info/PKG-INFO
+[1.063s] writing dependency_links to painting_robot_control.egg-info/dependency_links.txt
+[1.064s] writing entry points to painting_robot_control.egg-info/entry_points.txt
+[1.064s] writing requirements to painting_robot_control.egg-info/requires.txt
+[1.065s] writing top-level names to painting_robot_control.egg-info/top_level.txt
+[1.067s] reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+[1.070s] writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+[1.071s] running build_ext
+[1.071s] Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)
+[1.073s] Installing painting_robot_controller script to /BA/workspace/install/painting_robot_control/lib/painting_robot_control
+[1.074s]
+[1.074s] Installed /BA/workspace/build/painting_robot_control
+[1.075s] running symlink_data
+[1.094s] Invoked command in '/BA/workspace/build/painting_robot_control' returned '0': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-04_10-02-25/events.log b/workspace/log/build_2025-04-04_10-02-25/events.log
new file mode 100644
index 0000000..b5b1960
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-02-25/events.log
@@ -0,0 +1,39 @@
+[0.000000] (-) TimerEvent: {}
+[0.002568] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002926] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.003912] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.003958] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.004073] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.098134] (-) TimerEvent: {}
+[0.200130] (-) TimerEvent: {}
+[0.301017] (-) TimerEvent: {}
+[0.404026] (-) TimerEvent: {}
+[0.507984] (-) TimerEvent: {}
+[0.612177] (-) TimerEvent: {}
+[0.712899] (-) TimerEvent: {}
+[0.769639] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.813883] (-) TimerEvent: {}
+[0.914890] (-) TimerEvent: {}
+[1.019889] (-) TimerEvent: {}
+[1.032193] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.116553] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.118196] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.118673] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.119549] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.119983] (-) TimerEvent: {}
+[1.120359] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.120778] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.124341] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.126308] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.128164] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.128762] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.130137] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.131538] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.134252] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.135468] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.136690] (joint_control) StdoutLine: {'line': b'\n'}
+[1.136941] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.137274] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.156565] (joint_control) CommandEnded: {'returncode': 0}
+[1.184556] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.186682] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-04_10-02-25/joint_control/command.log b/workspace/log/build_2025-04-04_10-02-25/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-02-25/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-04_10-02-25/joint_control/stderr.log b/workspace/log/build_2025-04-04_10-02-25/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-04_10-02-25/joint_control/stdout.log b/workspace/log/build_2025-04-04_10-02-25/joint_control/stdout.log
new file mode 100644
index 0000000..f01e18e
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-02-25/joint_control/stdout.log
@@ -0,0 +1,18 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-04_10-02-25/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-04_10-02-25/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..f01e18e
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-02-25/joint_control/stdout_stderr.log
@@ -0,0 +1,18 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-04_10-02-25/joint_control/streams.log b/workspace/log/build_2025-04-04_10-02-25/joint_control/streams.log
new file mode 100644
index 0000000..7478650
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-02-25/joint_control/streams.log
@@ -0,0 +1,20 @@
+[0.774s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.028s] running develop
+[1.114s] running egg_info
+[1.114s] writing joint_control.egg-info/PKG-INFO
+[1.115s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.116s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.117s] writing requirements to joint_control.egg-info/requires.txt
+[1.117s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.120s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.124s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.125s] running build_ext
+[1.125s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.126s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.128s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.130s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.132s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.133s]
+[1.133s] Installed /BA/workspace/build/joint_control
+[1.133s] running symlink_data
+[1.153s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-04_10-02-25/logger_all.log b/workspace/log/build_2025-04-04_10-02-25/logger_all.log
new file mode 100644
index 0000000..5fab026
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-02-25/logger_all.log
@@ -0,0 +1,163 @@
+[0.141s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.142s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.292s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.293s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.293s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.293s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.294s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.294s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.294s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.294s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.294s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.294s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.294s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.294s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.308s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.308s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.308s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.308s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.308s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.308s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.310s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.310s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.310s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.311s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.311s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.311s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.311s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.311s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.311s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.311s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.311s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.312s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.312s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.312s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.313s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.313s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.313s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.315s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.315s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.315s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.315s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.315s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.315s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.322s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.323s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.323s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.323s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.323s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.324s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.324s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.324s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.324s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.324s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.325s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.326s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.326s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.326s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.326s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.327s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.327s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.327s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.327s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.327s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.328s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.330s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.330s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.330s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.330s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.330s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.330s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.350s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.350s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.350s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.350s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.350s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.350s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.350s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.350s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.350s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.350s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.350s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.351s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.351s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.351s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.354s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.354s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.355s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.357s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.358s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.360s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.361s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.362s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.362s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.665s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.666s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.666s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.134s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.512s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.512s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.512s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.514s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.515s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.521s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.525s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.529s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.530s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.530s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.530s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.530s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.530s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.532s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.533s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.534s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.534s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.534s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.535s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.536s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.537s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.538s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.539s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.540s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.540s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.540s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.540s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.557s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.557s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.557s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.558s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.559s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.559s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.560s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.561s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.563s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.564s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.565s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.566s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.567s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.568s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.569s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.571s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-04_10-03-18/events.log b/workspace/log/build_2025-04-04_10-03-18/events.log
new file mode 100644
index 0000000..c1be6ee
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-18/events.log
@@ -0,0 +1,40 @@
+[0.000000] (-) TimerEvent: {}
+[0.001771] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002225] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.002450] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.002566] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.002659] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.098424] (-) TimerEvent: {}
+[0.202385] (-) TimerEvent: {}
+[0.303310] (-) TimerEvent: {}
+[0.404224] (-) TimerEvent: {}
+[0.509231] (-) TimerEvent: {}
+[0.612250] (-) TimerEvent: {}
+[0.694842] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.713093] (-) TimerEvent: {}
+[0.814119] (-) TimerEvent: {}
+[0.919129] (-) TimerEvent: {}
+[0.966801] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.020123] (-) TimerEvent: {}
+[1.070971] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.071613] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.072099] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.072593] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.073161] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.073549] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.076087] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.077698] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.078890] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.079350] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.080600] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.081657] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.083012] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.084094] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.084700] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.086151] (joint_control) StdoutLine: {'line': b'\n'}
+[1.086777] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.087162] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.105615] (joint_control) CommandEnded: {'returncode': 0}
+[1.125654] (-) TimerEvent: {}
+[1.131820] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.133414] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-04_10-03-18/joint_control/command.log b/workspace/log/build_2025-04-04_10-03-18/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-18/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-04_10-03-18/joint_control/stderr.log b/workspace/log/build_2025-04-04_10-03-18/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-04_10-03-18/joint_control/stdout.log b/workspace/log/build_2025-04-04_10-03-18/joint_control/stdout.log
new file mode 100644
index 0000000..84de3e8
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-18/joint_control/stdout.log
@@ -0,0 +1,19 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-04_10-03-18/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-04_10-03-18/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..84de3e8
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-18/joint_control/stdout_stderr.log
@@ -0,0 +1,19 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-04_10-03-18/joint_control/streams.log b/workspace/log/build_2025-04-04_10-03-18/joint_control/streams.log
new file mode 100644
index 0000000..b5a0d8c
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-18/joint_control/streams.log
@@ -0,0 +1,21 @@
+[0.701s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[0.966s] running develop
+[1.069s] running egg_info
+[1.069s] writing joint_control.egg-info/PKG-INFO
+[1.070s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.070s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.071s] writing requirements to joint_control.egg-info/requires.txt
+[1.071s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.074s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.075s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.077s] running build_ext
+[1.077s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.078s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.079s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.081s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.082s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.082s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.084s]
+[1.084s] Installed /BA/workspace/build/joint_control
+[1.086s] running symlink_data
+[1.104s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-04_10-03-18/logger_all.log b/workspace/log/build_2025-04-04_10-03-18/logger_all.log
new file mode 100644
index 0000000..4c8a660
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-18/logger_all.log
@@ -0,0 +1,163 @@
+[0.126s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.127s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.242s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.242s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.243s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.243s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.243s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.243s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.243s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.243s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.244s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.254s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.254s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.254s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.254s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.254s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.254s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.255s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.255s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.255s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.255s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.255s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.265s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.267s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.268s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.268s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.268s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.268s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.268s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.268s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.268s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.268s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.269s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.269s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.269s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.270s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.271s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.271s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.271s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.271s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.271s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.271s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.289s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.289s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.289s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.289s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.289s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.289s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.289s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.289s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.289s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.289s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.289s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.290s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.290s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.290s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.293s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.294s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.294s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.296s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.296s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.298s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.299s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.300s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.300s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.598s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.599s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.599s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.998s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.399s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.400s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.400s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.401s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.403s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.405s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.407s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.409s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.410s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.410s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.410s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.410s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.410s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.411s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.411s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.421s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.421s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.421s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.422s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.423s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.424s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.424s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.425s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.426s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.426s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.426s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.426s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.431s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.431s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.431s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.432s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.433s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.433s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.434s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.435s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.436s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.439s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.439s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.440s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.442s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.442s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.444s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.444s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-04_10-03-25/events.log b/workspace/log/build_2025-04-04_10-03-25/events.log
new file mode 100644
index 0000000..02141b0
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-25/events.log
@@ -0,0 +1,40 @@
+[0.000000] (-) TimerEvent: {}
+[0.001143] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.001313] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.002160] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.002386] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.002455] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.097933] (-) TimerEvent: {}
+[0.202902] (-) TimerEvent: {}
+[0.303836] (-) TimerEvent: {}
+[0.406960] (-) TimerEvent: {}
+[0.509853] (-) TimerEvent: {}
+[0.612913] (-) TimerEvent: {}
+[0.714723] (-) TimerEvent: {}
+[0.720088] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.815685] (-) TimerEvent: {}
+[0.918684] (-) TimerEvent: {}
+[0.994060] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.019674] (-) TimerEvent: {}
+[1.111270] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.111977] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.112415] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.112984] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.113446] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.113840] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.116698] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.118330] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.119727] (-) TimerEvent: {}
+[1.119879] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.120277] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.121488] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.122745] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.123686] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.124985] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.125834] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.127039] (joint_control) StdoutLine: {'line': b'\n'}
+[1.127759] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.128258] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.148672] (joint_control) CommandEnded: {'returncode': 0}
+[1.174188] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.175912] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-04_10-03-25/joint_control/command.log b/workspace/log/build_2025-04-04_10-03-25/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-25/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-04_10-03-25/joint_control/stderr.log b/workspace/log/build_2025-04-04_10-03-25/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-04_10-03-25/joint_control/stdout.log b/workspace/log/build_2025-04-04_10-03-25/joint_control/stdout.log
new file mode 100644
index 0000000..84de3e8
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-25/joint_control/stdout.log
@@ -0,0 +1,19 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-04_10-03-25/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-04_10-03-25/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..84de3e8
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-25/joint_control/stdout_stderr.log
@@ -0,0 +1,19 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-04_10-03-25/joint_control/streams.log b/workspace/log/build_2025-04-04_10-03-25/joint_control/streams.log
new file mode 100644
index 0000000..0b5f48c
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-25/joint_control/streams.log
@@ -0,0 +1,21 @@
+[0.726s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[0.994s] running develop
+[1.109s] running egg_info
+[1.109s] writing joint_control.egg-info/PKG-INFO
+[1.110s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.110s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.111s] writing requirements to joint_control.egg-info/requires.txt
+[1.111s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.114s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.117s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.117s] running build_ext
+[1.117s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.119s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.120s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.121s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.122s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.123s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.124s]
+[1.125s] Installed /BA/workspace/build/joint_control
+[1.125s] running symlink_data
+[1.146s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-04_10-03-25/logger_all.log b/workspace/log/build_2025-04-04_10-03-25/logger_all.log
new file mode 100644
index 0000000..a8244ab
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-25/logger_all.log
@@ -0,0 +1,163 @@
+[0.107s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.109s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.232s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.232s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.233s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.233s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.233s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.233s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.233s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.233s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.233s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.243s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.255s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.256s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.257s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.258s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.258s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.260s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.261s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.261s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.261s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.262s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.262s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.262s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.262s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.262s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.262s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.280s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.280s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.280s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.280s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.281s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.281s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.281s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.284s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.285s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.285s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.287s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.287s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.289s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.290s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.291s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.291s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.593s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.593s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.593s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.014s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.433s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.434s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.434s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.435s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.436s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.438s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.440s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.443s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.443s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.443s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.443s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.444s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.444s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.444s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.445s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.453s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.454s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.454s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.455s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.456s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.457s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.458s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.458s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.459s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.460s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.460s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.460s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.465s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.465s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.465s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.466s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.467s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.467s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.468s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.470s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.471s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.473s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.474s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.475s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.477s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.478s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.479s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.480s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-04_10-03-52/events.log b/workspace/log/build_2025-04-04_10-03-52/events.log
new file mode 100644
index 0000000..9e24afa
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-52/events.log
@@ -0,0 +1,40 @@
+[0.000000] (-) TimerEvent: {}
+[0.001081] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.001278] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.001663] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.001957] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.002216] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.097964] (-) TimerEvent: {}
+[0.201917] (-) TimerEvent: {}
+[0.302954] (-) TimerEvent: {}
+[0.403953] (-) TimerEvent: {}
+[0.507809] (-) TimerEvent: {}
+[0.610800] (-) TimerEvent: {}
+[0.689395] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.711577] (-) TimerEvent: {}
+[0.812618] (-) TimerEvent: {}
+[0.917921] (-) TimerEvent: {}
+[0.959706] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.018637] (-) TimerEvent: {}
+[1.063778] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.064492] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.064908] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.065301] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.065686] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.066058] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.068773] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.070489] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.071891] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.072171] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.073124] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.074967] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.076482] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.078350] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.079371] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.080502] (joint_control) StdoutLine: {'line': b'\n'}
+[1.080970] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.081115] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.100003] (joint_control) CommandEnded: {'returncode': 0}
+[1.119935] (-) TimerEvent: {}
+[1.123998] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.125588] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-04_10-03-52/joint_control/command.log b/workspace/log/build_2025-04-04_10-03-52/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-52/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-04_10-03-52/joint_control/stderr.log b/workspace/log/build_2025-04-04_10-03-52/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-04_10-03-52/joint_control/stdout.log b/workspace/log/build_2025-04-04_10-03-52/joint_control/stdout.log
new file mode 100644
index 0000000..84de3e8
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-52/joint_control/stdout.log
@@ -0,0 +1,19 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-04_10-03-52/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-04_10-03-52/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..84de3e8
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-52/joint_control/stdout_stderr.log
@@ -0,0 +1,19 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-04_10-03-52/joint_control/streams.log b/workspace/log/build_2025-04-04_10-03-52/joint_control/streams.log
new file mode 100644
index 0000000..c925b68
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-52/joint_control/streams.log
@@ -0,0 +1,21 @@
+[0.699s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[0.960s] running develop
+[1.062s] running egg_info
+[1.062s] writing joint_control.egg-info/PKG-INFO
+[1.063s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.063s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.063s] writing requirements to joint_control.egg-info/requires.txt
+[1.064s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.067s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.069s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.070s] running build_ext
+[1.070s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.071s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.073s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.074s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.076s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.077s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.078s]
+[1.079s] Installed /BA/workspace/build/joint_control
+[1.079s] running symlink_data
+[1.098s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-04_10-03-52/logger_all.log b/workspace/log/build_2025-04-04_10-03-52/logger_all.log
new file mode 100644
index 0000000..06a8286
--- /dev/null
+++ b/workspace/log/build_2025-04-04_10-03-52/logger_all.log
@@ -0,0 +1,163 @@
+[0.100s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.101s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.210s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.211s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.211s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.211s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.211s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.211s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.211s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.211s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.212s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.225s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.226s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.227s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.233s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.234s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.236s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.238s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.238s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.238s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.238s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.238s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.238s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.254s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.254s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.254s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.255s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.255s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.255s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.255s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.255s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.255s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.255s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.255s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.255s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.255s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.255s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.258s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.259s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.259s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.262s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.262s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.263s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.264s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.265s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.265s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.562s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.563s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.563s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.961s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.359s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.360s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.360s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.361s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.361s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.363s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.365s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.368s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.368s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.368s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.369s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.369s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.369s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.369s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.370s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.378s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.378s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.379s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.380s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.381s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.382s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.382s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.383s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.383s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.384s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.384s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.384s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.392s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.392s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.392s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.392s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.394s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.394s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.394s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.395s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.397s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.400s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.401s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.401s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.404s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.404s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.408s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.409s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-05_09-04-36/events.log b/workspace/log/build_2025-04-05_09-04-36/events.log
new file mode 100644
index 0000000..0924ebc
--- /dev/null
+++ b/workspace/log/build_2025-04-05_09-04-36/events.log
@@ -0,0 +1,41 @@
+[0.000000] (-) TimerEvent: {}
+[0.002376] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002656] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.002778] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.002833] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.002896] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.098647] (-) TimerEvent: {}
+[0.201377] (-) TimerEvent: {}
+[0.302377] (-) TimerEvent: {}
+[0.404643] (-) TimerEvent: {}
+[0.508384] (-) TimerEvent: {}
+[0.609384] (-) TimerEvent: {}
+[0.711470] (-) TimerEvent: {}
+[0.761924] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.812385] (-) TimerEvent: {}
+[0.917341] (-) TimerEvent: {}
+[1.022388] (-) TimerEvent: {}
+[1.034599] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.123458] (-) TimerEvent: {}
+[1.135848] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.137694] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.138592] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.139271] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.139814] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.140231] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.144237] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.145967] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.147409] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.147764] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.149511] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.150786] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.151725] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.152578] (joint_control) StdoutLine: {'line': b'Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.153760] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.154426] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.155678] (joint_control) StdoutLine: {'line': b'\n'}
+[1.156100] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.156465] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.176067] (joint_control) CommandEnded: {'returncode': 0}
+[1.203641] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.205262] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-05_09-04-36/joint_control/command.log b/workspace/log/build_2025-04-05_09-04-36/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-05_09-04-36/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-05_09-04-36/joint_control/stderr.log b/workspace/log/build_2025-04-05_09-04-36/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-05_09-04-36/joint_control/stdout.log b/workspace/log/build_2025-04-05_09-04-36/joint_control/stdout.log
new file mode 100644
index 0000000..dd600d9
--- /dev/null
+++ b/workspace/log/build_2025-04-05_09-04-36/joint_control/stdout.log
@@ -0,0 +1,20 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-05_09-04-36/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-05_09-04-36/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..dd600d9
--- /dev/null
+++ b/workspace/log/build_2025-04-05_09-04-36/joint_control/stdout_stderr.log
@@ -0,0 +1,20 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-05_09-04-36/joint_control/streams.log b/workspace/log/build_2025-04-05_09-04-36/joint_control/streams.log
new file mode 100644
index 0000000..b37047b
--- /dev/null
+++ b/workspace/log/build_2025-04-05_09-04-36/joint_control/streams.log
@@ -0,0 +1,22 @@
+[0.767s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.034s] running develop
+[1.134s] running egg_info
+[1.135s] writing joint_control.egg-info/PKG-INFO
+[1.135s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.136s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.137s] writing requirements to joint_control.egg-info/requires.txt
+[1.137s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.141s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.143s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.144s] running build_ext
+[1.144s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.146s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.148s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.148s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.149s] Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control
+[1.151s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.151s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.153s]
+[1.153s] Installed /BA/workspace/build/joint_control
+[1.153s] running symlink_data
+[1.173s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-05_09-04-36/logger_all.log b/workspace/log/build_2025-04-05_09-04-36/logger_all.log
new file mode 100644
index 0000000..b33a69b
--- /dev/null
+++ b/workspace/log/build_2025-04-05_09-04-36/logger_all.log
@@ -0,0 +1,163 @@
+[0.128s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.129s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.257s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.258s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.258s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.258s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.258s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.258s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.258s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.258s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.258s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.259s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.260s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.273s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.273s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.273s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.273s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.273s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.275s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.275s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.275s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.277s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.277s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.277s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.278s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.278s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.278s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.280s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.280s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.280s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.280s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.280s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.280s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.281s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.281s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.281s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.281s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.281s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.281s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.287s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.288s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.288s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.288s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.288s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.288s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.290s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.292s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.292s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.292s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.292s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.292s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.292s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.294s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.295s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.296s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.296s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.296s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.296s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.296s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.297s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.320s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.320s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.320s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.320s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.320s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.320s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.320s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.321s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.321s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.321s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.321s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.321s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.321s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.321s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.324s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.325s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.325s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.327s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.328s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.329s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.330s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.331s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.331s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.654s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.654s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.654s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.095s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.501s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.502s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.502s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.503s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.504s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.507s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.509s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.512s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.512s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.512s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.513s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.513s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.513s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.515s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.515s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.524s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.524s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.524s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.525s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.526s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.527s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.528s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.528s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.529s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.529s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.529s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.530s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.536s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.536s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.536s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.536s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.538s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.538s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.538s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.539s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.541s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.543s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.543s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.544s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.547s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.547s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.549s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.550s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-07_10-47-18/events.log b/workspace/log/build_2025-04-07_10-47-18/events.log
new file mode 100644
index 0000000..03b4d5b
--- /dev/null
+++ b/workspace/log/build_2025-04-07_10-47-18/events.log
@@ -0,0 +1,41 @@
+[0.000000] (-) TimerEvent: {}
+[0.000873] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.003200] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.003446] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.003507] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.004526] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.098606] (-) TimerEvent: {}
+[0.201349] (-) TimerEvent: {}
+[0.302672] (-) TimerEvent: {}
+[0.403564] (-) TimerEvent: {}
+[0.507384] (-) TimerEvent: {}
+[0.610583] (-) TimerEvent: {}
+[0.681203] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'TERM': 'xterm', 'PATH': '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'COLCON': '1', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:'}, 'shell': False}
+[0.711582] (-) TimerEvent: {}
+[0.813528] (-) TimerEvent: {}
+[0.913595] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[0.915778] (-) TimerEvent: {}
+[0.962107] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[0.962865] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[0.963185] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[0.963794] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[0.964346] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[0.964706] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[0.968633] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[0.970699] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[0.972592] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[0.972909] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[0.974511] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.975780] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.976646] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.977272] (joint_control) StdoutLine: {'line': b'Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.978706] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.979445] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.980328] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.981846] (joint_control) StdoutLine: {'line': b'\n'}
+[0.982182] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[0.982502] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.002748] (joint_control) CommandEnded: {'returncode': 0}
+[1.016369] (-) TimerEvent: {}
+[1.024520] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.026341] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-07_10-47-18/joint_control/command.log b/workspace/log/build_2025-04-07_10-47-18/joint_control/command.log
new file mode 100644
index 0000000..eec5952
--- /dev/null
+++ b/workspace/log/build_2025-04-07_10-47-18/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-07_10-47-18/joint_control/stderr.log b/workspace/log/build_2025-04-07_10-47-18/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-07_10-47-18/joint_control/stdout.log b/workspace/log/build_2025-04-07_10-47-18/joint_control/stdout.log
new file mode 100644
index 0000000..079d344
--- /dev/null
+++ b/workspace/log/build_2025-04-07_10-47-18/joint_control/stdout.log
@@ -0,0 +1,21 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-07_10-47-18/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-07_10-47-18/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..079d344
--- /dev/null
+++ b/workspace/log/build_2025-04-07_10-47-18/joint_control/stdout_stderr.log
@@ -0,0 +1,21 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-07_10-47-18/joint_control/streams.log b/workspace/log/build_2025-04-07_10-47-18/joint_control/streams.log
new file mode 100644
index 0000000..2f06c39
--- /dev/null
+++ b/workspace/log/build_2025-04-07_10-47-18/joint_control/streams.log
@@ -0,0 +1,23 @@
+[0.687s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[0.911s] running develop
+[0.958s] running egg_info
+[0.958s] writing joint_control.egg-info/PKG-INFO
+[0.959s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[0.960s] writing entry points to joint_control.egg-info/entry_points.txt
+[0.960s] writing requirements to joint_control.egg-info/requires.txt
+[0.960s] writing top-level names to joint_control.egg-info/top_level.txt
+[0.964s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[0.968s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[0.968s] running build_ext
+[0.969s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[0.970s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[0.972s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[0.972s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[0.973s] Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control
+[0.975s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[0.975s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[0.976s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[0.977s]
+[0.978s] Installed /BA/workspace/build/joint_control
+[0.978s] running symlink_data
+[0.999s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-07_10-47-18/logger_all.log b/workspace/log/build_2025-04-07_10-47-18/logger_all.log
new file mode 100644
index 0000000..7ecf874
--- /dev/null
+++ b/workspace/log/build_2025-04-07_10-47-18/logger_all.log
@@ -0,0 +1,163 @@
+[0.122s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.123s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.215s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.216s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.216s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.217s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.217s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.217s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.217s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.217s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.217s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.217s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.218s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.230s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.231s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.243s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.247s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.250s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.251s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.251s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.251s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.251s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.251s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.251s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.251s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.252s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.252s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.252s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.252s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.253s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.253s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.253s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.253s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.272s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.273s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.273s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.273s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.273s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.273s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.273s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.273s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.273s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.273s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.273s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.273s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.273s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.273s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.276s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.277s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.278s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.281s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.281s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.283s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.284s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.285s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.286s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.550s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.551s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.551s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.969s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.280s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.281s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.281s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.282s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.283s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.286s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.290s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.292s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.292s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.293s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.293s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.293s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.293s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.294s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.295s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.296s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.296s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.296s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.298s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.298s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.299s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.300s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.301s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.302s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.302s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.303s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.303s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.311s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.311s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.311s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.311s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.313s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.313s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.313s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.315s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.317s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.317s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.318s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.319s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.320s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.344s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.353s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.354s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-07_10-59-55/events.log b/workspace/log/build_2025-04-07_10-59-55/events.log
new file mode 100644
index 0000000..f264cee
--- /dev/null
+++ b/workspace/log/build_2025-04-07_10-59-55/events.log
@@ -0,0 +1,41 @@
+[0.000000] (-) TimerEvent: {}
+[0.001393] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002058] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.002296] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.002352] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.003133] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.096998] (-) TimerEvent: {}
+[0.199786] (-) TimerEvent: {}
+[0.304813] (-) TimerEvent: {}
+[0.407772] (-) TimerEvent: {}
+[0.508791] (-) TimerEvent: {}
+[0.609846] (-) TimerEvent: {}
+[0.629943] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'HOME': '/root', 'OLDPWD': '/', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'TERM': 'xterm', 'PATH': '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'COLCON': '1', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:'}, 'shell': False}
+[0.710773] (-) TimerEvent: {}
+[0.811770] (-) TimerEvent: {}
+[0.861610] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[0.906379] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[0.907160] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[0.907735] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[0.908357] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[0.908912] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[0.909445] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[0.912830] (-) TimerEvent: {}
+[0.914963] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[0.917259] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[0.919080] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[0.919838] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[0.921304] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.922422] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.923490] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.924532] (joint_control) StdoutLine: {'line': b'Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.925507] (joint_control) StdoutLine: {'line': b'Installing plugdata3 script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.926247] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.927249] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.928084] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[0.929397] (joint_control) StdoutLine: {'line': b'\n'}
+[0.929863] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[0.930091] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[0.949158] (joint_control) CommandEnded: {'returncode': 0}
+[0.972448] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[0.974520] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-07_10-59-55/joint_control/command.log b/workspace/log/build_2025-04-07_10-59-55/joint_control/command.log
new file mode 100644
index 0000000..eec5952
--- /dev/null
+++ b/workspace/log/build_2025-04-07_10-59-55/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-07_10-59-55/joint_control/stderr.log b/workspace/log/build_2025-04-07_10-59-55/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-07_10-59-55/joint_control/stdout.log b/workspace/log/build_2025-04-07_10-59-55/joint_control/stdout.log
new file mode 100644
index 0000000..09a005b
--- /dev/null
+++ b/workspace/log/build_2025-04-07_10-59-55/joint_control/stdout.log
@@ -0,0 +1,22 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata3 script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-07_10-59-55/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-07_10-59-55/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..09a005b
--- /dev/null
+++ b/workspace/log/build_2025-04-07_10-59-55/joint_control/stdout_stderr.log
@@ -0,0 +1,22 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata3 script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-07_10-59-55/joint_control/streams.log b/workspace/log/build_2025-04-07_10-59-55/joint_control/streams.log
new file mode 100644
index 0000000..4615a52
--- /dev/null
+++ b/workspace/log/build_2025-04-07_10-59-55/joint_control/streams.log
@@ -0,0 +1,24 @@
+[0.636s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[0.861s] running develop
+[0.904s] running egg_info
+[0.904s] writing joint_control.egg-info/PKG-INFO
+[0.905s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[0.905s] writing entry points to joint_control.egg-info/entry_points.txt
+[0.906s] writing requirements to joint_control.egg-info/requires.txt
+[0.907s] writing top-level names to joint_control.egg-info/top_level.txt
+[0.912s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[0.914s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[0.916s] running build_ext
+[0.917s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[0.918s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[0.920s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[0.920s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[0.922s] Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control
+[0.923s] Installing plugdata3 script to /BA/workspace/install/joint_control/lib/joint_control
+[0.923s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[0.924s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[0.925s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[0.926s]
+[0.927s] Installed /BA/workspace/build/joint_control
+[0.927s] running symlink_data
+[0.946s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-07_10-59-55/logger_all.log b/workspace/log/build_2025-04-07_10-59-55/logger_all.log
new file mode 100644
index 0000000..92e0fbb
--- /dev/null
+++ b/workspace/log/build_2025-04-07_10-59-55/logger_all.log
@@ -0,0 +1,163 @@
+[0.105s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.106s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.181s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.182s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.183s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.183s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.183s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.183s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.183s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.183s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.183s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.184s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.184s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.184s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.184s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.184s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.185s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.185s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.185s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.185s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.193s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.194s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.194s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.194s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.194s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.194s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.195s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.195s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.196s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.196s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.196s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.197s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.198s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.198s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.199s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.199s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.199s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.199s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.199s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.200s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.201s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.202s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.208s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.209s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.210s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.211s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.212s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.213s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.213s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.214s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.215s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.215s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.215s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.215s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.215s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.215s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.232s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.232s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.233s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.233s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.233s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.234s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.237s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.238s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.239s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.241s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.241s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.243s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.245s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.246s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.246s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.500s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.500s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.500s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.878s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.188s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.188s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.189s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages: /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.190s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.191s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.194s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.197s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.200s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.200s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.200s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.201s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.202s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.202s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.203s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.204s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.204s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.205s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.205s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.206s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.208s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.209s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.210s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.211s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.212s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.212s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.212s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.212s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.218s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.219s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.219s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.219s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.220s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.220s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.221s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.222s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.224s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.225s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.226s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.227s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.228s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.229s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.229s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.230s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-08_10-12-21/events.log b/workspace/log/build_2025-04-08_10-12-21/events.log
new file mode 100644
index 0000000..0e27ac1
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/events.log
@@ -0,0 +1,112 @@
+[0.000000] (-) TimerEvent: {}
+[0.000735] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.001002] (joint_info) JobQueued: {'identifier': 'joint_info', 'dependencies': OrderedDict()}
+[0.001105] (mock_robot) JobQueued: {'identifier': 'mock_robot', 'dependencies': OrderedDict()}
+[0.001296] (painting_robot_control) JobQueued: {'identifier': 'painting_robot_control', 'dependencies': OrderedDict()}
+[0.001336] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.020660] (joint_info) JobStarted: {'identifier': 'joint_info'}
+[0.050324] (mock_robot) JobStarted: {'identifier': 'mock_robot'}
+[0.059028] (painting_robot_control) JobStarted: {'identifier': 'painting_robot_control'}
+[0.098112] (-) TimerEvent: {}
+[0.198950] (-) TimerEvent: {}
+[0.299913] (-) TimerEvent: {}
+[0.410922] (-) TimerEvent: {}
+[0.513885] (-) TimerEvent: {}
+[0.624125] (-) TimerEvent: {}
+[0.724876] (-) TimerEvent: {}
+[0.833087] (-) TimerEvent: {}
+[0.935648] (-) TimerEvent: {}
+[1.041096] (-) TimerEvent: {}
+[1.141953] (-) TimerEvent: {}
+[1.242948] (-) TimerEvent: {}
+[1.346885] (-) TimerEvent: {}
+[1.451895] (-) TimerEvent: {}
+[1.492888] (mock_robot) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/mock_robot/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/mock_robot', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/mock_robot', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.502244] (joint_info) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_info/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_info', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_info', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.508249] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.514200] (painting_robot_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/painting_robot_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/painting_robot_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/painting_robot_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.552880] (-) TimerEvent: {}
+[1.653885] (-) TimerEvent: {}
+[1.754905] (-) TimerEvent: {}
+[1.783600] (mock_robot) StdoutLine: {'line': b'running develop\n'}
+[1.814002] (joint_info) StdoutLine: {'line': b'running develop\n'}
+[1.817078] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.825994] (painting_robot_control) StdoutLine: {'line': b'running develop\n'}
+[1.855969] (-) TimerEvent: {}
+[1.924160] (mock_robot) StdoutLine: {'line': b'running egg_info\n'}
+[1.925139] (mock_robot) StdoutLine: {'line': b'writing mock_robot.egg-info/PKG-INFO\n'}
+[1.925658] (mock_robot) StdoutLine: {'line': b'writing dependency_links to mock_robot.egg-info/dependency_links.txt\n'}
+[1.929337] (mock_robot) StdoutLine: {'line': b'writing entry points to mock_robot.egg-info/entry_points.txt\n'}
+[1.929835] (mock_robot) StdoutLine: {'line': b'writing requirements to mock_robot.egg-info/requires.txt\n'}
+[1.930429] (mock_robot) StdoutLine: {'line': b'writing top-level names to mock_robot.egg-info/top_level.txt\n'}
+[1.933294] (mock_robot) StdoutLine: {'line': b"reading manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.936480] (mock_robot) StdoutLine: {'line': b"writing manifest file 'mock_robot.egg-info/SOURCES.txt'\n"}
+[1.937157] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.937462] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.938634] (mock_robot) StdoutLine: {'line': b'running build_ext\n'}
+[1.938999] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.939632] (mock_robot) StdoutLine: {'line': b'Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)\n'}
+[1.940411] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.940947] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.941464] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.942701] (mock_robot) StdoutLine: {'line': b'Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot\n'}
+[1.944778] (mock_robot) StdoutLine: {'line': b'\n'}
+[1.945374] (mock_robot) StdoutLine: {'line': b'Installed /BA/workspace/build/mock_robot\n'}
+[1.945705] (mock_robot) StdoutLine: {'line': b'running symlink_data\n'}
+[1.950893] (joint_info) StdoutLine: {'line': b'running egg_info\n'}
+[1.951709] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.952203] (joint_info) StdoutLine: {'line': b'creating joint_info.egg-info\n'}
+[1.953035] (joint_info) StdoutLine: {'line': b'writing joint_info.egg-info/PKG-INFO\n'}
+[1.953395] (painting_robot_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.954326] (painting_robot_control) StdoutLine: {'line': b'writing painting_robot_control.egg-info/PKG-INFO\n'}
+[1.955761] (painting_robot_control) StdoutLine: {'line': b'writing dependency_links to painting_robot_control.egg-info/dependency_links.txt\n'}
+[1.956695] (-) TimerEvent: {}
+[1.957744] (painting_robot_control) StdoutLine: {'line': b'writing entry points to painting_robot_control.egg-info/entry_points.txt\n'}
+[1.958267] (joint_info) StdoutLine: {'line': b'writing dependency_links to joint_info.egg-info/dependency_links.txt\n'}
+[1.958739] (joint_info) StdoutLine: {'line': b'writing entry points to joint_info.egg-info/entry_points.txt\n'}
+[1.959494] (painting_robot_control) StdoutLine: {'line': b'writing requirements to painting_robot_control.egg-info/requires.txt\n'}
+[1.959710] (painting_robot_control) StdoutLine: {'line': b'writing top-level names to painting_robot_control.egg-info/top_level.txt\n'}
+[1.960336] (joint_info) StdoutLine: {'line': b'writing requirements to joint_info.egg-info/requires.txt\n'}
+[1.961058] (joint_info) StdoutLine: {'line': b'writing top-level names to joint_info.egg-info/top_level.txt\n'}
+[1.962069] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.962267] (joint_info) StdoutLine: {'line': b"writing manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.962864] (painting_robot_control) StdoutLine: {'line': b"reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'\n"}
+[1.963243] (joint_info) StdoutLine: {'line': b"reading manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.963860] (joint_info) StdoutLine: {'line': b"writing manifest file 'joint_info.egg-info/SOURCES.txt'\n"}
+[1.964505] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.965316] (joint_info) StdoutLine: {'line': b'running build_ext\n'}
+[1.965516] (joint_info) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)\n'}
+[1.966070] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.966625] (painting_robot_control) StdoutLine: {'line': b"writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'\n"}
+[1.967186] (painting_robot_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.968250] (painting_robot_control) StdoutLine: {'line': b'Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)\n'}
+[1.968750] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.969349] (joint_info) StdoutLine: {'line': b'Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.970141] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.971103] (joint_info) StdoutLine: {'line': b'Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.971725] (painting_robot_control) StdoutLine: {'line': b'Installing painting_robot_controller script to /BA/workspace/install/painting_robot_control/lib/painting_robot_control\n'}
+[1.972264] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.973047] (joint_info) StdoutLine: {'line': b'Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info\n'}
+[1.973805] (joint_control) StdoutLine: {'line': b'Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.974495] (joint_info) StdoutLine: {'line': b'\n'}
+[1.974845] (joint_info) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_info\n'}
+[1.975409] (painting_robot_control) StdoutLine: {'line': b'\n'}
+[1.975733] (painting_robot_control) StdoutLine: {'line': b'Installed /BA/workspace/build/painting_robot_control\n'}
+[1.976284] (joint_info) StdoutLine: {'line': b'running symlink_data\n'}
+[1.976987] (painting_robot_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.978839] (joint_control) StdoutLine: {'line': b'Installing plugdata3 script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.980152] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.981109] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.981754] (mock_robot) CommandEnded: {'returncode': 0}
+[1.982714] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.983258] (joint_control) StdoutLine: {'line': b'\n'}
+[1.984000] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.984806] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[2.007610] (mock_robot) JobEnded: {'identifier': 'mock_robot', 'rc': 0}
+[2.009988] (painting_robot_control) CommandEnded: {'returncode': 0}
+[2.020971] (painting_robot_control) JobEnded: {'identifier': 'painting_robot_control', 'rc': 0}
+[2.023161] (joint_info) CommandEnded: {'returncode': 0}
+[2.036703] (joint_info) JobEnded: {'identifier': 'joint_info', 'rc': 0}
+[2.039195] (joint_control) CommandEnded: {'returncode': 0}
+[2.052288] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[2.054026] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-08_10-12-21/joint_control/command.log b/workspace/log/build_2025-04-08_10-12-21/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/joint_control/stderr.log b/workspace/log/build_2025-04-08_10-12-21/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-08_10-12-21/joint_control/stdout.log b/workspace/log/build_2025-04-08_10-12-21/joint_control/stdout.log
new file mode 100644
index 0000000..09a005b
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/joint_control/stdout.log
@@ -0,0 +1,22 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata3 script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-08_10-12-21/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..09a005b
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/joint_control/stdout_stderr.log
@@ -0,0 +1,22 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata3 script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/joint_control/streams.log b/workspace/log/build_2025-04-08_10-12-21/joint_control/streams.log
new file mode 100644
index 0000000..e8ec5b6
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/joint_control/streams.log
@@ -0,0 +1,24 @@
+[1.512s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.816s] running develop
+[1.936s] running egg_info
+[1.936s] writing joint_control.egg-info/PKG-INFO
+[1.938s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.939s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.940s] writing requirements to joint_control.egg-info/requires.txt
+[1.941s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.951s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.961s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.964s] running build_ext
+[1.965s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.968s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.969s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.971s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.973s] Installing plugdata2 script to /BA/workspace/install/joint_control/lib/joint_control
+[1.979s] Installing plugdata3 script to /BA/workspace/install/joint_control/lib/joint_control
+[1.980s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.980s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.982s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.982s]
+[1.983s] Installed /BA/workspace/build/joint_control
+[1.984s] running symlink_data
+[2.038s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/joint_info/command.log b/workspace/log/build_2025-04-08_10-12-21/joint_info/command.log
new file mode 100644
index 0000000..c26e66f
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/joint_info/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/joint_info/stderr.log b/workspace/log/build_2025-04-08_10-12-21/joint_info/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-08_10-12-21/joint_info/stdout.log b/workspace/log/build_2025-04-08_10-12-21/joint_info/stdout.log
new file mode 100644
index 0000000..c21d060
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/joint_info/stdout.log
@@ -0,0 +1,19 @@
+running develop
+running egg_info
+creating joint_info.egg-info
+writing joint_info.egg-info/PKG-INFO
+writing dependency_links to joint_info.egg-info/dependency_links.txt
+writing entry points to joint_info.egg-info/entry_points.txt
+writing requirements to joint_info.egg-info/requires.txt
+writing top-level names to joint_info.egg-info/top_level.txt
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+reading manifest file 'joint_info.egg-info/SOURCES.txt'
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+
+Installed /BA/workspace/build/joint_info
+running symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/joint_info/stdout_stderr.log b/workspace/log/build_2025-04-08_10-12-21/joint_info/stdout_stderr.log
new file mode 100644
index 0000000..c21d060
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/joint_info/stdout_stderr.log
@@ -0,0 +1,19 @@
+running develop
+running egg_info
+creating joint_info.egg-info
+writing joint_info.egg-info/PKG-INFO
+writing dependency_links to joint_info.egg-info/dependency_links.txt
+writing entry points to joint_info.egg-info/entry_points.txt
+writing requirements to joint_info.egg-info/requires.txt
+writing top-level names to joint_info.egg-info/top_level.txt
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+reading manifest file 'joint_info.egg-info/SOURCES.txt'
+writing manifest file 'joint_info.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+
+Installed /BA/workspace/build/joint_info
+running symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/joint_info/streams.log b/workspace/log/build_2025-04-08_10-12-21/joint_info/streams.log
new file mode 100644
index 0000000..750682e
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/joint_info/streams.log
@@ -0,0 +1,21 @@
+[1.482s] Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+[1.793s] running develop
+[1.927s] running egg_info
+[1.929s] creating joint_info.egg-info
+[1.929s] writing joint_info.egg-info/PKG-INFO
+[1.935s] writing dependency_links to joint_info.egg-info/dependency_links.txt
+[1.935s] writing entry points to joint_info.egg-info/entry_points.txt
+[1.937s] writing requirements to joint_info.egg-info/requires.txt
+[1.938s] writing top-level names to joint_info.egg-info/top_level.txt
+[1.939s] writing manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.940s] reading manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.940s] writing manifest file 'joint_info.egg-info/SOURCES.txt'
+[1.941s] running build_ext
+[1.942s] Creating /BA/workspace/install/joint_info/lib/python3.10/site-packages/joint-info.egg-link (link to .)
+[1.946s] Installing joint_states_pub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.948s] Installing joint_states_sub script to /BA/workspace/install/joint_info/lib/joint_info
+[1.949s] Installing tcp_cart_pos script to /BA/workspace/install/joint_info/lib/joint_info
+[1.951s]
+[1.951s] Installed /BA/workspace/build/joint_info
+[1.953s] running symlink_data
+[1.999s] Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/logger_all.log b/workspace/log/build_2025-04-08_10-12-21/logger_all.log
new file mode 100644
index 0000000..3d1c6c2
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/logger_all.log
@@ -0,0 +1,292 @@
+[0.187s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install']
+[0.188s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=None, packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.342s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.343s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.343s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.343s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.343s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.343s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.343s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.343s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.344s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.344s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.344s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.344s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.344s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.344s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.344s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.355s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.356s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.356s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.356s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.356s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.356s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.356s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.356s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.356s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.356s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.356s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.356s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.356s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.357s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.357s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.357s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.362s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.363s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.364s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.364s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.364s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.364s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.364s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.364s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.364s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.364s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.364s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.365s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.366s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.366s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.366s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.366s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.366s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.366s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.386s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.386s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.386s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.386s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.386s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.386s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.386s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.386s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.386s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.386s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_args' from command line to 'None'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target' from command line to 'None'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_cache' from command line to 'False'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_clean_first' from command line to 'False'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'cmake_force_configure' from command line to 'False'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'ament_cmake_args' from command line to 'None'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_cmake_args' from command line to 'None'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'joint_info' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.387s] DEBUG:colcon.colcon_core.verb:Building package 'joint_info' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_info', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_info', 'merge_install': False, 'path': '/BA/workspace/src/joint_info', 'symlink_install': True, 'test_result_base': None}
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_args' from command line to 'None'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target' from command line to 'None'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_cache' from command line to 'False'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_clean_first' from command line to 'False'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'cmake_force_configure' from command line to 'False'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'ament_cmake_args' from command line to 'None'
+[0.387s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_cmake_args' from command line to 'None'
+[0.388s] Level 5:colcon.colcon_core.verb:set package 'mock_robot' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.388s] DEBUG:colcon.colcon_core.verb:Building package 'mock_robot' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/mock_robot', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/mock_robot', 'merge_install': False, 'path': '/BA/workspace/src/mock_robot', 'symlink_install': True, 'test_result_base': None}
+[0.388s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_args' from command line to 'None'
+[0.388s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_target' from command line to 'None'
+[0.388s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.388s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.388s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.388s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.388s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.388s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.388s] Level 5:colcon.colcon_core.verb:set package 'painting_robot_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.388s] DEBUG:colcon.colcon_core.verb:Building package 'painting_robot_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/painting_robot_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/painting_robot_control', 'merge_install': False, 'path': '/BA/workspace/src/painting_robot_control', 'symlink_install': True, 'test_result_base': None}
+[0.388s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.392s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.392s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.393s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.396s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.397s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.398s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.399s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.400s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.400s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.413s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_info' with build type 'ament_python'
+[0.415s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'ament_prefix_path')
+[0.417s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.ps1'
+[0.423s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.dsv'
+[0.424s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/ament_prefix_path.sh'
+[0.425s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.425s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.443s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/mock_robot' with build type 'ament_python'
+[0.443s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'ament_prefix_path')
+[0.443s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.ps1'
+[0.445s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.dsv'
+[0.445s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/ament_prefix_path.sh'
+[0.446s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.446s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.451s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/painting_robot_control' with build type 'ament_python'
+[0.452s] Level 1:colcon.colcon_core.shell:create_environment_hook('painting_robot_control', 'ament_prefix_path')
+[0.452s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.ps1'
+[0.454s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.dsv'
+[0.454s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/ament_prefix_path.sh'
+[0.455s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.455s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.716s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.717s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.717s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.955s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_info'
+[0.955s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.955s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.196s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/mock_robot'
+[1.197s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[1.197s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.428s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/painting_robot_control'
+[1.429s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[1.429s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.893s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.898s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_info': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+[1.906s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.913s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/painting_robot_control': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+[2.371s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath_develop')
+[2.371s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.ps1'
+[2.374s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.dsv'
+[2.375s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[2.376s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/mock_robot/share/mock_robot/hook/pythonpath_develop.sh'
+[2.384s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake module files
+[2.387s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot' for CMake config files
+[2.391s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib'
+[2.391s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.392s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/pkgconfig/mock_robot.pc'
+[2.392s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/lib/python3.10/site-packages'
+[2.392s] Level 1:colcon.colcon_core.shell:create_environment_hook('mock_robot', 'pythonpath')
+[2.392s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.ps1'
+[2.393s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.dsv'
+[2.393s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/mock_robot/share/mock_robot/hook/pythonpath.sh'
+[2.394s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/mock_robot/bin'
+[2.394s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(mock_robot)
+[2.395s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.ps1'
+[2.396s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/mock_robot/share/mock_robot/package.dsv'
+[2.396s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.sh'
+[2.397s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.bash'
+[2.398s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/mock_robot/share/mock_robot/package.zsh'
+[2.399s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/mock_robot/share/colcon-core/packages/mock_robot)
+[2.401s] Level 1:colcon.colcon_core.shell:create_environment_hook('painting_robot_control', 'pythonpath_develop')
+[2.401s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.ps1'
+[2.403s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.dsv'
+[2.403s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/painting_robot_control' returned '0': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+[2.403s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/painting_robot_control/share/painting_robot_control/hook/pythonpath_develop.sh'
+[2.404s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control' for CMake module files
+[2.406s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control' for CMake config files
+[2.408s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/lib'
+[2.408s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/bin'
+[2.408s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/lib/pkgconfig/painting_robot_control.pc'
+[2.408s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages'
+[2.408s] Level 1:colcon.colcon_core.shell:create_environment_hook('painting_robot_control', 'pythonpath')
+[2.408s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.ps1'
+[2.409s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.dsv'
+[2.410s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/painting_robot_control/share/painting_robot_control/hook/pythonpath.sh'
+[2.410s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/painting_robot_control/bin'
+[2.410s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(painting_robot_control)
+[2.411s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.ps1'
+[2.411s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.dsv'
+[2.412s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.sh'
+[2.412s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.bash'
+[2.413s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/painting_robot_control/share/painting_robot_control/package.zsh'
+[2.413s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/painting_robot_control/share/colcon-core/packages/painting_robot_control)
+[2.414s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath_develop')
+[2.414s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.ps1'
+[2.416s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.dsv'
+[2.416s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_info' returned '0': PYTHONPATH=/BA/workspace/build/joint_info/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_info/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_info/build --no-deps symlink_data
+[2.417s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_info/share/joint_info/hook/pythonpath_develop.sh'
+[2.417s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake module files
+[2.419s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info' for CMake config files
+[2.422s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib'
+[2.423s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.423s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/pkgconfig/joint_info.pc'
+[2.423s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/lib/python3.10/site-packages'
+[2.423s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_info', 'pythonpath')
+[2.423s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.ps1'
+[2.423s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.dsv'
+[2.424s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_info/share/joint_info/hook/pythonpath.sh'
+[2.425s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_info/bin'
+[2.425s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_info)
+[2.425s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.ps1'
+[2.426s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_info/share/joint_info/package.dsv'
+[2.426s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.sh'
+[2.427s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.bash'
+[2.427s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_info/share/joint_info/package.zsh'
+[2.428s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_info/share/colcon-core/packages/joint_info)
+[2.429s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[2.429s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[2.431s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[2.432s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[2.432s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[2.433s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[2.435s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[2.438s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[2.439s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[2.439s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[2.439s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[2.439s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[2.439s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[2.440s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[2.440s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[2.441s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[2.441s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[2.441s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[2.442s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[2.443s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[2.443s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[2.444s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[2.444s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[2.445s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[2.445s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[2.445s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[2.446s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[2.462s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[2.462s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[2.463s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[2.463s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[2.465s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[2.465s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[2.465s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[2.467s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[2.471s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[2.476s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[2.477s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[2.478s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[2.481s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[2.482s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[2.483s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[2.484s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-08_10-12-21/mock_robot/command.log b/workspace/log/build_2025-04-08_10-12-21/mock_robot/command.log
new file mode 100644
index 0000000..fefebe5
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/mock_robot/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/mock_robot/stderr.log b/workspace/log/build_2025-04-08_10-12-21/mock_robot/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-08_10-12-21/mock_robot/stdout.log b/workspace/log/build_2025-04-08_10-12-21/mock_robot/stdout.log
new file mode 100644
index 0000000..05c4319
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/mock_robot/stdout.log
@@ -0,0 +1,15 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/mock_robot/stdout_stderr.log b/workspace/log/build_2025-04-08_10-12-21/mock_robot/stdout_stderr.log
new file mode 100644
index 0000000..05c4319
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/mock_robot/stdout_stderr.log
@@ -0,0 +1,15 @@
+running develop
+running egg_info
+writing mock_robot.egg-info/PKG-INFO
+writing dependency_links to mock_robot.egg-info/dependency_links.txt
+writing entry points to mock_robot.egg-info/entry_points.txt
+writing requirements to mock_robot.egg-info/requires.txt
+writing top-level names to mock_robot.egg-info/top_level.txt
+reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+
+Installed /BA/workspace/build/mock_robot
+running symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/mock_robot/streams.log b/workspace/log/build_2025-04-08_10-12-21/mock_robot/streams.log
new file mode 100644
index 0000000..db556d6
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/mock_robot/streams.log
@@ -0,0 +1,17 @@
+[1.450s] Invoking command in '/BA/workspace/build/mock_robot': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
+[1.734s] running develop
+[1.874s] running egg_info
+[1.875s] writing mock_robot.egg-info/PKG-INFO
+[1.878s] writing dependency_links to mock_robot.egg-info/dependency_links.txt
+[1.879s] writing entry points to mock_robot.egg-info/entry_points.txt
+[1.880s] writing requirements to mock_robot.egg-info/requires.txt
+[1.880s] writing top-level names to mock_robot.egg-info/top_level.txt
+[1.883s] reading manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.886s] writing manifest file 'mock_robot.egg-info/SOURCES.txt'
+[1.888s] running build_ext
+[1.889s] Creating /BA/workspace/install/mock_robot/lib/python3.10/site-packages/mock-robot.egg-link (link to .)
+[1.893s] Installing mock_robot script to /BA/workspace/install/mock_robot/lib/mock_robot
+[1.895s]
+[1.895s] Installed /BA/workspace/build/mock_robot
+[1.895s] running symlink_data
+[1.932s] Invoked command in '/BA/workspace/build/mock_robot' returned '0': PYTHONPATH=/BA/workspace/build/mock_robot/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/mock_robot/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/command.log b/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/command.log
new file mode 100644
index 0000000..7aac0a8
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/painting_robot_control': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/painting_robot_control' returned '0': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/stderr.log b/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/stdout.log b/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/stdout.log
new file mode 100644
index 0000000..d1cb5fb
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/stdout.log
@@ -0,0 +1,15 @@
+running develop
+running egg_info
+writing painting_robot_control.egg-info/PKG-INFO
+writing dependency_links to painting_robot_control.egg-info/dependency_links.txt
+writing entry points to painting_robot_control.egg-info/entry_points.txt
+writing requirements to painting_robot_control.egg-info/requires.txt
+writing top-level names to painting_robot_control.egg-info/top_level.txt
+reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)
+Installing painting_robot_controller script to /BA/workspace/install/painting_robot_control/lib/painting_robot_control
+
+Installed /BA/workspace/build/painting_robot_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/stdout_stderr.log b/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/stdout_stderr.log
new file mode 100644
index 0000000..d1cb5fb
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/stdout_stderr.log
@@ -0,0 +1,15 @@
+running develop
+running egg_info
+writing painting_robot_control.egg-info/PKG-INFO
+writing dependency_links to painting_robot_control.egg-info/dependency_links.txt
+writing entry points to painting_robot_control.egg-info/entry_points.txt
+writing requirements to painting_robot_control.egg-info/requires.txt
+writing top-level names to painting_robot_control.egg-info/top_level.txt
+reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)
+Installing painting_robot_controller script to /BA/workspace/install/painting_robot_control/lib/painting_robot_control
+
+Installed /BA/workspace/build/painting_robot_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/streams.log b/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/streams.log
new file mode 100644
index 0000000..cdca9e5
--- /dev/null
+++ b/workspace/log/build_2025-04-08_10-12-21/painting_robot_control/streams.log
@@ -0,0 +1,17 @@
+[1.461s] Invoking command in '/BA/workspace/build/painting_robot_control': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
+[1.767s] running develop
+[1.895s] running egg_info
+[1.896s] writing painting_robot_control.egg-info/PKG-INFO
+[1.897s] writing dependency_links to painting_robot_control.egg-info/dependency_links.txt
+[1.899s] writing entry points to painting_robot_control.egg-info/entry_points.txt
+[1.900s] writing requirements to painting_robot_control.egg-info/requires.txt
+[1.901s] writing top-level names to painting_robot_control.egg-info/top_level.txt
+[1.904s] reading manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+[1.908s] writing manifest file 'painting_robot_control.egg-info/SOURCES.txt'
+[1.909s] running build_ext
+[1.909s] Creating /BA/workspace/install/painting_robot_control/lib/python3.10/site-packages/painting-robot-control.egg-link (link to .)
+[1.913s] Installing painting_robot_controller script to /BA/workspace/install/painting_robot_control/lib/painting_robot_control
+[1.916s]
+[1.917s] Installed /BA/workspace/build/painting_robot_control
+[1.919s] running symlink_data
+[1.951s] Invoked command in '/BA/workspace/build/painting_robot_control' returned '0': PYTHONPATH=/BA/workspace/build/painting_robot_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/painting_robot_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-11_10-30-21/events.log b/workspace/log/build_2025-04-11_10-30-21/events.log
new file mode 100644
index 0000000..7294d05
--- /dev/null
+++ b/workspace/log/build_2025-04-11_10-30-21/events.log
@@ -0,0 +1,42 @@
+[0.000000] (-) TimerEvent: {}
+[0.002231] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002521] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.003327] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.003379] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.003496] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.098372] (-) TimerEvent: {}
+[0.199273] (-) TimerEvent: {}
+[0.300436] (-) TimerEvent: {}
+[0.402426] (-) TimerEvent: {}
+[0.505434] (-) TimerEvent: {}
+[0.608313] (-) TimerEvent: {}
+[0.705560] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.714379] (-) TimerEvent: {}
+[0.815238] (-) TimerEvent: {}
+[0.917220] (-) TimerEvent: {}
+[0.979735] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.018233] (-) TimerEvent: {}
+[1.084093] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.084968] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.085612] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.086084] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.086739] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.087113] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.090912] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.092894] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.094492] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.094963] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.096286] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.097762] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.098483] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.099223] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.100751] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.101800] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.102627] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.103801] (joint_control) StdoutLine: {'line': b'\n'}
+[1.104123] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.104439] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.119270] (-) TimerEvent: {}
+[1.124659] (joint_control) CommandEnded: {'returncode': 0}
+[1.152181] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.153581] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-11_10-30-21/joint_control/command.log b/workspace/log/build_2025-04-11_10-30-21/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-11_10-30-21/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-11_10-30-21/joint_control/stderr.log b/workspace/log/build_2025-04-11_10-30-21/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-11_10-30-21/joint_control/stdout.log b/workspace/log/build_2025-04-11_10-30-21/joint_control/stdout.log
new file mode 100644
index 0000000..bb407f2
--- /dev/null
+++ b/workspace/log/build_2025-04-11_10-30-21/joint_control/stdout.log
@@ -0,0 +1,21 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-11_10-30-21/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-11_10-30-21/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..bb407f2
--- /dev/null
+++ b/workspace/log/build_2025-04-11_10-30-21/joint_control/stdout_stderr.log
@@ -0,0 +1,21 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-11_10-30-21/joint_control/streams.log b/workspace/log/build_2025-04-11_10-30-21/joint_control/streams.log
new file mode 100644
index 0000000..1423e6e
--- /dev/null
+++ b/workspace/log/build_2025-04-11_10-30-21/joint_control/streams.log
@@ -0,0 +1,23 @@
+[0.710s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[0.977s] running develop
+[1.081s] running egg_info
+[1.082s] writing joint_control.egg-info/PKG-INFO
+[1.082s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.083s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.083s] writing requirements to joint_control.egg-info/requires.txt
+[1.084s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.088s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.090s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.091s] running build_ext
+[1.092s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.093s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.095s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.095s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.096s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.098s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.098s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.099s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.100s]
+[1.101s] Installed /BA/workspace/build/joint_control
+[1.101s] running symlink_data
+[1.122s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-11_10-30-21/logger_all.log b/workspace/log/build_2025-04-11_10-30-21/logger_all.log
new file mode 100644
index 0000000..b8bb033
--- /dev/null
+++ b/workspace/log/build_2025-04-11_10-30-21/logger_all.log
@@ -0,0 +1,163 @@
+[0.112s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.113s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.272s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.273s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.273s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.273s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.274s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.274s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.274s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.274s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.274s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.275s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.275s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.275s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.275s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.276s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.276s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.276s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.286s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.286s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.286s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.287s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.287s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.287s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.287s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.287s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.287s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.287s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.288s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.288s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.288s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.296s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.296s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.296s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.296s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.297s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.297s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.297s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.297s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.297s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.297s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.298s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.300s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.302s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.302s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.302s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.303s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.303s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.303s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.303s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.322s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.322s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.322s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.323s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.323s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.323s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.323s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.323s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.323s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.323s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.323s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.323s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.323s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.323s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.326s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.327s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.328s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.329s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.330s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.332s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.333s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.334s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.334s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.631s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.631s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.632s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.042s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.452s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.453s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.453s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.455s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.455s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.458s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.460s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.463s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.463s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.463s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.464s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.464s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.464s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.464s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.465s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.474s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.474s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.475s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.476s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.477s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.478s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.478s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.479s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.480s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.480s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.480s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.481s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.487s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.487s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.487s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.487s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.489s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.489s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.489s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.490s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.492s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.494s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.495s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.496s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.499s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.500s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.502s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.503s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-11_10-31-16/events.log b/workspace/log/build_2025-04-11_10-31-16/events.log
new file mode 100644
index 0000000..322e732
--- /dev/null
+++ b/workspace/log/build_2025-04-11_10-31-16/events.log
@@ -0,0 +1,42 @@
+[0.000000] (-) TimerEvent: {}
+[0.001457] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.001711] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.001756] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.001794] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.002557] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.097639] (-) TimerEvent: {}
+[0.205537] (-) TimerEvent: {}
+[0.309244] (-) TimerEvent: {}
+[0.410576] (-) TimerEvent: {}
+[0.515544] (-) TimerEvent: {}
+[0.618544] (-) TimerEvent: {}
+[0.689756] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.719568] (-) TimerEvent: {}
+[0.822534] (-) TimerEvent: {}
+[0.927532] (-) TimerEvent: {}
+[0.960636] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.028822] (-) TimerEvent: {}
+[1.063947] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.064652] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.065116] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.065592] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.066041] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.066401] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.069436] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.071468] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.073071] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.073717] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.075678] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.077422] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.078257] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.079646] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.080301] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.081265] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.082166] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.083135] (joint_control) StdoutLine: {'line': b'\n'}
+[1.083518] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.083862] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.103739] (joint_control) CommandEnded: {'returncode': 0}
+[1.129498] (-) TimerEvent: {}
+[1.130321] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.132537] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-11_10-31-16/joint_control/command.log b/workspace/log/build_2025-04-11_10-31-16/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-11_10-31-16/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-11_10-31-16/joint_control/stderr.log b/workspace/log/build_2025-04-11_10-31-16/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-11_10-31-16/joint_control/stdout.log b/workspace/log/build_2025-04-11_10-31-16/joint_control/stdout.log
new file mode 100644
index 0000000..bb407f2
--- /dev/null
+++ b/workspace/log/build_2025-04-11_10-31-16/joint_control/stdout.log
@@ -0,0 +1,21 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-11_10-31-16/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-11_10-31-16/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..bb407f2
--- /dev/null
+++ b/workspace/log/build_2025-04-11_10-31-16/joint_control/stdout_stderr.log
@@ -0,0 +1,21 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-11_10-31-16/joint_control/streams.log b/workspace/log/build_2025-04-11_10-31-16/joint_control/streams.log
new file mode 100644
index 0000000..1d29408
--- /dev/null
+++ b/workspace/log/build_2025-04-11_10-31-16/joint_control/streams.log
@@ -0,0 +1,23 @@
+[0.696s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[0.960s] running develop
+[1.062s] running egg_info
+[1.062s] writing joint_control.egg-info/PKG-INFO
+[1.063s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.063s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.064s] writing requirements to joint_control.egg-info/requires.txt
+[1.064s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.067s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.069s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.071s] running build_ext
+[1.071s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.074s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.075s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.076s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.077s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.078s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.079s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.080s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.081s]
+[1.081s] Installed /BA/workspace/build/joint_control
+[1.082s] running symlink_data
+[1.102s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-11_10-31-16/logger_all.log b/workspace/log/build_2025-04-11_10-31-16/logger_all.log
new file mode 100644
index 0000000..07d42de
--- /dev/null
+++ b/workspace/log/build_2025-04-11_10-31-16/logger_all.log
@@ -0,0 +1,163 @@
+[0.107s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.108s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.220s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.221s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.221s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.222s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.222s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.245s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.247s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.249s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.251s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.251s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.251s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.251s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.251s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.251s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.268s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.268s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.268s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.269s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.269s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.272s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.273s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.273s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.275s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.276s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.277s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.278s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.279s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.279s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.577s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.577s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.577s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.974s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.378s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.378s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.378s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.379s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.380s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.382s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.384s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.387s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.387s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.388s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.388s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.388s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.388s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.389s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.389s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.399s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.399s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.399s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.400s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.401s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.402s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.403s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.403s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.404s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.405s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.405s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.405s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.411s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.411s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.411s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.412s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.413s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.413s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.413s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.415s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.416s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.418s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.419s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.420s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.422s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.423s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.426s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.427s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-12_19-47-52/events.log b/workspace/log/build_2025-04-12_19-47-52/events.log
new file mode 100644
index 0000000..5b5a1cf
--- /dev/null
+++ b/workspace/log/build_2025-04-12_19-47-52/events.log
@@ -0,0 +1,43 @@
+[0.000000] (-) TimerEvent: {}
+[0.002628] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002956] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.003074] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.003822] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.003951] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.097265] (-) TimerEvent: {}
+[0.201211] (-) TimerEvent: {}
+[0.303194] (-) TimerEvent: {}
+[0.408219] (-) TimerEvent: {}
+[0.512002] (-) TimerEvent: {}
+[0.613171] (-) TimerEvent: {}
+[0.714132] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.728567] (-) TimerEvent: {}
+[0.828961] (-) TimerEvent: {}
+[0.931158] (-) TimerEvent: {}
+[0.985354] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.031940] (-) TimerEvent: {}
+[1.088322] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.089775] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.090510] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.091070] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.091980] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.092494] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.096453] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.098267] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.099909] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.100471] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.102001] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.103122] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.104013] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.104921] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.106571] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.108132] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.109605] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.110542] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.111424] (joint_control) StdoutLine: {'line': b'\n'}
+[1.111777] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.112137] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.131291] (joint_control) CommandEnded: {'returncode': 0}
+[1.132236] (-) TimerEvent: {}
+[1.152678] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.154780] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-12_19-47-52/joint_control/command.log b/workspace/log/build_2025-04-12_19-47-52/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-12_19-47-52/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-12_19-47-52/joint_control/stderr.log b/workspace/log/build_2025-04-12_19-47-52/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-12_19-47-52/joint_control/stdout.log b/workspace/log/build_2025-04-12_19-47-52/joint_control/stdout.log
new file mode 100644
index 0000000..8b7006e
--- /dev/null
+++ b/workspace/log/build_2025-04-12_19-47-52/joint_control/stdout.log
@@ -0,0 +1,22 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-12_19-47-52/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-12_19-47-52/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..8b7006e
--- /dev/null
+++ b/workspace/log/build_2025-04-12_19-47-52/joint_control/stdout_stderr.log
@@ -0,0 +1,22 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-12_19-47-52/joint_control/streams.log b/workspace/log/build_2025-04-12_19-47-52/joint_control/streams.log
new file mode 100644
index 0000000..462b55e
--- /dev/null
+++ b/workspace/log/build_2025-04-12_19-47-52/joint_control/streams.log
@@ -0,0 +1,24 @@
+[0.724s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[0.982s] running develop
+[1.086s] running egg_info
+[1.086s] writing joint_control.egg-info/PKG-INFO
+[1.087s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.087s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.088s] writing requirements to joint_control.egg-info/requires.txt
+[1.089s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.093s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.095s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.096s] running build_ext
+[1.097s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.098s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.099s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.100s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.101s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.103s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.105s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.106s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.107s] Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+[1.108s]
+[1.108s] Installed /BA/workspace/build/joint_control
+[1.108s] running symlink_data
+[1.128s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-12_19-47-52/logger_all.log b/workspace/log/build_2025-04-12_19-47-52/logger_all.log
new file mode 100644
index 0000000..d2bb903
--- /dev/null
+++ b/workspace/log/build_2025-04-12_19-47-52/logger_all.log
@@ -0,0 +1,163 @@
+[0.101s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install', '--packages-select', 'joint_control']
+[0.102s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.219s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.220s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.220s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.221s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.221s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.243s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.247s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.248s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.250s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.250s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.250s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.250s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.250s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.250s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.268s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.268s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.268s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.269s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.269s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.272s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.273s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.274s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.276s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.277s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.279s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.279s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.280s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.280s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.591s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.592s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.592s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.002s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.405s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.406s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.406s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.408s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.408s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.411s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.414s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.418s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.419s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.419s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.420s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.420s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.420s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.420s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.421s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.422s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.422s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.422s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.423s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.424s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.425s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.425s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.426s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.427s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.427s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.427s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.427s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.435s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.435s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.436s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.436s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.437s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.437s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.438s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.439s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.441s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.444s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.445s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.446s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.448s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.448s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.450s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.451s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-13_11-50-00/events.log b/workspace/log/build_2025-04-13_11-50-00/events.log
new file mode 100644
index 0000000..cf026d9
--- /dev/null
+++ b/workspace/log/build_2025-04-13_11-50-00/events.log
@@ -0,0 +1,44 @@
+[0.000000] (-) TimerEvent: {}
+[0.001623] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.001722] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.001784] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.001853] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.001981] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.094700] (-) TimerEvent: {}
+[0.196820] (-) TimerEvent: {}
+[0.298810] (-) TimerEvent: {}
+[0.400817] (-) TimerEvent: {}
+[0.505631] (-) TimerEvent: {}
+[0.608745] (-) TimerEvent: {}
+[0.682699] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.709632] (-) TimerEvent: {}
+[0.811658] (-) TimerEvent: {}
+[0.914747] (-) TimerEvent: {}
+[0.948579] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.015758] (-) TimerEvent: {}
+[1.052167] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.052889] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.053503] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.054084] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.054842] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.055396] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.060177] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.062156] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.063637] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.064046] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.065192] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.067115] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.068526] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.069289] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.070440] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.071284] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.072162] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.073123] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.073774] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_1 script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.074830] (joint_control) StdoutLine: {'line': b'\n'}
+[1.075167] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.075501] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.094612] (joint_control) CommandEnded: {'returncode': 0}
+[1.114245] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.115835] (-) TimerEvent: {}
+[1.115922] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-13_11-50-00/joint_control/command.log b/workspace/log/build_2025-04-13_11-50-00/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-13_11-50-00/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-13_11-50-00/joint_control/stderr.log b/workspace/log/build_2025-04-13_11-50-00/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-13_11-50-00/joint_control/stdout.log b/workspace/log/build_2025-04-13_11-50-00/joint_control/stdout.log
new file mode 100644
index 0000000..7cd3fd8
--- /dev/null
+++ b/workspace/log/build_2025-04-13_11-50-00/joint_control/stdout.log
@@ -0,0 +1,23 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_1 script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-13_11-50-00/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-13_11-50-00/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..7cd3fd8
--- /dev/null
+++ b/workspace/log/build_2025-04-13_11-50-00/joint_control/stdout_stderr.log
@@ -0,0 +1,23 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_1 script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-13_11-50-00/joint_control/streams.log b/workspace/log/build_2025-04-13_11-50-00/joint_control/streams.log
new file mode 100644
index 0000000..4aec031
--- /dev/null
+++ b/workspace/log/build_2025-04-13_11-50-00/joint_control/streams.log
@@ -0,0 +1,25 @@
+[0.689s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[0.948s] running develop
+[1.051s] running egg_info
+[1.051s] writing joint_control.egg-info/PKG-INFO
+[1.052s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.052s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.053s] writing requirements to joint_control.egg-info/requires.txt
+[1.054s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.058s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.061s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.062s] running build_ext
+[1.062s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.063s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.066s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.067s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.068s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.069s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.070s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.070s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.071s] Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+[1.072s] Installing trajectory_server_cart_fast_1 script to /BA/workspace/install/joint_control/lib/joint_control
+[1.073s]
+[1.073s] Installed /BA/workspace/build/joint_control
+[1.074s] running symlink_data
+[1.093s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-13_11-50-00/logger_all.log b/workspace/log/build_2025-04-13_11-50-00/logger_all.log
new file mode 100644
index 0000000..96e97da
--- /dev/null
+++ b/workspace/log/build_2025-04-13_11-50-00/logger_all.log
@@ -0,0 +1,163 @@
+[0.104s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install', '--packages-select', 'joint_control']
+[0.105s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.220s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.221s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.221s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.222s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.222s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.222s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.239s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.244s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.244s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.246s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.248s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.250s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.250s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.250s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.250s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.250s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.250s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.268s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.268s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.268s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.268s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.268s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.268s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.269s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.269s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.272s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.273s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.275s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.276s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.277s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.279s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.280s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.281s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.281s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.578s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.578s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.578s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.968s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.371s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.371s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.372s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.373s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.374s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.376s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.379s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.381s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.381s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.382s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.382s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.382s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.382s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.383s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.385s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.386s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.386s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.386s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.387s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.388s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.389s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.389s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.390s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.391s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.391s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.391s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.391s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.397s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.397s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.398s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.398s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.399s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.399s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.400s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.401s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.402s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.404s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.405s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.406s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.407s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.408s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.410s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.410s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-17_15-45-40/events.log b/workspace/log/build_2025-04-17_15-45-40/events.log
new file mode 100644
index 0000000..70219b3
--- /dev/null
+++ b/workspace/log/build_2025-04-17_15-45-40/events.log
@@ -0,0 +1,46 @@
+[0.000000] (-) TimerEvent: {}
+[0.002363] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.003425] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.003527] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.003646] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.003759] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.098049] (-) TimerEvent: {}
+[0.200979] (-) TimerEvent: {}
+[0.301946] (-) TimerEvent: {}
+[0.405008] (-) TimerEvent: {}
+[0.506974] (-) TimerEvent: {}
+[0.612949] (-) TimerEvent: {}
+[0.715110] (-) TimerEvent: {}
+[0.822079] (-) TimerEvent: {}
+[0.875627] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.922910] (-) TimerEvent: {}
+[1.023954] (-) TimerEvent: {}
+[1.124946] (-) TimerEvent: {}
+[1.166622] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.225927] (-) TimerEvent: {}
+[1.277326] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.278692] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.279309] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.280281] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.280979] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.281605] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.287118] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.291157] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.292893] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.293192] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.294686] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.296712] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.297656] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.299072] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.300392] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.301249] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.302734] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.303988] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.304884] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.306893] (joint_control) StdoutLine: {'line': b'\n'}
+[1.307361] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.307654] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.327105] (joint_control) CommandEnded: {'returncode': 0}
+[1.328275] (-) TimerEvent: {}
+[1.358095] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.359702] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-17_15-45-40/joint_control/command.log b/workspace/log/build_2025-04-17_15-45-40/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-17_15-45-40/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-17_15-45-40/joint_control/stderr.log b/workspace/log/build_2025-04-17_15-45-40/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-17_15-45-40/joint_control/stdout.log b/workspace/log/build_2025-04-17_15-45-40/joint_control/stdout.log
new file mode 100644
index 0000000..7e3cb17
--- /dev/null
+++ b/workspace/log/build_2025-04-17_15-45-40/joint_control/stdout.log
@@ -0,0 +1,23 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-17_15-45-40/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-17_15-45-40/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..7e3cb17
--- /dev/null
+++ b/workspace/log/build_2025-04-17_15-45-40/joint_control/stdout_stderr.log
@@ -0,0 +1,23 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-17_15-45-40/joint_control/streams.log b/workspace/log/build_2025-04-17_15-45-40/joint_control/streams.log
new file mode 100644
index 0000000..b4dab1d
--- /dev/null
+++ b/workspace/log/build_2025-04-17_15-45-40/joint_control/streams.log
@@ -0,0 +1,25 @@
+[0.888s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.166s] running develop
+[1.275s] running egg_info
+[1.275s] writing joint_control.egg-info/PKG-INFO
+[1.276s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.277s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.278s] writing requirements to joint_control.egg-info/requires.txt
+[1.278s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.284s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.289s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.289s] running build_ext
+[1.290s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.291s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.293s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.294s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.296s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.297s] Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.298s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.299s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.300s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.302s] Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+[1.303s]
+[1.304s] Installed /BA/workspace/build/joint_control
+[1.304s] running symlink_data
+[1.324s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-17_15-45-40/logger_all.log b/workspace/log/build_2025-04-17_15-45-40/logger_all.log
new file mode 100644
index 0000000..9223a3b
--- /dev/null
+++ b/workspace/log/build_2025-04-17_15-45-40/logger_all.log
@@ -0,0 +1,163 @@
+[0.148s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.148s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.324s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.326s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.327s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.327s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.328s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.328s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.328s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.328s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.328s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.331s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.331s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.347s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.347s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.347s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.347s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.351s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.351s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.351s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.351s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.351s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.353s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.359s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.359s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.359s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.359s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.360s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.360s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.360s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.360s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.360s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.360s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.362s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.364s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.364s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.364s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.366s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.366s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.366s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.393s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.393s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.393s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.394s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.394s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.394s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.394s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.394s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.394s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.394s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.394s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.394s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.394s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.394s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.397s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.398s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.399s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.400s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.401s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.404s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.404s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.406s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.406s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.770s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.770s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.770s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.291s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.726s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.726s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.727s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.728s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.729s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.732s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.735s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.740s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.740s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.740s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.741s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.741s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.741s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.742s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.743s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.751s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.751s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.751s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.752s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.753s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.754s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.755s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.756s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.757s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.757s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.757s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.757s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.766s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.767s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.767s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.767s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.769s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.769s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.770s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.771s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.772s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.775s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.776s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.777s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.779s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.780s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.783s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.784s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-17_16-36-31/events.log b/workspace/log/build_2025-04-17_16-36-31/events.log
new file mode 100644
index 0000000..d47c288
--- /dev/null
+++ b/workspace/log/build_2025-04-17_16-36-31/events.log
@@ -0,0 +1,46 @@
+[0.000000] (-) TimerEvent: {}
+[0.002710] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.004050] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.004145] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.004299] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.004537] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.097677] (-) TimerEvent: {}
+[0.204430] (-) TimerEvent: {}
+[0.309458] (-) TimerEvent: {}
+[0.410590] (-) TimerEvent: {}
+[0.513281] (-) TimerEvent: {}
+[0.615254] (-) TimerEvent: {}
+[0.717469] (-) TimerEvent: {}
+[0.772296] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.818450] (-) TimerEvent: {}
+[0.919437] (-) TimerEvent: {}
+[1.021438] (-) TimerEvent: {}
+[1.087988] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.122573] (-) TimerEvent: {}
+[1.214422] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.215395] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.215988] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.216638] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.217175] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.217840] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.222563] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.223171] (-) TimerEvent: {}
+[1.227911] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.230014] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.230642] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.231887] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.233666] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.234464] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.236091] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.237386] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.238533] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.240557] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.241519] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.242631] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.243811] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.244973] (joint_control) StdoutLine: {'line': b'\n'}
+[1.245385] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.245813] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.268680] (joint_control) CommandEnded: {'returncode': 0}
+[1.301858] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.304157] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-17_16-36-31/joint_control/command.log b/workspace/log/build_2025-04-17_16-36-31/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-17_16-36-31/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-17_16-36-31/joint_control/stderr.log b/workspace/log/build_2025-04-17_16-36-31/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-17_16-36-31/joint_control/stdout.log b/workspace/log/build_2025-04-17_16-36-31/joint_control/stdout.log
new file mode 100644
index 0000000..0d4bfc6
--- /dev/null
+++ b/workspace/log/build_2025-04-17_16-36-31/joint_control/stdout.log
@@ -0,0 +1,24 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-17_16-36-31/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-17_16-36-31/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..0d4bfc6
--- /dev/null
+++ b/workspace/log/build_2025-04-17_16-36-31/joint_control/stdout_stderr.log
@@ -0,0 +1,24 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-17_16-36-31/joint_control/streams.log b/workspace/log/build_2025-04-17_16-36-31/joint_control/streams.log
new file mode 100644
index 0000000..60ec9d8
--- /dev/null
+++ b/workspace/log/build_2025-04-17_16-36-31/joint_control/streams.log
@@ -0,0 +1,26 @@
+[0.776s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.087s] running develop
+[1.211s] running egg_info
+[1.211s] writing joint_control.egg-info/PKG-INFO
+[1.212s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.212s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.213s] writing requirements to joint_control.egg-info/requires.txt
+[1.213s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.218s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.225s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.226s] running build_ext
+[1.226s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.228s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.229s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.230s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.232s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.233s] Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.235s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.236s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.237s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.238s] Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+[1.240s] Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.241s]
+[1.241s] Installed /BA/workspace/build/joint_control
+[1.242s] running symlink_data
+[1.265s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-17_16-36-31/logger_all.log b/workspace/log/build_2025-04-17_16-36-31/logger_all.log
new file mode 100644
index 0000000..fe16732
--- /dev/null
+++ b/workspace/log/build_2025-04-17_16-36-31/logger_all.log
@@ -0,0 +1,163 @@
+[0.112s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.113s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.244s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.245s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.246s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.246s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.246s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.246s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.246s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.246s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.246s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.247s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.249s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.262s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.262s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.262s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.262s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.262s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.263s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.265s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.265s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.265s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.265s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.265s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.265s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.266s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.267s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.267s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.267s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.267s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.267s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.267s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.267s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.267s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.268s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.273s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.274s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.275s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.276s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.276s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.276s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.277s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.277s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.277s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.277s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.277s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.277s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.277s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.278s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.278s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.278s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.279s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.280s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.280s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.281s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.281s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.281s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.281s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.302s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.303s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.303s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.303s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.303s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.303s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.303s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.304s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.304s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.304s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.304s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.304s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.304s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.304s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.307s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.309s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.309s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.311s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.312s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.314s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.315s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.316s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.316s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.636s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.637s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.637s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.090s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.578s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.578s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.579s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.580s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.581s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.584s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.589s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.592s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.593s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.593s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.593s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.594s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.594s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.604s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.604s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.605s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.606s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.606s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.607s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.608s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.609s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.610s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.611s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.611s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.612s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.612s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.612s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.620s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.620s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.620s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.620s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.622s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.622s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.622s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.624s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.625s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.628s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.628s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.629s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.631s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.632s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.634s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.635s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-17_20-16-27/events.log b/workspace/log/build_2025-04-17_20-16-27/events.log
new file mode 100644
index 0000000..14fd7e7
--- /dev/null
+++ b/workspace/log/build_2025-04-17_20-16-27/events.log
@@ -0,0 +1,49 @@
+[0.000000] (-) TimerEvent: {}
+[0.000972] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.001314] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.001461] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.001660] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.002117] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.095086] (-) TimerEvent: {}
+[0.198026] (-) TimerEvent: {}
+[0.303057] (-) TimerEvent: {}
+[0.408046] (-) TimerEvent: {}
+[0.509097] (-) TimerEvent: {}
+[0.613028] (-) TimerEvent: {}
+[0.714033] (-) TimerEvent: {}
+[0.816056] (-) TimerEvent: {}
+[0.920047] (-) TimerEvent: {}
+[0.952967] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[1.021041] (-) TimerEvent: {}
+[1.123041] (-) TimerEvent: {}
+[1.224032] (-) TimerEvent: {}
+[1.313805] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.325060] (-) TimerEvent: {}
+[1.426037] (-) TimerEvent: {}
+[1.459562] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.460971] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.461633] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.462479] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.463266] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.463744] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.470737] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.476834] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.478822] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.479497] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.481375] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.483289] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.484596] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.486379] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.488068] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.489577] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.491423] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.492780] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.494019] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.496482] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.498783] (joint_control) StdoutLine: {'line': b'\n'}
+[1.499458] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.499821] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.524142] (joint_control) CommandEnded: {'returncode': 0}
+[1.526978] (-) TimerEvent: {}
+[1.568353] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.570698] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-17_20-16-27/joint_control/command.log b/workspace/log/build_2025-04-17_20-16-27/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-17_20-16-27/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-17_20-16-27/joint_control/stderr.log b/workspace/log/build_2025-04-17_20-16-27/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-17_20-16-27/joint_control/stdout.log b/workspace/log/build_2025-04-17_20-16-27/joint_control/stdout.log
new file mode 100644
index 0000000..0d4bfc6
--- /dev/null
+++ b/workspace/log/build_2025-04-17_20-16-27/joint_control/stdout.log
@@ -0,0 +1,24 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-17_20-16-27/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-17_20-16-27/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..0d4bfc6
--- /dev/null
+++ b/workspace/log/build_2025-04-17_20-16-27/joint_control/stdout_stderr.log
@@ -0,0 +1,24 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-17_20-16-27/joint_control/streams.log b/workspace/log/build_2025-04-17_20-16-27/joint_control/streams.log
new file mode 100644
index 0000000..c172c82
--- /dev/null
+++ b/workspace/log/build_2025-04-17_20-16-27/joint_control/streams.log
@@ -0,0 +1,26 @@
+[0.966s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.315s] running develop
+[1.458s] running egg_info
+[1.459s] writing joint_control.egg-info/PKG-INFO
+[1.460s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.461s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.461s] writing requirements to joint_control.egg-info/requires.txt
+[1.462s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.469s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.476s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.477s] running build_ext
+[1.478s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.480s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.481s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.483s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.485s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.486s] Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.488s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.490s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.491s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.492s] Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+[1.495s] Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.497s]
+[1.497s] Installed /BA/workspace/build/joint_control
+[1.498s] running symlink_data
+[1.523s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-17_20-16-27/logger_all.log b/workspace/log/build_2025-04-17_20-16-27/logger_all.log
new file mode 100644
index 0000000..3777bc9
--- /dev/null
+++ b/workspace/log/build_2025-04-17_20-16-27/logger_all.log
@@ -0,0 +1,163 @@
+[0.162s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.163s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.318s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.319s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.320s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.320s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.320s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.320s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.320s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.320s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.321s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.321s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.321s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.322s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.322s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.322s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.322s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.322s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.323s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.323s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.340s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.340s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.340s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.340s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.340s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.341s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.341s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.341s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.342s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.342s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.342s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.343s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.343s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.344s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.344s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.344s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.344s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.344s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.347s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.347s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.347s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.347s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.347s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.347s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.358s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.358s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.358s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.359s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.359s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.359s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.359s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.359s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.360s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.360s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.361s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.362s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.363s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.364s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.365s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.366s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.366s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.366s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.366s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.367s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.367s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.397s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.397s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.397s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.398s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.398s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.398s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.398s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.398s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.398s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.398s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.398s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.398s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.398s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.399s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.403s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.404s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.404s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.406s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.406s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.409s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.410s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.411s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.412s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.839s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.840s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.840s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.375s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.931s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.932s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.932s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.935s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.936s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.940s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.946s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.952s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.952s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.953s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.953s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.953s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.953s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.963s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.964s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.965s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.966s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.966s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.968s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.969s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.970s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.972s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.974s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.975s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.976s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.976s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.976s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.985s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.985s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.985s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.986s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.988s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.988s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.989s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.991s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.993s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.997s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.998s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.999s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[2.003s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[2.004s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[2.007s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[2.008s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-17_20-17-24/events.log b/workspace/log/build_2025-04-17_20-17-24/events.log
new file mode 100644
index 0000000..1f6980d
--- /dev/null
+++ b/workspace/log/build_2025-04-17_20-17-24/events.log
@@ -0,0 +1,49 @@
+[0.000000] (-) TimerEvent: {}
+[0.002417] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002775] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.002931] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.003092] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.003234] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.097703] (-) TimerEvent: {}
+[0.200599] (-) TimerEvent: {}
+[0.301576] (-) TimerEvent: {}
+[0.407723] (-) TimerEvent: {}
+[0.508600] (-) TimerEvent: {}
+[0.616569] (-) TimerEvent: {}
+[0.717570] (-) TimerEvent: {}
+[0.820573] (-) TimerEvent: {}
+[0.902073] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.921538] (-) TimerEvent: {}
+[1.022579] (-) TimerEvent: {}
+[1.126605] (-) TimerEvent: {}
+[1.231586] (-) TimerEvent: {}
+[1.273985] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.332612] (-) TimerEvent: {}
+[1.414106] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.415761] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.417219] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.418077] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.418957] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.419877] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.425052] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.430076] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.432120] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.432897] (-) TimerEvent: {}
+[1.433260] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.434961] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.437020] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.438296] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.440375] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.442154] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.443167] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.444533] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.446457] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.447523] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.449200] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.450725] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.452747] (joint_control) StdoutLine: {'line': b'\n'}
+[1.453558] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.454232] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.479328] (joint_control) CommandEnded: {'returncode': 0}
+[1.523671] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.526755] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-17_20-17-24/joint_control/command.log b/workspace/log/build_2025-04-17_20-17-24/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-17_20-17-24/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-17_20-17-24/joint_control/stderr.log b/workspace/log/build_2025-04-17_20-17-24/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-17_20-17-24/joint_control/stdout.log b/workspace/log/build_2025-04-17_20-17-24/joint_control/stdout.log
new file mode 100644
index 0000000..f80b05d
--- /dev/null
+++ b/workspace/log/build_2025-04-17_20-17-24/joint_control/stdout.log
@@ -0,0 +1,25 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-17_20-17-24/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-17_20-17-24/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..f80b05d
--- /dev/null
+++ b/workspace/log/build_2025-04-17_20-17-24/joint_control/stdout_stderr.log
@@ -0,0 +1,25 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-17_20-17-24/joint_control/streams.log b/workspace/log/build_2025-04-17_20-17-24/joint_control/streams.log
new file mode 100644
index 0000000..31ced45
--- /dev/null
+++ b/workspace/log/build_2025-04-17_20-17-24/joint_control/streams.log
@@ -0,0 +1,27 @@
+[0.913s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.274s] running develop
+[1.412s] running egg_info
+[1.413s] writing joint_control.egg-info/PKG-INFO
+[1.414s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.415s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.416s] writing requirements to joint_control.egg-info/requires.txt
+[1.417s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.422s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.427s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.429s] running build_ext
+[1.430s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.432s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.434s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.436s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.438s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.439s] Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+[1.440s] Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.442s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.444s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.445s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.446s] Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+[1.448s] Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.450s]
+[1.451s] Installed /BA/workspace/build/joint_control
+[1.451s] running symlink_data
+[1.477s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-17_20-17-24/logger_all.log b/workspace/log/build_2025-04-17_20-17-24/logger_all.log
new file mode 100644
index 0000000..4d28070
--- /dev/null
+++ b/workspace/log/build_2025-04-17_20-17-24/logger_all.log
@@ -0,0 +1,163 @@
+[0.138s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--packages-select', 'joint_control', '--symlink-install']
+[0.139s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.281s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.282s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.283s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.283s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.283s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.283s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.283s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.284s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.284s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.284s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.284s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.285s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.285s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.285s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.286s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.286s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.286s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.286s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.298s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.300s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.300s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.300s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.302s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.302s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.302s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.303s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.303s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.304s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.304s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.304s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.304s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.304s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.304s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.306s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.306s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.306s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.306s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.313s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.315s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.315s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.316s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.317s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.317s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.317s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.317s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.317s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.317s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.317s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.317s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.318s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.319s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.319s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.319s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.319s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.319s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.320s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.320s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.320s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.320s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.320s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.321s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.321s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.321s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.321s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.321s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.321s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.343s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.343s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.343s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.343s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.344s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.344s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.344s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.344s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.344s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.344s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.344s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.344s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.344s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.344s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.348s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.350s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.350s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.352s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.353s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.356s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.357s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.358s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.358s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.747s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.747s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.747s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.266s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.828s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.829s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.829s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.831s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.832s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.835s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.840s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.845s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.846s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.846s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.846s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.846s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.847s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.848s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.849s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.859s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.860s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.860s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.862s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.864s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.866s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.868s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.871s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.873s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.873s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.874s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.874s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.882s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.883s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.883s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.883s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.885s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.885s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.885s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.887s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.889s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.893s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.894s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.895s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.899s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.900s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.903s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.904s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-19_13-11-32/events.log b/workspace/log/build_2025-04-19_13-11-32/events.log
new file mode 100644
index 0000000..ce84641
--- /dev/null
+++ b/workspace/log/build_2025-04-19_13-11-32/events.log
@@ -0,0 +1,47 @@
+[0.000000] (-) TimerEvent: {}
+[0.002675] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.003003] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.003874] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.003943] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.004056] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.097502] (-) TimerEvent: {}
+[0.199471] (-) TimerEvent: {}
+[0.300551] (-) TimerEvent: {}
+[0.401474] (-) TimerEvent: {}
+[0.502657] (-) TimerEvent: {}
+[0.607211] (-) TimerEvent: {}
+[0.710658] (-) TimerEvent: {}
+[0.732063] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.811456] (-) TimerEvent: {}
+[0.915440] (-) TimerEvent: {}
+[0.997696] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.019639] (-) TimerEvent: {}
+[1.097540] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.098353] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.099050] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.099799] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.100179] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.100557] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.105621] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.107895] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.109446] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.110135] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.111639] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.113138] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.115898] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.117207] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.119122] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.120320] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.121339] (-) TimerEvent: {}
+[1.122102] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.123320] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.124012] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.125121] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.126182] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.127031] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.128709] (joint_control) StdoutLine: {'line': b'\n'}
+[1.129042] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.129270] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.149194] (joint_control) CommandEnded: {'returncode': 0}
+[1.170059] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.172221] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-19_13-11-32/joint_control/command.log b/workspace/log/build_2025-04-19_13-11-32/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-19_13-11-32/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-19_13-11-32/joint_control/stderr.log b/workspace/log/build_2025-04-19_13-11-32/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-19_13-11-32/joint_control/stdout.log b/workspace/log/build_2025-04-19_13-11-32/joint_control/stdout.log
new file mode 100644
index 0000000..42cc3be
--- /dev/null
+++ b/workspace/log/build_2025-04-19_13-11-32/joint_control/stdout.log
@@ -0,0 +1,26 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-19_13-11-32/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-19_13-11-32/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..42cc3be
--- /dev/null
+++ b/workspace/log/build_2025-04-19_13-11-32/joint_control/stdout_stderr.log
@@ -0,0 +1,26 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-19_13-11-32/joint_control/streams.log b/workspace/log/build_2025-04-19_13-11-32/joint_control/streams.log
new file mode 100644
index 0000000..6c42810
--- /dev/null
+++ b/workspace/log/build_2025-04-19_13-11-32/joint_control/streams.log
@@ -0,0 +1,28 @@
+[0.739s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[0.996s] running develop
+[1.094s] running egg_info
+[1.095s] writing joint_control.egg-info/PKG-INFO
+[1.096s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.096s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.096s] writing requirements to joint_control.egg-info/requires.txt
+[1.097s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.102s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.104s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.106s] running build_ext
+[1.106s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.108s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.111s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.113s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.113s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.115s] Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+[1.116s] Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.119s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.119s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.120s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.121s] Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+[1.122s] Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+[1.124s] Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.125s]
+[1.125s] Installed /BA/workspace/build/joint_control
+[1.125s] running symlink_data
+[1.146s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-19_13-11-32/logger_all.log b/workspace/log/build_2025-04-19_13-11-32/logger_all.log
new file mode 100644
index 0000000..faca28d
--- /dev/null
+++ b/workspace/log/build_2025-04-19_13-11-32/logger_all.log
@@ -0,0 +1,163 @@
+[0.166s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install', '--packages-select', 'joint_control']
+[0.167s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.311s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.312s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.312s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.312s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.312s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.313s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.313s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.313s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.313s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.313s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.313s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.313s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.313s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.325s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.325s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.325s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.325s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.325s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.326s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.326s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.326s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.326s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.326s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.326s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.327s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.335s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.335s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.337s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.339s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.340s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.341s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.341s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.341s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.341s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.341s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.341s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.341s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.341s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.341s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.342s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.342s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.342s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.342s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.342s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.342s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.362s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.362s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.362s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.362s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.362s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.362s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.362s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.362s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.362s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.362s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.362s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.362s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.363s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.363s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.365s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.366s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.367s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.369s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.370s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.372s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.373s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.374s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.374s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.696s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.696s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.696s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.111s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.516s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.517s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.517s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.519s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.520s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.523s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.526s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.529s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.529s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.529s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.530s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.530s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.530s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.531s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.531s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.532s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.532s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.532s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.533s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.534s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.535s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.536s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.537s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.538s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.538s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.538s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.538s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.547s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.547s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.547s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.547s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.548s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.548s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.549s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.550s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.551s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.553s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.554s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.554s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.556s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.557s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.559s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.559s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-19_16-14-49/events.log b/workspace/log/build_2025-04-19_16-14-49/events.log
new file mode 100644
index 0000000..da885fb
--- /dev/null
+++ b/workspace/log/build_2025-04-19_16-14-49/events.log
@@ -0,0 +1,49 @@
+[0.000000] (-) TimerEvent: {}
+[0.001802] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002032] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.002445] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.003189] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.003452] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.097138] (-) TimerEvent: {}
+[0.197991] (-) TimerEvent: {}
+[0.300138] (-) TimerEvent: {}
+[0.402016] (-) TimerEvent: {}
+[0.506025] (-) TimerEvent: {}
+[0.609995] (-) TimerEvent: {}
+[0.715078] (-) TimerEvent: {}
+[0.786272] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src/joint_control/joint_control', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.815984] (-) TimerEvent: {}
+[0.917042] (-) TimerEvent: {}
+[1.022046] (-) TimerEvent: {}
+[1.074824] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.122983] (-) TimerEvent: {}
+[1.183659] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.185115] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.185708] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.186507] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.187054] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.187482] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.192333] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.194768] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.196292] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.197057] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.198495] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.199780] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.200525] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.201586] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.203344] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.204152] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.205376] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.206863] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.207752] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.208864] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.210372] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.211280] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.212419] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.213568] (joint_control) StdoutLine: {'line': b'\n'}
+[1.213988] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.214341] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.224215] (-) TimerEvent: {}
+[1.236245] (joint_control) CommandEnded: {'returncode': 0}
+[1.257456] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.259076] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-19_16-14-49/joint_control/command.log b/workspace/log/build_2025-04-19_16-14-49/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-19_16-14-49/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-19_16-14-49/joint_control/stderr.log b/workspace/log/build_2025-04-19_16-14-49/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-19_16-14-49/joint_control/stdout.log b/workspace/log/build_2025-04-19_16-14-49/joint_control/stdout.log
new file mode 100644
index 0000000..75f1c02
--- /dev/null
+++ b/workspace/log/build_2025-04-19_16-14-49/joint_control/stdout.log
@@ -0,0 +1,27 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-19_16-14-49/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-19_16-14-49/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..75f1c02
--- /dev/null
+++ b/workspace/log/build_2025-04-19_16-14-49/joint_control/stdout_stderr.log
@@ -0,0 +1,27 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-19_16-14-49/joint_control/streams.log b/workspace/log/build_2025-04-19_16-14-49/joint_control/streams.log
new file mode 100644
index 0000000..36bc9d0
--- /dev/null
+++ b/workspace/log/build_2025-04-19_16-14-49/joint_control/streams.log
@@ -0,0 +1,29 @@
+[0.796s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.074s] running develop
+[1.181s] running egg_info
+[1.182s] writing joint_control.egg-info/PKG-INFO
+[1.182s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.183s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.184s] writing requirements to joint_control.egg-info/requires.txt
+[1.184s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.189s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.191s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.193s] running build_ext
+[1.194s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.195s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.196s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.197s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.199s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.200s] Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+[1.201s] Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.202s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.204s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.205s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.206s] Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+[1.207s] Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+[1.208s] Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.209s] Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control
+[1.210s]
+[1.211s] Installed /BA/workspace/build/joint_control
+[1.211s] running symlink_data
+[1.234s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-19_16-14-49/logger_all.log b/workspace/log/build_2025-04-19_16-14-49/logger_all.log
new file mode 100644
index 0000000..12656c6
--- /dev/null
+++ b/workspace/log/build_2025-04-19_16-14-49/logger_all.log
@@ -0,0 +1,163 @@
+[0.134s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install', '--packages-select', 'joint_control']
+[0.135s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.270s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.271s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.271s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.271s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.271s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.271s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.271s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.271s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.272s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.272s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.272s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.272s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.273s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.273s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.273s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.273s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.273s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.273s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.285s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.285s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.285s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.285s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.285s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.286s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.286s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.286s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.287s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.287s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.287s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.288s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.288s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.288s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.289s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.290s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.291s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.292s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.298s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.298s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.298s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.299s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.300s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.300s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.302s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.302s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.302s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.303s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.303s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.303s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.303s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.303s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.303s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.303s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.304s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.304s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.304s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.304s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.304s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.304s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.326s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.326s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.326s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.327s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.327s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.327s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.327s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.327s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.327s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.327s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.327s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.327s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.327s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.327s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.330s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.332s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.333s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.336s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.336s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.338s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.339s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.339s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.340s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.667s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.667s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.668s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.132s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.569s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.570s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.570s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.571s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.572s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.576s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.579s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.582s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.583s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.583s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.584s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.584s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.584s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.585s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.585s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.586s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.586s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.586s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.587s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.588s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.589s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.589s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.590s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.591s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.591s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.591s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.591s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.601s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.601s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.602s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.602s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.603s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.604s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.604s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.605s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.607s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.608s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.609s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.610s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.611s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.612s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.614s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.614s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-19_17-51-30/events.log b/workspace/log/build_2025-04-19_17-51-30/events.log
new file mode 100644
index 0000000..917b12f
--- /dev/null
+++ b/workspace/log/build_2025-04-19_17-51-30/events.log
@@ -0,0 +1,48 @@
+[0.000000] (-) TimerEvent: {}
+[0.001860] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002183] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.002916] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.002959] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.003066] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.097601] (-) TimerEvent: {}
+[0.201495] (-) TimerEvent: {}
+[0.302523] (-) TimerEvent: {}
+[0.404653] (-) TimerEvent: {}
+[0.509540] (-) TimerEvent: {}
+[0.611709] (-) TimerEvent: {}
+[0.715399] (-) TimerEvent: {}
+[0.718197] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src/joint_control/joint_control', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.816431] (-) TimerEvent: {}
+[0.918443] (-) TimerEvent: {}
+[1.007120] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.019434] (-) TimerEvent: {}
+[1.120690] (-) TimerEvent: {}
+[1.123673] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.125691] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.127374] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.128694] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.129614] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.130087] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.138035] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.140859] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.142417] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.142784] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.143938] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.145174] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.145933] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.147937] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.148905] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.149809] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.151350] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.152510] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.153590] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.154369] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.155378] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.156124] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.156878] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.158639] (joint_control) StdoutLine: {'line': b'\n'}
+[1.158962] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.159213] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.179256] (joint_control) CommandEnded: {'returncode': 0}
+[1.202128] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.203679] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-19_17-51-30/joint_control/command.log b/workspace/log/build_2025-04-19_17-51-30/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-19_17-51-30/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-19_17-51-30/joint_control/stderr.log b/workspace/log/build_2025-04-19_17-51-30/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-19_17-51-30/joint_control/stdout.log b/workspace/log/build_2025-04-19_17-51-30/joint_control/stdout.log
new file mode 100644
index 0000000..75f1c02
--- /dev/null
+++ b/workspace/log/build_2025-04-19_17-51-30/joint_control/stdout.log
@@ -0,0 +1,27 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-19_17-51-30/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-19_17-51-30/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..75f1c02
--- /dev/null
+++ b/workspace/log/build_2025-04-19_17-51-30/joint_control/stdout_stderr.log
@@ -0,0 +1,27 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-19_17-51-30/joint_control/streams.log b/workspace/log/build_2025-04-19_17-51-30/joint_control/streams.log
new file mode 100644
index 0000000..39721fb
--- /dev/null
+++ b/workspace/log/build_2025-04-19_17-51-30/joint_control/streams.log
@@ -0,0 +1,29 @@
+[0.728s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.007s] running develop
+[1.122s] running egg_info
+[1.124s] writing joint_control.egg-info/PKG-INFO
+[1.125s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.126s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.127s] writing requirements to joint_control.egg-info/requires.txt
+[1.127s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.135s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.139s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.140s] running build_ext
+[1.140s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.141s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.142s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.143s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.145s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.146s] Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+[1.147s] Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.148s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.150s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.151s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.151s] Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+[1.152s] Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+[1.153s] Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.154s] Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control
+[1.156s]
+[1.156s] Installed /BA/workspace/build/joint_control
+[1.156s] running symlink_data
+[1.177s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-19_17-51-30/logger_all.log b/workspace/log/build_2025-04-19_17-51-30/logger_all.log
new file mode 100644
index 0000000..9076535
--- /dev/null
+++ b/workspace/log/build_2025-04-19_17-51-30/logger_all.log
@@ -0,0 +1,163 @@
+[0.107s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install', '--packages-select', 'joint_control']
+[0.108s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.221s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.222s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.222s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.223s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.223s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.223s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.223s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.223s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.223s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.223s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.224s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.232s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.233s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.234s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.235s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.236s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.237s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.238s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.245s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.245s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.246s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.247s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.248s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.249s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.250s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.251s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.251s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.251s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.251s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.251s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.251s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.269s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.269s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.269s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.269s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.270s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.270s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.270s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.270s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.270s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.273s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.274s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.274s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.276s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.277s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.278s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.279s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.280s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.280s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.582s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.582s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.582s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.008s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.454s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.454s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.455s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.456s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.456s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.459s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.464s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.467s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.467s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.467s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.468s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.468s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.468s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.470s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.470s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.471s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.471s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.471s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.472s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.473s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.474s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.475s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.476s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.477s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.477s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.477s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.477s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.483s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.484s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.484s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.484s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.486s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.486s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.486s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.488s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.490s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.492s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.493s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.493s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.495s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.496s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.498s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.499s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-19_17-51-52/events.log b/workspace/log/build_2025-04-19_17-51-52/events.log
new file mode 100644
index 0000000..16ba1a5
--- /dev/null
+++ b/workspace/log/build_2025-04-19_17-51-52/events.log
@@ -0,0 +1,50 @@
+[0.000000] (-) TimerEvent: {}
+[0.001326] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002419] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.002638] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.002695] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.003514] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.097094] (-) TimerEvent: {}
+[0.199771] (-) TimerEvent: {}
+[0.304777] (-) TimerEvent: {}
+[0.406880] (-) TimerEvent: {}
+[0.509809] (-) TimerEvent: {}
+[0.611839] (-) TimerEvent: {}
+[0.716848] (-) TimerEvent: {}
+[0.778490] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src/joint_control/joint_control', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.817766] (-) TimerEvent: {}
+[0.918763] (-) TimerEvent: {}
+[1.019763] (-) TimerEvent: {}
+[1.055710] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.120770] (-) TimerEvent: {}
+[1.161996] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.162668] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.163157] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.163619] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.164211] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.164651] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.168337] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.170968] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.172452] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.172757] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.174136] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.175580] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.176385] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.177238] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.178369] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.179121] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.180323] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.181093] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.182294] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.183108] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.183945] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.185368] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.186395] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.187498] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_new_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.188439] (joint_control) StdoutLine: {'line': b'\n'}
+[1.188935] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.189258] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.209674] (joint_control) CommandEnded: {'returncode': 0}
+[1.221886] (-) TimerEvent: {}
+[1.227911] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.229244] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-19_17-51-52/joint_control/command.log b/workspace/log/build_2025-04-19_17-51-52/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-19_17-51-52/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-19_17-51-52/joint_control/stderr.log b/workspace/log/build_2025-04-19_17-51-52/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-19_17-51-52/joint_control/stdout.log b/workspace/log/build_2025-04-19_17-51-52/joint_control/stdout.log
new file mode 100644
index 0000000..95fbaff
--- /dev/null
+++ b/workspace/log/build_2025-04-19_17-51-52/joint_control/stdout.log
@@ -0,0 +1,28 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_new_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-19_17-51-52/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-19_17-51-52/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..95fbaff
--- /dev/null
+++ b/workspace/log/build_2025-04-19_17-51-52/joint_control/stdout_stderr.log
@@ -0,0 +1,28 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_new_cart script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-19_17-51-52/joint_control/streams.log b/workspace/log/build_2025-04-19_17-51-52/joint_control/streams.log
new file mode 100644
index 0000000..1ffec1e
--- /dev/null
+++ b/workspace/log/build_2025-04-19_17-51-52/joint_control/streams.log
@@ -0,0 +1,30 @@
+[0.787s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.053s] running develop
+[1.159s] running egg_info
+[1.159s] writing joint_control.egg-info/PKG-INFO
+[1.160s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.160s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.161s] writing requirements to joint_control.egg-info/requires.txt
+[1.162s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.165s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.168s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.169s] running build_ext
+[1.170s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.171s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.172s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.173s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.174s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.175s] Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+[1.176s] Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.177s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.178s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.179s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.180s] Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+[1.181s] Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+[1.182s] Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.183s] Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control
+[1.184s] Installing trajectory_server_new_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.185s]
+[1.186s] Installed /BA/workspace/build/joint_control
+[1.189s] running symlink_data
+[1.207s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-19_17-51-52/logger_all.log b/workspace/log/build_2025-04-19_17-51-52/logger_all.log
new file mode 100644
index 0000000..e45ecec
--- /dev/null
+++ b/workspace/log/build_2025-04-19_17-51-52/logger_all.log
@@ -0,0 +1,163 @@
+[0.159s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install', '--packages-select', 'joint_control']
+[0.160s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.311s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.312s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.312s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.312s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.312s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.313s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.313s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.313s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.313s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.328s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.329s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.330s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.331s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.331s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.331s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.332s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.332s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.333s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.333s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.333s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.334s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.334s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.334s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.334s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.335s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.335s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.336s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.337s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.337s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.337s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.337s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.338s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.344s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.345s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.346s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.348s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.348s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.348s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.348s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.349s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.350s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.350s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.351s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.351s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.351s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.352s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.353s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.354s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.354s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.354s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.354s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.354s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.377s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.377s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.377s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.377s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.377s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.378s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.378s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.378s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.378s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.378s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.378s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.378s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.378s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.378s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.382s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.383s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.384s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.386s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.386s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.388s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.389s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.390s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.390s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.750s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.750s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.750s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.175s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.593s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.594s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.594s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.595s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.596s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.598s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.601s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.603s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.603s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.603s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.604s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.604s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.604s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.605s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.605s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.606s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.606s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.607s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.608s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.609s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.610s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.610s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.611s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.612s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.612s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.612s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.612s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.619s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.620s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.620s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.620s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.621s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.621s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.622s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.623s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.624s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.626s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.627s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.627s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.629s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.630s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.632s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.633s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/build_2025-04-20_11-18-39/events.log b/workspace/log/build_2025-04-20_11-18-39/events.log
new file mode 100644
index 0000000..d8d375f
--- /dev/null
+++ b/workspace/log/build_2025-04-20_11-18-39/events.log
@@ -0,0 +1,51 @@
+[0.000000] (-) TimerEvent: {}
+[0.001973] (-) JobUnselected: {'identifier': 'joint_info'}
+[0.002353] (-) JobUnselected: {'identifier': 'mock_robot'}
+[0.002532] (-) JobUnselected: {'identifier': 'painting_robot_control'}
+[0.002594] (joint_control) JobQueued: {'identifier': 'joint_control', 'dependencies': OrderedDict()}
+[0.002666] (joint_control) JobStarted: {'identifier': 'joint_control'}
+[0.098177] (-) TimerEvent: {}
+[0.199973] (-) TimerEvent: {}
+[0.305081] (-) TimerEvent: {}
+[0.409224] (-) TimerEvent: {}
+[0.511153] (-) TimerEvent: {}
+[0.612088] (-) TimerEvent: {}
+[0.714078] (-) TimerEvent: {}
+[0.760841] (joint_control) Command: {'cmd': ['/usr/bin/python3', '-W', 'ignore:setup.py install is deprecated', '-W', 'ignore:easy_install command is deprecated', 'setup.py', 'develop', '--editable', '--build-directory', '/BA/workspace/build/joint_control/build', '--no-deps', 'symlink_data'], 'cwd': '/BA/workspace/build/joint_control', 'env': {'HOSTNAME': '0e38e264ac6b', 'SHLVL': '1', 'LD_LIBRARY_PATH': '/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib', 'HOME': '/root', 'OLDPWD': '/BA/workspace/src/joint_control/joint_control', 'ROS_PYTHON_VERSION': '3', 'COLCON_PREFIX_PATH': '/BA/workspace/install', 'ROS_DISTRO': 'humble', '_': '/usr/bin/colcon', 'ROS_VERSION': '2', 'TERM': 'xterm', 'ROS_LOCALHOST_ONLY': '0', 'PATH': '/opt/ros/humble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'LANG': 'C.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'AMENT_PREFIX_PATH': '/BA/workspace/install/painting_robot_control:/BA/workspace/install/mock_robot:/BA/workspace/install/joint_info:/BA/workspace/install/joint_control:/opt/ros/humble', 'PWD': '/BA/workspace/build/joint_control', 'LC_ALL': 'C.UTF-8', 'PYTHONPATH': '/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/BA/workspace/build/painting_robot_control:/BA/workspace/install/painting_robot_control/lib/python3.10/site-packages:/BA/workspace/build/mock_robot:/BA/workspace/install/mock_robot/lib/python3.10/site-packages:/BA/workspace/build/joint_info:/BA/workspace/install/joint_info/lib/python3.10/site-packages:/BA/workspace/build/joint_control:/BA/workspace/install/joint_control/lib/python3.10/site-packages:/opt/ros/humble/lib/python3.10/site-packages:/opt/ros/humble/local/lib/python3.10/dist-packages', 'COLCON': '1'}, 'shell': False}
+[0.814877] (-) TimerEvent: {}
+[0.919874] (-) TimerEvent: {}
+[1.021009] (-) TimerEvent: {}
+[1.033845] (joint_control) StdoutLine: {'line': b'running develop\n'}
+[1.121968] (-) TimerEvent: {}
+[1.139810] (joint_control) StdoutLine: {'line': b'running egg_info\n'}
+[1.140685] (joint_control) StdoutLine: {'line': b'writing joint_control.egg-info/PKG-INFO\n'}
+[1.141289] (joint_control) StdoutLine: {'line': b'writing dependency_links to joint_control.egg-info/dependency_links.txt\n'}
+[1.142033] (joint_control) StdoutLine: {'line': b'writing entry points to joint_control.egg-info/entry_points.txt\n'}
+[1.142508] (joint_control) StdoutLine: {'line': b'writing requirements to joint_control.egg-info/requires.txt\n'}
+[1.142964] (joint_control) StdoutLine: {'line': b'writing top-level names to joint_control.egg-info/top_level.txt\n'}
+[1.149612] (joint_control) StdoutLine: {'line': b"reading manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.152621] (joint_control) StdoutLine: {'line': b"writing manifest file 'joint_control.egg-info/SOURCES.txt'\n"}
+[1.154094] (joint_control) StdoutLine: {'line': b'running build_ext\n'}
+[1.154411] (joint_control) StdoutLine: {'line': b'Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)\n'}
+[1.155574] (joint_control) StdoutLine: {'line': b'Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.157096] (joint_control) StdoutLine: {'line': b'Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.158612] (joint_control) StdoutLine: {'line': b'Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.159858] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.160801] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.161665] (joint_control) StdoutLine: {'line': b'Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.162753] (joint_control) StdoutLine: {'line': b'Installing test script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.163834] (joint_control) StdoutLine: {'line': b'Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.164791] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.166255] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.166970] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.167909] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.168913] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.170391] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_new_cart script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.171547] (joint_control) StdoutLine: {'line': b'Installing trajectory_server_trapezoidal script to /BA/workspace/install/joint_control/lib/joint_control\n'}
+[1.172620] (joint_control) StdoutLine: {'line': b'\n'}
+[1.173231] (joint_control) StdoutLine: {'line': b'Installed /BA/workspace/build/joint_control\n'}
+[1.173633] (joint_control) StdoutLine: {'line': b'running symlink_data\n'}
+[1.193171] (joint_control) CommandEnded: {'returncode': 0}
+[1.221740] (joint_control) JobEnded: {'identifier': 'joint_control', 'rc': 0}
+[1.223284] (-) TimerEvent: {}
+[1.223406] (-) EventReactorShutdown: {}
diff --git a/workspace/log/build_2025-04-20_11-18-39/joint_control/command.log b/workspace/log/build_2025-04-20_11-18-39/joint_control/command.log
new file mode 100644
index 0000000..ebfe81b
--- /dev/null
+++ b/workspace/log/build_2025-04-20_11-18-39/joint_control/command.log
@@ -0,0 +1,2 @@
+Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-20_11-18-39/joint_control/stderr.log b/workspace/log/build_2025-04-20_11-18-39/joint_control/stderr.log
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/log/build_2025-04-20_11-18-39/joint_control/stdout.log b/workspace/log/build_2025-04-20_11-18-39/joint_control/stdout.log
new file mode 100644
index 0000000..12200d0
--- /dev/null
+++ b/workspace/log/build_2025-04-20_11-18-39/joint_control/stdout.log
@@ -0,0 +1,29 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_new_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_trapezoidal script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-20_11-18-39/joint_control/stdout_stderr.log b/workspace/log/build_2025-04-20_11-18-39/joint_control/stdout_stderr.log
new file mode 100644
index 0000000..12200d0
--- /dev/null
+++ b/workspace/log/build_2025-04-20_11-18-39/joint_control/stdout_stderr.log
@@ -0,0 +1,29 @@
+running develop
+running egg_info
+writing joint_control.egg-info/PKG-INFO
+writing dependency_links to joint_control.egg-info/dependency_links.txt
+writing entry points to joint_control.egg-info/entry_points.txt
+writing requirements to joint_control.egg-info/requires.txt
+writing top-level names to joint_control.egg-info/top_level.txt
+reading manifest file 'joint_control.egg-info/SOURCES.txt'
+writing manifest file 'joint_control.egg-info/SOURCES.txt'
+running build_ext
+Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_new_cart script to /BA/workspace/install/joint_control/lib/joint_control
+Installing trajectory_server_trapezoidal script to /BA/workspace/install/joint_control/lib/joint_control
+
+Installed /BA/workspace/build/joint_control
+running symlink_data
diff --git a/workspace/log/build_2025-04-20_11-18-39/joint_control/streams.log b/workspace/log/build_2025-04-20_11-18-39/joint_control/streams.log
new file mode 100644
index 0000000..549475d
--- /dev/null
+++ b/workspace/log/build_2025-04-20_11-18-39/joint_control/streams.log
@@ -0,0 +1,31 @@
+[0.764s] Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.034s] running develop
+[1.138s] running egg_info
+[1.138s] writing joint_control.egg-info/PKG-INFO
+[1.139s] writing dependency_links to joint_control.egg-info/dependency_links.txt
+[1.140s] writing entry points to joint_control.egg-info/entry_points.txt
+[1.140s] writing requirements to joint_control.egg-info/requires.txt
+[1.140s] writing top-level names to joint_control.egg-info/top_level.txt
+[1.147s] reading manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.150s] writing manifest file 'joint_control.egg-info/SOURCES.txt'
+[1.152s] running build_ext
+[1.152s] Creating /BA/workspace/install/joint_control/lib/python3.10/site-packages/joint-control.egg-link (link to .)
+[1.153s] Installing cart_coords script to /BA/workspace/install/joint_control/lib/joint_control
+[1.155s] Installing joint_control script to /BA/workspace/install/joint_control/lib/joint_control
+[1.156s] Installing plugdata script to /BA/workspace/install/joint_control/lib/joint_control
+[1.158s] Installing plugdata_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.158s] Installing plugdata_cart_fix script to /BA/workspace/install/joint_control/lib/joint_control
+[1.159s] Installing plugdata_cart_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.160s] Installing test script to /BA/workspace/install/joint_control/lib/joint_control
+[1.161s] Installing trajectory_server script to /BA/workspace/install/joint_control/lib/joint_control
+[1.163s] Installing trajectory_server_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.164s] Installing trajectory_server_cart_fast script to /BA/workspace/install/joint_control/lib/joint_control
+[1.165s] Installing trajectory_server_cart_fast_max_acc script to /BA/workspace/install/joint_control/lib/joint_control
+[1.165s] Installing trajectory_server_cart_fast_smooth script to /BA/workspace/install/joint_control/lib/joint_control
+[1.167s] Installing trajectory_server_new script to /BA/workspace/install/joint_control/lib/joint_control
+[1.168s] Installing trajectory_server_new_cart script to /BA/workspace/install/joint_control/lib/joint_control
+[1.169s] Installing trajectory_server_trapezoidal script to /BA/workspace/install/joint_control/lib/joint_control
+[1.170s]
+[1.171s] Installed /BA/workspace/build/joint_control
+[1.171s] running symlink_data
+[1.192s] Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
diff --git a/workspace/log/build_2025-04-20_11-18-39/logger_all.log b/workspace/log/build_2025-04-20_11-18-39/logger_all.log
new file mode 100644
index 0000000..537750a
--- /dev/null
+++ b/workspace/log/build_2025-04-20_11-18-39/logger_all.log
@@ -0,0 +1,163 @@
+[0.139s] DEBUG:colcon:Command line arguments: ['/usr/bin/colcon', 'build', '--symlink-install', '--packages-select', 'joint_control']
+[0.140s] DEBUG:colcon:Parsed command line arguments: Namespace(log_base=None, log_level=None, verb_name='build', build_base='build', install_base='install', merge_install=False, symlink_install=True, test_result_base=None, continue_on_error=False, executor='parallel', parallel_workers=8, event_handlers=None, ignore_user_meta=False, metas=['./colcon.meta'], base_paths=['.'], packages_ignore=None, packages_ignore_regex=None, paths=None, packages_up_to=None, packages_up_to_regex=None, packages_above=None, packages_above_and_dependencies=None, packages_above_depth=None, packages_select_by_dep=None, packages_skip_by_dep=None, packages_skip_up_to=None, packages_select_build_failed=False, packages_skip_build_finished=False, packages_select_test_failures=False, packages_skip_test_passed=False, packages_select=['joint_control'], packages_skip=None, packages_select_regex=None, packages_skip_regex=None, packages_start=None, packages_end=None, cmake_args=None, cmake_target=None, cmake_target_skip_unavailable=False, cmake_clean_cache=False, cmake_clean_first=False, cmake_force_configure=False, ament_cmake_args=None, catkin_cmake_args=None, catkin_skip_building_tests=False, mixin_files=None, mixin=None, verb_parser=, verb_extension=, main=>, mixin_verb=('build',))
+[0.281s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) check parameters
+[0.282s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/Gazebo.meta'
+[0.282s] INFO:colcon.colcon_metadata.package_discovery.colcon_meta:Using configuration from '/root/.colcon/metadata/default/fastrtps.meta'
+[0.282s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) check parameters
+[0.282s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) check parameters
+[0.282s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) check parameters
+[0.282s] Level 1:colcon.colcon_core.package_discovery:discover_packages(colcon_meta) discover
+[0.282s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) discover
+[0.282s] INFO:colcon.colcon_core.package_discovery:Crawling recursively for packages in '/BA/workspace'
+[0.283s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ignore', 'ignore_ament_install']
+[0.283s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore'
+[0.283s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ignore_ament_install'
+[0.283s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_pkg']
+[0.283s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_pkg'
+[0.284s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['colcon_meta']
+[0.284s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'colcon_meta'
+[0.284s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['ros']
+[0.284s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'ros'
+[0.300s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['cmake', 'python']
+[0.300s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'cmake'
+[0.300s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extensions ['python_setup_py']
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(.) by extension 'python_setup_py'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extensions ['ignore', 'ignore_ament_install']
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(build) by extension 'ignore'
+[0.301s] Level 1:colcon.colcon_core.package_identification:_identify(build) ignored
+[0.302s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extensions ['ignore', 'ignore_ament_install']
+[0.302s] Level 1:colcon.colcon_core.package_identification:_identify(install) by extension 'ignore'
+[0.302s] Level 1:colcon.colcon_core.package_identification:_identify(install) ignored
+[0.304s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extensions ['ignore', 'ignore_ament_install']
+[0.304s] Level 1:colcon.colcon_core.package_identification:_identify(log) by extension 'ignore'
+[0.304s] Level 1:colcon.colcon_core.package_identification:_identify(log) ignored
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ignore', 'ignore_ament_install']
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore'
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ignore_ament_install'
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_pkg']
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_pkg'
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['colcon_meta']
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'colcon_meta'
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['ros']
+[0.305s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'ros'
+[0.306s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['cmake', 'python']
+[0.306s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'cmake'
+[0.306s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python'
+[0.306s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extensions ['python_setup_py']
+[0.306s] Level 1:colcon.colcon_core.package_identification:_identify(src) by extension 'python_setup_py'
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ignore', 'ignore_ament_install']
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore'
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ignore_ament_install'
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_pkg']
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_pkg'
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['colcon_meta']
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'colcon_meta'
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extensions ['ros']
+[0.307s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_control) by extension 'ros'
+[0.313s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_control' with type 'ros.ament_python' and name 'joint_control'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ignore', 'ignore_ament_install']
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ignore_ament_install'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_pkg']
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_pkg'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['colcon_meta']
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'colcon_meta'
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extensions ['ros']
+[0.314s] Level 1:colcon.colcon_core.package_identification:_identify(src/joint_info) by extension 'ros'
+[0.316s] DEBUG:colcon.colcon_core.package_identification:Package 'src/joint_info' with type 'ros.ament_python' and name 'joint_info'
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ignore', 'ignore_ament_install']
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore'
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ignore_ament_install'
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_pkg']
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_pkg'
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['colcon_meta']
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'colcon_meta'
+[0.316s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extensions ['ros']
+[0.317s] Level 1:colcon.colcon_core.package_identification:_identify(src/mock_robot) by extension 'ros'
+[0.317s] DEBUG:colcon.colcon_core.package_identification:Package 'src/mock_robot' with type 'ros.ament_python' and name 'mock_robot'
+[0.318s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ignore', 'ignore_ament_install']
+[0.318s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore'
+[0.318s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ignore_ament_install'
+[0.318s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_pkg']
+[0.318s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_pkg'
+[0.318s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['colcon_meta']
+[0.318s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'colcon_meta'
+[0.318s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extensions ['ros']
+[0.318s] Level 1:colcon.colcon_core.package_identification:_identify(src/painting_robot_control) by extension 'ros'
+[0.319s] DEBUG:colcon.colcon_core.package_identification:Package 'src/painting_robot_control' with type 'ros.ament_python' and name 'painting_robot_control'
+[0.319s] Level 1:colcon.colcon_core.package_discovery:discover_packages(recursive) using defaults
+[0.319s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) discover
+[0.319s] Level 1:colcon.colcon_core.package_discovery:discover_packages(ignore) using defaults
+[0.319s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) discover
+[0.319s] Level 1:colcon.colcon_core.package_discovery:discover_packages(path) using defaults
+[0.339s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'joint_info' in 'src/joint_info'
+[0.340s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'mock_robot' in 'src/mock_robot'
+[0.340s] INFO:colcon.colcon_core.package_selection:Skipping not selected package 'painting_robot_control' in 'src/painting_robot_control'
+[0.340s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_args' from command line to 'None'
+[0.340s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target' from command line to 'None'
+[0.340s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_target_skip_unavailable' from command line to 'False'
+[0.340s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_cache' from command line to 'False'
+[0.340s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_clean_first' from command line to 'False'
+[0.340s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'cmake_force_configure' from command line to 'False'
+[0.340s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'ament_cmake_args' from command line to 'None'
+[0.340s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_cmake_args' from command line to 'None'
+[0.340s] Level 5:colcon.colcon_core.verb:set package 'joint_control' build argument 'catkin_skip_building_tests' from command line to 'False'
+[0.340s] DEBUG:colcon.colcon_core.verb:Building package 'joint_control' with the following arguments: {'ament_cmake_args': None, 'build_base': '/BA/workspace/build/joint_control', 'catkin_cmake_args': None, 'catkin_skip_building_tests': False, 'cmake_args': None, 'cmake_clean_cache': False, 'cmake_clean_first': False, 'cmake_force_configure': False, 'cmake_target': None, 'cmake_target_skip_unavailable': False, 'install_base': '/BA/workspace/install/joint_control', 'merge_install': False, 'path': '/BA/workspace/src/joint_control', 'symlink_install': True, 'test_result_base': None}
+[0.340s] INFO:colcon.colcon_core.executor:Executing jobs using 'parallel' executor
+[0.343s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete
+[0.344s] INFO:colcon.colcon_ros.task.ament_python.build:Building ROS package in '/BA/workspace/src/joint_control' with build type 'ament_python'
+[0.345s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'ament_prefix_path')
+[0.347s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_core.shell.bat': Not used on non-Windows systems
+[0.348s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.ps1'
+[0.350s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.dsv'
+[0.350s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/ament_prefix_path.sh'
+[0.351s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.351s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[0.686s] INFO:colcon.colcon_core.task.python.build:Building Python package in '/BA/workspace/src/joint_control'
+[0.687s] INFO:colcon.colcon_core.shell:Skip shell extension 'powershell' for command environment: Not usable outside of PowerShell
+[0.687s] DEBUG:colcon.colcon_core.shell:Skip shell extension 'dsv' for command environment
+[1.112s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoking command in '/BA/workspace/build/joint_control': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.538s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath_develop')
+[1.539s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.ps1'
+[1.540s] DEBUG:colcon.colcon_core.event_handler.log_command:Invoked command in '/BA/workspace/build/joint_control' returned '0': PYTHONPATH=/BA/workspace/build/joint_control/prefix_override:/usr/lib/python3/dist-packages/colcon_core/task/python/colcon_distutils_commands:/BA/workspace/install/joint_control/lib/python3.10/site-packages:${PYTHONPATH} /usr/bin/python3 -W ignore:setup.py install is deprecated -W ignore:easy_install command is deprecated setup.py develop --editable --build-directory /BA/workspace/build/joint_control/build --no-deps symlink_data
+[1.541s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.dsv'
+[1.542s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/build/joint_control/share/joint_control/hook/pythonpath_develop.sh'
+[1.546s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake module files
+[1.550s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control' for CMake config files
+[1.557s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib'
+[1.558s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.558s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/pkgconfig/joint_control.pc'
+[1.558s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/lib/python3.10/site-packages'
+[1.558s] Level 1:colcon.colcon_core.shell:create_environment_hook('joint_control', 'pythonpath')
+[1.559s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.ps1'
+[1.559s] INFO:colcon.colcon_core.shell:Creating environment descriptor '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.dsv'
+[1.560s] INFO:colcon.colcon_core.shell:Creating environment hook '/BA/workspace/install/joint_control/share/joint_control/hook/pythonpath.sh'
+[1.561s] Level 1:colcon.colcon_core.environment:checking '/BA/workspace/install/joint_control/bin'
+[1.561s] Level 1:colcon.colcon_core.environment:create_environment_scripts_only(joint_control)
+[1.561s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.ps1'
+[1.562s] INFO:colcon.colcon_core.shell:Creating package descriptor '/BA/workspace/install/joint_control/share/joint_control/package.dsv'
+[1.563s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.sh'
+[1.564s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.bash'
+[1.565s] INFO:colcon.colcon_core.shell:Creating package script '/BA/workspace/install/joint_control/share/joint_control/package.zsh'
+[1.566s] Level 1:colcon.colcon_core.environment:create_file_with_runtime_dependencies(/BA/workspace/install/joint_control/share/colcon-core/packages/joint_control)
+[1.567s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:closing loop
+[1.567s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:loop closed
+[1.568s] DEBUG:colcon.colcon_parallel_executor.executor.parallel:run_until_complete finished with '0'
+[1.568s] DEBUG:colcon.colcon_core.event_reactor:joining thread
+[1.574s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.notify_send': Could not find 'notify-send'
+[1.574s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.terminal_notifier': Not used on non-Darwin systems
+[1.575s] INFO:colcon.colcon_core.plugin_system:Skipping extension 'colcon_notification.desktop_notification.win32': Not used on non-Windows systems
+[1.575s] INFO:colcon.colcon_notification.desktop_notification:Sending desktop notification using 'notify2'
+[1.576s] DEBUG:colcon.colcon_notification.desktop_notification.notify2:Failed to initialize notify2: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
+[1.576s] DEBUG:colcon.colcon_core.event_reactor:joined thread
+[1.576s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.ps1'
+[1.578s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_ps1.py'
+[1.579s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.ps1'
+[1.581s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.sh'
+[1.582s] INFO:colcon.colcon_core.shell:Creating prefix util module '/BA/workspace/install/_local_setup_util_sh.py'
+[1.582s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.sh'
+[1.584s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.bash'
+[1.585s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.bash'
+[1.587s] INFO:colcon.colcon_core.shell:Creating prefix script '/BA/workspace/install/local_setup.zsh'
+[1.588s] INFO:colcon.colcon_core.shell:Creating prefix chain script '/BA/workspace/install/setup.zsh'
diff --git a/workspace/log/latest_build 3 b/workspace/log/latest_build 3
new file mode 120000
index 0000000..432dc22
--- /dev/null
+++ b/workspace/log/latest_build 3
@@ -0,0 +1 @@
+build_2025-03-27_11-01-14
\ No newline at end of file
diff --git a/workspace/log/latest_build 4 b/workspace/log/latest_build 4
new file mode 120000
index 0000000..a87c46e
--- /dev/null
+++ b/workspace/log/latest_build 4
@@ -0,0 +1 @@
+build_2025-03-27_14-31-25
\ No newline at end of file
diff --git a/workspace/src/.DS_Store b/workspace/src/.DS_Store
new file mode 100644
index 0000000..ddb12ef
Binary files /dev/null and b/workspace/src/.DS_Store differ
diff --git a/workspace/src/ik_test.py b/workspace/src/ik_test.py
new file mode 100644
index 0000000..e7dbf3d
--- /dev/null
+++ b/workspace/src/ik_test.py
@@ -0,0 +1,18 @@
+import roboticstoolbox as rtb
+import spatialmath as sm
+robot = rtb.ERobot.URDF('/BA/workspace/src/painting_robot_control/painting_robot_control/painting_robot.urdf')
+robot1 = rtb.ERobot.URDF('/BA/ur10e.urdf')
+"""print(robot)
+print(T)
+sol = robot.ik_LM(T)
+print(sol[1])"""
+print(robot1.n)
+
+'''T = sm.SE3(0.2,0.2,0.0)*sm.SE3.Rz(0.5)
+#T = robot.fkine([-2,-0.5])
+
+print(T)
+sol = robot.ik_LM(T, mask = [1,0,0,0,0,1], joint_limits = False)
+print(sol[1])
+print(sol[0])
+print(robot.fkine(sol[0]))'''
\ No newline at end of file
diff --git a/workspace/src/joint_control/joint_control/__pycache__/plugdata.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/plugdata.cpython-310.pyc
new file mode 100644
index 0000000..f032c6c
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/plugdata.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/plugdata2.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/plugdata2.cpython-310.pyc
new file mode 100644
index 0000000..867931d
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/plugdata2.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/plugdata3.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/plugdata3.cpython-310.pyc
new file mode 100644
index 0000000..5022c5a
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/plugdata3.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/plugdata_cart.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/plugdata_cart.cpython-310.pyc
new file mode 100644
index 0000000..e5499ab
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/plugdata_cart.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/plugdata_cart_fix.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/plugdata_cart_fix.cpython-310.pyc
new file mode 100644
index 0000000..1942a3c
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/plugdata_cart_fix.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/plugdata_cart_smooth.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/plugdata_cart_smooth.cpython-310.pyc
new file mode 100644
index 0000000..98cee6e
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/plugdata_cart_smooth.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/test.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/test.cpython-310.pyc
new file mode 100644
index 0000000..738b47c
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/test.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_cart_fast.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_cart_fast.cpython-310.pyc
new file mode 100644
index 0000000..34e20fd
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_cart_fast.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_cart_fast_1.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_cart_fast_1.cpython-310.pyc
new file mode 100644
index 0000000..d59df0d
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_cart_fast_1.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_cart_fast_max_acc.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_cart_fast_max_acc.cpython-310.pyc
new file mode 100644
index 0000000..758744f
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_cart_fast_max_acc.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_cart_fast_smooth.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_cart_fast_smooth.cpython-310.pyc
new file mode 100644
index 0000000..da6f157
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_cart_fast_smooth.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_new.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_new.cpython-310.pyc
new file mode 100644
index 0000000..1328bf5
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_new.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_new_cart.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_new_cart.cpython-310.pyc
new file mode 100644
index 0000000..976cd89
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_new_cart.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_trapezoidal.cpython-310.pyc b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_trapezoidal.cpython-310.pyc
new file mode 100644
index 0000000..11c63f4
Binary files /dev/null and b/workspace/src/joint_control/joint_control/__pycache__/trajectory_server_trapezoidal.cpython-310.pyc differ
diff --git a/workspace/src/joint_control/joint_control/plugdata.py b/workspace/src/joint_control/joint_control/plugdata.py
new file mode 100644
index 0000000..7560a51
--- /dev/null
+++ b/workspace/src/joint_control/joint_control/plugdata.py
@@ -0,0 +1,128 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from sensor_msgs.msg import JointState
+from osc4py3.as_allthreads import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+import time
+import numpy as np
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+
+ def __init__(self, joint_names, joint_velocity_limits):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ '/scaled_joint_trajectory_controller/joint_trajectory',
+ 1
+ )
+
+ self.subscription = self.create_subscription(
+ JointState,
+ '/joint_states',
+ self.joint_states_callback,
+ 1 # Increased queue size for joint states
+ )
+
+ # Store received joint positions
+ self.current_joint_positions = [0.0] * len(joint_names)
+ self.joint_names = joint_names
+ self.joint_velocity_limits = joint_velocity_limits
+ self.desired_joint_positions = [0.0] * len(joint_names)
+ self.previous_desired = [0.0] * len(joint_names)
+
+ ip = "0.0.0.0" # Listen on all network interfaces
+ port = 8000 # Must match the sender's port in `joint_state_osc.py`
+
+ osc_startup()
+ osc_udp_server(ip, port, "osc_server")
+ print("Server started on 0.0.0.0:8000 \n ready to receive messages in the following format: /joint_trajectroy [joint_positions] optional: duration as last argument")
+ # Register OSC handler
+ osc_method("/joint_angles", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+
+
+ self.hz = float(input("Enter the desired refresh frequency (Hz): "))
+ # Start the OSC server in a separate thread to avoid blocking the ROS 2 event loop
+ self.create_timer(1/self.hz, self.update_position) # Timer to call osc_process periodically
+
+ def joint_angles_handler(self, *args):
+ """Handles incoming OSC messages for joint positions."""
+ print(f"Received joint angles: {args}")
+ self.desired_joint_positions = [float(i) for i in list(args)]
+
+
+ def joint_states_callback(self, msg):
+ """Callback function to handle incoming joint states."""
+ joint_names = msg.name # List of joint names
+ joint_position_dict = dict(zip(joint_names, self.current_joint_positions))
+ self.current_joint_positions = [joint_position_dict[name] for name in self.joint_names]
+
+ def update_position(self):
+ time1 = time.time()
+ if self.desired_joint_positions == self.previous_desired:
+ return
+ duration = 0
+ for p1, p2, max_vel in zip(self.desired_joint_positions, self.current_joint_positions, self.joint_velocity_limits.values()):
+ duration = max(max(duration, abs(p1 - p2) / max_vel),1/self.hz)# as minimun
+ duration *= 1.8
+ #print(f"Duration: {duration}")
+ #print(f'vel: {max(np.array(self.desired_joint_positions_joint_positions) - np.array(self.joint_positions)/duration)}')
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ point = JointTrajectoryPoint()
+ point.positions = self.desired_joint_positions # Updated joint positions
+ point.time_from_start.sec = int(duration)
+ #point.time_from_start.sec = 10
+ point.time_from_start.nanosec = int((duration - int(duration)) * 1e9)
+ #point.time_from_start.nanosec = 0
+ #point.velocities = [i*0.95 for i in self.joint_velocity_limits.values()]
+ msg.points.append(point)
+ self.publisher.publish(msg)
+ #print(f"desired: {self.desired_joint_positions}")
+ #print(f"desired: {[180/3.141*i for i in self.desired_joint_positions]}")
+ #print(f"current: {[180/3.141*i for i in self.current_joint_positions]}")
+ self.previous_desired = self.desired_joint_positions
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+ robot_urdf = input("Enter the path to the URDF file: ")
+ tree = ET.parse(robot_urdf)
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+
+ joint_velocity_limits = {}
+
+ # Iterate over all joints in the URDF
+ for joint in root.findall('.//joint'):
+ joint_name = joint.get('name') # Get the name of the joint
+
+ # Look for the tag under each joint
+ limit = joint.find('limit')
+
+ if limit is not None:
+ # Extract the velocity limit (if it exists)
+ velocity_limit = limit.get('velocity')
+
+ if velocity_limit is not None:
+ joint_velocity_limits[joint_name] = float(velocity_limit)
+
+ rclpy.init()
+
+ node = ScaledJointTrajectoryPublisher(joint_names, joint_velocity_limits)
+
+ # Run ROS 2 spin, and osc_process will be handled by the timer
+ try:
+ rclpy.spin(node)
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/src/joint_control/joint_control/plugdata_cart.py b/workspace/src/joint_control/joint_control/plugdata_cart.py
new file mode 100644
index 0000000..4b1bdd5
--- /dev/null
+++ b/workspace/src/joint_control/joint_control/plugdata_cart.py
@@ -0,0 +1,158 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from sensor_msgs.msg import JointState
+from osc4py3.as_allthreads import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+import time
+import numpy as np
+import spatialmath as sm
+import roboticstoolbox as rtb
+import os
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+
+ def __init__(self, joint_names, joint_velocity_limits, robot, cost_mask):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ '/scaled_joint_trajectory_controller/joint_trajectory',
+ 1
+ )
+
+ self.subscription = self.create_subscription(
+ JointState,
+ '/joint_states',
+ self.joint_states_callback,
+ 1 # Increased queue size for joint states
+ )
+
+ # Store received joint positions
+ self.current_joint_positions = [0.0] * len(joint_names)
+ self.joint_names = joint_names
+ self.joint_velocity_limits = joint_velocity_limits
+ self.desired_joint_positions = [0.0] * len(joint_names)
+ self.previous_desired = [0.0] * len(joint_names)
+ self.robot = robot
+ self.cost_mask = cost_mask
+
+ ip = "0.0.0.0" # Listen on all network interfaces
+ port = 8000 # Must match the sender's port in `joint_state_osc.py`
+
+ osc_startup()
+ osc_udp_server(ip, port, "osc_server")
+ print("Server started on 0.0.0.0:8000 \n ready to receive messages in the following format: /joint_trajectroy [joint_positions] optional: duration as last argument")
+ # Register OSC handler
+ osc_method("/joint_angles", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+
+
+ self.hz = float(input("Enter the desired refresh frequency (Hz): "))
+ # Start the OSC server in a separate thread to avoid blocking the ROS 2 event loop
+ self.create_timer(1/self.hz, self.update_position) # Timer to call osc_process periodically
+
+ def joint_angles_handler(self, *args):
+ """Handles incoming OSC messages for joint positions."""
+ self.desired_joint_positions = [float(i) for i in list(args)]
+
+
+ def joint_states_callback(self, msg):
+ """Callback function to handle incoming joint states."""
+ joint_position_dict = dict(zip(msg.name, msg.position))
+ self.current_joint_positions = [joint_position_dict[name] for name in self.joint_names]
+
+
+ def update_position(self):
+ if self.desired_joint_positions == self.previous_desired:
+ return
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ steps_per_m = 30
+ if True: #len(args[0]) == len(self.joint_names):
+ prev_duration = 0
+ T1 = self.robot.fkine(self.current_joint_positions)
+ [x,y,z] = T1.t
+ [roll, pitch, yaw] = T1.rpy()
+ x1, y1, z1, roll1, pitch1, yaw1 = self.desired_joint_positions
+ steps = int(np.linalg.norm(np.array([x1-x, y1-y, z1-z])) * steps_per_m)
+ if steps < 2: steps = 2
+ cart_traj = [sm.SE3([x+(x1-x)/(steps-1)*i, y+(y1-y)/(steps-1)*i, z+(z1-z)/(steps-1)*i]) * sm.SE3.RPY([roll+(roll1-roll)/(steps-1)*i, pitch+(pitch1-pitch)/(steps-1)*i, yaw+(yaw1-yaw)/(steps-1)*i]) for i in range(steps)]
+ for j in range(steps):
+ print(cart_traj[j])
+ sol = self.robot.ik_LM(cart_traj[j], q0=self.current_joint_positions, mask = self.cost_mask, joint_limits = True)
+ if sol[1] == 1:
+ duration = 0
+ prev = self.current_joint_positions if j == 0 else prev_sol
+ for p1, p2, max_vel in zip(sol[0], prev, self.joint_velocity_limits.values()):
+ duration = max(duration, abs(p1 - p2) / max_vel)#, 1/self.hz) # as minimun
+ point = JointTrajectoryPoint()
+ point.positions = list(sol[0])
+ #duration *= 2
+ duration += prev_duration
+ prev_duration = duration
+ point.time_from_start.sec = int(duration)
+ point.time_from_start.nanosec = int((duration - int(duration)) * 1e9)
+ msg.points.append(point)
+ prev_sol = list(sol[0])
+ else:
+ print('IK could not find a solution!')
+ prev_sol = self.current_joint_positions
+ msg.header.stamp = self.get_clock().now().to_msg()
+ self.publisher.publish(msg)
+ self.previous_desired = self.desired_joint_positions
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+ robot_urdf = input("Enter the path to the URDF file: ")
+ tree = ET.parse(robot_urdf)
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+ robot = rtb.ERobot.URDF(robot_urdf)
+ joint_velocity_limits = {}
+
+ # Iterate over all joints in the URDF
+ for joint in root.findall('.//joint'):
+ joint_name = joint.get('name') # Get the name of the joint
+
+ # Look for the tag under each joint
+ limit = joint.find('limit')
+
+ if limit is not None:
+ # Extract the velocity limit (if it exists)
+ velocity_limit = limit.get('velocity')
+
+ if velocity_limit is not None:
+ joint_velocity_limits[joint_name] = float(velocity_limit)
+
+ while True:
+ try:
+ print("The cost mask determines which coordinates are used for the IK. Each element of the cost mask corresponds to a catesian coordinate [x, y, z, Rx, Ry, Rz].")
+ print("The cost mask [1, 1, 1, 0, 0, 0] means that the IK will only consider translation and no rotaion.")
+ cost_mask = [int(i) for i in input(f"Enter the cost mask (6 integers (1 or 0), of which <= {robot.n} are 1): ")]
+ if sum(cost_mask) <= robot.n and len(cost_mask) == 6:
+ break
+ else:
+ print(f"Invalid input. Expected 6 integers of which {robot.n if robot.n < 6 else 6} or less are 1.")
+ except ValueError:
+ print("Invalid input. Please enter integers only.")
+ print(f"Cost mask: {cost_mask}")
+
+ rclpy.init()
+
+ node = ScaledJointTrajectoryPublisher(joint_names, joint_velocity_limits, robot, cost_mask)
+
+ # Run ROS 2 spin, and osc_process will be handled by the timer
+ try:
+ rclpy.spin(node)
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/src/joint_control/joint_control/plugdata_cart_fix.py b/workspace/src/joint_control/joint_control/plugdata_cart_fix.py
new file mode 100644
index 0000000..a86d62f
--- /dev/null
+++ b/workspace/src/joint_control/joint_control/plugdata_cart_fix.py
@@ -0,0 +1,162 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from sensor_msgs.msg import JointState
+from osc4py3.as_allthreads import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+import numpy as np
+import spatialmath as sm
+import roboticstoolbox as rtb
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+
+ def __init__(self, joint_names, joint_velocity_limits, robot, cost_mask):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ '/scaled_joint_trajectory_controller/joint_trajectory',
+ 1
+ )
+
+ self.subscription = self.create_subscription(
+ JointState,
+ '/joint_states',
+ self.joint_states_callback,
+ 1 # Increased queue size for joint states
+ )
+
+ # Store received joint positions
+ self.current_joint_positions = [0.0] * len(joint_names)
+ self.joint_names = joint_names
+ self.joint_velocity_limits = joint_velocity_limits
+ self.desired_joint_positions = [0.0] * len(joint_names)
+ self.previous_desired = [0.0] * len(joint_names)
+ self.robot = robot
+ self.cost_mask = cost_mask
+ self.prev_pose = None
+
+ ip = "0.0.0.0" # Listen on all network interfaces
+ port = 8000 # Must match the sender's port in `joint_state_osc.py`
+
+ osc_startup()
+ osc_udp_server(ip, port, "osc_server")
+ print("Server started on 0.0.0.0:8000 \n ready to receive messages in the following format: /joint_trajectroy [joint_positions] optional: duration as last argument")
+ # Register OSC handler
+ osc_method("/joint_angles", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+
+
+ self.hz = float(input("Enter the desired refresh frequency (Hz): "))
+ # Start the OSC server in a separate thread to avoid blocking the ROS 2 event loop
+ self.create_timer(1/self.hz, self.update_position) # Timer to call osc_process periodically
+
+ def joint_angles_handler(self, *args):
+ """Handles incoming OSC messages for joint positions."""
+ self.desired_joint_positions = [float(i) for i in list(args)]
+
+
+ def joint_states_callback(self, msg):
+ """Callback function to handle incoming joint states."""
+ joint_position_dict = dict(zip(msg.name, msg.position))
+ self.current_joint_positions = [joint_position_dict[name] for name in self.joint_names]
+
+
+ def update_position(self):
+ if self.desired_joint_positions == self.previous_desired:
+ return
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ steps_per_m = 100
+ if True: #len(args[0]) == len(self.joint_names):
+ prev_duration = 0
+ if self.prev_pose == None:
+ [x,y,z] = self.robot.fkine(self.current_joint_positions).t
+ [roll, pitch, yaw] = self.robot.fkine(self.current_joint_positions).rpy()
+ else:
+ [x,y,z] = self.prev_pose[:3]
+ [roll, pitch, yaw] = self.prev_pose[3:]
+ x1, y1, z1, roll1, pitch1, yaw1 = self.desired_joint_positions
+ self.prev_pose = self.desired_joint_positions
+ steps = int(np.linalg.norm(np.array([x1, y1, z1])- self.robot.fkine(self.current_joint_positions).t) * steps_per_m)
+ if steps < 2: steps = 2
+ cart_traj = [sm.SE3([x+(x1-x)/(steps-1)*i, y+(y1-y)/(steps-1)*i, z+(z1-z)/(steps-1)*i]) * sm.SE3.RPY([roll+(roll1-roll)/(steps-1)*i, pitch+(pitch1-pitch)/(steps-1)*i, yaw+(yaw1-yaw)/(steps-1)*i]) for i in range(steps)]
+ for j in range(steps):
+ sol = self.robot.ik_LM(cart_traj[j], q0=self.current_joint_positions, mask = self.cost_mask, joint_limits = True) if j == 0 else self.robot.ik_LM(cart_traj[j], q0=prev_sol, mask = self.cost_mask, joint_limits = True)
+ if sol[1] == 1:
+ duration = 0
+ prev = self.current_joint_positions if j == 0 else prev_sol
+ for p1, p2, max_vel in zip(sol[0], prev, self.joint_velocity_limits.values()):
+ duration = max(duration, abs(p1 - p2) / max_vel)#, 1/self.hz) # as minimun
+ prev_sol = list(sol[0])
+ if duration == 0:
+ continue
+ point = JointTrajectoryPoint()
+ point.positions = list(sol[0])
+ duration *= 2
+ duration += prev_duration
+ prev_duration = duration
+ point.time_from_start.sec = int(duration)
+ point.time_from_start.nanosec = int((duration - int(duration)) * 1e9)
+ msg.points.append(point)
+ else:
+ print('IK could not find a solution!')
+ prev_sol = self.current_joint_positions
+ msg.header.stamp = self.get_clock().now().to_msg()
+ self.publisher.publish(msg)
+ self.previous_desired = self.desired_joint_positions
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+ robot_urdf = input("Enter the path to the URDF file: ")
+ tree = ET.parse(robot_urdf)
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+ robot = rtb.ERobot.URDF(robot_urdf)
+ joint_velocity_limits = {}
+
+ # Iterate over all joints in the URDF
+ for joint in root.findall('.//joint'):
+ joint_name = joint.get('name') # Get the name of the joint
+
+ # Look for the tag under each joint
+ limit = joint.find('limit')
+
+ if limit is not None:
+ # Extract the velocity limit (if it exists)
+ velocity_limit = limit.get('velocity')
+
+ if velocity_limit is not None:
+ joint_velocity_limits[joint_name] = float(velocity_limit)
+
+ while True:
+ try:
+ print("The cost mask determines which coordinates are used for the IK. Each element of the cost mask corresponds to a catesian coordinate [x, y, z, Rx, Ry, Rz].")
+ print("The cost mask [1, 1, 1, 0, 0, 0] means that the IK will only consider translation and no rotaion.")
+ cost_mask = [int(i) for i in input(f"Enter the cost mask (6 integers (1 or 0), of which <= {robot.n} are 1): ")]
+ if sum(cost_mask) <= robot.n and len(cost_mask) == 6:
+ break
+ else:
+ print(f"Invalid input. Expected 6 integers of which {robot.n if robot.n < 6 else 6} or less are 1.")
+ except ValueError:
+ print("Invalid input. Please enter integers only.")
+ print(f"Cost mask: {cost_mask}")
+
+ rclpy.init()
+
+ node = ScaledJointTrajectoryPublisher(joint_names, joint_velocity_limits, robot, cost_mask)
+
+ # Run ROS 2 spin, and osc_process will be handled by the timer
+ try:
+ rclpy.spin(node)
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/src/joint_control/joint_control/plugdata_cart_smooth.py b/workspace/src/joint_control/joint_control/plugdata_cart_smooth.py
new file mode 100644
index 0000000..15461c3
--- /dev/null
+++ b/workspace/src/joint_control/joint_control/plugdata_cart_smooth.py
@@ -0,0 +1,232 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from sensor_msgs.msg import JointState
+from osc4py3.as_allthreads import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+import time
+import numpy as np
+import spatialmath as sm
+import roboticstoolbox as rtb
+import os
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+
+ def __init__(self, joint_names, joint_velocity_limits, robot, cost_mask):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ '/scaled_joint_trajectory_controller/joint_trajectory',
+ 1
+ )
+
+ self.subscription = self.create_subscription(
+ JointState,
+ '/joint_states',
+ self.joint_states_callback,
+ 1 # Increased queue size for joint states
+ )
+
+ # Store received joint positions
+ self.current_joint_positions = [0.0] * len(joint_names)
+ self.joint_names = joint_names
+ self.joint_velocity_limits = joint_velocity_limits
+ self.desired_joint_positions = [0.0] * len(joint_names)
+ self.previous_desired = [0.0] * len(joint_names)
+ self.robot = robot
+ self.cost_mask = cost_mask
+
+ ip = "0.0.0.0" # Listen on all network interfaces
+ port = 8000 # Must match the sender's port in `joint_state_osc.py`
+
+ osc_startup()
+ osc_udp_server(ip, port, "osc_server")
+ print("Server started on 0.0.0.0:8000 \n ready to receive messages in the following format: /joint_trajectroy [joint_positions] optional: duration as last argument")
+ # Register OSC handler
+ osc_method("/joint_angles", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+
+
+ self.hz = float(input("Enter the desired refresh frequency (Hz): "))
+ # Start the OSC server in a separate thread to avoid blocking the ROS 2 event loop
+ self.create_timer(1/self.hz, self.update_position) # Timer to call osc_process periodically
+
+ while True:
+ try:
+ self.x_limits = [float(i) if i != 'x' else None for i in input("Enter the lower and upper limits for x (space-separated, enter 'x' for no limit): ").split()]
+ self.y_limits = [float(i) if i != 'x' else None for i in input("Enter the lower and upper limits for y (space-separated, enter 'x' for no limit): ").split()]
+ self.z_limits = [float(i) if i != 'x' else None for i in input("Enter the lower and upper limits for z (space-separated, enter 'x' for no limit): ").split()]
+
+ if len(self.x_limits) != 2 or len(self.y_limits) != 2 or len(self.z_limits) != 2:
+ print("Invalid input. Please enter exactly two values (or leave blank) for each limit.")
+ continue
+
+ if (self.x_limits[0] is not None and self.x_limits[1] is not None and self.x_limits[0] >= self.x_limits[1]) or \
+ (self.y_limits[0] is not None and self.y_limits[1] is not None and self.y_limits[0] >= self.y_limits[1]) or \
+ (self.z_limits[0] is not None and self.z_limits[1] is not None and self.z_limits[0] >= self.z_limits[1]):
+ print("Invalid input. Lower limit must be less than upper limit for each axis.")
+ continue
+
+ print(f"Current limits:")
+ print(f"x: {self.x_limits}")
+ print(f"y: {self.y_limits}")
+ print(f"z: {self.z_limits}")
+ confirm = input("Do you want your robot to move in this range? (y/n): ").strip().lower()
+ if confirm == 'y':
+ break
+ elif confirm == 'n':
+ print("Please re-enter the limits.")
+ else:
+ print("Invalid input. Please enter 'y' or 'n'.")
+ except ValueError:
+ print("Invalid input. Please enter numeric values only.")
+
+ def joint_angles_handler(self, *args):
+ # Ensure the desired joint positions are within the specified limits
+
+ x, y, z, r, p, yaw, *_ = [float(i) for i in list(args)]
+ if self.x_limits[0] is not None:
+ x = max(self.x_limits[0], x)
+ if self.x_limits[1] is not None:
+ x = min(self.x_limits[1], x)
+ if self.y_limits[0] is not None:
+ y = max(self.y_limits[0], y)
+ if self.y_limits[1] is not None:
+ y = min(self.y_limits[1], y)
+ if self.z_limits[0] is not None:
+ z = max(self.z_limits[0], z)
+ if self.z_limits[1] is not None:
+ z = min(self.z_limits[1], z)
+
+ if x != args[0] or y != args[1] or z != args[2]:
+ self.get_logger().warn(
+ f"Desired joint positions adjusted to fit within limits: "
+ f"x={x}, y={y}, z={z} (original: x={args[0]}, y={args[1]}, z={args[2]})"
+ )
+
+ self.desired_joint_positions = [x, y, z, r, p, yaw]
+
+
+ def joint_states_callback(self, msg):
+ """Callback function to handle incoming joint states."""
+ joint_position_dict = dict(zip(msg.name, msg.position))
+ self.current_joint_positions = [joint_position_dict[name] for name in self.joint_names]
+
+ def rampfunction(self, startvalue, blendtime, currenttime):
+ """
+ Ramp function to create a smooth transition from startvalue to 1 over blendtime seconds.
+ """
+ if currenttime < blendtime:
+ return startvalue + (1 - startvalue) * (currenttime / blendtime)
+ else:
+ return 1
+
+ def update_position(self):
+ if self.desired_joint_positions == self.previous_desired:
+ return
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ steps_per_m = 30
+ if True: #len(args[0]) == len(self.joint_names):
+ prev_duration = 0
+ T1 = self.robot.fkine(self.current_joint_positions)
+ [x,y,z] = T1.t
+ [roll, pitch, yaw] = T1.rpy()
+ x1, y1, z1, roll1, pitch1, yaw1 = self.desired_joint_positions
+ steps = int(np.linalg.norm(np.array([x1-x, y1-y, z1-z])) * steps_per_m)
+ if steps < 2: steps = 2
+ cart_traj = [sm.SE3([x+(x1-x)/(steps-1)*i, y+(y1-y)/(steps-1)*i, z+(z1-z)/(steps-1)*i]) * sm.SE3.RPY([roll+(roll1-roll)/(steps-1)*i, pitch+(pitch1-pitch)/(steps-1)*i, yaw+(yaw1-yaw)/(steps-1)*i]) for i in range(steps)]
+ for j in range(steps):
+ sol = self.robot.ik_LM(cart_traj[j], q0=self.current_joint_positions, mask = self.cost_mask, joint_limits = True)
+ if sol[1] == 1:
+ duration = 0
+ prev = self.current_joint_positions if j == 0 else prev_sol
+ for p1, p2, max_vel in zip(sol[0], prev, self.joint_velocity_limits.values()):
+ duration = max(duration, abs(p1 - p2) / max_vel)#, 1/self.hz) # as minimun
+ point = JointTrajectoryPoint()
+ point.positions = list(sol[0])
+ duration /= self.rampfunction(0.1, 2, prev_duration)
+ duration += prev_duration
+ prev_duration = duration
+ point.time_from_start.sec = int(duration)
+ point.time_from_start.nanosec = int((duration - int(duration)) * 1e9)
+ msg.points.append(point)
+ prev_sol = list(sol[0])
+ else:
+ print(f'IK could not find a solution for (x,y,z) = ({cart_traj[j].t}), (roll,pitch,yaw) = ({cart_traj[j].rpy()})!')
+ prev_sol = self.current_joint_positions
+ msg.header.stamp = self.get_clock().now().to_msg()
+ self.publisher.publish(msg)
+ self.previous_desired = self.desired_joint_positions
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+ while True:
+ path_to_urdf = input("Enter the path to the URDF file: ")
+ if os.path.isfile(path_to_urdf):
+ if not path_to_urdf.endswith('.urdf'):
+ print("The file is not a URDF file. Please enter a valid URDF file.")
+ continue
+ break
+ else:
+ print("Invalid path. Please enter a valid path to the URDF file.")
+ tree = ET.parse(path_to_urdf)
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+ robot = rtb.ERobot.URDF(path_to_urdf)
+ joint_velocity_limits = {}
+
+ # Iterate over all joints in the URDF
+ for joint in root.findall('.//joint'):
+ joint_name = joint.get('name') # Get the name of the joint
+
+ # Look for the tag under each joint
+ limit = joint.find('limit')
+
+ if limit is not None:
+ # Extract the velocity limit (if it exists)
+ velocity_limit = limit.get('velocity')
+
+ if velocity_limit is not None:
+ joint_velocity_limits[joint_name] = float(velocity_limit)
+
+ print("The cost mask determines which coordinates are used for the IK. Each element of the cost mask corresponds to a Cartesian coordinate [x, y, z, roll, pitch, yaw].")
+ print("The cost mask [1, 1, 1, 0, 0, 0] means that the IK will only consider translation and no rotation.")
+ while True:
+ try:
+ cost_mask = [int(i) for i in input(f"Enter the cost mask (6 integers (1 or 0), of which <= {robot.n} are 1): ")]
+ if sum(cost_mask) <= robot.n and len(cost_mask) == 6:
+ considered_coords = [coord for coord, use in zip(['x', 'y', 'z', 'roll', 'pitch', 'yaw'], cost_mask) if use == 1]
+ print(f"The following coordinates will be considered for IK: {', '.join(considered_coords)}")
+ confirm = input("Are you sure you want to proceed with this cost mask? (y/n): ").strip().lower()
+ if confirm == 'y':
+ break
+ elif confirm == 'n':
+ print("Please re-enter the cost mask.")
+ else:
+ print("Invalid input. Please enter 'y' or 'n'.")
+ else:
+ print(f"Invalid input. Expected 6 integers of which {robot.n if robot.n < 6 else 6} or less are 1.")
+ except ValueError:
+ print("Invalid input. Please enter integers only.")
+ print(f"Cost mask: {cost_mask}")
+
+ rclpy.init()
+
+ node = ScaledJointTrajectoryPublisher(joint_names, joint_velocity_limits, robot, cost_mask)
+
+ # Run ROS 2 spin, and osc_process will be handled by the timer
+ try:
+ rclpy.spin(node)
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/src/joint_control/joint_control/test.py b/workspace/src/joint_control/joint_control/test.py
new file mode 100644
index 0000000..13b5da5
--- /dev/null
+++ b/workspace/src/joint_control/joint_control/test.py
@@ -0,0 +1,36 @@
+import numpy as np
+from roboticstoolbox.tools.trajectory import mstraj
+
+# Define via points (each row is a joint configuration)
+viapoints = np.array([
+ [0, 0, 0], # Start
+ [0.5, 0.2, -0.1], # Intermediate
+ [1.0, 0.4, 0.2] # End
+])
+
+# Time step
+dt = 0.01 # seconds
+
+# Acceleration time
+tacc = 0.2 # seconds
+
+# Maximum joint velocity per joint (same length as number of joints)
+qdmax = [0.5, 0.3, 0.4] # radians per second
+
+# Optional: starting position (otherwise uses first viapoint)
+q0 = viapoints[0]
+
+# Generate the trajectory
+traj = mstraj(
+ viapoints=viapoints,
+ dt=dt,
+ tacc=tacc,
+ qdmax=qdmax,
+)
+
+# Extract trajectory
+time = traj.t # Time vector
+positions = traj.q # Joint angles (shape: K x N)
+
+print("Time vector:", time)
+print("Joint positions:\n", positions)
\ No newline at end of file
diff --git a/workspace/src/joint_control/joint_control/trajectory_server_cart_fast.py b/workspace/src/joint_control/joint_control/trajectory_server_cart_fast.py
new file mode 100644
index 0000000..05a3c8e
--- /dev/null
+++ b/workspace/src/joint_control/joint_control/trajectory_server_cart_fast.py
@@ -0,0 +1,141 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from osc4py3.as_eventloop import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+import roboticstoolbox as rtb
+import spatialmath as sm
+import numpy as np
+import time
+import os
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+ def __init__(self, joint_names, robot, cost_mask, joint_velocity_limits):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ self.joint_velocity_limits = joint_velocity_limits
+ self.cost_mask = cost_mask
+ self.robot = robot
+ self.trajectroy_topic_name = input("Enter the topic name to which the joint trajectory should be sent to: ")
+
+ if self.trajectroy_topic_name == "":
+ self.trajectroy_topic_name = '/scaled_joint_trajectory_controller/joint_trajectory'
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ self.trajectroy_topic_name,
+ 10
+ )
+
+ # Store received joint positions
+ self.joint_names = joint_names
+
+ self.port = 8000 # UDP port
+
+ osc_startup()
+ osc_udp_server("0.0.0.0", self.port, "osc_server")
+ print(f"Server started on 0.0.0.0:{str(self.port)} \n ready to receive messages in the following format: /joint_trajectroy [tcp_coordinates0, tcp_coordinates1, ...] optional: timestamp as last element of each tcp_coordinates")
+ # Register OSC handler
+ osc_method("/joint_trajectory", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+ print("OSC method registered for /joint_trajectory")
+ def joint_angles_handler(self, *args):
+ """Handles incoming OSC messages for joint positions."""
+ print("Received joint positions")
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ steps = 50
+ if True: #len(args[0]) == len(self.joint_names):
+ prev_duration = 0
+ for i in range(len(args)-1):
+ x, y, z, roll, pitch, yaw = args[i]
+ x1, y1, z1, roll1, pitch1, yaw1 = args[i+1]
+ cart_traj = [sm.SE3([x+(x1-x)/(steps-1)*i, y+(y1-y)/(steps-1)*i, z+(z1-z)/(steps-1)*i]) * sm.SE3.RPY([roll+(roll1-roll)/(steps-1)*i, pitch+(pitch1-pitch)/(steps-1)*i, yaw+(yaw1-yaw)/(steps-1)*i], order='xyz') for i in range(steps)]
+ prev_sol = [0.0,0.0,0.0,0.0,0.0,0.0] if i == 0 else sol[0]
+ for j in (range(steps) if i == 0 else range(1,steps)):
+ #print(cart_traj[j])
+ sol = self.robot.ik_LM(cart_traj[j], q0=[0.0] * len(self.joint_names), mask = self.cost_mask, joint_limits = True) if i == 0 else self.robot.ik_LM(cart_traj[j], q0=prev_sol, mask = self.cost_mask, joint_limits = True)
+ if sol[1] == 1:
+ if list(sol[0])==list(prev_sol): continue
+ duration = 0
+ for p1, p2, max_vel in zip(sol[0], prev_sol, self.joint_velocity_limits.values()):
+ duration = max(duration, abs(p1 - p2) / max_vel) # as minimun
+ point = JointTrajectoryPoint()
+ point.positions = list(sol[0])
+ duration *= 1.6
+ duration += prev_duration
+ prev_duration = duration
+ point.time_from_start.sec = int(duration)
+ point.time_from_start.nanosec = int((duration - int(duration)) * 1e9)
+ msg.points.append(point)
+ prev_sol = list(sol[0])
+ else: print('IK could not find a solution!')
+ msg.header.stamp = self.get_clock().now().to_msg()
+ self.publisher.publish(msg)
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+ while True:
+ path_to_urdf = input("Enter the path to the URDF file: ")
+ if os.path.isfile(path_to_urdf):
+ if not path_to_urdf.endswith('.urdf'):
+ print("The file is not a URDF file. Please enter a valid URDF file.")
+ continue
+ break
+ else:
+ print("Invalid path. Please enter a valid path to the URDF file.")
+ tree = ET.parse(path_to_urdf)
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+ robot = rtb.ERobot.URDF(path_to_urdf)
+ print(robot)
+
+ joint_velocity_limits = {}
+
+ # Iterate over all joints in the URDF
+ for joint in root.findall('.//joint'):
+ joint_name = joint.get('name') # Get the name of the joint
+
+ # Look for the tag under each joint
+ limit = joint.find('limit')
+
+ if limit is not None:
+ # Extract the velocity limit (if it exists)
+ velocity_limit = limit.get('velocity')
+
+ if velocity_limit is not None:
+ joint_velocity_limits[joint_name] = float(velocity_limit)
+
+
+
+ rclpy.init()
+ while True:
+ try:
+ print("The cost mask determines which coordinates are used for the IK. Each element of the cost mask corresponds to a catesian coordinate [x, y, z, Rx, Ry, Rz].")
+ print("The cost mask [1, 1, 1, 0, 0, 0] means that the IK will only consider translation and no rotaion.")
+ cost_mask = [int(i) for i in input(f"Enter the cost mask (6 integers (1 or 0), of which <= {robot.n} are 1): ")]
+ if sum(cost_mask) <= robot.n and len(cost_mask) == 6:
+ break
+ else:
+ print(f"Invalid input. Expected 6 integers of which {robot.n if robot.n < 6 else 6} or less are 1.")
+ except ValueError:
+ print("Invalid input. Please enter integers only.")
+ print(f"Cost mask: {cost_mask}")
+ node = ScaledJointTrajectoryPublisher(joint_names, robot, cost_mask, joint_velocity_limits)
+
+ # Run both ROS 2 and OSC Server together
+ try:
+ while rclpy.ok():
+ osc_process() # Handle one OSC request at a time
+ rclpy.spin_once(node, timeout_sec=0.1) # Process ROS callbacks
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/src/joint_control/joint_control/trajectory_server_cart_fast_max_acc.py b/workspace/src/joint_control/joint_control/trajectory_server_cart_fast_max_acc.py
new file mode 100644
index 0000000..757b29d
--- /dev/null
+++ b/workspace/src/joint_control/joint_control/trajectory_server_cart_fast_max_acc.py
@@ -0,0 +1,166 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from sensor_msgs.msg import JointState
+from osc4py3.as_allthreads import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+import roboticstoolbox as rtb
+import spatialmath as sm
+import numpy as np
+import time
+import os
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+ def __init__(self, joint_names, robot, cost_mask, joint_velocity_limits):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ self.joint_velocity_limits = joint_velocity_limits
+ self.cost_mask = cost_mask
+ self.robot = robot
+ self.trajectroy_topic_name = input("Enter the topic name to which the joint trajectory should be sent to: ")
+
+ if self.trajectroy_topic_name == "":
+ self.trajectroy_topic_name = '/scaled_joint_trajectory_controller/joint_trajectory'
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ self.trajectroy_topic_name,
+ 10
+ )
+ self.subscription = self.create_subscription(
+ JointState,
+ '/joint_states',
+ self.joint_states_callback,
+ 1 # Increased queue size for joint states
+ )
+
+
+
+
+ self.maximum_acceleration = [0.0] * len(joint_names)
+ # Store received joint positions
+ self.joint_names = joint_names
+ for joint in joint_names:
+ self.maximum_acceleration[joint_names.index(joint)] = float(input(f"Enter the maximum acceleration for joint {joint}: "))
+
+ self.port = 8000 # UDP port
+
+ osc_startup()
+ osc_udp_server("0.0.0.0", self.port, "osc_server")
+ print(f"Server started on 0.0.0.0:{str(self.port)} \n ready to receive messages in the following format: /joint_trajectroy [tcp_coordinates0, tcp_coordinates1, ...] optional: timestamp as last element of each tcp_coordinates")
+ # Register OSC handler
+ osc_method("/joint_trajectory", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+ print("OSC method registered for /joint_trajectory")
+
+ def joint_states_callback(self, msg):
+ """Callback function to handle incoming joint states."""
+ joint_position_dict = dict(zip(msg.name, msg.position))
+ self.current_joint_positions = [joint_position_dict[name] for name in self.joint_names]
+ joint_velocity_dict = dict(zip(msg.name, msg.velocity))
+ self.current_joint_velocities = [joint_velocity_dict[name] for name in self.joint_names]
+
+ def joint_angles_handler(self, *args):
+ """Handles incoming OSC messages for joint positions."""
+ print("Received joint positions")
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ steps = 50
+ if True: #len(args[0]) == len(self.joint_names):
+ prev_duration = 0
+ for i in range(len(args)-1):
+ x, y, z, roll, pitch, yaw = args[i]
+ x1, y1, z1, roll1, pitch1, yaw1 = args[i+1]
+ cart_traj = [sm.SE3([x+(x1-x)/(steps-1)*i, y+(y1-y)/(steps-1)*i, z+(z1-z)/(steps-1)*i]) * sm.SE3.RPY([roll+(roll1-roll)/(steps-1)*i, pitch+(pitch1-pitch)/(steps-1)*i, yaw+(yaw1-yaw)/(steps-1)*i], order='xyz') for i in range(steps)]
+ prev_sol = self.current_joint_positions if i == 0 else sol[0]
+ for j in (range(steps) if i == 0 else range(1,steps)):
+ #print(cart_traj[j])
+ sol = self.robot.ik_LM(cart_traj[j], q0=[0.0] * len(self.joint_names), mask = self.cost_mask, joint_limits = True) if i == 0 else self.robot.ik_LM(cart_traj[j], q0=prev_sol, mask = self.cost_mask, joint_limits = True)
+ if sol[1] == 1:
+ if list(sol[0])==list(prev_sol): continue
+ duration = 0
+ for i, (p1, p2, max_vel) in enumerate(zip(sol[0], prev_sol, self.joint_velocity_limits.values())):
+ print(f'joint {i}, p1: {p1}, p2: {p2}, max_vel: {max_vel}')
+ if len(msg.points) == 0: v = self.current_joint_velocities[i]
+ max_acc_duration = np.sqrt((v/self.maximum_acceleration[i])**2 + 2*(abs(p1 - p2)/self.maximum_acceleration[i]))- v/self.maximum_acceleration[i]
+ duration = max(duration, abs(p1 - p2) / max_vel, max_acc_duration) # as minimun
+ v = abs(p1 - p2) / duration
+ print(f'duration: {duration}, max_acc_duration: {max_acc_duration}, max_vel_duration: { abs(p1 - p2) / max_vel}, v: {v}')
+ point = JointTrajectoryPoint()
+ point.positions = list(sol[0])
+ duration += prev_duration
+ prev_duration = duration
+ point.time_from_start.sec = int(duration)
+ point.time_from_start.nanosec = int((duration - int(duration)) * 1e9)
+ msg.points.append(point)
+ prev_sol = list(sol[0])
+ else: print('IK could not find a solution!')
+ msg.header.stamp = self.get_clock().now().to_msg()
+ self.publisher.publish(msg)
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+ while True:
+ path_to_urdf = input("Enter the path to the URDF file: ")
+ if os.path.isfile(path_to_urdf):
+ if not path_to_urdf.endswith('.urdf'):
+ print("The file is not a URDF file. Please enter a valid URDF file.")
+ continue
+ break
+ else:
+ print("Invalid path. Please enter a valid path to the URDF file.")
+ tree = ET.parse(path_to_urdf)
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+ robot = rtb.ERobot.URDF(path_to_urdf)
+ print(robot)
+
+ joint_velocity_limits = {}
+
+ # Iterate over all joints in the URDF
+ for joint in root.findall('.//joint'):
+ joint_name = joint.get('name') # Get the name of the joint
+
+ # Look for the tag under each joint
+ limit = joint.find('limit')
+
+ if limit is not None:
+ # Extract the velocity limit (if it exists)
+ velocity_limit = limit.get('velocity')
+
+ if velocity_limit is not None:
+ joint_velocity_limits[joint_name] = float(velocity_limit)
+
+
+
+ rclpy.init()
+ while True:
+ try:
+ print("The cost mask determines which coordinates are used for the IK. Each element of the cost mask corresponds to a catesian coordinate [x, y, z, Rx, Ry, Rz].")
+ print("The cost mask [1, 1, 1, 0, 0, 0] means that the IK will only consider translation and no rotaion.")
+ cost_mask = [int(i) for i in input(f"Enter the cost mask (6 integers (1 or 0), of which <= {robot.n} are 1): ")]
+ if sum(cost_mask) <= robot.n and len(cost_mask) == 6:
+ break
+ else:
+ print(f"Invalid input. Expected 6 integers of which {robot.n if robot.n < 6 else 6} or less are 1.")
+ except ValueError:
+ print("Invalid input. Please enter integers only.")
+ print(f"Cost mask: {cost_mask}")
+ node = ScaledJointTrajectoryPublisher(joint_names, robot, cost_mask, joint_velocity_limits)
+
+ # Run both ROS 2 and OSC Server together
+ try:
+ while rclpy.ok():
+ osc_process() # Handle one OSC request at a time
+ rclpy.spin_once(node, timeout_sec=0.1) # Process ROS callbacks
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/src/joint_control/joint_control/trajectory_server_cart_fast_smooth.py b/workspace/src/joint_control/joint_control/trajectory_server_cart_fast_smooth.py
new file mode 100644
index 0000000..9e9b64b
--- /dev/null
+++ b/workspace/src/joint_control/joint_control/trajectory_server_cart_fast_smooth.py
@@ -0,0 +1,152 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from osc4py3.as_eventloop import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+import roboticstoolbox as rtb
+import spatialmath as sm
+import numpy as np
+import time
+import os
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+ def __init__(self, joint_names, robot, cost_mask, joint_velocity_limits):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ self.joint_velocity_limits = joint_velocity_limits
+ self.cost_mask = cost_mask
+ self.robot = robot
+ self.trajectroy_topic_name = input("Enter the topic name to which the joint trajectory should be sent to: ")
+
+ if self.trajectroy_topic_name == "":
+ self.trajectroy_topic_name = '/scaled_joint_trajectory_controller/joint_trajectory'
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ self.trajectroy_topic_name,
+ 10
+ )
+
+ # Store received joint positions
+ self.joint_names = joint_names
+
+ self.port = 8000 # UDP port
+
+ osc_startup()
+ osc_udp_server("0.0.0.0", self.port, "osc_server")
+ print(f"Server started on 0.0.0.0:{str(self.port)} \n ready to receive messages in the following format: /joint_trajectroy [tcp_coordinates0, tcp_coordinates1, ...] optional: timestamp as last element of each tcp_coordinates")
+ # Register OSC handler
+ osc_method("/joint_trajectory", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+ print("OSC method registered for /joint_trajectory")
+
+ def rampfunction(self, startvalue, blendtime, currenttime):
+ """
+ Ramp function to create a smooth transition from startvalue to 1 over blendtime seconds.
+ """
+ if currenttime < blendtime:
+ return startvalue + (1 - startvalue) * (currenttime / blendtime)
+ else:
+ return 1
+
+
+ def joint_angles_handler(self, *args):
+ """Handles incoming OSC messages for joint positions."""
+ print("Received joint positions")
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ steps = 50
+ if True: #len(args[0]) == len(self.joint_names):
+ prev_duration = 0
+ for i in range(len(args)-1):
+ x, y, z, roll, pitch, yaw = args[i]
+ x1, y1, z1, roll1, pitch1, yaw1 = args[i+1]
+ cart_traj = [sm.SE3([x+(x1-x)/(steps-1)*i, y+(y1-y)/(steps-1)*i, z+(z1-z)/(steps-1)*i]) * sm.SE3.RPY([roll+(roll1-roll)/(steps-1)*i, pitch+(pitch1-pitch)/(steps-1)*i, yaw+(yaw1-yaw)/(steps-1)*i], order='xyz') for i in range(steps)]
+ prev_sol = [0.0,0.0,0.0,0.0,0.0,0.0] if i == 0 else sol[0]
+ for j in (range(steps) if i == 0 else range(1,steps)):
+ #print(cart_traj[j])
+ sol = self.robot.ik_LM(cart_traj[j], q0=[0.0] * len(self.joint_names), mask = self.cost_mask, joint_limits = True) if i == 0 else self.robot.ik_LM(cart_traj[j], q0=prev_sol, mask = self.cost_mask, joint_limits = True)
+ if sol[1] == 1:
+ if list(sol[0])==list(prev_sol): continue
+ duration = 0
+ for p1, p2, max_vel in zip(sol[0], prev_sol, self.joint_velocity_limits.values()):
+ duration = max(duration, abs(p1 - p2) / max_vel) # as minimun
+ point = JointTrajectoryPoint()
+ point.positions = list(sol[0])
+ duration /= self.rampfunction(0.1, 2, prev_duration)
+ duration += prev_duration
+ prev_duration = duration
+ point.time_from_start.sec = int(duration)
+ point.time_from_start.nanosec = int((duration - int(duration)) * 1e9)
+ msg.points.append(point)
+ prev_sol = list(sol[0])
+ else: print('IK could not find a solution!')
+ msg.header.stamp = self.get_clock().now().to_msg()
+ self.publisher.publish(msg)
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+ while True:
+ path_to_urdf = input("Enter the path to the URDF file: ")
+ if os.path.isfile(path_to_urdf):
+ if not path_to_urdf.endswith('.urdf'):
+ print("The file is not a URDF file. Please enter a valid URDF file.")
+ continue
+ break
+ else:
+ print("Invalid path. Please enter a valid path to the URDF file.")
+ tree = ET.parse(path_to_urdf)
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+ robot = rtb.ERobot.URDF(path_to_urdf)
+ print(robot)
+
+ joint_velocity_limits = {}
+
+ # Iterate over all joints in the URDF
+ for joint in root.findall('.//joint'):
+ joint_name = joint.get('name') # Get the name of the joint
+
+ # Look for the tag under each joint
+ limit = joint.find('limit')
+
+ if limit is not None:
+ # Extract the velocity limit (if it exists)
+ velocity_limit = limit.get('velocity')
+
+ if velocity_limit is not None:
+ joint_velocity_limits[joint_name] = float(velocity_limit)
+
+
+
+ rclpy.init()
+ while True:
+ try:
+ print("The cost mask determines which coordinates are used for the IK. Each element of the cost mask corresponds to a catesian coordinate [x, y, z, Rx, Ry, Rz].")
+ print("The cost mask [1, 1, 1, 0, 0, 0] means that the IK will only consider translation and no rotaion.")
+ cost_mask = [int(i) for i in input(f"Enter the cost mask (6 integers (1 or 0), of which <= {robot.n} are 1): ")]
+ if sum(cost_mask) <= robot.n and len(cost_mask) == 6:
+ break
+ else:
+ print(f"Invalid input. Expected 6 integers of which {robot.n if robot.n < 6 else 6} or less are 1.")
+ except ValueError:
+ print("Invalid input. Please enter integers only.")
+ print(f"Cost mask: {cost_mask}")
+ node = ScaledJointTrajectoryPublisher(joint_names, robot, cost_mask, joint_velocity_limits)
+
+ # Run both ROS 2 and OSC Server together
+ try:
+ while rclpy.ok():
+ osc_process() # Handle one OSC request at a time
+ rclpy.spin_once(node, timeout_sec=0.1) # Process ROS callbacks
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/src/joint_control/joint_control/trajectory_server_new.py b/workspace/src/joint_control/joint_control/trajectory_server_new.py
new file mode 100644
index 0000000..162bcd9
--- /dev/null
+++ b/workspace/src/joint_control/joint_control/trajectory_server_new.py
@@ -0,0 +1,166 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from sensor_msgs.msg import JointState
+from osc4py3.as_allthreads import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+import roboticstoolbox as rtb
+import spatialmath as sm
+import numpy as np
+import time
+import os
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+ def __init__(self, joint_names, robot, cost_mask, joint_velocity_limits):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ self.joint_velocity_limits = [joint_velocity_limits[joint] for joint in joint_names]
+ self.cost_mask = cost_mask
+ self.robot = robot
+ self.trajectroy_topic_name = input("Enter the topic name to which the joint trajectory should be sent to: ")
+
+ if self.trajectroy_topic_name == "":
+ self.trajectroy_topic_name = '/scaled_joint_trajectory_controller/joint_trajectory'
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ self.trajectroy_topic_name,
+ 10
+ )
+ self.subscription = self.create_subscription(
+ JointState,
+ '/joint_states',
+ self.joint_states_callback,
+ 1 # Increased queue size for joint states
+ )
+ # Store received joint positions
+ self.joint_names = joint_names
+
+ self.port = 8000 # UDP port
+
+ osc_startup()
+ osc_udp_server("0.0.0.0", self.port, "osc_server")
+ print(f"Server started on 0.0.0.0:{str(self.port)} \n ready to receive messages in the following format: /joint_trajectroy [tcp_coordinates0, tcp_coordinates1, ...] optional: timestamp as last element of each tcp_coordinates")
+ # Register OSC handler
+ osc_method("/joint_trajectory", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+ print("OSC method registered for /joint_trajectory")
+
+ def joint_states_callback(self, msg):
+ """Callback function to handle incoming joint states."""
+ joint_position_dict = dict(zip(msg.name, msg.position))
+ self.current_joint_positions = [joint_position_dict[name] for name in self.joint_names]
+ joint_velocity_dict = dict(zip(msg.name, msg.velocity))
+ self.current_joint_velocities = [joint_velocity_dict[name] for name in self.joint_names]
+
+
+ def joint_angles_handler(self, *args):
+ """Handles incoming OSC messages for joint positions."""
+ try:
+ print("Received joint positions")
+ viapoints = []
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ steps_per_m = 1
+ for i in range(len(args)-1):
+ x, y, z, roll, pitch, yaw = args[i]
+ x1, y1, z1, roll1, pitch1, yaw1 = args[i+1]
+ steps = int(np.linalg.norm(np.array([x1-x, y1-y, z1-z])) * steps_per_m)
+ if steps < 2: steps = 2
+ cart_traj = [sm.SE3([x+(x1-x)/(steps-1)*i, y+(y1-y)/(steps-1)*i, z+(z1-z)/(steps-1)*i]) * sm.SE3.RPY([roll+(roll1-roll)/(steps-1)*i, pitch+(pitch1-pitch)/(steps-1)*i, yaw+(yaw1-yaw)/(steps-1)*i], order='xyz') for i in range(steps)]
+ if i == 0: prev_sol = self.current_joint_positions
+ for j in (range(steps) if i == 0 else range(1,steps)):
+ #print(cart_traj[j])
+ sol = self.robot.ik_LM(cart_traj[j], q0=prev_sol, mask = self.cost_mask, joint_limits = True)
+ if sol[1] == 1:
+ viapoints.append(list(sol[0]))
+ prev_sol = list(sol[0])
+ else: print('IK could not find a solution!')
+ dt = 0.01
+ tacc = 0.1
+ print(f'length viapoints: {len(viapoints)}')
+ traj = rtb.mstraj(np.array(viapoints), q0 = self.current_joint_positions ,dt=dt, tacc=tacc, qdmax=[1 * i for i in self.joint_velocity_limits])
+ print(len(traj.q))
+ print(len(traj.t))
+ print(traj.t)
+ print(traj.arrive)
+ msg.points = []
+ for i in range(len(traj.q)):
+ point = JointTrajectoryPoint()
+ point.positions = list(traj.q[i])
+ point.time_from_start.sec = int(traj.t[i])
+ point.time_from_start.nanosec = int((traj.t[i] - int(traj.t[i])) * 1e9)
+ #point.time_from_start = rclpy.duration.Duration(seconds=traj.t[i]).to_msg()
+ msg.points.append(point)
+ msg.header.stamp = self.get_clock().now().to_msg()
+ self.publisher.publish(msg)
+ print('published')
+ except Exception as e:
+ print(f'Error in joint angles handler: {e}')
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+ while True:
+ path_to_urdf = input("Enter the path to the URDF file: ")
+ if os.path.isfile(path_to_urdf):
+ if not path_to_urdf.endswith('.urdf'):
+ print("The file is not a URDF file. Please enter a valid URDF file.")
+ continue
+ break
+ else:
+ print("Invalid path. Please enter a valid path to the URDF file.")
+ tree = ET.parse(path_to_urdf)
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+ robot = rtb.ERobot.URDF(path_to_urdf)
+ print(robot)
+
+ joint_velocity_limits = {}
+
+ # Iterate over all joints in the URDF
+ for joint in root.findall('.//joint'):
+ joint_name = joint.get('name') # Get the name of the joint
+
+ # Look for the tag under each joint
+ limit = joint.find('limit')
+
+ if limit is not None:
+ # Extract the velocity limit (if it exists)
+ velocity_limit = limit.get('velocity')
+
+ if velocity_limit is not None:
+ joint_velocity_limits[joint_name] = float(velocity_limit)
+
+
+
+ rclpy.init()
+ while True:
+ try:
+ print("The cost mask determines which coordinates are used for the IK. Each element of the cost mask corresponds to a catesian coordinate [x, y, z, Rx, Ry, Rz].")
+ print("The cost mask [1, 1, 1, 0, 0, 0] means that the IK will only consider translation and no rotaion.")
+ cost_mask = [int(i) for i in input(f"Enter the cost mask (6 integers (1 or 0), of which <= {robot.n} are 1): ")]
+ if sum(cost_mask) <= robot.n and len(cost_mask) == 6:
+ break
+ else:
+ print(f"Invalid input. Expected 6 integers of which {robot.n if robot.n < 6 else 6} or less are 1.")
+ except ValueError:
+ print("Invalid input. Please enter integers only.")
+ print(f"Cost mask: {cost_mask}")
+ node = ScaledJointTrajectoryPublisher(joint_names, robot, cost_mask, joint_velocity_limits)
+
+ # Run both ROS 2 and OSC Server together
+ try:
+ while rclpy.ok():
+ osc_process() # Handle one OSC request at a time
+ rclpy.spin_once(node, timeout_sec=0.1) # Process ROS callbacks
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/src/joint_control/joint_control/trajectory_server_new_cart.py b/workspace/src/joint_control/joint_control/trajectory_server_new_cart.py
new file mode 100644
index 0000000..f4a8263
--- /dev/null
+++ b/workspace/src/joint_control/joint_control/trajectory_server_new_cart.py
@@ -0,0 +1,169 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from sensor_msgs.msg import JointState
+from osc4py3.as_allthreads import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+import roboticstoolbox as rtb
+import spatialmath as sm
+import numpy as np
+import os
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+ def __init__(self, joint_names, robot, cost_mask, joint_velocity_limits):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ self.joint_velocity_limits = joint_velocity_limits
+ self.cost_mask = cost_mask
+ self.robot = robot
+ self.trajectroy_topic_name = input("Enter the topic name to which the joint trajectory should be sent to: ")
+
+ if self.trajectroy_topic_name == "":
+ self.trajectroy_topic_name = '/scaled_joint_trajectory_controller/joint_trajectory'
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ self.trajectroy_topic_name,
+ 10
+ )
+ self.subscription = self.create_subscription(
+ JointState,
+ '/joint_states',
+ self.joint_states_callback,
+ 1 # Increased queue size for joint states
+ )
+ # Store received joint positions
+ self.joint_names = joint_names
+
+ self.port = 8000 # UDP port
+
+ osc_startup()
+ osc_udp_server("0.0.0.0", self.port, "osc_server")
+ print(f"Server started on 0.0.0.0:{str(self.port)} \n ready to receive messages in the following format: /joint_trajectroy [tcp_coordinates0, tcp_coordinates1, ...] optional: timestamp as last element of each tcp_coordinates")
+ # Register OSC handler
+ osc_method("/joint_trajectory", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+ print("OSC method registered for /joint_trajectory")
+
+ def joint_states_callback(self, msg):
+ """Callback function to handle incoming joint states."""
+ joint_position_dict = dict(zip(msg.name, msg.position))
+ self.current_joint_positions = [joint_position_dict[name] for name in self.joint_names]
+ joint_velocity_dict = dict(zip(msg.name, msg.velocity))
+ self.current_joint_velocities = [joint_velocity_dict[name] for name in self.joint_names]
+
+
+ def joint_angles_handler(self, *args):
+ """Handles incoming OSC messages for joint positions."""
+ try:
+ print("Received joint positions")
+ viapoints = np.array([list(i) for i in args])
+ print(1)
+ msg = JointTrajectory()
+ print(2)
+ msg.joint_names = self.joint_names
+ print(3)
+ x,y,z = self.robot.fkine(self.current_joint_positions).t
+ r,p,y = self.robot.fkine(self.current_joint_positions).rpy()
+ q0 = [x, y, z, r, p, y]
+ print(4)
+ traj = rtb.mstraj(viapoints, q0 = q0 ,dt=0.01, tacc=1, qdmax=[0.1]*len(self.joint_names))
+ print(traj.q)
+ print(5)
+ msg.points = []
+ print(6)
+ prev_sol = q0
+ for i in range(len(traj.q)):
+ point = JointTrajectoryPoint()
+ print(8)
+ T = sm.SE3(traj.q[i][:3]) * sm.SE3.RPY(traj.q[i][3:])
+ sol = self.robot.ik_LM(T, q0=prev_sol, mask = self.cost_mask, joint_limits = True)
+ print(9)
+ if sol[1] == 1:
+ print(10)
+ point.positions = list(sol[0])
+ print(11)
+ point.time_from_start.sec = int(traj.t[i])
+ print(12)
+ point.time_from_start.nanosec = int((traj.t[i] - int(traj.t[i])) * 1e9)
+ print(13)
+ msg.points.append(point)
+ print(14)
+ prev_sol = list(sol[0])
+ print(15)
+ else: print('IK could not find a solution!')
+ print(16)
+ msg.header.stamp = self.get_clock().now().to_msg()
+ print(17)
+ self.publisher.publish(msg)
+
+ print('published')
+ except Exception as e:
+ print(f'Error in joint_angles_handler: {e}')
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+ while True:
+ path_to_urdf = input("Enter the path to the URDF file: ")
+ if os.path.isfile(path_to_urdf):
+ if not path_to_urdf.endswith('.urdf'):
+ print("The file is not a URDF file. Please enter a valid URDF file.")
+ continue
+ break
+ else:
+ print("Invalid path. Please enter a valid path to the URDF file.")
+ tree = ET.parse(path_to_urdf)
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+ robot = rtb.ERobot.URDF(path_to_urdf)
+ print(robot)
+
+ joint_velocity_limits = {}
+
+ # Iterate over all joints in the URDF
+ for joint in root.findall('.//joint'):
+ joint_name = joint.get('name') # Get the name of the joint
+
+ # Look for the tag under each joint
+ limit = joint.find('limit')
+
+ if limit is not None:
+ # Extract the velocity limit (if it exists)
+ velocity_limit = limit.get('velocity')
+
+ if velocity_limit is not None:
+ joint_velocity_limits[joint_name] = float(velocity_limit)
+
+
+
+ rclpy.init()
+ while True:
+ try:
+ print("The cost mask determines which coordinates are used for the IK. Each element of the cost mask corresponds to a catesian coordinate [x, y, z, Rx, Ry, Rz].")
+ print("The cost mask [1, 1, 1, 0, 0, 0] means that the IK will only consider translation and no rotaion.")
+ cost_mask = [int(i) for i in input(f"Enter the cost mask (6 integers (1 or 0), of which <= {robot.n} are 1): ")]
+ if sum(cost_mask) <= robot.n and len(cost_mask) == 6:
+ break
+ else:
+ print(f"Invalid input. Expected 6 integers of which {robot.n if robot.n < 6 else 6} or less are 1.")
+ except ValueError:
+ print("Invalid input. Please enter integers only.")
+ print(f"Cost mask: {cost_mask}")
+ node = ScaledJointTrajectoryPublisher(joint_names, robot, cost_mask, joint_velocity_limits)
+
+ # Run both ROS 2 and OSC Server together
+ try:
+ while rclpy.ok():
+ osc_process() # Handle one OSC request at a time
+ rclpy.spin_once(node, timeout_sec=0.1) # Process ROS callbacks
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/src/joint_control/joint_control/trajectory_server_trapezoidal.py b/workspace/src/joint_control/joint_control/trajectory_server_trapezoidal.py
new file mode 100644
index 0000000..ed76f55
--- /dev/null
+++ b/workspace/src/joint_control/joint_control/trajectory_server_trapezoidal.py
@@ -0,0 +1,185 @@
+import rclpy
+from rclpy.node import Node
+from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
+from sensor_msgs.msg import JointState
+from osc4py3.as_allthreads import *
+from osc4py3 import oscmethod as osm
+import xml.etree.ElementTree as ET
+import roboticstoolbox as rtb
+import spatialmath as sm
+import numpy as np
+import time
+import os
+
+class ScaledJointTrajectoryPublisher(Node):
+ """Node to publish joint trajectories based on OSC messages."""
+ def __init__(self, joint_names, robot, cost_mask, joint_velocity_limits):
+ super().__init__('scaled_joint_trajectory_publisher')
+
+ self.joint_velocity_limits = [joint_velocity_limits[joint] for joint in joint_names]
+ self.cost_mask = cost_mask
+ self.robot = robot
+ self.trajectroy_topic_name = input("Enter the topic name to which the joint trajectory should be sent to: ")
+
+ if self.trajectroy_topic_name == "":
+ self.trajectroy_topic_name = '/scaled_joint_trajectory_controller/joint_trajectory'
+
+ # ROS2 Publisher
+ self.publisher = self.create_publisher(
+ JointTrajectory,
+ self.trajectroy_topic_name,
+ 10
+ )
+ self.subscription = self.create_subscription(
+ JointState,
+ '/joint_states',
+ self.joint_states_callback,
+ 1 # Increased queue size for joint states
+ )
+
+
+
+
+ self.maximum_acceleration = [0.0] * len(joint_names)
+ # Store received joint positions
+ self.joint_names = joint_names
+ for joint in joint_names:
+ self.maximum_acceleration[joint_names.index(joint)] = float(input(f"Enter the maximum acceleration for joint {joint}: "))
+
+ self.port = 8000 # UDP port
+
+ osc_startup()
+ osc_udp_server("0.0.0.0", self.port, "osc_server")
+ print(f"Server started on 0.0.0.0:{str(self.port)} \n ready to receive messages in the following format: /joint_trajectroy [tcp_coordinates0, tcp_coordinates1, ...] optional: timestamp as last element of each tcp_coordinates")
+ # Register OSC handler
+ osc_method("/joint_trajectory", self.joint_angles_handler, argscheme=osm.OSCARG_DATAUNPACK)
+ print("OSC method registered for /joint_trajectory")
+
+ def joint_states_callback(self, msg):
+ """Callback function to handle incoming joint states."""
+ joint_position_dict = dict(zip(msg.name, msg.position))
+ self.current_joint_positions = [joint_position_dict[name] for name in self.joint_names]
+ joint_velocity_dict = dict(zip(msg.name, msg.velocity))
+ self.current_joint_velocities = [joint_velocity_dict[name] for name in self.joint_names]
+
+ def joint_angles_handler(self, *args):
+ """Handles incoming OSC messages for joint positions."""
+ try:
+ print("Received joint positions")
+ msg = JointTrajectory()
+ msg.joint_names = self.joint_names
+ steps_per_m = 50
+
+ prev_duration = 0
+ for i in range(len(args)-1):
+ x, y, z, roll, pitch, yaw = args[i]
+ x1, y1, z1, roll1, pitch1, yaw1 = args[i+1]
+ steps = int(np.linalg.norm([x1-x, y1-y, z1-z])*steps_per_m)
+ if steps <= 1: steps = 2
+ cart_traj = [sm.SE3([x+(x1-x)/(steps-1)*i, y+(y1-y)/(steps-1)*i, z+(z1-z)/(steps-1)*i]) * sm.SE3.RPY([roll+(roll1-roll)/(steps-1)*i, pitch+(pitch1-pitch)/(steps-1)*i, yaw+(yaw1-yaw)/(steps-1)*i], order='xyz') for i in range(steps)]
+ prev_sol = self.current_joint_positions if i == 0 else sol[0]
+ sol_set = []
+ for j in (range(steps) if i == 0 else range(1,steps)):
+ sol = self.robot.ik_LM(cart_traj[j], q0=[0.0] * len(self.joint_names), mask = self.cost_mask, joint_limits = True) if i == 0 else self.robot.ik_LM(cart_traj[j], q0=prev_sol, mask = self.cost_mask, joint_limits = True)
+ if sol[1] == 1:
+ sol_set.append(sol[0])
+ prev_sol = list(sol[0])
+ else: print(f'IK could not find a solution for (x,y,z) = ({cart_traj[j].t}), (roll,pitch,yaw) = ({cart_traj[j].rpy()})!')
+ distance = abs(sol_set[0]-sol_set[-1])
+ ts= distance/np.array(self.joint_velocity_limits)+2*np.array(self.joint_velocity_limits)/np.array(self.maximum_acceleration)
+ t = max(ts)
+ idx = list(ts).index(t)
+ s_acc = self.joint_velocity_limits[idx]**2/(2*self.maximum_acceleration[idx])
+ print(f"t: {t}, idx: {idx}, s_acc: {s_acc}")
+ print(f"sol_set: {sol_set}")
+
+ for sol in sol_set:
+ print(f"sol: {sol}")
+ s = abs(sol[idx]-sol_set[0][idx])
+ print(f"sol_set[0][idx]: {sol_set[0][idx]}, sol[idx]: {sol[idx]}, s: {s}")
+ if s <= s_acc:
+ duration = np.sqrt(s/self.maximum_acceleration[idx])
+ print(f"acceleration phase, duration: {duration}")
+ elif s <= sol_set[-1][idx]-s_acc:
+ duration = self.joint_velocity_limits[idx]/self.maximum_acceleration[idx] + (s-s_acc)/self.joint_velocity_limits[idx]
+ print(f"constant velocity phase, duration: {duration}")
+ else:
+ duration = t-np.sqrt((sol_set[-1][idx]-s)/self.maximum_acceleration[idx])
+ print(f"deceleration phase, duration: {duration}")
+
+ point = JointTrajectoryPoint()
+ point.positions = list(sol)
+ duration += prev_duration
+ point.time_from_start.sec = int(duration)
+ point.time_from_start.nanosec = int((duration - int(duration)) * 1e9)
+ msg.points.append(point)
+ prev_duration = duration
+ msg.header.stamp = self.get_clock().now().to_msg()
+ self.publisher.publish(msg)
+ except Exception as e:
+ print(f"Error in joint angles handler: {e}")
+
+def main():
+ """Main function to get joint names and start the ROS 2 & OSC system."""
+ while True:
+ path_to_urdf = input("Enter the path to the URDF file: ")
+ if os.path.isfile(path_to_urdf):
+ if not path_to_urdf.endswith('.urdf'):
+ print("The file is not a URDF file. Please enter a valid URDF file.")
+ continue
+ break
+ else:
+ print("Invalid path. Please enter a valid path to the URDF file.")
+ tree = ET.parse(path_to_urdf)
+ root = tree.getroot()
+ joint_names = [joint.get('name') for joint in root.findall('joint') if joint.get('type') == 'revolute' or joint.get('type') == 'continuous' or joint.get('type') == 'prismatic']
+ robot = rtb.ERobot.URDF(path_to_urdf)
+ print(robot)
+
+ joint_velocity_limits = {}
+
+ # Iterate over all joints in the URDF
+ for joint in root.findall('.//joint'):
+ joint_name = joint.get('name') # Get the name of the joint
+
+ # Look for the tag under each joint
+ limit = joint.find('limit')
+
+ if limit is not None:
+ # Extract the velocity limit (if it exists)
+ velocity_limit = limit.get('velocity')
+
+ if velocity_limit is not None:
+ joint_velocity_limits[joint_name] = float(velocity_limit)
+
+
+
+ rclpy.init()
+ while True:
+ try:
+ print("The cost mask determines which coordinates are used for the IK. Each element of the cost mask corresponds to a catesian coordinate [x, y, z, Rx, Ry, Rz].")
+ print("The cost mask [1, 1, 1, 0, 0, 0] means that the IK will only consider translation and no rotaion.")
+ cost_mask = [int(i) for i in input(f"Enter the cost mask (6 integers (1 or 0), of which <= {robot.n} are 1): ")]
+ if sum(cost_mask) <= robot.n and len(cost_mask) == 6:
+ break
+ else:
+ print(f"Invalid input. Expected 6 integers of which {robot.n if robot.n < 6 else 6} or less are 1.")
+ except ValueError:
+ print("Invalid input. Please enter integers only.")
+ print(f"Cost mask: {cost_mask}")
+ node = ScaledJointTrajectoryPublisher(joint_names, robot, cost_mask, joint_velocity_limits)
+
+ # Run both ROS 2 and OSC Server together
+ try:
+ while rclpy.ok():
+ osc_process() # Handle one OSC request at a time
+ rclpy.spin_once(node, timeout_sec=0.1) # Process ROS callbacks
+ except KeyboardInterrupt:
+ print("")
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+ osc_terminate()
+
+if __name__ == '__main__':
+ main()
diff --git a/workspace/src/mock_robot/.DS_Store b/workspace/src/mock_robot/.DS_Store
new file mode 100644
index 0000000..efab284
Binary files /dev/null and b/workspace/src/mock_robot/.DS_Store differ
diff --git a/workspace/src/mock_robot/mock_robot/.DS_Store b/workspace/src/mock_robot/mock_robot/.DS_Store
new file mode 100644
index 0000000..a3281f9
Binary files /dev/null and b/workspace/src/mock_robot/mock_robot/.DS_Store differ
diff --git a/workspace/src/mock_robot/mock_robot/__init__.py b/workspace/src/mock_robot/mock_robot/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/src/mock_robot/mock_robot/__pycache__/__init__.cpython-310.pyc b/workspace/src/mock_robot/mock_robot/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..4aa3df0
Binary files /dev/null and b/workspace/src/mock_robot/mock_robot/__pycache__/__init__.cpython-310.pyc differ
diff --git a/workspace/src/mock_robot/mock_robot/__pycache__/mock_node_2.cpython-310.pyc b/workspace/src/mock_robot/mock_robot/__pycache__/mock_node_2.cpython-310.pyc
new file mode 100644
index 0000000..7be4eab
Binary files /dev/null and b/workspace/src/mock_robot/mock_robot/__pycache__/mock_node_2.cpython-310.pyc differ
diff --git a/workspace/src/mock_robot/mock_robot/__pycache__/mock_robot_2.cpython-310.pyc b/workspace/src/mock_robot/mock_robot/__pycache__/mock_robot_2.cpython-310.pyc
new file mode 100644
index 0000000..260decd
Binary files /dev/null and b/workspace/src/mock_robot/mock_robot/__pycache__/mock_robot_2.cpython-310.pyc differ
diff --git a/workspace/src/mock_robot/mock_robot/__pycache__/robot_node.cpython-310.pyc b/workspace/src/mock_robot/mock_robot/__pycache__/robot_node.cpython-310.pyc
new file mode 100644
index 0000000..454d38d
Binary files /dev/null and b/workspace/src/mock_robot/mock_robot/__pycache__/robot_node.cpython-310.pyc differ
diff --git a/workspace/src/mock_robot/mock_robot/mock_robot.urdf b/workspace/src/mock_robot/mock_robot/mock_robot.urdf
new file mode 100644
index 0000000..35a3608
--- /dev/null
+++ b/workspace/src/mock_robot/mock_robot/mock_robot.urdf
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/workspace/src/mock_robot/mock_robot/robot_node.py b/workspace/src/mock_robot/mock_robot/robot_node.py
new file mode 100644
index 0000000..daff801
--- /dev/null
+++ b/workspace/src/mock_robot/mock_robot/robot_node.py
@@ -0,0 +1,73 @@
+import rclpy
+from rclpy.node import Node
+from sensor_msgs.msg import JointState
+from trajectory_msgs.msg import JointTrajectory
+
+import numpy as np
+import time
+
+class RobotNode(Node):
+
+ def __init__(self):
+ super().__init__('robot_node')
+
+ self.l1 = 0.5
+ self.l2 = 0.3
+ self.x = self.l1 + self.l2
+ self.y = 0.0
+ self.theta1 = 0.0
+ self.theta2 = 0.0
+
+ self.publisher = self.create_publisher(
+ JointState,
+ '/joint_states',
+ 1
+ )
+
+ timer_period = 0.01 # seconds
+ self.timer = self.create_timer(timer_period, self.timer_callback)
+ self.i = 0
+
+ self.subcriber = self.create_subscription(
+ JointTrajectory,
+ '/scaled_joint_trajectory_controller/joint_trajectory',
+ self.joint_trajectory_callback,
+ 1
+ )
+
+ def timer_callback(self):
+ msg = JointState()
+ msg.name = ['joint1', 'joint2']
+ msg.header.stamp = self.get_clock().now().to_msg()
+ msg.position = [self.theta1, self.theta2]
+ msg.velocity = [self.x, self.y]
+ self.publisher.publish(msg)
+
+ def joint_trajectory_callback(self, msg):
+ joint_names = msg.joint_names
+ prev_timetag = 0
+ for point in msg.points:
+ duration = point.time_from_start.sec + point.time_from_start.nanosec / 1e9 - prev_timetag
+ prev_timetag = point.time_from_start.sec + point.time_from_start.nanosec / 1e9
+
+ steps = int(duration * 10) # Update in 10 steps per second
+
+ for i in range(steps):
+ self.theta1 += (point.positions[0] - self.theta1) / steps
+ self.theta2 += (point.positions[1] - self.theta2) / steps
+ self.x = self.l1 * np.cos(self.theta1) + self.l2 * np.cos(self.theta1 + self.theta2)
+ self.y = self.l1 * np.sin(self.theta1) + self.l2 * np.sin(self.theta1 + self.theta2)
+ msg = JointState()
+ msg.name = ['joint1', 'joint2']
+ msg.header.stamp = self.get_clock().now().to_msg()
+ msg.position = [self.theta1, self.theta2]
+ msg.velocity = [self.x, self.y]
+ self.publisher.publish(msg)
+ time.sleep(0.1)
+
+
+def main(args=None):
+ rclpy.init(args=args)
+ node = RobotNode()
+ rclpy.spin(node)
+ rclpy.shutdown()
\ No newline at end of file
diff --git a/workspace/src/mock_robot/package.xml b/workspace/src/mock_robot/package.xml
new file mode 100644
index 0000000..43057d7
--- /dev/null
+++ b/workspace/src/mock_robot/package.xml
@@ -0,0 +1,20 @@
+
+
+
+ mock_robot
+ 0.0.0
+ TODO: Package description
+ root
+ TODO: License declaration
+
+ rclpy
+
+ ament_copyright
+ ament_flake8
+ ament_pep257
+ python3-pytest
+
+
+ ament_python
+
+
diff --git a/workspace/src/mock_robot/resource/mock_robot b/workspace/src/mock_robot/resource/mock_robot
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/src/mock_robot/setup.cfg b/workspace/src/mock_robot/setup.cfg
new file mode 100644
index 0000000..5cef743
--- /dev/null
+++ b/workspace/src/mock_robot/setup.cfg
@@ -0,0 +1,4 @@
+[develop]
+script_dir=$base/lib/mock_robot
+[install]
+install_scripts=$base/lib/mock_robot
diff --git a/workspace/src/mock_robot/setup.py b/workspace/src/mock_robot/setup.py
new file mode 100644
index 0000000..cf9e728
--- /dev/null
+++ b/workspace/src/mock_robot/setup.py
@@ -0,0 +1,26 @@
+from setuptools import find_packages, setup
+
+package_name = 'mock_robot'
+
+setup(
+ name=package_name,
+ version='0.0.0',
+ packages=find_packages(exclude=['test']),
+ data_files=[
+ ('share/ament_index/resource_index/packages',
+ ['resource/' + package_name]),
+ ('share/' + package_name, ['package.xml']),
+ ],
+ install_requires=['setuptools'],
+ zip_safe=True,
+ maintainer='root',
+ maintainer_email='root@todo.todo',
+ description='TODO: Package description',
+ license='TODO: License declaration',
+ tests_require=['pytest'],
+ entry_points={
+ 'console_scripts': [
+ 'mock_robot = mock_robot.robot_node:main',
+ ],
+ },
+)
diff --git a/workspace/src/mock_robot/test/test_copyright.py b/workspace/src/mock_robot/test/test_copyright.py
new file mode 100644
index 0000000..97a3919
--- /dev/null
+++ b/workspace/src/mock_robot/test/test_copyright.py
@@ -0,0 +1,25 @@
+# Copyright 2015 Open Source Robotics Foundation, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+from ament_copyright.main import main
+import pytest
+
+
+# Remove the `skip` decorator once the source file(s) have a copyright header
+@pytest.mark.skip(reason='No copyright header has been placed in the generated source file.')
+@pytest.mark.copyright
+@pytest.mark.linter
+def test_copyright():
+ rc = main(argv=['.', 'test'])
+ assert rc == 0, 'Found errors'
diff --git a/workspace/src/mock_robot/test/test_flake8.py b/workspace/src/mock_robot/test/test_flake8.py
new file mode 100644
index 0000000..27ee107
--- /dev/null
+++ b/workspace/src/mock_robot/test/test_flake8.py
@@ -0,0 +1,25 @@
+# Copyright 2017 Open Source Robotics Foundation, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+from ament_flake8.main import main_with_errors
+import pytest
+
+
+@pytest.mark.flake8
+@pytest.mark.linter
+def test_flake8():
+ rc, errors = main_with_errors(argv=[])
+ assert rc == 0, \
+ 'Found %d code style errors / warnings:\n' % len(errors) + \
+ '\n'.join(errors)
diff --git a/workspace/src/mock_robot/test/test_pep257.py b/workspace/src/mock_robot/test/test_pep257.py
new file mode 100644
index 0000000..b234a38
--- /dev/null
+++ b/workspace/src/mock_robot/test/test_pep257.py
@@ -0,0 +1,23 @@
+# Copyright 2015 Open Source Robotics Foundation, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+from ament_pep257.main import main
+import pytest
+
+
+@pytest.mark.linter
+@pytest.mark.pep257
+def test_pep257():
+ rc = main(argv=['.', 'test'])
+ assert rc == 0, 'Found code style errors / warnings'
diff --git a/workspace/src/painting_robot_control/.DS_Store b/workspace/src/painting_robot_control/.DS_Store
new file mode 100644
index 0000000..bf22309
Binary files /dev/null and b/workspace/src/painting_robot_control/.DS_Store differ
diff --git a/workspace/src/painting_robot_control/package.xml b/workspace/src/painting_robot_control/package.xml
new file mode 100644
index 0000000..8bb82c9
--- /dev/null
+++ b/workspace/src/painting_robot_control/package.xml
@@ -0,0 +1,20 @@
+
+
+
+ painting_robot_control
+ 0.0.0
+ TODO: Package description
+ root
+ TODO: License declaration
+
+ rclpy
+
+ ament_copyright
+ ament_flake8
+ ament_pep257
+ python3-pytest
+
+
+ ament_python
+
+
diff --git a/workspace/src/painting_robot_control/painting_robot_control/.DS_Store b/workspace/src/painting_robot_control/painting_robot_control/.DS_Store
new file mode 100644
index 0000000..d80c732
Binary files /dev/null and b/workspace/src/painting_robot_control/painting_robot_control/.DS_Store differ
diff --git a/workspace/src/painting_robot_control/painting_robot_control/.painting_robot.urdf.swp b/workspace/src/painting_robot_control/painting_robot_control/.painting_robot.urdf.swp
new file mode 100644
index 0000000..6939ecd
Binary files /dev/null and b/workspace/src/painting_robot_control/painting_robot_control/.painting_robot.urdf.swp differ
diff --git a/workspace/src/painting_robot_control/painting_robot_control/__init__.py b/workspace/src/painting_robot_control/painting_robot_control/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/src/painting_robot_control/painting_robot_control/__pycache__/__init__.cpython-310.pyc b/workspace/src/painting_robot_control/painting_robot_control/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..350c145
Binary files /dev/null and b/workspace/src/painting_robot_control/painting_robot_control/__pycache__/__init__.cpython-310.pyc differ
diff --git a/workspace/src/painting_robot_control/painting_robot_control/__pycache__/com_node.cpython-310.pyc b/workspace/src/painting_robot_control/painting_robot_control/__pycache__/com_node.cpython-310.pyc
new file mode 100644
index 0000000..4eaacf2
Binary files /dev/null and b/workspace/src/painting_robot_control/painting_robot_control/__pycache__/com_node.cpython-310.pyc differ
diff --git a/workspace/src/painting_robot_control/painting_robot_control/com_node.py b/workspace/src/painting_robot_control/painting_robot_control/com_node.py
new file mode 100644
index 0000000..3360abb
--- /dev/null
+++ b/workspace/src/painting_robot_control/painting_robot_control/com_node.py
@@ -0,0 +1,86 @@
+import rclpy
+from rclpy.node import Node
+from std_msgs.msg import Int32
+from math import sin, cos, pi
+from trajectory_msgs.msg import JointTrajectory
+import time
+
+# Adjusted joint limits based on nearest multiple of step angle
+
+
+
+class ArmControllerNode(Node):
+
+ def __init__(self):
+ super().__init__('arm_controller_node')
+ self.subscription = self.create_subscription(
+ JointTrajectory,
+ '/scaled_joint_trajectory_controller/joint_trajectory',
+ self.joint_trajectory_callback,
+ 100
+ )
+ self.dq1_publisher = self.create_publisher(Int32, 'dq1_steps', 10)
+ self.dq2_publisher = self.create_publisher(Int32, 'dq2_steps', 10)
+
+ self.q1_min = -1.57
+ self.q1_max = 1
+ self.q2_min = 0.02
+ self.q2_max = 2.8
+
+ self.current_q1 = 0.00
+ self.current_q2 = 1.57 # Initial joint angles
+ steps_per_revolution = 200
+ gear_ratio = 19.2
+ self.steps_per_radian = (steps_per_revolution * gear_ratio) / (2 * pi)
+
+ def joint_trajectory_callback(self, msg):
+ prev_timetag = 0
+ for point in msg.points:
+ timetag = point.time_from_start.sec + point.time_from_start.nanosec / 1e9 - prev_timetag
+ prev_timetag = point.time_from_start.sec + point.time_from_start.nanosec / 1e9
+
+ new_q1=max(min(point.positions[0],self.q1_max),self.q1_min)
+ new_q2=max(min(point.positions[1],self.q2_max),self.q2_min)
+ dq1 = new_q1 - self.current_q1
+ dq2 = new_q2 - self.current_q2
+ dq1_steps = int(round(dq1 * self.steps_per_radian))
+ dq2_steps = int(round(dq2 * self.steps_per_radian))
+
+ self.current_q1 += dq1_steps/self.steps_per_radian
+ self.current_q2 += dq2_steps/self.steps_per_radian
+
+ dq1_steps_msg = Int32()
+ dq1_steps_msg.data = dq1_steps
+ self.dq1_publisher.publish(dq1_steps_msg)
+
+ dq2_steps_msg = Int32()
+ dq2_steps_msg.data = dq2_steps
+ self.dq2_publisher.publish(dq2_steps_msg)
+ x= 0.4 * cos(self.current_q1) + 0.25025 * cos(self.current_q1+self.current_q2)
+ y= 0.4 * sin(self.current_q1) + 0.25025 * sin(self.current_q1+self.current_q2)
+
+ self.get_logger().info(f"Steps taken: steps_q1 = {dq1_steps}, steps_q2 = {dq2_steps}")
+ self.get_logger().info(f"New joint positions (in radians): q1 = {self.current_q1}, q2 = {self.current_q2}")
+ self.get_logger().info(f"New x_y positions (in meters): x = {x}, y = {y}")
+ self.get_logger().info(f"Duration: {timetag}")
+ time.sleep(timetag)
+
+
+
+
+def main(args=None):
+ try:
+ rclpy.init(args=args)
+ node = ArmControllerNode()
+ rclpy.spin(node)
+ except KeyboardInterrupt:
+ print('Communication to painting robot closed')
+ finally:
+ node.destroy_node()
+ rclpy.shutdown()
+
+if __name__ == '__main__':
+ main()
+
+
+
diff --git a/workspace/src/painting_robot_control/resource/painting_robot_control b/workspace/src/painting_robot_control/resource/painting_robot_control
new file mode 100644
index 0000000..e69de29
diff --git a/workspace/src/painting_robot_control/setup.cfg b/workspace/src/painting_robot_control/setup.cfg
new file mode 100644
index 0000000..7e2836b
--- /dev/null
+++ b/workspace/src/painting_robot_control/setup.cfg
@@ -0,0 +1,4 @@
+[develop]
+script_dir=$base/lib/painting_robot_control
+[install]
+install_scripts=$base/lib/painting_robot_control
diff --git a/workspace/src/painting_robot_control/setup.py b/workspace/src/painting_robot_control/setup.py
new file mode 100644
index 0000000..9886a4e
--- /dev/null
+++ b/workspace/src/painting_robot_control/setup.py
@@ -0,0 +1,26 @@
+from setuptools import find_packages, setup
+
+package_name = 'painting_robot_control'
+
+setup(
+ name=package_name,
+ version='0.0.0',
+ packages=find_packages(exclude=['test']),
+ data_files=[
+ ('share/ament_index/resource_index/packages',
+ ['resource/' + package_name]),
+ ('share/' + package_name, ['package.xml']),
+ ],
+ install_requires=['setuptools'],
+ zip_safe=True,
+ maintainer='root',
+ maintainer_email='root@todo.todo',
+ description='TODO: Package description',
+ license='TODO: License declaration',
+ tests_require=['pytest'],
+ entry_points={
+ 'console_scripts': [
+ 'painting_robot_controller = painting_robot_control.com_node:main'
+ ],
+ },
+)
diff --git a/workspace/src/painting_robot_control/test/test_copyright.py b/workspace/src/painting_robot_control/test/test_copyright.py
new file mode 100644
index 0000000..97a3919
--- /dev/null
+++ b/workspace/src/painting_robot_control/test/test_copyright.py
@@ -0,0 +1,25 @@
+# Copyright 2015 Open Source Robotics Foundation, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+from ament_copyright.main import main
+import pytest
+
+
+# Remove the `skip` decorator once the source file(s) have a copyright header
+@pytest.mark.skip(reason='No copyright header has been placed in the generated source file.')
+@pytest.mark.copyright
+@pytest.mark.linter
+def test_copyright():
+ rc = main(argv=['.', 'test'])
+ assert rc == 0, 'Found errors'
diff --git a/workspace/src/painting_robot_control/test/test_flake8.py b/workspace/src/painting_robot_control/test/test_flake8.py
new file mode 100644
index 0000000..27ee107
--- /dev/null
+++ b/workspace/src/painting_robot_control/test/test_flake8.py
@@ -0,0 +1,25 @@
+# Copyright 2017 Open Source Robotics Foundation, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+from ament_flake8.main import main_with_errors
+import pytest
+
+
+@pytest.mark.flake8
+@pytest.mark.linter
+def test_flake8():
+ rc, errors = main_with_errors(argv=[])
+ assert rc == 0, \
+ 'Found %d code style errors / warnings:\n' % len(errors) + \
+ '\n'.join(errors)
diff --git a/workspace/src/painting_robot_control/test/test_pep257.py b/workspace/src/painting_robot_control/test/test_pep257.py
new file mode 100644
index 0000000..b234a38
--- /dev/null
+++ b/workspace/src/painting_robot_control/test/test_pep257.py
@@ -0,0 +1,23 @@
+# Copyright 2015 Open Source Robotics Foundation, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+from ament_pep257.main import main
+import pytest
+
+
+@pytest.mark.linter
+@pytest.mark.pep257
+def test_pep257():
+ rc = main(argv=['.', 'test'])
+ assert rc == 0, 'Found code style errors / warnings'