DLMS-SPODES 0.87.15__tar.gz → 0.87.17__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/.github/workflows/publish.yml +13 -3
  2. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/PKG-INFO +1 -1
  3. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/pyproject.toml +1 -1
  4. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/collection.py +4 -4
  5. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/profile_generic/ver0.py +11 -0
  6. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES.egg-info/PKG-INFO +1 -1
  7. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/.gitignore +0 -0
  8. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/README.md +0 -0
  9. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/config.toml +0 -0
  10. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/setup.cfg +0 -0
  11. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/Values/EN/__init__.py +0 -0
  12. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/Values/EN/actors.py +0 -0
  13. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/Values/EN/relation_to_obis_names.py +0 -0
  14. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/Values/RU/__init__.py +0 -0
  15. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/Values/RU/actors.py +0 -0
  16. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/Values/RU/relation_to_obis_names.py +0 -0
  17. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/Values/__init__.py +0 -0
  18. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/__init__.py +0 -0
  19. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/configEN.ini +0 -0
  20. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/config_parser.py +0 -0
  21. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/__class_init__.py +0 -0
  22. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/__init__.py +0 -0
  23. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/a_parameter.py +0 -0
  24. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/activity_calendar.py +0 -0
  25. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/arbitrator.py +0 -0
  26. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/association_ln/__init__.py +0 -0
  27. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/association_ln/abstract.py +0 -0
  28. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/association_ln/authentication_mechanism_name.py +0 -0
  29. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/association_ln/mechanism_id.py +0 -0
  30. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/association_ln/method.py +0 -0
  31. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/association_ln/ver0.py +0 -0
  32. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/association_ln/ver1.py +0 -0
  33. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/association_ln/ver2.py +0 -0
  34. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/association_ln/ver3.py +0 -0
  35. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/association_sn/__init__.py +0 -0
  36. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/association_sn/ver0.py +0 -0
  37. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/attr_indexes.py +0 -0
  38. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/clock.py +0 -0
  39. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/cosem_interface_class.py +0 -0
  40. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/data.py +0 -0
  41. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/demand_register/__init__.py +0 -0
  42. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/demand_register/ver0.py +0 -0
  43. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/disconnect_control.py +0 -0
  44. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/extended_register.py +0 -0
  45. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/gprs_modem_setup.py +0 -0
  46. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/gsm_diagnostic/__init__.py +0 -0
  47. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/gsm_diagnostic/ver0.py +0 -0
  48. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/gsm_diagnostic/ver1.py +0 -0
  49. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/gsm_diagnostic/ver2.py +0 -0
  50. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/iec_hdlc_setup/__init__.py +0 -0
  51. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/iec_hdlc_setup/ver0.py +0 -0
  52. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/iec_hdlc_setup/ver1.py +0 -0
  53. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/iec_local_port_setup.py +0 -0
  54. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/image_transfer/__init__.py +0 -0
  55. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/image_transfer/image_transfer_status.py +0 -0
  56. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/image_transfer/ver0.py +0 -0
  57. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/implementations/__init__.py +0 -0
  58. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/implementations/arbitrator.py +0 -0
  59. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/implementations/data.py +0 -0
  60. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/implementations/profile_generic.py +0 -0
  61. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/ipv4_setup.py +0 -0
  62. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/limiter.py +0 -0
  63. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/ln_pattern.py +0 -0
  64. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/modem_configuration/__init__.py +0 -0
  65. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/modem_configuration/ver0.py +0 -0
  66. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/modem_configuration/ver1.py +0 -0
  67. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/ntp_setup/__init__.py +0 -0
  68. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/ntp_setup/ver0.py +0 -0
  69. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/obis.py +0 -0
  70. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/overview.py +0 -0
  71. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/parameter.py +0 -0
  72. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/parameters.py +0 -0
  73. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/profile_generic/__init__.py +0 -0
  74. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/profile_generic/ver1.py +0 -0
  75. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/push_setup/__init__.py +0 -0
  76. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/push_setup/ver0.py +0 -0
  77. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/push_setup/ver1.py +0 -0
  78. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/push_setup/ver2.py +0 -0
  79. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/register.py +0 -0
  80. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/register_activation/__init__.py +0 -0
  81. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/register_activation/ver0.py +0 -0
  82. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/register_monitor.py +0 -0
  83. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/reports.py +0 -0
  84. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/schedule.py +0 -0
  85. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/script_table.py +0 -0
  86. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/security_setup/__init__.py +0 -0
  87. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/security_setup/__pycache__/__init__.cpython-311.pyc +0 -0
  88. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/security_setup/ver0.py +0 -0
  89. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/security_setup/ver1.py +0 -0
  90. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/single_action_schedule.py +0 -0
  91. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/special_days_table.py +0 -0
  92. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_interface_classes/tcp_udp_setup.py +0 -0
  93. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/cosem_pdu.py +0 -0
  94. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/enums.py +0 -0
  95. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/exceptions.py +0 -0
  96. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/firmwares.py +0 -0
  97. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/hdlc/__init__.py +0 -0
  98. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/hdlc/frame.py +0 -0
  99. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/hdlc/sub_layer.py +0 -0
  100. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/literals.py +0 -0
  101. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/obis/__init__.py +0 -0
  102. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/obis/media_id.py +0 -0
  103. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/pardata.py +0 -0
  104. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/pdu_enums.py +0 -0
  105. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/py.typed +0 -0
  106. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/relation_to_OBIS.py +0 -0
  107. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/settings.py +0 -0
  108. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/__init__.py +0 -0
  109. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/choices.py +0 -0
  110. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/common_data_types.py +0 -0
  111. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/cosem_service_types.py +0 -0
  112. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/implementations/__init__.py +0 -0
  113. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/implementations/arrays.py +0 -0
  114. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/implementations/bitstrings.py +0 -0
  115. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/implementations/double_long_usingneds.py +0 -0
  116. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/implementations/enums.py +0 -0
  117. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/implementations/integers.py +0 -0
  118. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/implementations/long_unsigneds.py +0 -0
  119. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/implementations/octet_string.py +0 -0
  120. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/implementations/structs.py +0 -0
  121. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES/types/useful_types.py +0 -0
  122. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES.egg-info/SOURCES.txt +0 -0
  123. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES.egg-info/dependency_links.txt +0 -0
  124. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES.egg-info/requires.txt +0 -0
  125. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/DLMS_SPODES.egg-info/top_level.txt +0 -0
  126. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/src/__init__.py +0 -0
  127. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/__init__.py +0 -0
  128. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/collection_init.py +0 -0
  129. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/config.toml +0 -0
  130. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/config.zip +0 -0
  131. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/init_collection.py +0 -0
  132. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test.typ +0 -0
  133. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test.xml +0 -0
  134. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_ActivityCalendar.py +0 -0
  135. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_AssociationLN.py +0 -0
  136. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_COSEMInterfaceClass.py +0 -0
  137. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_Data.py +0 -0
  138. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_DemandRegister.py +0 -0
  139. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_DisconnectControl.py +0 -0
  140. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_DisplayReadoutProfile.py +0 -0
  141. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_GSMDiagnostic.py +0 -0
  142. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_IC.py +0 -0
  143. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_ImageTransfer.py +0 -0
  144. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_KPZ.py +0 -0
  145. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_LNPatterns.py +0 -0
  146. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_Limiter.py +0 -0
  147. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_NTPSetup.py +0 -0
  148. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_Parameter.py +0 -0
  149. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_ProfileGeneric.py +0 -0
  150. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_Register.py +0 -0
  151. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_RegisterActivation.py +0 -0
  152. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_RegisterMonitor.py +0 -0
  153. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_ScalerUnitType.py +0 -0
  154. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_Schedule.py +0 -0
  155. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_Structures.py +0 -0
  156. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_a_param.py +0 -0
  157. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_benchmark_create_obj.py +0 -0
  158. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_cdt.py +0 -0
  159. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_collection.py +0 -0
  160. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_config.py +0 -0
  161. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_electric_obj.py +0 -0
  162. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_enums.py +0 -0
  163. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_hdlc.py +0 -0
  164. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_overview.py +0 -0
  165. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_pars.py +0 -0
  166. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_report.py +0 -0
  167. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_save_type.typ +0 -0
  168. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_settings.py +0 -0
  169. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_to_xml.xml +0 -0
  170. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_to_xml2.xml +0 -0
  171. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_to_xml3.xml +0 -0
  172. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_to_xml4.xml +0 -0
  173. {dlms_spodes-0.87.15 → dlms_spodes-0.87.17}/test/test_userfulType.py +0 -0
