Skip to content

Conversation

ramlab-jose
Copy link

No description provided.

seanpai96 and others added 30 commits October 13, 2024 10:14
…977)

Fix indentation

Fix indentation

Update rosbridge_server/launch/rosbridge_websocket_launch.xml

Co-authored-by: Błażej Sowa <[email protected]>
* Add timeout option to call_service messages

* Add no service timeout option, use future done callback instead of sleep

* Remove unused imports

* Run isort

* Use event instead of condition variable for simplicity

* Fix call_advertised_service test by increasing executor spin iterations

* Spin for a specific time instead of specific number of spin iterations

* Add parameter for default call_service timeout

* Add call service timeout tests to rosbridge_library

* Add call service timeout test to rosbridge_server
Bumps [actions/stale](https://github.com/actions/stale) from 9.0.0 to 9.1.0.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](actions/stale@v9.0.0...v9.1.0)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Call services in new threads by default

* Send action goals in new threads by default
* fix(params): prevent parameter retrieval crashes in ROS2

- Add check for node's fully qualified name to prevent deadlocks
- Add 2.0s timeout to spin_until_future_complete
- Fix crashes when retrieving parameters via Roslibjs

Fixes #972

* added parameter for timeout

* Add new service to retrieve the different interfaces in the ROS Network (#988)

* Fix rosbridge_websocket symlink

* Don't fail on nodes without parameter services

* Remove added empty line

---------

Co-authored-by: Błażej Sowa <[email protected]>
Co-authored-by: Matthias Rathauscher (LWN) <[email protected]>
Co-authored-by: Lebecque Florian <[email protected]>
* Add myself to AUTHORS.md

* Add myself as a maintainer, remove inactive maintainers
Add a delay before asserting topic is unsubscribed in unsubscribe test
Bumps [ros-tooling/action-ros-ci](https://github.com/ros-tooling/action-ros-ci) from 0.3 to 0.4.
- [Release notes](https://github.com/ros-tooling/action-ros-ci/releases)
- [Commits](ros-tooling/action-ros-ci@v0.3...v0.4)

---
updated-dependencies:
- dependency-name: ros-tooling/action-ros-ci
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* New async rosapi params module implementation

* Fail set_param if service not available

* add missing endline

* Don't use f-strings without placeholders

* Fix bandit warning

* Fix ament_mypy errors

* Fix get_param when service not available

* Return empty JSON string as value when get_param fails

* Use ReentrantCallbackGroup for parameter services

* Destroy parameter service clients

* Add async_sleep helper coroutine

* Use parameters QoS for param services

* Add missing type annotation

* Remove ros2param and ros2pkg dependencies

* Use fully qualified instead of relative import

* Add default_value field to GetParam interface
* Wait for goal handle before canceling action goal

* Abort action goal if action unadvertised

* Fix failing action unadvertise test

* Speed up action unit tests

* Fix mypy error
* use permissive QoS to ensure compatibilty with publishers

* use RELIABLE qos if publisher found to be TRANSIENT_LOCAL

---------

Co-authored-by: William Wedler <[email protected]>
Co-authored-by: Mike Wake <[email protected]>
* Update params.py

* Update rosapi/src/rosapi/params.py

Co-authored-by: Błażej Sowa <[email protected]>

* Update rosapi/src/rosapi/params.py

Co-authored-by: Błażej Sowa <[email protected]>

---------

Co-authored-by: Błażej Sowa <[email protected]>
…ishers (#1023)

* fix: incompatible QoS settings for subs

for reliability, if any subscribed topic has a non-reliable policy, we set reliability to best effort. for durability, if if any subscribed topic has a non-transient-local policy, we set durability to volatile.

* fix: define variables

* fix: lint and remove default publisher qos durability setting

* fix: default durability policy for tests

* fix: code fixed according to recommendation

* fix: lint

* fix: added recommended changes

* fix: reverted test changes

* fix: check if there are any publisher.

* fix: lint

* fix: qos settings

* fix: requested changes
* ignore idl generated slots

* add test for idl slots

* linting
electronicofive and others added 16 commits June 15, 2025 19:45
* Added ActionType service and related functionality

- Introduced ActionType service to retrieve the type of a specified ROS action.
- Updated proxy to include logic for determining action types based on existing action servers.
- Modified rosapi_node to create the new ActionType service endpoint.
- Added ActionType message definition in rosapi_msgs.

* Fix pre-commit hook issues: end-of-file and trailing-whitespace

* reverted back vscode settings.json

* Refactor get_action_type to use get_action_names_and_types for improved action type retrieval. Removed outdated logic for action server filtering and topic name extraction.

* Update get_action_type function to set include_hidden parameter default to False for consistency with other functions.

* Added ros2action as a runtime dependency in package.xml
* rosapi_msgs: fix depend tags

Removed rcl_interfaces dependency and used <depend> tag for builtin_interfaces.

* rosapi: use ament_cmake instead of ament_cmake_ros

* rosapi_msgs: use ament_cmake instead of ament_cmake_ros

* rosbridge_library: remove ament_cmake dependency and add ament_cmake_python

* rosbridge_library: run tests in ROS_DOMAIN_ID isolated environments

* rosbridge_library: remove build dependencies on PIL and bson python libraries

* rosbridge_library: add exec dependencies on ujson, numpy and rcl_interfaces

* rosbridge_library: remove rosidl_default_runtime dependency

* rosbridge_library: sort dependencies in lexicographic order

* rosbridge_msgs: use ament_cmake instead of ament_cmake_ros

* rosbridge_msgs: use depend tag for message definition dependencies

* rosbridge_server: use ament_cmake instead of ament_cmake_ros

* rosbridge_server: add ament_cmake_python dependency

* rosbridge_server: remove twisted from exec dependencies

* rosbridge_server: add std_msgs to exec dependencies

* rosbridge_server: add twisted, rcl_interfaces and action_msgs to test dependencies

* rosbridge_server: remove launch_testing and launch_testing_ros dependencies

* rosbridge_server: sort dependencies in lexicographic order

* rosbridge_test_msgs: remove test dependencies

* rosbridge_test_msgs: move rosidl_default_generators to buildtool dependencies

* rosbridge_test_msgs: remove rclpy dependency

* rosbridge_test_msgs: use depend tag for interface definition dependencies

* rosbridge_test_msgs: add action_msgs dependency

* rosbridge_test_msgs: don't find_package ament_cmake_python
* Add ruff config and pre-commit hook

* Fix rosapi pydocstyle errors

* rosapi: Add missing dependencies

* rosapi: sort dependencies

* rosapi: Add find_package for ament_cmake_python

* rosbridge_library: Fix pydocstyle errors

* rosbridge_library: Remove trailing whitespace

* rosapi: Fix pydocstyle errors in rosapi_node

* Reformat ruff config

* rosbridge_server: Fix pydocstyle errors

* rosbridge_library: Add mock imports for Sphinx autodoc

* rosbridge_library: Add missing dosctring indent

* Update descriptions in package.xml files

* Fix end of file

* rosapi: Update package description

* rosapi: types -> interfaces

* rosapi: update README

* Fix lint errors

* Apply suggestions from code review

---------

Co-authored-by: Sebastian Castro <[email protected]>
* Add bandit checks to ruff

* Replace flake8 with ruff

* Add isort check to ruff

* Autofix ruff lint errors

* Set line-length to 100

* Replace black with ruff format

* Reformat with ruff

* Move ruff and codespell config to pyproject.toml

* Retain black configuration

* Move codespell configuration back to setup.cfg

* Format code before linting it in pre-commit

* Enable more ruff lint rules
* rosbridge_websocket cooperative shutdown necessary changes

* switch back to singlethread, check for ok BEFORE spinning also

* address MatthijsBurgh comments
* Enable flake8-bugbear and fix lint errors

* Enable flake8-builtins and fix lint errors

* Enable flake8-datetimez and fix lint errors

* Enable flake8-executable and fix lint errors

* Fix lint error in rosapi_node

* Enable flake8-future-annotations and fix lint errors

* Enable flake8-implicit-str-concat and fix lint errors

* Enable flake8-pie and fix lint errors

* Enable flake8-raise and fix lint errors

* Enable flake8-return and fix lint errors

* Enable flake8-simplify and fix lint errors

* Enable flake8-type-checking and fix lint errors

* Enable flake8-unused-arguments and fix lint errors

* Enable flake8-use-pathlib and fix lint errors

* Enable Perflint and fix lint errors

* Enable pyupgrade and fix lint errors

* Enable refurb and fix lint errors

* Enable ruff-specific checks and fix errors

* Fix subscribe test

* Fix mypy errors

* rosapi: type check test methods

* Fix rosapi_node lint errors

* Set max line length to 120 and fix some of the errors

* Fix the rest of 'line too long' errors

* Don't change argument names in public API methods

* Enable flake8-errmsg and fix lint errors

* Enable flake8-logging and fix lint error

* Enable flake8-pyi and fix lint errors

* Fix pylint errors

* Add comments to ruff config

* Fix trailing whitespace

* Enable flake8-logging-format

* Simplify message handler transitions
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5 to 6.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [actions/stale](https://github.com/actions/stale) from 9.1.0 to 10.0.0.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](actions/stale@v9.1.0...v10.0.0)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-version: 10.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore: Remove jazzy ci workflow

* Add note about ROS distributions tested on other branches
* Add helper Protocol classes for ROS interface type checking

* Add type annotations to ros_loader

* Add type annotations to message_conversion

* Add type annotations to rosapi

* Add type annotations to protocol

* Add type annotations and simplify logging in defragmentation

* Remove ReceivedFragments singleton class, use class variable instead

* Add type annotations to fragmentation capability

* Add type variables for ROS interface types

* Use Clock instead of ROSClock in message_conversion

* Add type annotations to rosbridge_library internal modules

* Add type annotations to capabilities

* Fix mypy issues in protocol

* Add type annotation to util functions

* Improve future type annotation

* Small improvements in rosapi type annotations

* Pass result typevar to Future generic

* Fix spelling mistake

* Add type annotation to capability tests

* Fix args type for actions and services

* Add type annotation for capability message fields

* Reformat

* Disable some modules from annotation checks

* Allow empty callback in Subscription helper class

* Ignore encode_json assignment error

* Ignore no-redef mypy errors

* Add type annotation and resolve mypy errors in rosbridge_library

* Add type annotations to topic/service/action glob lists

* Add type annotation to rosbridge_server src

* Add type annotations to rosbridge_server tests

* Enable flake8-annotation linter checks

* Remove unused import

* Add type annotations for param variables

* Use __future__.annotations in every source file

* Set minimal python version to 3.10

* Fix assert in message_conversion

* Remove error messages from asserts in message_conversion

The asserts are self-explanatory

* Fix a typo

* Fix shebangs and make all of the tests runnable as scripts

It's either none of them or all of them

* Use __futute__.annotations in all tests

* Fix formatting

* Use list_types tuple

* Create ROSClock instead of Clock when clock not provided

* Fix BSON types

* Use Any type for inst argument in InvalidMessageException

* Raise TypeError instead of AssertionError on type mismatch
* Retrieve all parameters from protocol parameters

Don't retrieve ROS parameters in rosbridge_library, instead, use parameters dictionary passed to RosbridgeProtocol for everything

* Rewrite parameter handling in Rosbridge Server

* Declare ROS parameters read-only

* Fix setting parameters through non-ROS cli arguments

* Fix parameter handling in send_action_goal

* Pass parameters to Protocol through constructor

Instead of passing them using a class variable

* Improve parameter handling in protocol

Respect max_message_size parameter when determining fragment size, even when client provides fragment_size parameter

* Fix passing protocol parameters in tests

* Revert some formatting changes

* Fix mypy errors

* Configure message_conversion module at node start

* Simplify retrieving parameter capabilities

* Configure internal modules on Protocol init

* Don't configure publisher manager on Capability init

* Don't alias message_conversion module

* Simplify capability parameter retrieving

* Simplify parameter retrieving in Protocol

* Remove binary_encoder_type global

* Fix typo

* Use super to call base class constructor

* Assert node handle is instance of Node class

* Fix lint errors
Bumps [actions/stale](https://github.com/actions/stale) from 10.0.0 to 10.1.0.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](actions/stale@v10.0.0...v10.1.0)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-version: 10.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Błażej Sowa <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.