runtimepy 5.11.0__tar.gz → 5.11.2__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 (303) hide show
  1. {runtimepy-5.11.0/runtimepy.egg-info → runtimepy-5.11.2}/PKG-INFO +5 -5
  2. {runtimepy-5.11.0 → runtimepy-5.11.2}/README.md +2 -2
  3. {runtimepy-5.11.0 → runtimepy-5.11.2}/pyproject.toml +1 -1
  4. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/__init__.py +2 -2
  5. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/codec/protocol/base.py +1 -0
  6. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/codec/protocol/json.py +7 -1
  7. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/codec/system/__init__.py +19 -6
  8. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/enum/registry.py +19 -0
  9. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/int.py +3 -2
  10. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/serializable/base.py +8 -1
  11. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/util.py +3 -3
  12. {runtimepy-5.11.0 → runtimepy-5.11.2/runtimepy.egg-info}/PKG-INFO +5 -5
  13. {runtimepy-5.11.0 → runtimepy-5.11.2}/LICENSE +0 -0
  14. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/__main__.py +0 -0
  15. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/app.py +0 -0
  16. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/__init__.py +0 -0
  17. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/environment/__init__.py +0 -0
  18. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/environment/array.py +0 -0
  19. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/environment/base.py +0 -0
  20. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/environment/command/__init__.py +0 -0
  21. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/environment/command/parser.py +0 -0
  22. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/environment/command/processor.py +0 -0
  23. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/environment/command/result.py +0 -0
  24. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/environment/create.py +0 -0
  25. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/environment/file.py +0 -0
  26. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/environment/sample.py +0 -0
  27. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/environment/telemetry.py +0 -0
  28. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/event/__init__.py +0 -0
  29. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/event/header.py +0 -0
  30. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/channel/registry.py +0 -0
  31. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/codec/__init__.py +0 -0
  32. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/codec/protocol/__init__.py +0 -0
  33. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/commands/__init__.py +0 -0
  34. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/commands/all.py +0 -0
  35. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/commands/arbiter.py +0 -0
  36. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/commands/common.py +0 -0
  37. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/commands/mtu.py +0 -0
  38. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/commands/server.py +0 -0
  39. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/commands/task.py +0 -0
  40. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/commands/tftp.py +0 -0
  41. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/commands/tui.py +0 -0
  42. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/control/__init__.py +0 -0
  43. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/control/env/__init__.py +0 -0
  44. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/control/source.py +0 -0
  45. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/control/step.py +0 -0
  46. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/404.html +0 -0
  47. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/browser.yaml +0 -0
  48. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/css/bootstrap_extra.css +0 -0
  49. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/css/font.css +0 -0
  50. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/css/main.css +0 -0
  51. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/dummy_load.yaml +0 -0
  52. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/factories.yaml +0 -0
  53. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/favicon.ico +0 -0
  54. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/DataConnection.js +0 -0
  55. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/JsonConnection.js +0 -0
  56. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/audio.js +0 -0
  57. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/App.js +0 -0
  58. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/ChannelTable.js +0 -0
  59. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/DataConnection.js +0 -0
  60. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/JsonConnection.js +0 -0
  61. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/OverlayManager.js +0 -0
  62. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/Plot.js +0 -0
  63. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/PlotDrawer.js +0 -0
  64. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/PlotManager.js +0 -0
  65. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/PlotModalManager.js +0 -0
  66. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/PointBuffer.js +0 -0
  67. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/PointManager.js +0 -0
  68. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/TabFilter.js +0 -0
  69. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/TabInterface.js +0 -0
  70. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/UnitSystem.js +0 -0
  71. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/WindowHashManager.js +0 -0
  72. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/classes/WorkerInterface.js +0 -0
  73. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/events.js +0 -0
  74. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/init.js +0 -0
  75. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/main.js +0 -0
  76. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/markdown_page.js +0 -0
  77. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/tab/env.js +0 -0
  78. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/tab/sound.js +0 -0
  79. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/third-party/webgl-debug.js +0 -0
  80. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/unused/pyodide.js +0 -0
  81. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/util.js +0 -0
  82. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/js/worker.js +0 -0
  83. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/md/Connection.md +0 -0
  84. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/md/PeriodicTask.md +0 -0
  85. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/md/RuntimeStruct.md +0 -0
  86. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/md/RuntimepyPeer.md +0 -0
  87. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/md/SinusoidTask.md +0 -0
  88. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/sample_telemetry.yaml +0 -0
  89. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/BitFields.yaml +0 -0
  90. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/Channel.yaml +0 -0
  91. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/ChannelCommand.yaml +0 -0
  92. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/ChannelRegistry.yaml +0 -0
  93. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/ClientConnectionConfig.yaml +0 -0
  94. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/ConnectionArbiterConfig.yaml +0 -0
  95. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/EnumRegistry.yaml +0 -0
  96. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/FindFile.yaml +0 -0
  97. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/PeerProcessConfig.yaml +0 -0
  98. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/RuntimeEnum.yaml +0 -0
  99. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/ServerConnectionConfig.yaml +0 -0
  100. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/StructConfig.yaml +0 -0
  101. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/TaskConfig.yaml +0 -0
  102. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/channel_controls.yaml +0 -0
  103. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/has_config.yaml +0 -0
  104. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/has_factory.yaml +0 -0
  105. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/has_markdown.yaml +0 -0
  106. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/has_name.yaml +0 -0
  107. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/schemas/has_request_flag.yaml +0 -0
  108. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/server.yaml +0 -0
  109. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/server_base.yaml +0 -0
  110. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/server_dev.yaml +0 -0
  111. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/static/svg/chip-circle-bootstrap.svg +0 -0
  112. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/static/woff2/CascadiaCode-Bold.woff2 +0 -0
  113. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/static/woff2/CascadiaCode-BoldItalic.woff2 +0 -0
  114. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/static/woff2/CascadiaCode-Italic.woff2 +0 -0
  115. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/static/woff2/CascadiaCode-Regular.woff2 +0 -0
  116. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/static/woff2/CascadiaMono-Bold.woff2 +0 -0
  117. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/static/woff2/CascadiaMono-BoldItalic.woff2 +0 -0
  118. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/static/woff2/CascadiaMono-Italic.woff2 +0 -0
  119. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/static/woff2/CascadiaMono-Regular.woff2 +0 -0
  120. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/static/woff2/README.md +0 -0
  121. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/data/tftp_server.yaml +0 -0
  122. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/dev_requirements.txt +0 -0
  123. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/entry.py +0 -0
  124. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/enum/__init__.py +0 -0
  125. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/enum/types.py +0 -0
  126. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/mapping.py +0 -0
  127. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/message/__init__.py +0 -0
  128. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/message/handlers.py +0 -0
  129. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/message/interface.py +0 -0
  130. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/message/types.py +0 -0
  131. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/metrics/__init__.py +0 -0
  132. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/metrics/channel.py +0 -0
  133. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/metrics/connection.py +0 -0
  134. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/metrics/task.py +0 -0
  135. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/mixins/__init__.py +0 -0
  136. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/mixins/async_command.py +0 -0
  137. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/mixins/enum.py +0 -0
  138. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/mixins/environment.py +0 -0
  139. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/mixins/finalize.py +0 -0
  140. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/mixins/logging.py +0 -0
  141. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/mixins/psutil.py +0 -0
  142. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/mixins/regex.py +0 -0
  143. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/mixins/trig.py +0 -0
  144. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/__init__.py +0 -0
  145. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/apps/__init__.py +0 -0
  146. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/__init__.py +0 -0
  147. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/base.py +0 -0
  148. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/config/__init__.py +0 -0
  149. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/config/codec.py +0 -0
  150. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/config/util.py +0 -0
  151. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/factory/__init__.py +0 -0
  152. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/factory/connection.py +0 -0
  153. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/factory/task.py +0 -0
  154. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/housekeeping/__init__.py +0 -0
  155. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/imports/__init__.py +0 -0
  156. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/imports/util.py +0 -0
  157. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/info.py +0 -0
  158. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/result.py +0 -0
  159. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/struct/__init__.py +0 -0
  160. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/task.py +0 -0
  161. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/tcp/__init__.py +0 -0
  162. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/tcp/json.py +0 -0
  163. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/udp.py +0 -0
  164. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/arbiter/websocket.py +0 -0
  165. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/backoff.py +0 -0
  166. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/connection.py +0 -0
  167. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/factories/__init__.py +0 -0
  168. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/html/__init__.py +0 -0
  169. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/html/arbiter.py +0 -0
  170. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/html/bootstrap/__init__.py +0 -0
  171. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/html/bootstrap/elements.py +0 -0
  172. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/html/bootstrap/tabs.py +0 -0
  173. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/http/__init__.py +0 -0
  174. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/http/common.py +0 -0
  175. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/http/header.py +0 -0
  176. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/http/request_target.py +0 -0
  177. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/http/response.py +0 -0
  178. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/http/state.py +0 -0
  179. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/http/version.py +0 -0
  180. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/manager.py +0 -0
  181. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/mixin.py +0 -0
  182. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/mtu.py +0 -0
  183. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/__init__.py +0 -0
  184. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/__init__.py +0 -0
  185. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/base.py +0 -0
  186. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/create.py +0 -0
  187. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/elements.py +0 -0
  188. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/env/__init__.py +0 -0
  189. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/env/modal.py +0 -0
  190. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/env/settings.py +0 -0
  191. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/env/tab/__init__.py +0 -0
  192. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/env/tab/base.py +0 -0
  193. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/env/tab/controls.py +0 -0
  194. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/env/tab/html.py +0 -0
  195. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/env/tab/message.py +0 -0
  196. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/env/widgets.py +0 -0
  197. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/files.py +0 -0
  198. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/landing_page.py +0 -0
  199. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/placeholder.py +0 -0
  200. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/pyodide.py +0 -0
  201. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/sound.py +0 -0
  202. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/app/tab.py +0 -0
  203. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/html.py +0 -0
  204. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/json.py +0 -0
  205. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/markdown.py +0 -0
  206. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/struct/__init__.py +0 -0
  207. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/websocket/__init__.py +0 -0
  208. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/server/websocket/state.py +0 -0
  209. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/ssl.py +0 -0
  210. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/stream/__init__.py +0 -0
  211. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/stream/base.py +0 -0
  212. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/stream/json/__init__.py +0 -0
  213. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/stream/string.py +0 -0
  214. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/tcp/__init__.py +0 -0
  215. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/tcp/connection.py +0 -0
  216. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/tcp/create.py +0 -0
  217. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/tcp/http/__init__.py +0 -0
  218. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/tcp/protocol.py +0 -0
  219. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/tcp/scpi/__init__.py +0 -0
  220. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/tcp/telnet/__init__.py +0 -0
  221. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/tcp/telnet/codes.py +0 -0
  222. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/tcp/telnet/np_05b.py +0 -0
  223. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/udp/__init__.py +0 -0
  224. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/udp/connection.py +0 -0
  225. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/udp/create.py +0 -0
  226. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/udp/protocol.py +0 -0
  227. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/udp/queue.py +0 -0
  228. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/udp/tftp/__init__.py +0 -0
  229. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/udp/tftp/base.py +0 -0
  230. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/udp/tftp/endpoint.py +0 -0
  231. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/udp/tftp/enums.py +0 -0
  232. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/udp/tftp/io.py +0 -0
  233. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/util.py +0 -0
  234. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/websocket/__init__.py +0 -0
  235. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/net/websocket/connection.py +0 -0
  236. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/noise/__init__.py +0 -0
  237. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/__init__.py +0 -0
  238. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/array/__init__.py +0 -0
  239. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/base.py +0 -0
  240. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/bool.py +0 -0
  241. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/byte_order.py +0 -0
  242. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/evaluation.py +0 -0
  243. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/field/__init__.py +0 -0
  244. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/field/fields.py +0 -0
  245. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/field/manager/__init__.py +0 -0
  246. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/field/manager/base.py +0 -0
  247. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/float.py +0 -0
  248. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/scaling.py +0 -0
  249. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/serializable/__init__.py +0 -0
  250. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/serializable/fixed.py +0 -0
  251. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/serializable/framer.py +0 -0
  252. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/serializable/prefixed.py +0 -0
  253. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/string.py +0 -0
  254. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/types/__init__.py +0 -0
  255. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/types/base.py +0 -0
  256. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/types/bool.py +0 -0
  257. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/types/bounds.py +0 -0
  258. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/types/float.py +0 -0
  259. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/primitives/types/int.py +0 -0
  260. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/py.typed +0 -0
  261. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/registry/__init__.py +0 -0
  262. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/registry/bool.py +0 -0
  263. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/registry/item.py +0 -0
  264. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/registry/name.py +0 -0
  265. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/requirements.txt +0 -0
  266. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/sample/__init__.py +0 -0
  267. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/sample/peer.py +0 -0
  268. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/sample/program.py +0 -0
  269. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/schemas.py +0 -0
  270. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/struct/__init__.py +0 -0
  271. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/subprocess/__init__.py +0 -0
  272. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/subprocess/interface.py +0 -0
  273. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/subprocess/peer.py +0 -0
  274. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/subprocess/program.py +0 -0
  275. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/subprocess/protocol.py +0 -0
  276. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/task/__init__.py +0 -0
  277. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/task/asynchronous.py +0 -0
  278. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/task/basic/__init__.py +0 -0
  279. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/task/basic/manager.py +0 -0
  280. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/task/basic/periodic.py +0 -0
  281. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/task/sample.py +0 -0
  282. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/task/trig/__init__.py +0 -0
  283. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/telemetry/__init__.py +0 -0
  284. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/telemetry/sample.py +0 -0
  285. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/tui/__init__.py +0 -0
  286. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/tui/channels/__init__.py +0 -0
  287. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/tui/cursor.py +0 -0
  288. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/tui/mixin.py +0 -0
  289. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/tui/mock.py +0 -0
  290. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/tui/task.py +0 -0
  291. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/ui/__init__.py +0 -0
  292. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy/ui/controls.py +0 -0
  293. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy.egg-info/SOURCES.txt +0 -0
  294. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy.egg-info/dependency_links.txt +0 -0
  295. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy.egg-info/entry_points.txt +0 -0
  296. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy.egg-info/requires.txt +2 -2
  297. {runtimepy-5.11.0 → runtimepy-5.11.2}/runtimepy.egg-info/top_level.txt +0 -0
  298. {runtimepy-5.11.0 → runtimepy-5.11.2}/setup.cfg +0 -0
  299. {runtimepy-5.11.0 → runtimepy-5.11.2}/setup.py +0 -0
  300. {runtimepy-5.11.0 → runtimepy-5.11.2}/tests/test_entry.py +0 -0
  301. {runtimepy-5.11.0 → runtimepy-5.11.2}/tests/test_mapping.py +0 -0
  302. {runtimepy-5.11.0 → runtimepy-5.11.2}/tests/test_resources.py +0 -0
  303. {runtimepy-5.11.0 → runtimepy-5.11.2}/tests/test_util.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: runtimepy