@@ -4,13 +4,20 @@ on:
4
4
  push:
5
5
  tags:
6
6
  - 'v*'
7
+ workflow_dispatch: # manual
8
+
9
+ permissions: # For Trusted Publishing
10
+ id-token: write
11
+ contents: read
7
12
 
8
13
  jobs:
9
14
  publish:
10
15
  runs-on: ubuntu-latest
11
-
16
+ environment: pypi
17
+
12
18
  steps:
13
- - uses: actions/checkout@v4
19
+ - name: Checkout code
20
+ uses: actions/checkout@v4
14
21
 
15
22
  - name: Set up Python
16
23
  uses: actions/setup-python@v4
@@ -28,4 +35,7 @@ jobs:
28
35
  - name: Publish to PyPI
29
36
  uses: pypa/gh-action-pypi-publish@release/v1
30
37
  with:
31
- password: ${{ secrets.PYPI_API_TOKEN }}
38
+ attestations: true # Включаем аттестации
39
+ verbose: true
40
+ # with: # token version
41
+ # password: ${{ secrets.PYPI_API_TOKEN }}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: DLMS_SPODES
3
- Version: 0.87.15
3
+ Version: 0.87.17
4
4
  Summary: dlms-spodes
5
5
  Author-email: Serj Kotilevski <youserj@outlook.com>
