Use dsv file templates for environment setup#99
Closed
jacobperron wants to merge 16 commits intomasterfrom
Closed
Conversation
* Update rosidl_generator_java for new IDL pipeline Supporting ROS Dashing or later. Signed-off-by: Jacob Perron <[email protected]> * Fix name JNI name mangling Accidentally broken during update. Signed-off-by: Jacob Perron <[email protected]> * Remove java compile flags This remove some compile warnings. Signed-off-by: Jacob Perron <[email protected]> * Refactor to support services Signed-off-by: Jacob Perron <[email protected]> * Wide string support Signed-off-by: Jacob Perron <[email protected]> * Avoid duplicate includes Signed-off-by: Jacob Perron <[email protected]> * Use test_interface_files Signed-off-by: Jacob Perron <[email protected]> * Support for actions Signed-off-by: Jacob Perron <[email protected]> * Add suffix for long literals Signed-off-by: Jacob Perron <[email protected]> * Handle unsigned literals Though Java supports unsigned values, it doesn't support unsigned literals (ie. literals that are larger than the max signed value). As a workaround, we can convert the literal to it's negative equivalent. Signed-off-by: Jacob Perron <[email protected]> * Fix escape string function Signed-off-by: Jacob Perron <[email protected]> * Use cast to workaround integer literals Otherwise the compiler complains about potential loss of data. Signed-off-by: Jacob Perron <[email protected]> * Minor refactor Signed-off-by: Jacob Perron <[email protected]> * Remove TODO Signed-off-by: Jacob Perron <[email protected]>
* Update API for getting rcl error string Signed-off-by: Jacob Perron <[email protected]> * Add implementation for ROS Context A context represents an init/shutdown cycle and is used in the creation of top level entities like nodes and guard conditions. For convenience, a default context is created when rcljava is initialized. Signed-off-by: Jacob Perron <[email protected]> * Add implementation for Clock Signed-off-by: Jacob Perron <[email protected]> * Update for Dashing support * Update wait set API calls * Update entity creation API calls * Use Context objects to check 'ok()' status * Add Clock and Context members to NodeImpl * Fix static member reference: 'this.defaultContext' -> 'RCLJava.defaultContext' Signed-off-by: Jacob Perron <[email protected]> * Avoid hiding errors when cleaning up init options Signed-off-by: Jacob Perron <[email protected]> * Disable tests Signed-off-by: Jacob Perron <[email protected]> * Fix typos in JNI library files Signed-off-by: Jacob Perron <[email protected]> * Fix native node method signature Signed-off-by: Jacob Perron <[email protected]> * Populate missing QoS settings with defaults Otherwise we run into a runtime error about Fast-RTPS not supporting liveliness. Signed-off-by: Jacob Perron <[email protected]> * Fix issues with Clock class * Load with JNIUtils * Rename native create method for consistency * Fix bug in native implementation Signed-off-by: Jacob Perron <[email protected]> * Enable linter tests Signed-off-by: Jacob Perron <[email protected]> * Fix lint errors Signed-off-by: Jacob Perron <[email protected]> * Enable RCLJava test and fix bugs * Use Context.ok() and deprecate RCLJava.isInitialized(). * Move implementation loading to static initialization code. Otherwise, calls to getDefaultContext() fail if called before rclJavaInit(). It wasn't clear to me why the implementation should be loaded in a separate function call. We can probably refactor the code to avoid the error if we want to move the loading back into rclJavaInit(). * Refactor test into one init/shutdown test. Previously, not calling RCLJava.shutdown() was leaving a context around between tests. Signed-off-by: Jacob Perron <[email protected]> * Fix NodeTest Signed-off-by: Jacob Perron <[email protected]> * Enable most tests Tests that involve services are broken due to issues related to interface generation. There's a separate PR for a fix: #76. Signed-off-by: Jacob Perron <[email protected]>
* Update rosidl_generator_java tests Now using messages from test_interface_files. Signed-off-by: Jacob Perron <[email protected]> * Remove old interface files Signed-off-by: Jacob Perron <[email protected]>
The package does not exist. Signed-off-by: Jacob Perron <[email protected]>
This fixes some fatal runtime errors during testing. Signed-off-by: Jacob Perron <[email protected]>
* Fix service and action interface generation Before, we were not generating code for the messages and services that make up service and action interfaces. Due to issues with duplicate definitions caused by instantiating the msg.cpp.em template multiple times, I've opted to generate separate files for each service, action, and the interfaces that they are made of. This is similar to what we are doing with the generated Java code. I've added a test confirming that generated service code can be used. Adding a test for actions is difficult at the moment due to a circular dependency with action_msgs. Signed-off-by: Jacob Perron <[email protected]> * Add missing header include Signed-off-by: Jacob Perron <[email protected]> * Rename top level generated cpp file This avoids name clashing with other generated files. Similar to what we do with generated Java files. Signed-off-by: Jacob Perron <[email protected]> * Fix JNI name mangling function so it works for service and action subtypes For example, 'example_interfaces/srv/AddTwoInts_Request' should be mangled to 'example_1interfaces_srv_AddTwoInts_1Request'. Signed-off-by: Jacob Perron <[email protected]> * Remove vestigal references to jni_package_name Signed-off-by: Jacob Perron <[email protected]> * Add comment about action and service headers Signed-off-by: Jacob Perron <[email protected]> * Simplify include logic Signed-off-by: Jacob Perron <[email protected]>
* Fix service and action interface generation Before, we were not generating code for the messages and services that make up service and action interfaces. Due to issues with duplicate definitions caused by instantiating the msg.cpp.em template multiple times, I've opted to generate separate files for each service, action, and the interfaces that they are made of. This is similar to what we are doing with the generated Java code. I've added a test confirming that generated service code can be used. Adding a test for actions is difficult at the moment due to a circular dependency with action_msgs. Signed-off-by: Jacob Perron <[email protected]> * Add missing header include Signed-off-by: Jacob Perron <[email protected]> * Rename top level generated cpp file This avoids name clashing with other generated files. Similar to what we do with generated Java files. Signed-off-by: Jacob Perron <[email protected]> * Fix JNI name mangling function so it works for service and action subtypes For example, 'example_interfaces/srv/AddTwoInts_Request' should be mangled to 'example_1interfaces_srv_AddTwoInts_1Request'. Signed-off-by: Jacob Perron <[email protected]> * Remove vestigal references to jni_package_name Signed-off-by: Jacob Perron <[email protected]> * Add comment about action and service headers Signed-off-by: Jacob Perron <[email protected]> * Simplify include logic Signed-off-by: Jacob Perron <[email protected]> * Rename cpp headers to have .hpp suffix Signed-off-by: Jacob Perron <[email protected]> * Update files to reflect new header suffix This resolves a cppcheck linter error complaining about "is invalid C code". Changing the suffix causes cppcheck to treat the files as C++ code. Signed-off-by: Jacob Perron <[email protected]> Co-authored-by: Esteve Fernandez <[email protected]>
We don't need to build everything from source, only some of the ROS interface packages. Signed-off-by: Jacob Perron <[email protected]>
Signed-off-by: Jacob Perron <[email protected]>
* Add dashing workflow Using the ros-tooling custom GitHub actions Signed-off-by: Jacob Perron <[email protected]> * Update repos file URL Signed-off-by: Jacob Perron <[email protected]>
Contributor
Author
|
We should hold this PR as it is only compatible with Eloquent or later. |
* Add example_interfaces to desktop repos file This package is required by rcljava_examples. Signed-off-by: Jacob Perron <[email protected]> * Append .git to repository URLs for consistency Signed-off-by: Jacob Perron <[email protected]>
* Fix README with correct branch in the instructions. * Update README instructions repository links. Changed the repository links from a private github account to ROS2 Organisation repositories links. Co-authored-by: Niels Tiben <[email protected]>
…85) * Re-enable tests related to services Signed-off-by: Jacob Perron <[email protected]> * Add Client methods for checking and waiting for service availability These methods are very useful for allowing a client to wait for a service to be available before making requests. Signed-off-by: Jacob Perron <[email protected]> * Refactor ClientTest to avoid repeatedly sending requests Signed-off-by: Jacob Perron <[email protected]>
* Android part pul command use the wrong reops Signed-off-by: Jay Hou <[email protected]>
Drop use of old sh/bat templates Signed-off-by: Jacob Perron <[email protected]>
Contributor
Author
|
Superseded by #186 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Take advantage of newer DSV file-based environment setup, as of ROS 2 Dashing.
Depends on ros2-java/ament_java#10