Skip to content

Commit

Permalink
fix(plc4py/umas): Write Support (#1463)
Browse files Browse the repository at this point in the history
* fix(plc4py/umas): Start to add write support

* build(deps): bump github.com/stretchr/testify in /plc4go (#1439)

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.4 to 1.9.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.8.4...v1.9.0)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  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>

* build(deps): bump golang.org/x/tools from 0.18.0 to 0.19.0 in /plc4go (#1440)

Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.18.0 to 0.19.0.
- [Release notes](https://github.com/golang/tools/releases)
- [Commits](https://github.com/golang/tools/compare/v0.18.0...v0.19.0)

---
updated-dependencies:
- dependency-name: golang.org/x/tools
  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>

* build(deps): bump logback.version from 1.5.0 to 1.5.1 (#1435)

Bumps `logback.version` from 1.5.0 to 1.5.1.

Updates `ch.qos.logback:logback-classic` from 1.5.0 to 1.5.1
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.0...v_1.5.1)

Updates `ch.qos.logback:logback-core` from 1.5.0 to 1.5.1
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.0...v_1.5.1)

---
updated-dependencies:
- dependency-name: ch.qos.logback:logback-classic
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: ch.qos.logback:logback-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/gdamore/tcell/v2 in /plc4go (#1438)

Bumps [github.com/gdamore/tcell/v2](https://github.com/gdamore/tcell) from 2.7.1 to 2.7.4.
- [Release notes](https://github.com/gdamore/tcell/releases)
- [Changelog](https://github.com/gdamore/tcell/blob/main/CHANGESv2.md)
- [Commits](https://github.com/gdamore/tcell/compare/v2.7.1...v2.7.4)

---
updated-dependencies:
- dependency-name: github.com/gdamore/tcell/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump golang.org/x/net from 0.21.0 to 0.22.0 in /plc4go (#1441)

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.21.0 to 0.22.0.
- [Commits](https://github.com/golang/net/compare/v0.21.0...v0.22.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  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>

* build(deps): bump jakarta.activation:jakarta.activation-api (#1436)

Bumps [jakarta.activation:jakarta.activation-api](https://github.com/jakartaee/jaf-api) from 2.1.2 to 2.1.3.
- [Release notes](https://github.com/jakartaee/jaf-api/releases)
- [Commits](https://github.com/jakartaee/jaf-api/compare/2.1.2...2.1.3)

---
updated-dependencies:
- dependency-name: jakarta.activation:jakarta.activation-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(plc4j/genericcan) Fix of generic CAN driver and CAN transports after recent releases.

Signed-off-by: Łukasz Dywicki <[email protected]>

* chore: Disabled a flaky test in GO

* docs: Updated the url for the opie tool

* chore: Updated vendor ids

* docs: Added some information on the site plugin and the asciidoctor plugin.

* chore: Updated vendor ids

* build: Continued fine-tuning the reproducible build release-scripts.

* chore: Updated vendor ids

* feat: The S7 driver now returns supporting S7, if the connected device is an S7-300.

* fix: Fixed logging in the example.

* refactor: Made the "protocol" accessible in the AbstractPlcConnection

* refactor: Added S7-400 to the list of supported devices.

* fix: Fixed the dependency usage error.

* Fix/s7async (#1451)

* Change type transfer in cyclic subscription from byte[] to PlcValue. Accepts cyclic subscription to bits.

* Add short pattern to tag subscription.

* Corrects short tag handling in CYC subscriptions. In observation./karaf

* Modified the cyclical subscription system. TODO time base management fpr CYC.

* Fixed time base handling for cyclical subscriptions. Subscription routine for changes is added experimentally.

---------

Co-authored-by: Cesar Garcia <[email protected]>

* build(deps): bump com.google.googlejavaformat:google-java-format (#1449)

Bumps [com.google.googlejavaformat:google-java-format](https://github.com/google/google-java-format) from 1.20.0 to 1.21.0.
- [Release notes](https://github.com/google/google-java-format/releases)
- [Commits](https://github.com/google/google-java-format/compare/v1.20.0...v1.21.0)

---
updated-dependencies:
- dependency-name: com.google.googlejavaformat:google-java-format
  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>

* build(deps): bump logback.version from 1.5.1 to 1.5.3 (#1448)

Bumps `logback.version` from 1.5.1 to 1.5.3.

Updates `ch.qos.logback:logback-classic` from 1.5.1 to 1.5.3
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.1...v_1.5.3)

Updates `ch.qos.logback:logback-core` from 1.5.1 to 1.5.3
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.1...v_1.5.3)

---
updated-dependencies:
- dependency-name: ch.qos.logback:logback-classic
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: ch.qos.logback:logback-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump com.gradle:common-custom-user-data-maven-extension (#1434)

Bumps [com.gradle:common-custom-user-data-maven-extension](https://github.com/gradle/common-custom-user-data-maven-extension) from 1.12.5 to 1.13.
- [Release notes](https://github.com/gradle/common-custom-user-data-maven-extension/releases)
- [Commits](https://github.com/gradle/common-custom-user-data-maven-extension/compare/v1.12.5...v1.13)

---
updated-dependencies:
- dependency-name: com.gradle:common-custom-user-data-maven-extension
  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>

* Update PlcRawByteArray.java (#1453)

Removed method duplicate

* chore: Disabled some OPC-UA tests, that were continuously failing the build.

* chore: Disabled some OPC-UA tests, that were continuously failing the build.

* feat: Added a new flag allowing to disable tests on Jenkins. Added this to the flaky OPC-UA tests and re-enabled them.

* build(deps-dev): bump org.apache.commons:commons-compress (#1456)

Bumps org.apache.commons:commons-compress from 1.26.0 to 1.26.1.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-compress
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump org.awaitility:awaitility from 4.2.0 to 4.2.1 (#1455)

Bumps [org.awaitility:awaitility](https://github.com/awaitility/awaitility) from 4.2.0 to 4.2.1.
- [Changelog](https://github.com/awaitility/awaitility/blob/master/changelog.txt)
- [Commits](https://github.com/awaitility/awaitility/compare/awaitility-4.2.0...awaitility-4.2.1)

---
updated-dependencies:
- dependency-name: org.awaitility:awaitility
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* docs: Added "slave-id" to the description of the unit-identifier.

* chore: Disabled the OpcuaPlcDriverTest as it also seems to regularly fail on GitHub actions.

* build(deps): bump org.springframework.boot:spring-boot-maven-plugin (#1460)

Bumps [org.springframework.boot:spring-boot-maven-plugin](https://github.com/spring-projects/spring-boot) from 3.2.3 to 3.2.4.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v3.2.3...v3.2.4)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump com.google.errorprone:error_prone_annotations (#1461)

Bumps [com.google.errorprone:error_prone_annotations](https://github.com/google/error-prone) from 2.25.0 to 2.26.1.
- [Release notes](https://github.com/google/error-prone/releases)
- [Commits](https://github.com/google/error-prone/compare/v2.25.0...v2.26.1)

---
updated-dependencies:
- dependency-name: com.google.errorprone:error_prone_annotations
  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>

* build(deps): bump org.springframework.boot:spring-boot-dependencies (#1462)

Bumps [org.springframework.boot:spring-boot-dependencies](https://github.com/spring-projects/spring-boot) from 3.2.3 to 3.2.4.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v3.2.3...v3.2.4)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* docs: Updated some documentation on the code-generation.

* refactor: Renamed the paddingField paddingCondition to timesPadding

* chore: Removed some unneeded code.

* chore: Updated vendor ids

* chore: Cleaned up in the sandbox

* fix(plc4py): type extensions module added to setup.py

* fix(plc4py): Move out of sandbox

* chore(sandbox): Remove the Sandbox Directory

* chore(plc4px): Remove manual test

* feat(plc4x/modbus): Add support for unit-id option for modbus tags.

Introduce support for tag config at the tag level.
Closes #1234.

* build(deps): bump nl.jqno.equalsverifier:equalsverifier (#1467)

Bumps [nl.jqno.equalsverifier:equalsverifier](https://github.com/jqno/equalsverifier) from 3.15.7 to 3.16.
- [Release notes](https://github.com/jqno/equalsverifier/releases)
- [Changelog](https://github.com/jqno/equalsverifier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jqno/equalsverifier/compare/equalsverifier-3.15.7...equalsverifier-3.16)

---
updated-dependencies:
- dependency-name: nl.jqno.equalsverifier:equalsverifier
  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>

* build(deps): bump org.cyclonedx:cyclonedx-maven-plugin (#1466)

Bumps [org.cyclonedx:cyclonedx-maven-plugin](https://github.com/CycloneDX/cyclonedx-maven-plugin) from 2.7.11 to 2.8.0.
- [Release notes](https://github.com/CycloneDX/cyclonedx-maven-plugin/releases)
- [Commits](https://github.com/CycloneDX/cyclonedx-maven-plugin/compare/cyclonedx-maven-plugin-2.7.11...cyclonedx-maven-plugin-2.8.0)

---
updated-dependencies:
- dependency-name: org.cyclonedx:cyclonedx-maven-plugin
  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>

* build(deps): bump org.apache.maven.plugins:maven-remote-resources-plugin (#1465)

Bumps [org.apache.maven.plugins:maven-remote-resources-plugin](https://github.com/apache/maven-remote-resources-plugin) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/apache/maven-remote-resources-plugin/releases)
- [Commits](https://github.com/apache/maven-remote-resources-plugin/compare/maven-remote-resources-plugin-3.1.0...maven-remote-resources-plugin-3.2.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-remote-resources-plugin
  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>

* build(deps): bump org.aspectj:aspectjweaver from 1.9.21.1 to 1.9.22 (#1475)

Bumps [org.aspectj:aspectjweaver](https://github.com/eclipse/org.aspectj) from 1.9.21.1 to 1.9.22.
- [Release notes](https://github.com/eclipse/org.aspectj/releases)
- [Commits](https://github.com/eclipse/org.aspectj/commits)

---
updated-dependencies:
- dependency-name: org.aspectj:aspectjweaver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump jakarta.xml.bind:jakarta.xml.bind-api (#1474)

Bumps [jakarta.xml.bind:jakarta.xml.bind-api](https://github.com/jakartaee/jaxb-api) from 4.0.1 to 4.0.2.
- [Release notes](https://github.com/jakartaee/jaxb-api/releases)
- [Commits](https://github.com/jakartaee/jaxb-api/compare/4.0.1...4.0.2)

---
updated-dependencies:
- dependency-name: jakarta.xml.bind:jakarta.xml.bind-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump com.google.guava:guava from 33.0.0-jre to 33.1.0-jre (#1473)

Bumps [com.google.guava:guava](https://github.com/google/guava) from 33.0.0-jre to 33.1.0-jre.
- [Release notes](https://github.com/google/guava/releases)
- [Commits](https://github.com/google/guava/commits)

---
updated-dependencies:
- dependency-name: com.google.guava:guava
  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>

* build(deps): bump golang.org/x/net from 0.22.0 to 0.23.0 in /plc4go (#1477)

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.22.0 to 0.23.0.
- [Commits](https://github.com/golang/net/compare/v0.22.0...v0.23.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  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>

* build(deps): bump mockito.version from 5.10.0 to 5.11.0 (#1478)

Bumps `mockito.version` from 5.10.0 to 5.11.0.

Updates `org.mockito:mockito-core` from 5.10.0 to 5.11.0
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v5.10.0...v5.11.0)

Updates `org.mockito:mockito-junit-jupiter` from 5.10.0 to 5.11.0
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v5.10.0...v5.11.0)

---
updated-dependencies:
- dependency-name: org.mockito:mockito-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.mockito:mockito-junit-jupiter
  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>

* build(deps): bump io.swagger:swagger-annotations from 1.6.13 to 1.6.14 (#1479)

Bumps io.swagger:swagger-annotations from 1.6.13 to 1.6.14.

---
updated-dependencies:
- dependency-name: io.swagger:swagger-annotations
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump org.sonarsource.scanner.maven:sonar-maven-plugin (#1480)

Bumps [org.sonarsource.scanner.maven:sonar-maven-plugin](https://github.com/SonarSource/sonar-scanner-maven) from 3.10.0.2594 to 3.11.0.3922.
- [Release notes](https://github.com/SonarSource/sonar-scanner-maven/releases)
- [Commits](https://github.com/SonarSource/sonar-scanner-maven/compare/3.10.0.2594...3.11.0.3922)

---
updated-dependencies:
- dependency-name: org.sonarsource.scanner.maven:sonar-maven-plugin
  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>

* Update PlcCHAR.java add Character type check to of method (#1489)

As the API uses the of method to get the PlcCHAR object passing a char to API methods lead to errors, because internally the of method was used convert the passed object.

* build(deps): bump golang.org/x/net from 0.23.0 to 0.24.0 in /plc4go (#1488)

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.23.0 to 0.24.0.
- [Commits](https://github.com/golang/net/compare/v0.23.0...v0.24.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  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>

* build(deps): bump groovy.version from 4.0.18 to 4.0.20 (#1486)

Bumps `groovy.version` from 4.0.18 to 4.0.20.

Updates `org.apache.groovy:groovy-test-junit5` from 4.0.18 to 4.0.20
- [Commits](https://github.com/apache/groovy/commits)

Updates `org.apache.groovy:groovy` from 4.0.18 to 4.0.20
- [Commits](https://github.com/apache/groovy/commits)

Updates `org.apache.groovy:groovy-xml` from 4.0.18 to 4.0.20
- [Commits](https://github.com/apache/groovy/commits)

---
updated-dependencies:
- dependency-name: org.apache.groovy:groovy-test-junit5
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.groovy:groovy
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.groovy:groovy-xml
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump org.jacoco:jacoco-maven-plugin from 0.8.11 to 0.8.12 (#1485)

Bumps [org.jacoco:jacoco-maven-plugin](https://github.com/jacoco/jacoco) from 0.8.11 to 0.8.12.
- [Release notes](https://github.com/jacoco/jacoco/releases)
- [Commits](https://github.com/jacoco/jacoco/compare/v0.8.11...v0.8.12)

---
updated-dependencies:
- dependency-name: org.jacoco:jacoco-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump org.apache.maven.plugins:maven-source-plugin (#1484)

Bumps [org.apache.maven.plugins:maven-source-plugin](https://github.com/apache/maven-source-plugin) from 3.3.0 to 3.3.1.
- [Commits](https://github.com/apache/maven-source-plugin/compare/maven-source-plugin-3.3.0...maven-source-plugin-3.3.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-source-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump golang.org/x/tools from 0.19.0 to 0.20.0 in /plc4go (#1487)

Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.19.0 to 0.20.0.
- [Release notes](https://github.com/golang/tools/releases)
- [Commits](https://github.com/golang/tools/compare/v0.19.0...v0.20.0)

---
updated-dependencies:
- dependency-name: golang.org/x/tools
  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>

* fix: A compilation error.

* refactor: Moved the examples, integrations and other extra stuff into the new plc4x-extras repository (#1483)

* refactor: Moved the examples, integrations and other extra stuff into the new plc4x-extras repository

* refactor: Cleaned up some of the managed dependencies.

* refactor: Updated some of the go-tools used in the build

* fix: Fixed the issues causing problems building PLC4C

* fix: A compilation error.

* fix: Fixed an error in the code-generation for C which only appeared in the code-gen testsuite.

* fix: Fixed an error in the code-generation for C which only appeared in the code-gen testsuite.

* fix: Disabling "CodeQL analysis" step as it's failing and I can't see from the output why.

* fix: Disabling "Trivy Scan" workflow as it's randomy failing and I can't see from the output why.

* chore: Updated the issue-tracker settings to point to GitHub instead of Jira

* build(deps): bump nl.jqno.equalsverifier:equalsverifier (#1490)

Bumps [nl.jqno.equalsverifier:equalsverifier](https://github.com/jqno/equalsverifier) from 3.16 to 3.16.1.
- [Release notes](https://github.com/jqno/equalsverifier/releases)
- [Changelog](https://github.com/jqno/equalsverifier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jqno/equalsverifier/compare/equalsverifier-3.16...equalsverifier-3.16.1)

---
updated-dependencies:
- dependency-name: nl.jqno.equalsverifier:equalsverifier
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump org.apache.maven.plugins:maven-assembly-plugin (#1491)

Bumps [org.apache.maven.plugins:maven-assembly-plugin](https://github.com/apache/maven-assembly-plugin) from 3.6.0 to 3.7.1.
- [Release notes](https://github.com/apache/maven-assembly-plugin/releases)
- [Commits](https://github.com/apache/maven-assembly-plugin/compare/maven-assembly-plugin-3.6.0...maven-assembly-plugin-3.7.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-assembly-plugin
  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>

* fix(plc4py): Fix exception on closing the connection

* fix(plc4py): Fix connection lost exception being raised

* fix(plc4py): set test to manual

* fix(plc4py): Got rid of returning future, starting to understand it a bit more now ;)

* build(deps): bump jakarta.annotation:jakarta.annotation-api (#1494)

Bumps [jakarta.annotation:jakarta.annotation-api](https://github.com/jakartaee/common-annotations-api) from 2.1.1 to 3.0.0.
- [Commits](https://github.com/jakartaee/common-annotations-api/compare/2.1.1...3.0.0)

---
updated-dependencies:
- dependency-name: jakarta.annotation:jakarta.annotation-api
  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>

* build(deps): bump io.netty:netty-bom from 4.1.107.Final to 4.1.108.Final (#1493)

Bumps [io.netty:netty-bom](https://github.com/netty/netty) from 4.1.107.Final to 4.1.108.Final.
- [Commits](https://github.com/netty/netty/compare/netty-4.1.107.Final...netty-4.1.108.Final)

---
updated-dependencies:
- dependency-name: io.netty:netty-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(plc4py): Add to dependabot

* build(deps): bump pytest-mock from 3.12.0 to 3.14.0 in /plc4py (#1501)

Bumps [pytest-mock](https://github.com/pytest-dev/pytest-mock) from 3.12.0 to 3.14.0.
- [Release notes](https://github.com/pytest-dev/pytest-mock/releases)
- [Changelog](https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest-mock/compare/v3.12.0...v3.14.0)

---
updated-dependencies:
- dependency-name: pytest-mock
  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>

* build(deps): bump identify from 2.5.33 to 2.5.35 in /plc4py (#1500)

Bumps [identify](https://github.com/pre-commit/identify) from 2.5.33 to 2.5.35.
- [Commits](https://github.com/pre-commit/identify/compare/v2.5.33...v2.5.35)

---
updated-dependencies:
- dependency-name: identify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump packaging from 23.2 to 24.0 in /plc4py (#1499)

Bumps [packaging](https://github.com/pypa/packaging) from 23.2 to 24.0.
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/packaging/compare/23.2...24.0)

---
updated-dependencies:
- dependency-name: packaging
  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>

* build(deps): bump pytest-asyncio from 0.23.5 to 0.23.6 in /plc4py (#1498)

Bumps [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) from 0.23.5 to 0.23.6.
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases)
- [Commits](https://github.com/pytest-dev/pytest-asyncio/compare/v0.23.5...v0.23.6)

---
updated-dependencies:
- dependency-name: pytest-asyncio
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump build from 1.0.3 to 1.2.1 in /plc4py (#1496)

Bumps [build](https://github.com/pypa/build) from 1.0.3 to 1.2.1.
- [Release notes](https://github.com/pypa/build/releases)
- [Changelog](https://github.com/pypa/build/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/build/compare/1.0.3...1.2.1)

---
updated-dependencies:
- dependency-name: build
  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>

* fix(plc4py): Use packet length estimator to be able to handle multiple packets in a queue

* Update apache-kafka links to plc4x extra

* feat(plc4go): change to TestingLog interface for TestLogger

* build(deps): bump com.fasterxml.jackson.datatype:jackson-datatype-jsr310 (#1497)

Bumps com.fasterxml.jackson.datatype:jackson-datatype-jsr310 from 2.16.1 to 2.17.0.

---
updated-dependencies:
- dependency-name: com.fasterxml.jackson.datatype:jackson-datatype-jsr310
  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>

* build(deps): bump com.gradle:common-custom-user-data-maven-extension (#1492)

Bumps [com.gradle:common-custom-user-data-maven-extension](https://github.com/gradle/common-custom-user-data-maven-extension) from 1.13 to 2.
- [Release notes](https://github.com/gradle/common-custom-user-data-maven-extension/releases)
- [Commits](https://github.com/gradle/common-custom-user-data-maven-extension/compare/v1.13...v2)

---
updated-dependencies:
- dependency-name: com.gradle:common-custom-user-data-maven-extension
  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>

* build(deps): bump mypy from 1.8.0 to 1.9.0 in /plc4py (#1502)

Bumps [mypy](https://github.com/python/mypy) from 1.8.0 to 1.9.0.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.8.0...1.9.0)

---
updated-dependencies:
- dependency-name: mypy
  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>

* build(deps): bump black from 24.1.1 to 24.3.0 in /plc4py (#1503)

Bumps [black](https://github.com/psf/black) from 24.1.1 to 24.3.0.
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](https://github.com/psf/black/compare/24.1.1...24.3.0)

---
updated-dependencies:
- dependency-name: black
  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>

* build(deps): bump filelock from 3.13.1 to 3.13.4 in /plc4py (#1504)

Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.13.1 to 3.13.4.
- [Release notes](https://github.com/tox-dev/py-filelock/releases)
- [Changelog](https://github.com/tox-dev/filelock/blob/main/docs/changelog.rst)
- [Commits](https://github.com/tox-dev/py-filelock/compare/3.13.1...3.13.4)

---
updated-dependencies:
- dependency-name: filelock
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump virtualenv from 20.25.0 to 20.25.1 in /plc4py (#1506)

Bumps [virtualenv](https://github.com/pypa/virtualenv) from 20.25.0 to 20.25.1.
- [Release notes](https://github.com/pypa/virtualenv/releases)
- [Changelog](https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst)
- [Commits](https://github.com/pypa/virtualenv/compare/20.25.0...20.25.1)

---
updated-dependencies:
- dependency-name: virtualenv
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump typing-extensions from 4.9.0 to 4.11.0 in /plc4py (#1505)

Bumps [typing-extensions](https://github.com/python/typing_extensions) from 4.9.0 to 4.11.0.
- [Release notes](https://github.com/python/typing_extensions/releases)
- [Changelog](https://github.com/python/typing_extensions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/python/typing_extensions/compare/4.9.0...4.11.0)

---
updated-dependencies:
- dependency-name: typing-extensions
  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>

* build(deps): bump org.apache.maven.plugins:maven-invoker-plugin (#1514)

Bumps [org.apache.maven.plugins:maven-invoker-plugin](https://github.com/apache/maven-invoker-plugin) from 3.6.0 to 3.6.1.
- [Release notes](https://github.com/apache/maven-invoker-plugin/releases)
- [Commits](https://github.com/apache/maven-invoker-plugin/compare/maven-invoker-plugin-3.6.0...maven-invoker-plugin-3.6.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-invoker-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump org.asciidoctor:asciidoctorj from 2.5.11 to 2.5.12 (#1515)

Bumps [org.asciidoctor:asciidoctorj](https://github.com/asciidoctor/asciidoctorj) from 2.5.11 to 2.5.12.
- [Release notes](https://github.com/asciidoctor/asciidoctorj/releases)
- [Changelog](https://github.com/asciidoctor/asciidoctorj/blob/v2.5.12/CHANGELOG.adoc)
- [Commits](https://github.com/asciidoctor/asciidoctorj/compare/v2.5.11...v2.5.12)

---
updated-dependencies:
- dependency-name: org.asciidoctor:asciidoctorj
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump com.google.googlejavaformat:google-java-format (#1516)

Bumps [com.google.googlejavaformat:google-java-format](https://github.com/google/google-java-format) from 1.21.0 to 1.22.0.
- [Release notes](https://github.com/google/google-java-format/releases)
- [Commits](https://github.com/google/google-java-format/compare/v1.21.0...v1.22.0)

---
updated-dependencies:
- dependency-name: com.google.googlejavaformat:google-java-format
  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>

* build(deps): bump coverage from 7.4.1 to 7.4.4 in /plc4py (#1511)

Bumps [coverage](https://github.com/nedbat/coveragepy) from 7.4.1 to 7.4.4.
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](https://github.com/nedbat/coveragepy/compare/7.4.1...7.4.4)

---
updated-dependencies:
- dependency-name: coverage
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump pytest from 8.0.0 to 8.1.1 in /plc4py (#1510)

Bumps [pytest](https://github.com/pytest-dev/pytest) from 8.0.0 to 8.1.1.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/8.0.0...8.1.1)

---
updated-dependencies:
- dependency-name: pytest
  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>

* build(deps): bump pre-commit from 3.6.0 to 3.7.0 in /plc4py (#1512)

Bumps [pre-commit](https://github.com/pre-commit/pre-commit) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/pre-commit/pre-commit/releases)
- [Changelog](https://github.com/pre-commit/pre-commit/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pre-commit/pre-commit/compare/v3.6.0...v3.7.0)

---
updated-dependencies:
- dependency-name: pre-commit
  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>

* build(deps): bump pip-tools from 7.3.0 to 7.4.1 in /plc4py (#1513)

Bumps [pip-tools](https://github.com/jazzband/pip-tools) from 7.3.0 to 7.4.1.
- [Release notes](https://github.com/jazzband/pip-tools/releases)
- [Changelog](https://github.com/jazzband/pip-tools/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jazzband/pip-tools/compare/7.3.0...7.4.1)

---
updated-dependencies:
- dependency-name: pip-tools
  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>

* fix(plc4j/ads): Fixed List serialization passing invalid datatype for child elements (#1517)

* feat: Changed the ManualTest to allow enabling read and write requests separately as well as disabling the single-item requests and also test multi-item writes.

* fix(plc4j/opcua): Cleanup discovery connection resources. 

Update of unit test to verify method exits.

Closes #1101.

Signed-off-by: Łukasz Dywicki <[email protected]>

* fix(plc4j/ads): Invalid size writing multiple tags (#1524)

* fix: Added the struct back to the manual ads test.

* fix(plc4j/opcua): Make sure UA subscription acknowledges are retained over publish cycles. 

Closes #1364.

Signed-off-by: Łukasz Dywicki <[email protected]>

* chore: Updated vendor ids

* chore: Addressed most high severity sonarcloud issues

* build(deps): bump black from 24.3.0 to 24.4.0 in /plc4py (#1528)

Bumps [black](https://github.com/psf/black) from 24.3.0 to 24.4.0.
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](https://github.com/psf/black/compare/24.3.0...24.4.0)

---
updated-dependencies:
- dependency-name: black
  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>

* build(deps): bump org.apache.maven.plugins:maven-compiler-plugin (#1525)

Bumps [org.apache.maven.plugins:maven-compiler-plugin](https://github.com/apache/maven-compiler-plugin) from 3.12.1 to 3.13.0.
- [Release notes](https://github.com/apache/maven-compiler-plugin/releases)
- [Commits](https://github.com/apache/maven-compiler-plugin/compare/maven-compiler-plugin-3.12.1...maven-compiler-plugin-3.13.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-compiler-plugin
  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>

* build(deps): bump org.codehaus.plexus:plexus-compiler-api (#1526)

Bumps [org.codehaus.plexus:plexus-compiler-api](https://github.com/codehaus-plexus/plexus-compiler) from 2.14.2 to 2.15.0.
- [Release notes](https://github.com/codehaus-plexus/plexus-compiler/releases)
- [Commits](https://github.com/codehaus-plexus/plexus-compiler/compare/plexus-compiler-2.14.2...plexus-compiler-2.15.0)

---
updated-dependencies:
- dependency-name: org.codehaus.plexus:plexus-compiler-api
  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>

* build(deps): bump com.google.errorprone:error_prone_annotations (#1527)

Bumps [com.google.errorprone:error_prone_annotations](https://github.com/google/error-prone) from 2.23.0 to 2.26.1.
- [Release notes](https://github.com/google/error-prone/releases)
- [Commits](https://github.com/google/error-prone/compare/v2.23.0...v2.26.1)

---
updated-dependencies:
- dependency-name: com.google.errorprone:error_prone_annotations
  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>

* build(deps): bump logback.version from 1.5.3 to 1.5.5 (#1531)

Bumps `logback.version` from 1.5.3 to 1.5.5.

Updates `ch.qos.logback:logback-classic` from 1.5.3 to 1.5.5
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.3...v_1.5.5)

Updates `ch.qos.logback:logback-core` from 1.5.3 to 1.5.5
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.3...v_1.5.5)

---
updated-dependencies:
- dependency-name: ch.qos.logback:logback-classic
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: ch.qos.logback:logback-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump io.netty:netty-bom from 4.1.108.Final to 4.1.109.Final (#1532)

Bumps [io.netty:netty-bom](https://github.com/netty/netty) from 4.1.108.Final to 4.1.109.Final.
- [Commits](https://github.com/netty/netty/compare/netty-4.1.108.Final...netty-4.1.109.Final)

---
updated-dependencies:
- dependency-name: io.netty:netty-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump groovy.version from 4.0.20 to 4.0.21 (#1533)

Bumps `groovy.version` from 4.0.20 to 4.0.21.

Updates `org.apache.groovy:groovy-test-junit5` from 4.0.20 to 4.0.21
- [Commits](https://github.com/apache/groovy/commits)

Updates `org.apache.groovy:groovy` from 4.0.20 to 4.0.21
- [Commits](https://github.com/apache/groovy/commits)

Updates `org.apache.groovy:groovy-xml` from 4.0.20 to 4.0.21
- [Commits](https://github.com/apache/groovy/commits)

---
updated-dependencies:
- dependency-name: org.apache.groovy:groovy-test-junit5
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.groovy:groovy
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.groovy:groovy-xml
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(plc4j/ads): Fixed connection hang on exception (#1530)

* build(deps): bump virtualenv from 20.25.1 to 20.25.2 in /plc4py (#1537)

Bumps [virtualenv](https://github.com/pypa/virtualenv) from 20.25.1 to 20.25.2.
- [Release notes](https://github.com/pypa/virtualenv/releases)
- [Changelog](https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst)
- [Commits](https://github.com/pypa/virtualenv/compare/20.25.1...20.25.2)

---
updated-dependencies:
- dependency-name: virtualenv
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Remove Protocols section in developers section (duplicate from 

https://plc4x.apache.org/users/protocols/ versus https://plc4x.apache.org/developers/protocols/index.html (to be deleted)

* Delete src/site/asciidoc/developers/protocols directory

* chore: Updated vendor ids

* feat: Added a default-payload-byte-order option to the modbus driver in order to support devices with little-endian encoding of payload.

* chore: Addressed more of the high severity sonarcloud issues

* build(deps): bump slf4j.version from 2.0.12 to 2.0.13 (#1536)

Bumps `slf4j.version` from 2.0.12 to 2.0.13.

Updates `org.slf4j:slf4j-api` from 2.0.12 to 2.0.13

Updates `org.slf4j:log4j-over-slf4j` from 2.0.12 to 2.0.13

---
updated-dependencies:
- dependency-name: org.slf4j:slf4j-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.slf4j:log4j-over-slf4j
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump org.jetbrains.kotlin:kotlin-stdlib-jdk8 (#1534)

Bumps [org.jetbrains.kotlin:kotlin-stdlib-jdk8](https://github.com/JetBrains/kotlin) from 1.9.22 to 1.9.23.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v1.9.23/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.9.22...v1.9.23)

---
updated-dependencies:
- dependency-name: org.jetbrains.kotlin:kotlin-stdlib-jdk8
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Revert "Remove Protocols section in developers section (duplicate from "

This reverts commit f679a7d424b4d47c66b8ecfebe6646f6081f518a.

* Revert "Delete src/site/asciidoc/developers/protocols directory"

This reverts commit 58cd1f315d96362a740795d15f3aaa90bbb3a328.

* Modbus in progress

* add index for protocol usage page

* Add eip

* fixing URLs

* build(deps): bump org.apache.commons:commons-configuration2 (#1541)

Bumps org.apache.commons:commons-configuration2 from 2.9.0 to 2.10.1.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-configuration2
  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>

* build(deps): bump org.apache.karaf.tooling:karaf-maven-plugin (#1539)

Bumps org.apache.karaf.tooling:karaf-maven-plugin from 4.4.5 to 4.4.6.

---
updated-dependencies:
- dependency-name: org.apache.karaf.tooling:karaf-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump com.googlecode.maven-download-plugin:download-maven-plugin (#1540)

Bumps [com.googlecode.maven-download-plugin:download-maven-plugin](https://github.com/maven-download-plugin/maven-download-plugin) from 1.8.1 to 1.9.0.
- [Release notes](https://github.com/maven-download-plugin/maven-download-plugin/releases)
- [Commits](https://github.com/maven-download-plugin/maven-download-plugin/compare/1.8.1...1.9.0)

---
updated-dependencies:
- dependency-name: com.googlecode.maven-download-plugin:download-maven-plugin
  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>

* build(deps): bump virtualenv from 20.25.2 to 20.25.3 in /plc4py (#1542)

Bumps [virtualenv](https://github.com/pypa/virtualenv) from 20.25.2 to 20.25.3.
- [Release notes](https://github.com/pypa/virtualenv/releases)
- [Changelog](https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst)
- [Commits](https://github.com/pypa/virtualenv/compare/20.25.2...20.25.3)

---
updated-dependencies:
- dependency-name: virtualenv
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump net.bytebuddy:byte-buddy from 1.14.12 to 1.14.13 (#1545)

Bumps [net.bytebuddy:byte-buddy](https://github.com/raphw/byte-buddy) from 1.14.12 to 1.14.13.
- [Release notes](https://github.com/raphw/byte-buddy/releases)
- [Changelog](https://github.com/raphw/byte-buddy/blob/master/release-notes.md)
- [Commits](https://github.com/raphw/byte-buddy/compare/byte-buddy-1.14.12...byte-buddy-1.14.13)

---
updated-dependencies:
- dependency-name: net.bytebuddy:byte-buddy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps-dev): bump commons-io:commons-io from 2.15.1 to 2.16.1 (#1544)

Bumps commons-io:commons-io from 2.15.1 to 2.16.1.

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-type: direct:development
  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>

* build(deps): bump org.apache.commons:commons-text from 1.11.0 to 1.12.0 (#1543)

Bumps org.apache.commons:commons-text from 1.11.0 to 1.12.0.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-text
  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>

* chore: Made line-breaks in the configuration option descriptions get output as line-breaks

* chore: Updated vendor ids

* feat: Added device-group options for local, remote and remote2 to the S7 config.

* chore: Disabled the OpcuaSubscriptionHandleTest all together as it also seems to be randomly failing on GitHub Actions.

* feat: Added a "Since" annotation that provides information on when a configuration-option was added.

* feat: Create a source bundle for PLC4C

* chore: Added newly generated files.

* build(deps): bump org.codehaus.mojo:extra-enforcer-rules (#1548)

Bumps [org.codehaus.mojo:extra-enforcer-rules](https://github.com/mojohaus/extra-enforcer-rules) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/mojohaus/extra-enforcer-rules/releases)
- [Commits](https://github.com/mojohaus/extra-enforcer-rules/compare/1.7.0...1.8.0)

---
updated-dependencies:
- dependency-name: org.codehaus.mojo:extra-enforcer-rules
  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>

* build(deps): bump logback.version from 1.5.5 to 1.5.6 (#1549)

Bumps `logback.version` from 1.5.5 to 1.5.6.

Updates `ch.qos.logback:logback-classic` from 1.5.5 to 1.5.6
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.5...v_1.5.6)

Updates `ch.qos.logback:logback-core` from 1.5.5 to 1.5.6
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.5...v_1.5.6)

---
updated-dependencies:
- dependency-name: ch.qos.logback:logback-classic
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: ch.qos.logback:logback-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump bouncycastle.version from 1.77 to 1.78.1 (#1550)

Bumps `bouncycastle.version` from 1.77 to 1.78.1.

Updates `org.bouncycastle:bcpkix-jdk18on` from 1.77 to 1.78.1
- [Changelog](https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html)
- [Commits](https://github.com/bcgit/bc-java/commits)

Updates `org.bouncycastle:bcprov-jdk18on` from 1.77 to 1.78.1
- [Changelog](https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html)
- [Commits](https://github.com/bcgit/bc-java/commits)

---
updated-dependencies:
- dependency-name: org.bouncycastle:bcpkix-jdk18on
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.bouncycastle:bcprov-jdk18on
  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>

* build(deps): bump identify from 2.5.35 to 2.5.36 in /plc4py (#1546)

Bumps [identify](https://github.com/pre-commit/identify) from 2.5.35 to 2.5.36.
- [Commits](https://github.com/pre-commit/identify/compare/v2.5.35...v2.5.36)

---
updated-dependencies:
- dependency-name: identify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump pluggy from 1.4.0 to 1.5.0 in /plc4py (#1547)

Bumps [pluggy](https://github.com/pytest-dev/pluggy) from 1.4.0 to 1.5.0.
- [Changelog](https://github.com/pytest-dev/pluggy/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pluggy/compare/1.4.0...1.5.0)

---
updated-dependencies:
- dependency-name: pluggy
  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>

* build(deps): bump com.fazecast:jSerialComm from 2.10.4 to 2.11.0 (#1554)

Bumps [com.fazecast:jSerialComm](https://github.com/Fazecast/jSerialComm) from 2.10.4 to 2.11.0.
- [Release notes](https://github.com/Fazecast/jSerialComm/releases)
- [Commits](https://github.com/Fazecast/jSerialComm/compare/v2.10.4...v2.11.0)

---
updated-dependencies:
- dependency-name: com.fazecast:jSerialComm
  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>

* feat(plc4j/api): Convert the string address into a PlcTag (#1468)

* Priority judgment using discovery parameter

When the parameter discovery=false is configured, prefer using the custom address. If the transportEndpoint is empty, directly replace it with the TransportEndpoint returned by the server.

* add setter for transportEndpoint

* Convert the string address into a PlcTag.

* rename string tag address to parseTagAddressSafe

* rename  parseTagAddressSafe to parseTagAddress

* move function parseTagAddress to PlcConnection

* add logging for exceptions in PlcTag conversion.

* Implement the parseTagAddress method for LeasedPlcConnection.

* build(deps): bump commons-logging:commons-logging from 1.3.0 to 1.3.1 (#1553)

Bumps commons-logging:commons-logging from 1.3.0 to 1.3.1.

---
updated-dependencies:
- dependency-name: commons-logging:commons-logging
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps-dev): bump org.json:json from 20240205 to 20240303 (#1552)

Bumps [org.json:json](https://github.com/douglascrockford/JSON-java) from 20240205 to 20240303.
- [Release notes](https://github.com/douglascrockford/JSON-java/releases)
- [Changelog](https://github.com/stleary/JSON-java/blob/master/docs/RELEASES.md)
- [Commits](https://github.com/douglascrockford/JSON-java/commits)

---
updated-dependencies:
- dependency-name: org.json:json
  dependency-type: direct:development
  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>

* build(deps): bump org.apache.maven.plugins:maven-jar-plugin (#1559)

Bumps [org.apache.maven.plugins:maven-jar-plugin](https://github.com/apache/maven-jar-plugin) from 3.3.0 to 3.4.1.
- [Release notes](https://github.com/apache/maven-jar-plugin/releases)
- [Commits](https://github.com/apache/maven-jar-plugin/compare/maven-jar-plugin-3.3.0...maven-jar-plugin-3.4.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-jar-plugin
  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>

* build(deps): bump virtualenv from 20.25.3 to 20.26.0 in /plc4py (#1555)

Bumps [virtualenv](https://github.com/pypa/virtualenv) from 20.25.3 to 20.26.0.
- [Release notes](https://github.com/pypa/virtualenv/releases)
- [Changelog](https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst)
- [Commits](https://github.com/pypa/virtualenv/compare/20.25.3...20.26.0)

---
updated-dependencies:
- dependency-name: virtualenv
  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>

* build(deps): bump platformdirs from 4.2.0 to 4.2.1 in /plc4py (#1556)

Bumps [platformdirs](https://github.com/platformdirs/platformdirs) from 4.2.0 to 4.2.1.
- [Release notes](https://github.com/platformdirs/platformdirs/releases)
- [Changelog](https://github.com/platformdirs/platformdirs/blob/main/CHANGES.rst)
- [Commits](https://github.com/platformdirs/platformdirs/compare/4.2.0...4.2.1)

---
updated-dependencies:
- dependency-name: platformdirs
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump coverage from 7.4.4 to 7.5.0 in /plc4py (#1557)

Bumps [coverage](https://github.com/nedbat/coveragepy) from 7.4.4 to 7.5.0.
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](https://github.com/nedbat/coveragepy/compare/7.4.4...7.5.0)

---
updated-dependencies:
- dependency-name: coverage
  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>

* build(deps): bump net.bytebuddy:byte-buddy from 1.14.13 to 1.14.14 (#1562)

Bumps [net.bytebuddy:byte-buddy](https://github.com/raphw/byte-buddy) from 1.14.13 to 1.14.14.
- [Release notes](https://github.com/raphw/byte-buddy/releases)
- [Changelog](https://github.com/raphw/byte-buddy/blob/master/release-notes.md)
- [Commits](https://github.com/raphw/byte-buddy/compare/byte-buddy-1.14.13...byte-buddy-1.14.14)

---
updated-dependencies:
- dependency-name: net.bytebuddy:byte-buddy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump commons-cli:commons-cli from 1.6.0 to 1.7.0 (#1563)

Bumps commons-cli:commons-cli from 1.6.0 to 1.7.0.

---
updated-dependencies:
- dependency-name: commons-cli:commons-cli
  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>

* build(deps): bump org.apache:apache from 31 to 32 (#1558)

Bumps [org.apache:apache](https://github.com/apache/maven-apache-parent) from 31 to 32.
- [Release notes](https://github.com/apache/maven-apache-parent/releases)
- [Commits](https://github.com/apache/maven-apache-parent/commits)

---
updated-dependencies:
- dependency-name: org.apache:apache
  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>

* Change Python version to 3.10+

macOS ARM version fails for python version 3.7 to 3.9.

* fix(plc4py/umas): Start to add write support

* rebase umas

* fix(plc4py): Enable integration tests (#1588)

* fix(plc4py): Get the integration test at least running

* fix(plc4py): Fix some discriminated enums

* fix(plc4py): Fix enums with parameters

* fix(plc4py): Fix enum type test

* fix(plc4py): Fix padding length

* fix(plc4py): Fix reserved types and validation types

* fix(plc4py): Fix inline if statements and enable integration tests

* build(deps): bump golang.org/x/net from 0.24.0 to 0.25.0 in /plc4go (#1591)

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.24.0 to 0.25.0.
- [Commits](https://github.com/golang/net/compare/v0.24.0...v0.25.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  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>

* Refactor / improve python modbus (#1581)

* fix(plc4py/umas): Start to add write support

* build(deps): bump github.com/stretchr/testify in /plc4go (#1439)

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.4 to 1.9.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.8.4...v1.9.0)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  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>

* build(deps): bump golang.org/x/tools from 0.18.0 to 0.19.0 in /plc4go (#1440)

Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.18.0 to 0.19.0.
- [Release notes](https://github.com/golang/tools/releases)
- [Commits](https://github.com/golang/tools/compare/v0.18.0...v0.19.0)

---
updated-dependencies:
- dependency-name: golang.org/x/tools
  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>

* build(deps): bump logback.version from 1.5.0 to 1.5.1 (#1435)

Bumps `logback.version` from 1.5.0 to 1.5.1.

Updates `ch.qos.logback:logback-classic` from 1.5.0 to 1.5.1
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.0...v_1.5.1)

Updates `ch.qos.logback:logback-core` from 1.5.0 to 1.5.1
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.0...v_1.5.1)

---
updated-d…
  • Loading branch information
13 people authored May 26, 2024
1 parent 2d9917b commit 9dde144
Show file tree
Hide file tree
Showing 6 changed files with 60 additions and 26 deletions.
6 changes: 2 additions & 4 deletions plc4py/plc4py/PlcDriverManager.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,7 @@ def __post_init__(self):
defined in the "plc4py.drivers" namespace.
"""
# Log the class loader used
logging.info(
f"Instantiating new PLC Driver Manager with class loader {self.class_loader}"
)
logging.info("Instantiating new PLC Driver Manager with class loader %s", self.class_loader)

# Add the PlcDriverClassLoader hookspecs to the class loader
self.class_loader.add_hookspecs(PlcDriverClassLoader)
Expand All @@ -73,7 +71,7 @@ def __post_init__(self):

# Log the successful registration of each driver
for driver in self._driver_map:
logging.info(f"... {driver} .. OK")
logging.info("... %s .. OK", driver)

# Check for any pending plugins
self.class_loader.check_pending()
Expand Down
5 changes: 5 additions & 0 deletions plc4py/plc4py/api/messages/PlcMessage.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,9 @@


class PlcMessage(Serializable):
"""
A class representing a PLC message.
Add more details about the class and its functionality here.
"""
pass
9 changes: 9 additions & 0 deletions plc4py/plc4py/protocols/umas/readwrite/UmasPDUItem.py
Original file line number Diff line number Diff line change
Expand Up @@ -269,6 +269,15 @@ def static_parse_context(
UmasPDUWriteVariableResponse,
)

if umas_function_key == int(0xFE) and umas_request_function_key == int(0x23):

builder = UmasPDUWriteVariableResponse.static_parse_builder(
read_buffer, umas_request_function_key, byte_length
)
from plc4py.protocols.umas.readwrite.UmasPDUWriteVariableResponse import (
UmasPDUWriteVariableResponse,
)

if umas_function_key == int(0xFE) and umas_request_function_key == int(0x23):

builder = UmasPDUWriteVariableResponse.static_parse_builder(
Expand Down
18 changes: 0 additions & 18 deletions plc4py/tests/test_plc4py.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,15 +38,6 @@ def test_version():
`__version__` constant at the top of the file. If the versions do not match,
the test will fail.
:return: None
"""
"""
This test verifies the version of the package.
The version is a string that is expected to match the version specified in the
`__version__` constant at the top of the file. If the versions do not match,
the test will fail.
:return: None
"""
assert __version__ == "0.1.0"
Expand All @@ -59,15 +50,6 @@ async def test_plc_driver_manager_init():
successfully.
:return: None
"""
"""
This test verifies that the PlcDriverManager class is able to create a connection
successfully.
The test creates a PlcDriverManager object and then uses the connection method
to get a connection to a mock PLC. The connection should be an instance of
the PlcConnection class.
"""
driver_manager = PlcDriverManager()
async with driver_manager.connection("mock:tcp://127.0.0.1:502") as connection:
Expand Down
30 changes: 27 additions & 3 deletions plc4py/tests/unit/plc4py/drivers/modbus/test_modbus_codegen.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,23 @@


@pytest.mark.asyncio
async def test_modbus_discrete_inputs_request():
request = ModbusPDUReadDiscreteInputsRequestBuilder(0, 10).build()
assert request is not None
async def test_modbus_discrete_inputs_request_standardized():
"""
Test case for Modbus PDU Read Discrete Inputs Request
"""
# Create a Modbus PDU Read Discrete Inputs Request with address 0 and quantity 10
discrete_inputs_request = ModbusPDUReadDiscreteInputsRequestBuilder(0, 10).build()

# Ensure the request object is not None
assert discrete_inputs_request is not None


@pytest.mark.asyncio
async def test_modbus_discrete_inputs_request_serialize():
"""
Test case for serializing Modbus PDU Read Discrete Inputs Request
"""
# Create a Modbus PDU Read Discrete Inputs Request
request = ModbusPDUReadDiscreteInputsRequestBuilder(5, 2).build()
size = request.length_in_bytes()
write_buffer = WriteBufferByteBased(size, ByteOrder.BIG_ENDIAN)
Expand All @@ -49,11 +59,25 @@ async def test_modbus_discrete_inputs_request_serialize():

@pytest.mark.asyncio
async def test_modbus_ModbusTcpADUBuilder_serialize():
"""
Test case for serializing Modbus TCP ADU
"""
# Create a Modbus PDU Read Discrete Inputs
pdu = ModbusPDUReadDiscreteInputsRequestBuilder(5, 2).build()

# Build Modbus TCP ADU
request = ModbusTcpADUBuilder(10, 5, pdu).build(False)

# Get the size of the request
size = request.length_in_bytes()

# Create a write buffer
write_buffer = WriteBufferByteBased(size, ByteOrder.BIG_ENDIAN)

# Serialize the request
serialize = request.serialize(write_buffer)

# Get the serialized bytes
bytes_array = write_buffer.get_bytes().tobytes()

assert request is not None
Original file line number Diff line number Diff line change
Expand Up @@ -29,27 +29,43 @@

@pytest.mark.asyncio
async def manual_test_plc_driver_modbus_connect():
"""
Test the connection to a Modbus PLC using PlcDriverManager.
"""
# Initialize the PlcDriverManager
driver_manager = PlcDriverManager()

# Establish a connection to the Modbus PLC
async with driver_manager.connection("modbus://1") as connection:
# Check if the connection is successful
assert connection.is_connected()

# Ensure the connection is closed after exiting the context manager
assert not connection.is_connected()


@pytest.mark.asyncio
@pytest.mark.xfail
async def test_plc_driver_modbus_read():
"""
Test reading data from a Modbus PLC.
"""
log = logging.getLogger(__name__)

# Initialize the PlcDriverManager
driver_manager = PlcDriverManager()

# Establish a connection to the Modbus PLC
async with driver_manager.connection("modbus://127.0.0.1:5020") as connection:
with connection.read_request_builder() as builder:
builder.add_item("Random Tag", "4x00001[10]")
request = builder.build()

# Execute the read request
future = connection.execute(request)
await future
response = future.result()
value = response.tags["Random Tag"].value
log.error(f"Read tag 4x00001[10] - {value}")
log.error("Read tag 4x00001[10] - %s", value)

pass

0 comments on commit 9dde144

Please sign in to comment.