* More descriptive error messages
* Special error message when lexeme not found
* Output warning if ns remapping invalid
* Output warning is ns remapping is invalid but starts with /
* Add index to 'not found' error message
* Distinguish between NONE and EOF
* Firmer wording to avoid overlap in meaning
* Implement a basic YAML based parameter parser for ros2 nodes
* Add README file
* Fix the issues after moving from rcutils_yaml_param_parser to rcl_yaml_param_parser
- rename folders from rcutils_yaml_param_parser to rcl_yaml_param_parser
- rename project, header guards and include statements from rcutils_yaml_param_parser to rcl_yaml_param_parser
- move type declaration in separat file and namespace new structures
- Fix the code review comments from Mikael
* Few minor changes
- Changed "params" string to "ros__parameters"
- Add -Wall, -Wextra and -Wpedantic falgs
- Fix the compile warning with the new flags
* Fix the changes made in the design of C structure
- Remove the node_namespaces entry in rcl_params_t
- Change the type of num_nodes and num_params to size_t
* depend on libyaml_vendor (#236)
* Fix cmake setting standard(C and C++) and add byte_array in C struct
* Remove C11 so that it defaults to C99
* [rcl_yaml_param_parser] fix export symbols (#237)
* add visibility macros
* remove unused macro
* Support for multi level node and parameter name spaces
* Additional fixes and cleanups
- Support for string namespace seperator
- Provide parameter structure init function API
- name cleanups
* off by 1
* Call yaml_parser_delete()
* fclose(yaml_file)
* free() allocated paths
* Call yaml_event_delete()
* completely deallcoate string array
* Few cleanup changes
- Add install command into CMakelists.txt
- Replace one of the zero_allocate with reallocate
- Pass allocator state
- Fix int32_t -> rcl_ret_t return value
* Don't include unistd.h
* Use size_t for array indices
* Just pass the allocator in the init function
* DIRTY lexer with bugs rosservice: and rostopic:
* Fix bug with partial url schemes
* Style fixes
* Moved lexer.h to satisfy cpplint
* moved terminals to their own array to reduce code size
* Shrink lexer by using char, add error checking
* Comment/whitespace
* comment
* terminal -> lexeme where appropriate
* Static const global
* Documentation and argument order
* Add rcl_lexer_lookahead2_t
* Allow ignoring lexeme text
* Beginnings of recursive descent parser
* Add method to get current position in text
* new remap parsing passes unit tests
* Test rosservice:// and rostopic://
* fix movement formula comment
* doxygent comment
* move code to make pr diff easier to read
* Comments
* Comment
* Comment about impossibilities
* Set error message
* unsigned literals
* Add a couple more url scheme tests
* remove out of date comment
* end_pos -> length
* another token text
* Whitespace
* call accept -> accept
* use array instead of number suffix
* Missing return; wrong comment
* test methods at end of input
* Test not zero-initialized init
* Test lexing remapping rules
* Windows warning
* Remove const to avoid discarding during cast
* Force rcl_arguments_t to be zero initialized.
* Adds a check for rcl_arguments_t->impl to be NULL before use.
* Updates tests to account for zero initialization.
* Document graph functions don't remap
* Prettier if statements using rmw_validate_*
* all arguments on one line
* Whe -> The
* Check args for NULL
* Fix topic remap being interpretted as namespace remap
* Give node logger name
* Expose getter
* Workaround to fix non-const warning
* Add test for node logger name
* Move to function
* More test coverage
* comment fixup
* Restructure logger name logic
* Document input assumptions
* Don't hard-code logger name separator
* Remove const workaround
* Reset RMWCount when DEALLOC rmw storage of wait set
It is safe to reset RMWCount when free rmw storage of wait set
Signed-off-by: jwang <jing.j.wang@intel.com>
* setting RMWCount to 0 only when RMWStorage is set to NULL
Signed-off-by: jwang <jing.j.wang@intel.com>
It is dangerous to keep type index float when do SET_RESIZE. It is
possible that index greater than new size. Thus, set index to 0.
Signed-off-by: jwang <jing.j.wang@intel.com>
* Invalid memory access for NULL dereference
rcl_lifecycle_get_state may return NULL
transition->goal is checked for NULL but no return
while it's true and this may result the follow-up
NULL dereference
Signed-off-by: Ethan Gao <ethan.gao@linux.intel.com>
* Avoid crash while NULL returned from rcl_service_get_options()
Signed-off-by: Ethan Gao <ethan.gao@linux.intel.com>
* tweak error string and null check for current_state
Signed-off-by: Ethan Gao <ethan.gao@linux.intel.com>
* If RMW_IMPLEMENTATION is set, it must match
rmw_get_implementation_identifier
* Refactor so easier to read
* Add tests
* Use strdup from rcutils
* Don't assume retrieved rmw id is not null
* Add comment clarifying why a check is needed
* Fix long line in test
* Remove test that wouldn't work with multiple rmw impls
* warning -> error
* Check if test exists before setting properties
* Copyright year
* only build executable once
* hopefully fix tests for windows
* Check return code of rcl_init
* Remove another test that wasn't supposed to pass w/ multiple rmw impls
We aren't explicitly setting RMW_IMPLEMENTATION in the cmake for this test (unlike the others)
* Skip tests on windows because of https://github.com/ros2/launch/issues/66
* allocate memory for rmw types and not rcl types in waitset RMW storage
* zero initialize memory on resize and clear
* add missing void * cast to make windows happy
* set mem after checking successful alloc and use right type for rmw storage
* another instance of cast to (rmw_ ## Type ## _t *) instead of (void *)
* use ROS_PACKAGE_NAME in debug msgs
* rcl_lifecycle too
* Swap unnamed macros to named
* Remove semicolon
* Add debug logging
* Timer debug logging
* Wait debug
* A bit less wait debug...
* Clearer time output
* Remove the wait sublogger
* Use conditional logging instead of the else{}
* Add 'X finalized' msg
* Add send_response logging
* Remove extra semicolons
* Add publish/take messages
* [style nitpick] formatted variables on the next line
* * memory leak issues
address those memory leak issues with the API
rcutils_set_formatted_error which is defined
in rcutils
Signed-off-by: Ethan Gao <ethan.gao@linux.intel.com>
* * Address those memory leak issues with new MACRO
add macro RCL_SET_ERROR_MSG_WITH_FORMAT_STRING which
is equals RCUTILS_SET_ERROR_MSG_WITH_FORMAT_STRING and
fix the memory leak issues with it
Signed-off-by: Ethan Gao <ethan.gao@linux.intel.com>
* address uncrustify grumble
Signed-off-by: Ethan Gao <ethan.gao@linux.intel.com>