3
- Version: 5.11.0
3
+ Version: 5.11.2
4
4
  Summary: A framework for implementing Python services.
5
5
  Home-page: https://github.com/vkottler/runtimepy
6
6
  Author: Vaughn Kottler
@@ -17,11 +17,11 @@ Classifier: License :: OSI Approved :: MIT License
17
17
  Requires-Python: >=3.12
18
18
  Description-Content-Type: text/markdown
19
19
  License-File: LICENSE
20
- Requires-Dist: websockets
21
20
  Requires-Dist: aiofiles
21
+ Requires-Dist: psutil
22
22
  Requires-Dist: svgen>=0.7.4
23
+ Requires-Dist: websockets
23
24
  Requires-Dist: vcorelib>=3.5.1
24
- Requires-Dist: psutil
25
25
  Provides-Extra: test
26
26
  Requires-Dist: pylint; extra == "test"
27
27
  Requires-Dist: flake8; extra == "test"
@@ -50,11 +50,11 @@ Dynamic: requires-python
50
50
  =====================================
51
51
  generator=datazen
52
52
  version=3.1.4
53
- hash=12eb2a9d91dea3ae83e38a864f6cab4b
53
+ hash=8a7622d7187fa17bfcc479f8f6f78d1a
54
54
  =====================================
