- codespell clean up
- exception inside concurrency will get re-thrown to preempt behavior
- report all states in deep_states including containers and finished states
- re-request outcome on sync request
- notify skipped for containers
- remove some stray spam;
- use jazzy test and increase some loop timings in tests due to intermittent test failure
- Version 4.0.0 release using state_id for communication
- this breaks API with flexbe_app and requires version 4.1.0+ of the FlexBE WebUI API
- use state id consistently to avoid long path strings
- modify preempt and published outcome to improve sync
- add flexbe_outcome_listener node for simple monitoring
- reduce default wait durations on proxy start ups; reduce start up spam
- clarify state map message
- allow controllable OSM and concurrency outputs; improve sync handling; unhandled state exception stops behavior
- modify clear action handling; retain action result status; reduce startup spam
- add initialize_flexbe_core for common initialization
- updates to ConcurrencyContainer and StateMachine to handle sync and forced outcomes
- update cancel for action client
- define get_status to replace get_state for proxy action client
- remove result from input_state or cancel on exit
- call on_exit from state_machine and use that to handle concurrency container exit
- update get_required_autonomy check for concurrency container
- minor clean up from flake8/pycodestyle
- add option to globally set desired update rate by calling set_default_rate from behavior
- add peek_at_buffer to proxy subscriber
- modify processing of transition command for nested behaviors
- modify _entering flag and no sleep if entering
- grab reference to avoid race condition processing message in different thread while behavior finishing
- tweak state_map __str__ text.
- minor clean up from flake8/pycodestyle
- add option to globally set desired update rate by calling set_default_rate from behavior
- add peek_at_buffer to proxy subscriber; modify processing of transition command for nested behaviors
- modify _entering flag and no sleep if entering
- grab reference to avoid race condition processing message in different thread while behavior finishing
- tweak state_map string text
- flake8/pycodestyle cleanup
- Add parsing check to handle exceptions in manifest
- update with state map and changes to concurrent handling
- add options to remove service callers and action clients
- proxy publisher dictionary usage
- use modern style names with deprecated flag
- add sync lock to proxies
- added code to remove subscriptions and publishers with sync lock
- use deque for msg buffer add lock to prevent modifications during callback (e.g. when thread starts or finishes)
- add hash for StateMap outcome index to standardize handling
- reinitialize existing state machine instead of rebuilding on sync (1000x faster)
- update with standardized topic handling
- update ui version handling
- OperatableStateMachine is now a pseudo manually transitionable state (TODO -separate logic to shadow state design)
- add is_controlled check to avoid attempts at duplicate subscriptions and cleanup
- onboard side coded to send new BehaviorSync and 'mirror/outcome'
- adding state_id handling; pre-building ContainerStructure to set IDs
- flake8, pep257 and codestyle checks
- proxy action client: remove result_status and test proxy status
- Fixed bug when trying to get result state/GoalStatus.
- Add throttle option for logging (PR #14)
- destroy sub/pub/client in executor thread
- update to protect against executor calls after unsubscribe/shutdown
- use SingleThreadedExecutor without callback groups
- use basic pub/sub for onboard; cleanup
- merge from ros2-devel to reduce spam and missing package handling
- add wait_duration to proxy action client send goal and other tweaks * This change could reducing waiting. If you need longer wait time, specify wait_duration
- make action client is_available check current status not wait
- flake8 cleanup; make test consistent; protect against build farm timing issue
- cleanup; modify handling of existing subscriptions
- Updates to dependencies for ROS build farm
- Modify sync messaging to avoid issue if not active state when behavior shuts down
- clean up some spam to FlexBE app console
- include package name in behavior request (requires flexbe_app 3.1+) to allow duplicate behavior names in packages
- Modify to used behavior_id (checksum) and behavior_key consistently
- Modify shutdown handling for clean stop
- Modify wait() handling to avoid creating a rate object
- modify sync handling and execute loop timing
- add proxy tf listener
- Require 'inst_id' for ProxySubscriber setup (change from 'id')
- flake8, pep257, pylint cleanup; licenses and copyright
- Pull request #154
- Pull request #163
- Pull request #153 Modification
- Merge pull request #11 from grejj/ros2-devel Added destroy rate calls to clear up rate resources (undone by item 2 above)
- ProxyServiceCaller changes * fix issue #1 * wait_duration handling * connect without service being available * misc cleanup
- ROS 2 Humble release
- Includes changes sync check handling
- Label proxy subscribers by instance id and handle instance type changes
- Update proxy action client handling
- Tested under Ubuntu 22.04 and ROS Humble
- Initial ROS 2 "foxy" release based on ROS 1 commit a343c657
- Includes changes to concurrent state and sleep handling
- [flexbe_core] Replace set conversion for python3 compatibility (see #136)
- Contributors: Philipp Schillinger
- [flexbe_core] Further fixes to userdata
- [flexbe_core] [flexbe_widget] Correctly handle non-existing behaviors in action goals (fix #133)
- [flexbe_core] Several fixes to userdata (see #129)
- [flexbe_core] [flexbe_testing] [flexbe_widget] Use yaml backwards compatible
- Merge remote-tracking branch 'origin/feature/core_rework' into develop # Conflicts: # flexbe_core/src/flexbe_core/core/operatable_state_machine.py # flexbe_onboard/src/flexbe_onboard/flexbe_onboard.py
- Merge branch 'feature/core_rework' of https://github.com/team-vigir/flexbe_behavior_engine into feature/core_rework
- Add support for python3
- [flexbe_core] Fix typo in userdata handling of concurrency container
- [flexbe_core] Use more explicit userdata update operations
- [flexbe_core] Add userdata tests and improvements
- [flexbe_core] Add checks and specific exception types
- [flexbe_core] Add test cases for state capabilities
- Major clean-up of most core components
- Remove smach dependency
- Contributors: Philipp Schillinger
- [flexbe_core] Consider a running mirror as being controlled (see #123)
- Merge pull request #113 from team-vigir/feature/state_logger_rework State Logger Rework
- Merge branch 'develop' into feature/state_logger_rework
- [flexbe_core] Allow to specify a subset of logged userdata keys
- [flexbe_core] Extend configuration options
- [flexbe_core] Rework state logger implementation
- Contributors: Philipp Schillinger
- [flexbe_core] Add tests for proxies
- [flexbe_core] Several minor improvements of proxies (see #114)
- [flexbe_msgs] [flexbe_core] Add debug level to logger (see #101)
- Merge pull request #110 from team-vigir/fix/catkin_install Let behavior library find sourcecode in devel or install spaces
- Let behavior library find sourcecode in devel or install spaces (fix #104)
- [flexbe_core] Fix reset of requested outcome when re-visiting the same state and immediately requesting an outcome
- [flexbe_core] Fix duplicate sleep in case of state machine inside concurrency
- [flexbe_core] Robustify priority container path handling
- Do not trigger on_resume and on_exit when stopped during pause (see #103)
- Remove mistakenly added text
- Merge branch 'fmessmer-feature/python3_compatibility' into develop
- Remove explicit list construction where not required
- Remove redundant type check
- python3 compatibility via 2to3
- Contributors: Philipp Schillinger, fmessmer
- Merge pull request #97 from team-vigir/feature/test_behaviors flexbe_testing support for behaviors
- [flexbe_core] Clear previous outcome requests on state loopback (see #93)
- [flexbe_core] [flexbe_onboard] Move behavior parametrization to core
- Merge remote-tracking branch 'origin/develop' into feature/test_behaviors # Conflicts: # flexbe_testing/bin/testing_node # flexbe_testing/src/flexbe_testing/state_tester.py
- [flexbe_core] [flexbe_widget] Add simple breakpoint feature (see #93)
- Merge pull request #88 from team-vigir/fix/concurrency_sleep Fix rate sleep of concurrency container
- Fix rate sleep of concurrency container (see #87)
- Contributors: Philipp Schillinger
- [flexbe_core] Add method to set a custom execute rate for states
- [flexbe_core] Remove unnecessary sleep call in logger (see #79)
- [flexbe_core] Fix custom rate issues with nested and concurrent states
- Contributors: Philipp Schillinger
- Merge pull request #72 from mgruhler/fix/filemodes fix filemodes: those files should not be executable
- fix filemodes: those files should not be executable
- Merge remote-tracking branch 'origin/feature/sub_parameters' into develop
- Bump required flexbe_app version
- [flexbe_core] Accept explicit definition of parameters for included behaviors
- Merge remote-tracking branch 'origin/master' into develop
- Contributors: Matthias Gruhler, Philipp Schillinger
- Merge remote-tracking branch 'origin/develop'
- Merge pull request #66 from ksm0709/add_remove_result add remove_result function to proxy action client
- add remove_result function to proxy action client
- Merge remote-tracking branch 'origin/master' into develop
- Contributors: Philipp Schillinger, taehokang
- Merge remote-tracking branch 'origin/develop'
- Revise run dependencies
- Merge remote-tracking branch 'origin/master' into develop
- Contributors: Philipp Schillinger
- Merge branch 'develop'
- Merge branch 'feature/flexbe_app' into develop
- Update maintainer information
- State logger is optional and off by default
- Merge remote-tracking branch 'origin/action_client_remove_feedback' into feature/flexbe_app
- Merge pull request #62 from team-vigir/action_client_remove_feedback Added remove_feedback function to ensure new feedback is received
- Added remove_feedback function to ensure new feedback is received
- Merge pull request #58 from alireza-hosseini/feat-action-client-wait-param feat: Add wait_duration parameter to ProxyActionClient
- feat: Add wait_duration parameter to ProxyActionClient - So that the wait duration can be specified in the states definition
- [flexbe_core] Allow to use behavior default userdata (see #38)
- [flexbe_core] Update behavior lib if behavior is not found (see Flexbe/flexbe_app#4)
- Merge branch 'develop' into feature/flexbe_app Conflicts: flexbe_mirror/src/flexbe_mirror/flexbe_mirror.py flexbe_onboard/src/flexbe_onboard/flexbe_onboard.py flexbe_widget/bin/flexbe_app flexbe_widget/src/flexbe_widget/behavior_action_server.py
- Merge remote-tracking branch 'origin/master' into develop Conflicts: flexbe_onboard/src/flexbe_onboard/flexbe_onboard.py
- Merge remote-tracking branch 'origin/develop' Conflicts: flexbe_onboard/src/flexbe_onboard/flexbe_onboard.py
- Merge pull request #31 from fmauch/reset_entering reset entering of currently active state when exiting a state machine
- reset entering member of currently active state when exiting a state machine
- Find behaviors by export tag and execute via checksum
- Merge branch 'automatic_reload' into develop
- allow locking and unlocking of current state without knowing the current path
- remove manual reloading code, as this is done already by the reload importer
- Merge pull request #26 from jgdo/automatic_reload Automatic reload
- automatic reload of imported behaviors upon sm creation
- Reload class definition before instantiating a contained behavior inside a behavior
- Merge remote-tracking branch 'origin/master' into develop
- [flexbe_core] Fixed event triggering in concurrency container (resolve #18)
- Merge remote-tracking branch 'origin/master'
- Merge remote-tracking branch 'origin/develop'
- [flexbe_core] Only call on_exit on cc leave for states which are still looping (fix #17)
- Merge branch 'develop'
- [flexbe_core] Fixed sm on_exit to propagate own ud instead of parent ud
- Merge branch 'master' into cnurobotics
- Merge remote-tracking branch 'origin/develop'
- [flexbe_core] Properly reset current state when leaving state machine (fix #7)
- Merge remote-tracking branch 'origin/develop'
- [flexbe_core] Fixed reset of current state on leave in cc and related concurrency userdata problems
- [flexbe_core] Use aggregated diagnostics topic instead of raw
- [flexbe_core] Correctly execute concurrency inside priority container
- [flexbe_core] Can always preempt behavior even if not supervised
- Merge remote-tracking branch 'origin/develop'
- Provide option to set userdata input on behavior action calls
- [flexbe_core] Fixed occasional problems to resume a paused state
- [flexbe_core] [flexbe_mirror] Improved robustness of fast repeated synchronization
- Merge branch 'feature/late_connect' into develop
- [flexbe_core] Added command to attach to running behavior execution
- Merge branch 'feature/pause_repeat' into develop
- [flexbe_core] Handle pause and repeat commands
- [flexbe_core] Propagate skipped notification on pause in order to react on preemption commands even if paused
- [flexbe_core] Added function to check if a goal is already active on a proxy client
- [flexbe_core] Fix for backup sync
- [flexbe_core] Fixed sync issues after leaving CC by explicitly syncing automatically
- [flexbe_core] Fixed calling on_exit on all states in CC
- Merge remote-tracking branch 'origin/feature/multirobot'
- Merge remote-tracking branch 'origin/master' into feature/multirobot Conflicts: flexbe_core/src/flexbe_core/core/monitoring_state.py flexbe_core/src/flexbe_core/core/operatable_state.py
- [flexbe_core] Added availability checks to proxies
- [flexbe_core] Added onboard debug topic for current state
- [flexbe_core] Convert all logged messages to string before sending ros message in logger
- [flexbe_core] Added priority container
- [flexbe_core] Added some more documentation
- [flexbe_core] Fixed initialization of input userdata in inner statemachines
- [flexbe_core] Correctly preempt auxiliary control flows in concurrency container
- [flexbe_core] Fixed a bug with concurrent execution: State machines inside state machine inside concurrency containers still blocked during execution.
- [flexbe_core] Slightly reworked monitoring state
- [flexbe_core] Fixed preemption of concurrency container
- [flexbe_core] Added container for concurrent execution
- Changed absolute topic references to relative
- [flexbe_core] Improved proxy interface
- [flexbe_core] Reverted last change, will only publish state updates when being controlled
- [flexbe_core] Always send outcome update, even if not being controlled
- Removed some old and unused project files
- Initial commit of software
- Contributors: Alberto, Alireza, David Conner, Dorian Scholz, DorianScholz, Felix Mauch, Mark Prediger, Philipp Schillinger