* Set default logger level from command line
* Return INVALID_REMAP_RULE
* Add tests
* Do string parsing in rcutils
* Set log level after parsing all arguments
Less convenient but seems cleaner
* Document log arg format, custom return code
* Rename function
* Rename argument
* Refactor argument parsing after rebasing to include param files
* Renaming from param files support
* Doc fixup
* __log -> __log_level
* Use RCUTILS_SAFE_FWRITE_TO_STDERR on bad alloc
* doc fixup
* doc fixup
* Document behaviour if multiple __log_level rules found
* Update docblock formatting
* Label all documentation in arguments.c as internal
* remove old memory tools
* updates to use new memory_tools from osrf_testing_tools_cpp
* fixup new test
* fix lambda captures for Windows
* uncrustify fix
* extra_test_env -> rmw_implementation_env_var
* Stray extra_test_libraries
* Use default rmw impl outside of for_each_rmw_implementation loop
* style fixup
* fix typo
* wip
* rcl_arguments_get_param_files() with char **
Restore version of function that outputs a char **
* _rcl_parse_param_rule() allocates string
Before this commit `rcl_parse_params` was allocating space the size of
the argument, but the space only needs to be as big as the argument
minus the prefix length.
* Debug print before incrementing num files
* Alloc and make sure to dealloc on failure
* fix print of parsed parameter rule
* rcutils types not needed as we dont use rcutils_string_array anymore
* minimal test
* cleanup debug prints
* linter fixup
* add tests for param arguments
* lint tests
* Doc for rcl_arguments_get_param_files_count()
* Shrink parameter files
* const param_prefix_len
* Copy parameter file names
* deallocate parameter files in fini
* free memory after tests pass
* 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