6
6
  Project-URL: Source, https://github.com/youserj/DlmsSPODES-project
@@ -14,7 +14,7 @@ exclude = ["test","KPZ"]
14
14
 
15
15
  [project]
16
16
  name = "DLMS_SPODES"
17
- version = "0.87.15"
17
+ version = "0.87.17"
18
18
  authors = [
19
19
  {name="Serj Kotilevski", email="youserj@outlook.com"}
20
20
  ]
@@ -1001,7 +1001,7 @@ class Collection:
1001
1001
  case (ClassID.PROFILE_GENERIC, 3, _) | (ClassID.PROFILE_GENERIC, 6):
1002
1002
  a_val: structs.CaptureObjectDefinition
1003
1003
  obj = self.get_object(a_val.logical_name)
1004
- rep.msg = F"{get_name(a_val.logical_name)}.{obj.get_attr_element(int(a_val.attribute_index))}"
1004
+ rep.msg = F"{get_name(a_val.logical_name, self.spec_map)}.{obj.get_attr_element(int(a_val.attribute_index))}"
1005
1005
  case _:
1006
1006
  pass
1007
1007
  rep.log = cdt.Log(logging.INFO)
@@ -1040,7 +1040,7 @@ class Collection:
1040
1040
  case (ClassID.PROFILE_GENERIC, 3, _) | (ClassID.PROFILE_GENERIC, 6):
1041
1041
  data: structs.CaptureObjectDefinition
1042
1042
  obj = self.get_object(data.logical_name)
1043
- rep.msg = F"{get_name(data.logical_name)}.{obj.get_attr_element(int(data.attribute_index))}"
1043
+ rep.msg = F"{get_name(data.logical_name, self.spec_map)}.{obj.get_attr_element(int(data.attribute_index))}"
1044
1044
  case _:
1045
1045
  pass
1046
1046
  rep.log = cdt.Log(logging.INFO)
@@ -1353,7 +1353,7 @@ class Collection:
1353
1353
  @lru_cache(4)
1354
1354
  def get_association_id(self, client_sap: enums.ClientSAP) -> int:
1355
1355
  """return id(association instance) from it client address without current"""
1356
- for ass in get_filtered(iter(self), (ln_pattern.NON_CURRENT_ASSOCIATION,)):
1356
+ for ass in get_filtered(iter(self), (ln_pattern.ASSOCIATION,)):
1357
1357
  if ass.associated_partners_id.client_SAP == client_sap:
1358
1358
  return ass.logical_name.e
1359
1359
  else:
@@ -1432,7 +1432,7 @@ class Collection:
1432
1432
  """ return names and type of element from collection"""
1433
1433
  names: list[str] = list()
1434
1434
  obj = self.par2obj(Parameter(value.logical_name.contents)).unwrap()
1435
- names.append(get_name(obj.logical_name))
1435
+ names.append(get_name(obj.logical_name, self.spec_map))
1436
1436
  attr_index = int(value.attribute_index)
1437
1437
  data_index = int(value.data_index)
1438
1438
  data_type: Type[cdt.CommonDataType] = obj.get_attr_data_type(attr_index)
@@ -33,6 +33,14 @@ class SortMethod(cdt.Enum, elements=(1, 2, 3, 4, 5, 6)):
33
33
  """sort_method"""
34
34
 
35
35
 
36
+ class GetBufferByIndex(cdt.Structure):
37
+ """get_buffer_by_index"""
38
+ from_index: cdt.DoubleLongUnsigned
39
+ to_index: cdt.DoubleLongUnsigned
40
+ selected_values: cdt.Array
41
+
42
+
43
+
36
44
  class ProfileGeneric(ic.COSEMInterfaceClasses):
37
45
  """5.3.1 Profile generic"""
38
46
  CLASS_ID = ClassID.PROFILE_GENERIC
@@ -56,6 +64,9 @@ class ProfileGeneric(ic.COSEMInterfaceClasses):
56
64
  M_ELEMENTS = (
57
65
  ic.ICMElement("reset", integers.Only0),
58
66
  ic.ICMElement("capture", integers.Only0),
67
+ ic.ICMElement("write", cdt.Structure), # todo: make anyhow
68
+ ic.ICMElement("get_buffer_by_range", integers.Only0),
69
+ ic.ICMElement("get_buffer_by_index", integers.Only0)
59
70
  # more 2 elements
60
71
  )
61
72
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: DLMS_SPODES
3
- Version: 0.87.15
3
+ Version: 0.87.17
4
4
  Summary: dlms-spodes
5
5
  Author-email: Serj Kotilevski <youserj@outlook.com>
6
6
  Project-URL: Source, https://github.com/youserj/DlmsSPODES-project
File without changes
File without changes
File without changes
File without changes