Julius Pfrommer
927cf371b7
refactor(server): Remove UA_ENABLE_METHODCALLS option and always build for methods
2026-10-21 11:30:41 +02:00
Julius Pfrommer
b4cf2d6554
refactor(server): Remove UA_ENABLE_DA option and always provide percent deadband filtering
2026-10-21 11:30:41 +02:00
Julius Pfrommer
42a8a55d45
refactor(core): Remove UA_ENABLE_DISCOVERY build option; Enabled via configuration flags
2026-10-21 11:30:41 +02:00
Julius Pfrommer
513ca790ae
test(arch): cover lwIP interface lifetimes and add sanitizer CI
2026-10-12 17:08:39 +02:00
Andreas Ebner
c3bb70e66b
ci: build and test without multithreading
...
UA_MULTITHREADING=0 is supported and the default on targets that are neither UNIX nor WIN32,
but no job built it. Mirrors unit_tests_mt with a different value, on ubuntu-24.04 only to
keep the CI cost low.
2026-09-25 12:40:49 +02:00
Andreas Ebner
623cddb2ba
ci: test PubSub security and SKS with OpenSSL
...
The PubSub encryption and SKS jobs take the backend as argument and run
with OpenSSL as well. The release amalgamation build drops the removed
UA_ENABLE_PUBSUB_ENCRYPTION flag.
2026-09-24 16:52:03 +02:00
Julius Pfrommer
dd1ee3527c
ci(tests): pass sanitizer options explicitly to the privileged runner
...
Run CTest with the network privileges required by the Ethernet suites rather
than attaching file capabilities to every sanitizer executable. Pass
TSAN_OPTIONS after sudo and preserve the configured Ethernet interface.
Retain race detection and the existing exception for the recursive-lock
ordering heuristic.
2026-09-21 16:23:09 +02:00
Julius Pfrommer
720f603523
ci(tests): run the full unit test suite with ThreadSanitizer
...
Enable multithreading and the normal unit-test feature set. Build all targets and run unfiltered
CTest sequentially, failing on race reports. Keep the existing lock-order heuristic exception for
recursive locks under the common EventLoop lock.
2026-09-21 16:23:09 +02:00
Andreas Ebner
da6a019bd9
build(ci): compile the build options that no other job covers
...
Options that are off by default, and default-on features switched off.
2026-09-09 00:04:33 +02:00
Julius Pfrommer
d3e968d143
feat(nodeset-loader): move loader into core utility
2026-09-05 19:31:54 +02:00
Julius Pfrommer
a476806541
Merge remote-tracking branch 'origin/1.5' into merge_15_master
...
# Conflicts:
# .github/workflows/build_linux.yml
# CHANGES.md
# arch/common/eventloop_mqtt.c
# examples/encryption/server_encryption_filestore.c
# plugins/crypto/ua_certificategroup_filestore.c
# src/pubsub/ua_pubsub_networkmessage_json.c
# src/server/ua_discovery.h
# src/server/ua_discovery_mdns.c
# src/server/ua_discovery_mdns_avahi.c
# src/server/ua_services_attribute.c
# src/server/ua_services_discovery.c
# src/server/ua_services_monitoreditem.c
# src/server/ua_services_nodemanagement.c
# src/server/ua_subscription.c
# src/server/ua_subscription.h
# src/server/ua_subscription_alarms_conditions.c
# src/server/ua_subscription_event.c
# src/ua_types_encoding_json_105.c
# tests/client/check_activateSessionAsync.c
# tests/server/check_local_monitored_item.c
# tests/server/check_services_subscriptions.c
2026-09-03 14:33:21 +02:00
Andreas Ebner
92609f802a
feat(ci): split the memcheck unit tests over parallel jobs
...
Move the Valgrind jobs into a dedicated workflow and shard the unit
test runs round-robin over six runners via CTEST_SHARDS/CTEST_SHARD.
Share the common Linux job setup through a composite action.
2026-09-02 15:32:46 +02:00
Julius Pfrommer
c698eaf2eb
refactor: add missing o6 Automation copyright headers
2026-08-17 22:17:22 +02:00
Julius Pfrommer
f3c2842a89
feat(client): add OPC UA HTTP transports
2026-08-17 15:19:52 +02:00
Julius Pfrommer
aaa338347b
feat(server): wire OPC UA HTTP transport
2026-08-17 15:19:52 +02:00
Julius Pfrommer
cd69204f38
fix(arch): harden libwebsockets adapter compatibility
2026-08-17 15:19:52 +02:00
Julius Pfrommer
bdd6ed40d4
Merge remote-tracking branch 'origin/1.5' into merge_15_master_2
...
# Conflicts:
# plugins/crypto/mbedtls/certificategroup.c
# src/pubsub/ua_pubsub_config.c
# src/server/ua_discovery_mdns.c
# src/server/ua_server.c
# src/server/ua_server_internal.h
# src/server/ua_server_ns0_gds.c
# src/server/ua_services_nodemanagement.c
# src/server/ua_subscription_alarms_conditions.c
# src/ua_types_definition.c
# tests/server/check_services_nodemanagement.c
2026-08-16 16:46:48 +02:00
Julius Pfrommer
e5e56db5ac
ci(mbedtls): use supported dependency across jobs
2026-08-12 05:44:46 +02:00
Andreas Ebner
ce8f98b3a1
build(ci): Cover PubSub file config in the amalgamation build
...
No amalgamation build enabled it, so the duplicate static went unnoticed.
2026-08-10 21:39:53 +02:00
Julian Weiß
9bfbd2e0f0
ci(linux): add a GitHub Actions job for the GLib EventLoop
...
Adds a new "Debug Build & Unit Tests with GLib EventLoop (gcc)" matrix
entry to build_linux.yml, plus the corresponding unit_tests_glib
function in tools/ci/linux/ci.sh. It builds with
-DUA_ENABLE_EVENTLOOP_GLIB=ON -DUA_FORCE_WERROR=ON (mirroring the
other feature-specific jobs such as unit_tests_mt/unit_tests_diag)
and runs the full unit test suite, including
check_eventloop_tcp_glib, so the GLib-backed EventLoop is exercised
on every push and PR.
Claude-Session: https://claude.ai/code/session_01M4bVsYckhSnWQSP1kkHV52
2026-08-03 20:22:20 +02:00
Noel Graf
eb347afaa5
feat(tests): Add HTTP ConnectionManager test cases
2026-07-21 20:22:09 +02:00
Julius Pfrommer
f2fe9f6ea5
refactor(driver): Rename GDS-Receive to GDS-Receiver
2026-07-18 21:26:33 +02:00
Julius Pfrommer
31e4278ce0
refactor(driver): Move the GDS receive side into a driver
2026-07-18 21:26:33 +02:00
Andreas Ebner
d2c5d0aff0
Merge remote-tracking branch 'origin/1.5' into merge_15_master_5
...
# Conflicts:
# CMakeLists.txt
# src/server/ua_session.c
# src/ua_types_encoding_json.c
# src/ua_types_encoding_json_105.c
# tests/CMakeLists.txt
# tests/pubsub/check_pubsub_publish.c
# tests/server/check_services_subscriptions.c
# tests/valgrind_check_error.py
# tools/ci/linux/ci.sh
2026-07-17 09:19:33 +02:00
Andreas Ebner
0f79f7160a
ci(linux): reorder build dir cleanup and enable pubsub file-config
...
Backport the rm-then-mkdir reorder so hidden files are cleared, and turn on UA_ENABLE_PUBSUB_FILE_CONFIG in the unit tests.
2026-07-14 08:21:52 +02:00
Julius Pfrommer
93d7097a8d
refactor(build): Update build options for the new driver structure
2026-07-05 23:46:24 +02:00
Julius Pfrommer
656267b1b4
feat(ci): Add CI run with multicast discovery enabled
2026-07-03 07:17:56 +02:00
Julius Pfrommer
c4555a16f0
Merge remote-tracking branch 'origin/1.5' into merge_14_15_7
2026-05-18 16:32:46 +02:00
StalderT
dc0430f299
ci: add memcheck coverage for alarms and conditions tests
2026-05-16 04:10:21 +02:00
Niels Beier
4cd3fac3a2
fix(ci): fix clang-21 static analyzer false positives
...
scan-build-21 reports false positive bugs in the posix eventloop code, causing some CI jobs to fail
2026-05-11 22:59:04 +02:00
Niels Beier
c4b56e986b
fix(ci): fix clang-21 static analyzer false positives
...
scan-build-21 reports false positive bugs in the posix eventloop code, causing some CI jobs to fail
2026-05-11 16:19:04 +02:00
Julius Pfrommer
30ae922aa6
Merge remote-tracking branch 'origin/1.5' into merge_15_master_7
2026-04-25 21:05:40 +02:00
StalderT
76503d09b6
fix(build): Include missing client symbols in amalgamation without discovery ( #7973 )
...
* cmake: fix missing client symbols in amalgamation when discovery is disabled
When building the amalgamated source with UA_ENABLE_DISCOVERY=OFF, core client APIs (e.g. UA_Client_new, UA_Client_getConfig, subscriptions, write services) are missing from the resulting open62541.c.
This leads to linker errors for applications using the client API.
Ensure that required client sources are included in the amalgamation even when UA_ENABLE_DISCOVERY is disabled.
This appears to have been introduced after recent changes around the discovery/client separation.
* ci: test client symbols in amalgamation smoke test
2026-04-07 11:47:10 +02:00
Jannis Völker and Andreas Ebner
58b3a44092
fix(build): include clock source in amalgamation without selected architecture
...
Co-authored-by: Andreas Ebner <andreas.ebner@o6-automation.com >
2026-04-02 16:28:51 +02:00
Moritz Bruder
e41e2ca79d
feature(client): Add JSON5 client configuration support
...
Add UA_Client_newFromFile() and UA_ClientConfig_loadFromFile() to create
and configure a client from a JSON5 configuration file.
2026-03-30 21:44:34 +02:00
Moritz Bruder
6441c636ac
refactor(server): Refactor JSON5 server configuration support
...
Refactor the JSON5 configuration parser: replace the jump table dispatch
with direct function calls, improve error handling with early returns.
Move the public API (UA_Server_newFromFile, UA_ServerConfig_loadFromFile)
from the removed server_config_file_based.h into server.h. Add the
server_config_schema.json schema and update the example configuration.
2026-03-30 21:44:34 +02:00
Julius Pfrommer
3072153d3e
Merge pull request #7921 from open62541/1.5
...
Merge 1.5 to master
2026-03-20 19:59:25 +01:00
StalderT
6d45172dec
feat(ci): Add MinGW cross-compilation test for amalgamation ( #7874 )
2026-03-14 10:01:12 +01:00
Julius Pfrommer
1715b26d80
Merge remote-tracking branch 'origin/1.5' into merge_15_master_4
2026-02-27 23:40:07 +01:00
Andreas Ebner
0e7b748260
feat(server): support 60+ companion spec models in nodeset injector
2026-02-27 09:05:53 +01:00
Julius Pfrommer
99cd8ab3a8
Merge remote-tracking branch 'origin/1.5' into merge_15_master_3
2026-02-21 00:05:03 +01:00
Andreas Ebner
a289b2b820
fix(nodeset): Update companion spec configurations for ua-nodeset UA-1.05.06
2026-02-20 15:44:24 +01:00
Florian La Roche
2ddbddaa41
refactor(ci): change order on removing/adding build dir
...
Change order on removing/adding build dir.
Signed-off-by: Florian La Roche <f.laroche@pilz.de >
2026-02-05 12:58:45 +01:00
Julius Pfrommer
3e5a7b09a6
refactor(ci): Small indendation improvement in tools/ci/linux/ci.sh
2026-01-23 14:35:14 +01:00
Julius Pfrommer
fca4dfb4dc
feat(ci): Log the application name which failed the valgrind tests
2025-09-24 10:40:05 +02:00
Julius Pfrommer
6742550db7
refactor(ci): Remove unused cpplint
2025-09-11 09:56:58 +02:00
Noel Graf
224315813e
fix(build): Exclude the pubsub mqtt examples from ci
2025-08-21 17:21:14 +02:00
Noel Graf
b8e42359db
feat(ci): Add a test case to run the examples and verify the exit codes
2025-08-21 17:21:14 +02:00
Noel Graf
0d9e7c2d59
fix(ci): Correct Valgrind suppression file path
2025-08-14 15:24:57 +02:00
Andreas Ebner
ad5773f284
refactor(ci) remove azure windows builds and overhaul ci script file structure
2025-08-05 10:02:55 +02:00