Releases: COVESA/vsomeip
Releases · COVESA/vsomeip
vSomeIP-Lib 3.7.3
v3.7.3
-
global
- Upgrade to C++20
- Bump boost to 1.75
- Log commit hash and branch
- Minor fixes and clean-ups
- Replace finds with contains
- remove live-loops in dispatcher code
-
endpoints
- Use endpoint_manager_impl for local broadcast
- Do not erase from targets_ on send_error
- TCP boardnet fake socket implementation
- fix deliver_notification/register_event race
- fix queue limit check
-
Service Discovery
- Send StopOffer during initial wait phase
- Send StopOffer per service instance
-
routing
- Separate the watchdog from the routing_info_
- Synchronize consumed event promotion with subscription
- Sync subscriptions with provided_event updates
- Avoid rmi->rms for availability
- Split eventgroups_ map
- Separate events_ map
- Make set_routing_state fully atomic
- Fix lock inversion in rmi
- Synchronize pending events with available services
- Ensure parent subscription has sent initial events
- Fix wrap around to VSOMEIP_SEC_PORT_UNSET on UDS
- remove static from variables
- Update placeholder cache
-
tests
- Fix and simplify header_factory_test_send_receive
- Fix test_connection_restoration
- Flush when releasing gate
- Modify stop_service contract
- Avoid race in npdu_test_client
- Add someip sd control gate
- Follow-up clean-up/fix signal handlers
- Fix suspend_resume_test_client with debug build
- Fix subscribe_notify_one tests
- Add arguments to timeout log
- Stabilize fake_socket test
- TCP user timeout new fix
- Fix hybrid_mode_test_with_fake_socket
- Add suspend_resume_test_connections
- Make reuse client id test as a sequential test
- Fix npdu_test_udp memcheck errors
- Adds perf+flamegraph to docker memory_test
- Enables and fixes mem test
-
ci
- Fix gcovr tracefile expansion removing quotes
vSomeIP-Lib 3.7.2
v3.7.2
-
global
- Internal header w/ cmake instead of using macros in the header files
- Minor log level changes
- Remove trailing whitespaces
- Introduces hybrid mode
- Deprecate RS_DIAGNOSIS
- Fix payload not being printed on android
-
endpoints
- Separate the two endpoint_manager
- Decouple endpoint_manager_base from routing_manager_base
- Fix missing lock in udp_client_endpoint
- Fix UDP connection availability loop
-
service-discovery
- Fix data races in the service discovery
- Allow subscriptions as soon as the service is offered
-
routing
- Fix availability, host state, tcp address races in rmc
- Trigger routing_state_handler_ in all states
- Fix missing clean-up of pinged clients
- Only one mutex for serviceinfo
- Move offered services into rmc/rmi
- Add preparation stage to serviceinfo
- Move events out out routing_manager_base
- Move implementation of event_dispatcher
-
tests
- Add post tests log level tests
- Re-enable memory_test
- New "broken behavior" test
- Remove flaky shutdown_tests
- Add robustness to flaky stress test
- Fix offer test external
- Add test for routing state handler states
- Cleanup offer test big sd msg
- Fix initial event client data race
vSomeIP-Lib 3.7.1
v3.7.1
-
global
- avoid routing info race on reconnect
- move the client environment into local_endpoint
- remove use of target_include_directories
- dump message on parsing error
- set thread priority on multicast thread
- fix runtime endianness check
- fix compilation with gcc15
- fix uninitialized variable
- fix android compilation issues
- serialization cannot fail
-
application
- fix detached dispatcher thread
-
runtime
- fix logger include
-
service discovery
- no messages while suspended
- improve subnack logging
- fix selective event subscription race
-
routing
- fix subscription race
- cleanup rmi notification hack
- cleanup policy_manager usage
- drop second registration phase
- drop graceful de-registration
- remove minor for request/release service
- remove subscription state on disconnect
- remove the routing_manager interface
-
endpoints
- fix multicast read loop race
- split routing_host into a boardnet variant
- fix auxiliary_context restart
- split the routing app in two
- accept tcp incoming connections before subscriptions + test
- reset queue size when dropping messages
- revert flush_queue for boardnet
- update async_accept to use the peer-endpoint overload
-
tests
- remove assert from common
- Interpret more data on the wire (fake_socket_tests)
- test concurrent fixed client-id app registration
- increase timeout for memory_test
- remove small timeouts
- switch client id test with fake sockets
- use boardnet addresses for boardnet tests
- fix race(s) in malicious_data_test
- fix script to properly detect valgrind errors
- fix test_vlan_toggle_registration
- more boardnet tests
- refactor bool in dispatch app tests
- remove npdu test dead code
- enable shutdown_tests
- split the test_connection_restoration file
- fix reuse client id test
- bump initial phase timeout for suspend_resume_initial test
- bump initial timeout in suspend_resume_initial test #2
- fixes flaky boardnet tests
- fix thread ctor race against join
- specify ports by default
- fix routingmanagerd deadlock
- introduce config writer helper
- solve dispatch_app_outlives_global failures
vSomeIP-Lib 3.7.0
v3.7.0
-
global
- remove additions from logger.hpp
- try to send data before stop application for Boardnet
- introduces an helper to format hex values into 4 digit string
- fix TC on android
- bump duplicate offer to error
- log first SD message kpi
- report invalid client ids
- macro helper to add prefix+func to vsomeip logging
- log clean-up
- remove RIE_ADD_CLIENT towards service usage
- fix /proc/net/* dump header
- drop "internal routing disabled"
-
service discovery
- log SD request and release
- fix event reliability nack
-
application
- terminate on unexpected io_context exceptions
- implement connection control
-
endpoints
- switch to client/server arch
- avoid syscalls directly for abstracted udp sockets
- fix ucei end-of-read-loop on error
- fix for a "never cleaned up" local_endpoint
- refactor message receiving for multicast messages
- do not wait if ep broke inbetween
- use local_ep for subs from the router
- fix get_connected_clients after rearch
- avoid hanging le on operation_aborted
-
tests
- corrects CONFIG_ID command parsing
- capture slave coredumps
- allow parallel execution
- fix race + ensure_sequence_of_* tests
- create global test helpers
- remove magic sleeps for Boardnet
- extend shutdown_test for Boardnet
- add timeout and abort on failure features to test_main
- test re-registration scenario on VLAN toggle
- fix routingmanagerd return codes
- make application_test nicer
- fix subscribe_notify_one failures on memcheck
- tcp user timeout tests
- drop handle_early_routing_info_* test
- enable fake_socket tests for uds
- update lazy_load_test to use different hostnames
- fix offer_test_local
- add base udp testing mechanism
- fix test flakiness
- fix dispatch_app_stop_test race
- fix flaky field_updates_are_resend*
- ensure the router does not notice the broken connection
- split the test suite into multiple binaries
- add boardnet event handling sanity checks
- fix iterator SIGSEGV
- fake boardnet test w/ str
- fixes flaky test
-
routing
- fix hangs in restart_sender
- add log in rcsm to log client id change
- ping server upon client re-request
- remove RIE_ADD_CLIENT towards service usage
- offer/stop service operations are now fully atomic
- ensures that proper routing info is kept
vSomeIP-Lib 3.6.4
v3.6.4
-
global
- improve logging
- add defaults to CMakePresets
- scoped lock all recursive mutexes
- remove unused definitions
- cleanup exported symbols
- pragma once the entire codebase
- debouncing drop send_current_value_after
- fix internal.hpp with ANDROID_CI_BUILD flag
-
application
- fix plugin_manager_impl singleton free-after-use on dtor bug
-
endpoints
- refactor local_endpoint::start
- drop prepare_stop
- fix data race when calling get_local_port()
- fix delayed availability
-
routing
- send initial event on every sub
- fix missing find on resume
-
tests
- general test speedups
- remove valgrind trace-children-skip
- stop routing app last
- extend helpers to simulate suspend
- enable ctest -R for fake socket tests
- fix offer_test_local race condition
- fix usei_fixture.no_overwrite
- fix someip_tp_tests
- fix block_registration_process
- rewrite process_manager
- new subscribe_before_register test
- new shutdown_test for IPC
vSomeIP-Lib 3.6.3
v3.6.3
-
global
- rework shutdown to simplify thread detach mechanism
- avoid is-allowed call as sender
- fix lock smells
- remove remaining DLT uses
- fix Android compilation issue
- add endpoint status logs on routing manager client
- fix broken android build when ANDROID_CI_BUILD is not set
- reuse clientids asap
- remove libboost_thread as a dependency
- removing CI ANDROID ifdefs
- decrease log level in local_server
- fix application version logging
- logging when registration/Assignment times out
- add libboost_system for Android build
- do not print network state if files are empty
- enable udp abstraction
- copyright header updated
- watchdog offers
- soft revert of rework shutdown to simplify thread detach mechanism
- fix include of internal.hpp on android
- adjust valgrind-memcheck instance
- try to send data before stop application for IPC
- update nodes for network-tests
- drop dead code blocks
- merge asan/lsan/ubsan jobs
- fix stop offer watchdog
-
endpoints
- fix presence of TCP FINs
- make libsystemd dependency optional
- remove redundant set_connected and set_established
- drop message if it is over VSOMEIP_MAX_UDP_MESSAGE_SIZE
- fix send_queued error handling
- downgrade error log
- trim timer logs
- abstract uds sockets
- remove wait_connecting_timer
- wait for sent data on
stop - endpoint_host -> boardnet_endpoint_host
- introduce the boardnet_endpoint
- check client_id when accepting a connection
-
routing
- log event caching
- fix routing race
- unified log message structure
- fix availability inconsistency
- introduce routing_client_state_machine
- minor serviceinfo cleanup
- unified log message structure
- fix double stop race condition
- improves readability with structured binding
- fix debounce race
- removes deprecated config_id command
- fix debounce_filter race
- flush SOME/IP-SD at suspend
-
runtime
- fix racy properties_
- sayonara shutdown thread
-
tests
- optimize all external_local tests
- add reuse_client_id_tests
- remove tags from registration check test
- fix network_tests/someip_tp_tests
- enable dropping and injection of vsomeip commands
- fix reproduction_allow_reconnects_on_first test
- make reuse_clientID_test more robust
- fix malicious_data_tests
- fake socket tests timeouts
- attribute_recorder cleanup
- fix client_id test
- fix initial_tests signal logic
- fake-socket-tests minor updates
- fix deadlock on socket_manager
- speed up magic cookie test
- speed-up local huge_payload test
- introduce sequence tests for fake_sockets
- generate coredump on timeout
- fix memory_test
- remove sleeps
- add routing info conflict tests
- remove files to run network tests as bat
- fix gcc unit tests coverage job
- minor test speedups
- remove "manual" execution, add setup script
- removes DLT TSAN suppression, since DLT is not used for tests
- updates delay message processing helper function
-
application
- fix missing executor guard, again
- fix availability_handlers_ race
vSomeIP-Lib 3.6.2
v3.6.2
-
global
- Adapt wireshark plugin for newer wireshark versions
- Improve logs for registration process
- Trigger SIGABRT on EBADF
- Trigger SIGABRT on unexpected IO exit
- Bump minimum version of Boost to 1.74
- Check for EINVAL and react supporting errno
- Fix policy check
- Remove initial/end tag check on wireshark dissector
- Add missing include for unordered_map
- Replaces std::lock_guard with std::scoped_lock
- Fix missing headers for build
- Change type for getsockopt variable
-
application
- Fix missing executor guard
-
routing
- Enable caching of unknown events by default
- Rework "Routing Ready" message
- Fix lazy loading of security policies
- Minor rework in client id assignment
- Do not send STOP OFFER when registering application
- Unified log messages
- Ensure stop_offer/offer completes before next command
- Enable boardnet OFFER/STOP OFFER log
- Ensure lazy load of client before using security
- Fix order of on_*offer_service/on_available
-
endpoints
- Restructure local endpoints
- Reset sending flag for UDP server endpoints
- Fix max-connection-attempts
- Fix deadlock
- Fix byte order
- Remove the server_endpoint interface
- Workaround to race condition with restart list
- Fix acceptor deadlock
- Ensure buffer is not cleaned up while asio might use it
- Fix escalate race condition
- Fix uninitialized sec_client
- Avoid security failures on the daemon side
-
tests
- Fix offer_test_external
- Fix pending_subscription_tests
- Fix suspend_resume_test_initial
- Fix local_routing
- Optimize offer_test_external
- Optimize external_local_payload_test_client_external
- Fix tests timing
- Fix E2E return codes
- Improve initial event tests logging
- Include unit-tests in network-tests
- Wait after killing apps
- Add bash -x
vSomeIP-Lib 3.6.1
v3.6.1
-
global
- support compilation with gcc15
- enable CMAKE_EXPORT_COMPILE_COMMANDS
- introduce a thread-safe timer utility
-
application
- fail early, fail fast for unknown messages
- revert "IO threads exit mitigation"
-
routing
- create local receiver on start
- fix remote subscription expiration
- deliver service availability only after endpoint creation
-
tests
- add regression test - client ignores server connections for a while
- add another fake_socket test
- update subscribe notify tests documentation
- update shebang line to interpret as bash
- new network-test for start-stop-start application
- doc and fix second address tests
- doc and fix offer_test
- doc and fix routing tests
- fix payload tests return codes
-
endpoints
- fix race condition in connections_ map changes
- drop unused state
- no waiting when stopping due to error
- set tcp quick ack
vSomeIP-Lib 3.6.0
-
global
- drop vsomeip2 compatibility
- keep libvsomeip for Android.bp
- logging improvements
- cleanup ANDROID+USE_DLT macros
- change return type of get_sec_client
- fix support for recent versions of cmake and boost
- remove hardcoded CXX FLAGS for optimisation level
- add support for forwarding to logs
- fix logging of SIZED_CSTRING
-
endpoint
- deserialize full name on assign_client command
- remove pointless mutex from endpoint manager
- cleanup is_closed+cei_state_e::CLOSED
- reset flags on connect_cbk
-
routing
- ensure sub ack is sent after sub insert
- fix rmi consistency across logging
- sync delay resume with net changes
- restrict routing state to routing_manager_impl
- small rework of on_message
-
tests
- fix initial event tests
- enable tracing for all tests
- doc and fix memory_test
- fix suspend_resume_test_initial test STR related issues
- fake socket tests - clear accept handlers on io_stop
- fix application_test_availability
- common utilities for network tests
- speedup huge_payload test
vSomeIP-Lib 3.5.11
CHANGES
-
global
- Add basic watchdog to track if stop offers are sent to the
network for externally offered services. - Fixed issue of cached values not being properly updated.
- Add predicate to condition variables.
- Minor code clean-ups.
- Minor logging improvements.
- Add basic watchdog to track if stop offers are sent to the
-
endpoint
- Stop servers during suspend to avoid dangling connections.
- set SO_LINGER to 0 on local tcp client endpoints to avoid
sockets in TIME_WAIT state. - Adapted condition variable for multicast operations.
- Wait for unacknowledged data on all TCP endpoints.
- Update the error handling for local communication to synchronize
IO operations errors and state.
-
routing
- Only check ACL and process messages if the address is specified.
- Force client to go to "Initial Wait Phase" when TTL expires.
- Return when receiving a message on an invalid port/instance.
- Prevent race condition on insert_subscription.
-
tests
-
network tests
- Fix and/or document subscribe_notify_test_one tests,
restart_routing, subscribe_notify_test_diff_clients,
security_test, offered_services_info, multigroup test - Add boardnet_initial_event test, cached_event test
- Fix reuse address issues in tests
- Fix and/or document subscribe_notify_test_one tests,