55
55
  -->
56
56
 
57
- # runtimepy ([5.11.0](https://pypi.org/project/runtimepy/))
57
+ # runtimepy ([5.11.2](https://pypi.org/project/runtimepy/))
58
58
 
59
59
  [![python](https://img.shields.io/pypi/pyversions/runtimepy.svg)](https://pypi.org/project/runtimepy/)
60
60
  ![Build Status](https://github.com/vkottler/runtimepy/workflows/Python%20Package/badge.svg)
@@ -2,11 +2,11 @@
2
2
  =====================================
3
3
  generator=datazen
4
4
  version=3.1.4
5
- hash=12eb2a9d91dea3ae83e38a864f6cab4b
5
+ hash=8a7622d7187fa17bfcc479f8f6f78d1a
6
6
  =====================================
7
7
  -->
8
8
 
9
- # runtimepy ([5.11.0](https://pypi.org/project/runtimepy/))
9
+ # runtimepy ([5.11.2](https://pypi.org/project/runtimepy/))
10
10
 
11
11
  [![python](https://img.shields.io/pypi/pyversions/runtimepy.svg)](https://pypi.org/project/runtimepy/)
12
12
  ![Build Status](https://github.com/vkottler/runtimepy/workflows/Python%20Package/badge.svg)
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta:__legacy__"
4
4
 
5
5
  [project]
6
6
  name = "runtimepy"
7
- version = "5.11.0"
7
+ version = "5.11.2"
8
8
  description = "A framework for implementing Python services."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.12"
@@ -1,7 +1,7 @@
1
1
  # =====================================
2
2
  # generator=datazen
3
3
  # version=3.1.4
4
- # hash=c4e165f8c6309dd6819689f0262cf92d
4
+ # hash=c5b165c61995fe302ea31f7500b6359f
5
5
  # =====================================
6
6
 
7
7
  """
@@ -10,7 +10,7 @@ Useful defaults and other package metadata.
10
10
 
11
11
  DESCRIPTION = "A framework for implementing Python services."
12
12
  PKG_NAME = "runtimepy"
13
- VERSION = "5.11.0"
13
+ VERSION = "5.11.2"
14
14
 
15
15
  # runtimepy-specific content.
16
16
  METRICS_NAME = "metrics"
@@ -145,6 +145,7 @@ class ProtocolBase(PrimitiveArray):
145
145
  fields=_copy(self._fields),
146
146
  build=self._build,
147
147
  byte_order=self.byte_order,
148
+ identifier=self.id,
148
149
  serializables={
149
150
  key: [val[0].copy_without_chain()]
150
151
  for key, val in self.serializables.items()
@@ -25,6 +25,7 @@ from runtimepy.primitives.field.manager import (
25
25
  VALUES_KEY,
26
26
  BitFieldsManager,
27
27
  )
28
+ from runtimepy.primitives.serializable import SerializableMap
28
29
 
29
30
  BUILD_KEY = "build"
30
31
  META_KEY = "meta"
@@ -96,7 +97,11 @@ class JsonProtocol(ProtocolBase):
96
97
  return data
97
98
 
98
99
  @classmethod
99
- def import_json(cls: type[T], data: dict[str, _JsonObject]) -> T:
100
+ def import_json(
101
+ cls: type[T],
102
+ data: dict[str, _JsonObject],
103
+ serializables: SerializableMap = None,
104
+ ) -> T:
100
105
  """Create a bit-fields manager from JSON data."""
101
106
 
102
107
  # Only set values once (at the end).
@@ -126,6 +131,7 @@ class JsonProtocol(ProtocolBase):
126
131
  identifier=_cast(int, data[META_KEY]["id"]),
127
132
  byte_order=_cast(str, data[META_KEY]["byte_order"]),
128
133
  alias=data[META_KEY]["alias"], # type: ignore
134
+ serializables=serializables,
129
135
  )
130
136
 
131
137
  # Set values.
@@ -3,7 +3,7 @@ A basic type-system implementation.
3
3
  """
4
4
 
5
5
  # built-in
6
- from typing import Iterable, Optional
6
+ from typing import Iterable, Optional, Union
7
7
 
8
8
  # third-party
9
9
  from vcorelib.logging import LoggerMixin
@@ -18,8 +18,10 @@ from runtimepy.enum.registry import (
18
18
  EnumRegistry,
19
19
  RuntimeIntEnum,
20
20
  )
21
- from runtimepy.primitives.byte_order import ByteOrder
21
+ from runtimepy.primitives.byte_order import DEFAULT_BYTE_ORDER, ByteOrder
22
22
  from runtimepy.primitives.types import AnyPrimitiveType, PrimitiveTypes
23
+ from runtimepy.registry.name import RegistryKey
24
+ from runtimepy.util import Identifier
23
25
 
24
26
 
25
27
  def resolve_name(matches: Iterable[str]) -> str:
@@ -50,6 +52,8 @@ class TypeSystem(LoggerMixin):
50
52
 
51
53
  self.primitives: dict[str, AnyPrimitiveType] = {}
52
54
  self.custom: dict[str, Protocol] = {}
55
+ self.custom_ids = Identifier(scale=1)
56
+
53
57
  self._enums = EnumRegistry()
54
58
 
55
59
  global_namespace = Namespace(delim=CPP_DELIM)
@@ -98,13 +102,22 @@ class TypeSystem(LoggerMixin):
98
102
  assert enum is not None
99
103
  self._register_primitive(name, enum.primitive)
100
104
 
101
- def register(self, name: str, *namespace: str) -> Protocol:
105
+ def register(
106
+ self,
107
+ name: str,
108
+ *namespace: str,
109
+ byte_order: Union[ByteOrder, RegistryKey] = DEFAULT_BYTE_ORDER,
110
+ ) -> Protocol:
102
111
  """Register a custom type."""
103
112
 
104
- new_type = Protocol(self._enums)
105
- self.custom[self._name(name, *namespace, check_available=True)] = (
106
- new_type
113
+ resolved = self._name(name, *namespace, check_available=True)
114
+ new_type = Protocol(
115
+ self._enums,
116
+ alias=resolved,
117
+ identifier=self.custom_ids(),
118
+ byte_order=byte_order,
107
119
  )
120
+ self.custom[resolved] = new_type
108
121
  return new_type
109
122
 
110
123
  def get_protocol(
@@ -63,6 +63,11 @@ class RuntimeIntEnum(_IntEnum):
63
63
 
64
64
  return data
65
65
 
66
+ @classmethod
67
+ def id(cls) -> _Optional[int]:
68
+ """Override in sub-class to coerce enum id."""
69
+ return None
70
+
66
71
  @classmethod
67
72
  def primitive(cls) -> str:
68
73
  """The underlying primitive type for this runtime enumeration."""
@@ -89,6 +94,20 @@ class RuntimeIntEnum(_IntEnum):
89
94
 
90
95
  data = _RuntimeEnum.data_from_enum(cls)
91
96
  data["primitive"] = cls.primitive()
97
+
98
+ ident = cls.id()
99
+ if ident is not None:
100
+ data["id"] = ident
101
+
92
102
  result = registry.register_dict(name, data)
93
103
  assert result is not None
94
104
  return result
105
+
106
+
107
+ def enum_registry(*kinds: type[RuntimeIntEnum]) -> EnumRegistry:
108
+ """Create an enum registry with the provided custom types registered."""
109
+
110
+ result = EnumRegistry()
111
+ for kind in kinds:
112
+ kind.register_enum(result)
113
+ return result
@@ -37,8 +37,9 @@ class BaseIntPrimitive(PrimitiveIsCloseMixin[int]):
37
37
  """Set this primitive to a random integer."""
38
38
 
39
39
  assert self.kind.int_bounds is not None
40
- result = self.kind.int_bounds.random()
41
- self.set_value(result, timestamp_ns=timestamp_ns)
40
+ self.set_value(
41
+ self.kind.int_bounds.random(), timestamp_ns=timestamp_ns
42
+ )
42
43
 
43
44
  def increment(self, amount: int = 1, timestamp_ns: int = None) -> int:
44
45
  """Increment this primitive by some amount and return the new value."""
@@ -176,13 +176,20 @@ class Serializable(ABC):
176
176
 
177
177
  result = []
178
178
 
179
+ # Copy the chain element before it becomes part of the current chain if
180
+ # an array is created.
181
+ copy_base = None
182
+ if array_length is not None:
183
+ copy_base = chain.copy()
184
+
179
185
  self.end.assign(chain)
180
186
  result.append(chain)
181
187
 
182
188
  # Add additional array elements as copies.
183
189
  if array_length is not None:
190
+ assert copy_base is not None
184
191
  for _ in range(array_length - 1):
185
- inst = chain.copy()
192
+ inst = copy_base.copy()
186
193
  self.end.assign(inst)
187
194
  result.append(inst)
188
195
 
@@ -34,10 +34,10 @@ def normalize_root(*src_parts: Union[str, Path]) -> Path:
34
34
  class Identifier:
35
35
  """A simple message indentifier interface."""
36
36
 
37
- def __init__(self) -> None:
37
+ def __init__(self, start: int = 1, scale: int = 2) -> None:
38
38
  """Initialize this instance."""
39
- self.curr_id: int = 1
40
- self.scale = 2
39
+ self.curr_id = start
40
+ self.scale = scale
41
41
 
42
42
  def __call__(self) -> int:
43
43
  """Get the next identifier."""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: runtimepy
3
- Version: 5.11.0
3
+ Version: 5.11.2
4
4
  Summary: A framework for implementing Python services.
5
5
  Home-page: https://github.com/vkottler/runtimepy
6
6
  Author: Vaughn Kottler
@@ -17,11 +17,11 @@ Classifier: License :: OSI Approved :: MIT License
17
17
  Requires-Python: >=3.12
18
18
  Description-Content-Type: text/markdown
19
19
  License-File: LICENSE
20
- Requires-Dist: websockets
21
20
  Requires-Dist: aiofiles
21
+ Requires-Dist: psutil
22
22
  Requires-Dist: svgen>=0.7.4
23
+ Requires-Dist: websockets
23
24
  Requires-Dist: vcorelib>=3.5.1
24
- Requires-Dist: psutil
25
25
  Provides-Extra: test
26
26
  Requires-Dist: pylint; extra == "test"
27
27
  Requires-Dist: flake8; extra == "test"
@@ -50,11 +50,11 @@ Dynamic: requires-python
50
50
  =====================================
51
51
  generator=datazen
52
52
  version=3.1.4
53
- hash=12eb2a9d91dea3ae83e38a864f6cab4b
53
+ hash=8a7622d7187fa17bfcc479f8f6f78d1a
54
54
  =====================================
55
55
  -->
56
56
 
57
- # runtimepy ([5.11.0](https://pypi.org/project/runtimepy/))
57
+ # runtimepy ([5.11.2](https://pypi.org/project/runtimepy/))
58
58
 
59
59
  [![python](https://img.shields.io/pypi/pyversions/runtimepy.svg)](https://pypi.org/project/runtimepy/)
60
60
  ![Build Status](https://github.com/vkottler/runtimepy/workflows/Python%20Package/badge.svg)
File without changes
File without changes