1. 28 Jan, 2021 1 commit
  2. 26 Jan, 2021 1 commit
  3. 25 Jan, 2021 3 commits
  4. 23 Jan, 2021 3 commits
    • Koseng's avatar
      Support variables with properties in events and extend file generators for... · 8ac0490b
      Koseng authored
      Support variables with properties in events and extend file generators for Alarms and Conditions (#415)
      
      * Complete client alarms and conditions example
      
      Complete client alarms and conditions example for usage with OPCFoundation UA-.NETStandard-Samples Quickstart AlarmConditionServer
      
      * Add variables to generated event filter and event object
      
      Event types can not only contain properties, but also variables. For example the ConditionType, which is the foundation of Alarms and Conditions, contains variables. Add the variables to the generated event filter and event object.
      
      * Changed schemas for Fix localtime field of events
      
      * changed schemas to autogenerate event_objects.py with conditions and alarms
      
      * expand the event model with variables which are able to have properties as children
      also supports custom events
      now we are able to generate alarms and conditions
      
      * Some refactoring and commenting in events and generate_model_event
      
      * Newly generated event_objects with Alarms and Conditions Types and Variables
      Co-authored-by: default avatarmar-ar <marco.arnold@hermle.de>
      Co-authored-by: default avataroroulet <oroulet@users.noreply.github.com>
      8ac0490b
    • oroulet's avatar
      Zu zu d invalid signature (#416) · 72fac9e5
      oroulet authored
      * [InvalidSignature] Fix race condition with secure channel renewal
      
      * [InvalidSignature] Clean code and add tests
      
      * [InvalidSignature] Consider expired SecureToken for up to 25% of its lifetime
      Co-authored-by: default avatarJulien Prigent <julienprigent@wanadoo.fr>
      72fac9e5
    • Fabian Beitler's avatar
      Update bug_report.md · 4fedec4c
      Fabian Beitler authored
      4fedec4c
  5. 21 Jan, 2021 1 commit
  6. 19 Jan, 2021 2 commits
  7. 18 Jan, 2021 5 commits
  8. 12 Jan, 2021 3 commits
  9. 11 Jan, 2021 8 commits
  10. 06 Jan, 2021 1 commit
  11. 05 Jan, 2021 1 commit
    • Fabian Beitler's avatar
      Change file-path structure · 005d35b4
      Fabian Beitler authored
      Rewrite if statement to easier readable code
      Replace Path expressions a better way?
      Add absolute to get absolute path to file (I hope)
      Remove one obsolete import pytest
      Refactor method name to better name
      Redo nested if statement a better way
      Remove forgotten garbage methods
      Replace os path with pathlib
      Small Codestyle fixes
      Add check if both or neither xml arg was passed -> not xor
      Fix wrong required model handling
      Differ between xmlstrin and file
      Add tests for requirement check
      Add two xml files for test purposes
      Replace ImportError with Exception
      Remove unused var
      List all missing requirements
      Check server models in seperate Coroutine
      Add method to check requirements while xmlimport
      Add namespaces Node to Shortcuts
      005d35b4
  12. 04 Jan, 2021 8 commits
  13. 01 Jan, 2021 3 commits
    • Julien PRIGENT's avatar
      [HaClient] Asyncua ha client (#367) · f874f7db
      Julien PRIGENT authored
      * [HaClient] Asyncua client wrapper
      
      It exposes an interface similar to Client. You'll find some examples
      and tests to guide you through this new feature.
      
      Under the hood, it starts a keepalive task to monitor the status and
      service level for each server.
      
      It also includes an HaManager task which promotes a primary and
      reconnect unhealthy clients. Unhealthy clients are detected based
      on the socket status and keepalive data collected.
      
      The requests received by users as well as the HaManager decisions
      produce an ideal state called the "ideal_map". Regularly, the reconciliator task
      kicks in, lock this configuration, and applies the "ideal_map" configuration.
      It then stores the actual subscriptions status into the "real_map" using the
      lower level components of the library.
      
      Current limits:
      
      - We only support HA WARM mode and datachange notifications (no event/status_change).
      _ We support multiple subscriptions, but a node should only be subscribed once.
      
      Component details:
      
      - HaClient:
          - Configuration based on dataclasses: HaConfig (required) and HaConfigSecurity (optional)
          - Responsible to start up sides tasks: keepalive, hamanager, reconciliator
          - Mutates the ideal_map via VirtualSubscription
          - Generic hooks (i.e: to monitor subscription performance)
      
      - KeepAlive (task):
          - Regularly hits the server to check its service_level / status.
      
      - HaManager (task):
          - Promote primary / secondaries
          - Reconnect disconnected/unhealthy client based on the keepalive
          feedback.
      
      - Reconciliator (task):
          - Applies the ideal configuration
          - Perform checks on the call responses
          - Mutates the real_map
      
      - VirtualSubscription:
          - Key component of the ideal and real maps.
          - Exposes an interface similar to the subscription but only
          store the settings.
      
      * [HaClient] fix test for py3.8/py3.9
      
      CancelledError and TimeoutError have moved from concurrent.futures to
      asyncio. Note that CancelledError now inherits from BaseException and
      not Exception anymore. See https://bugs.python.org/issue32528 for the
      details.
      Finally, fix pytest_yield_fixture deprecation
      
      * [HaClient] address the comments (utils + refacto reconciliator)
      Co-authored-by: default avataroroulet <oroulet@users.noreply.github.com>
      f874f7db
    • oroulet's avatar
    • oroulet's avatar
      add sync methods necessary for uamodeler · 4dffb5d0
      oroulet authored
      4dffb5d0