meerschaum 2.9.4__tar.gz → 3.0.0rc1__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 (304) hide show
  1. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/PKG-INFO +88 -80
  2. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/__init__.py +5 -2
  3. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/__init__.py +1 -0
  4. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/arguments/_parse_arguments.py +4 -4
  5. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/arguments/_parser.py +17 -1
  6. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/entry.py +6 -6
  7. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/shell/Shell.py +1 -1
  8. meerschaum-3.0.0rc1/meerschaum/_internal/static.py +372 -0
  9. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/api.py +12 -2
  10. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/bootstrap.py +7 -7
  11. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/edit.py +142 -18
  12. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/register.py +137 -6
  13. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/show.py +117 -29
  14. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/stop.py +4 -1
  15. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/sync.py +1 -1
  16. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/tag.py +9 -8
  17. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/__init__.py +9 -2
  18. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/_events.py +39 -2
  19. meerschaum-3.0.0rc1/meerschaum/api/_oauth2.py +162 -0
  20. meerschaum-3.0.0rc1/meerschaum/api/_tokens.py +102 -0
  21. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/__init__.py +0 -1
  22. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/callbacks/custom.py +2 -2
  23. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/callbacks/dashboard.py +133 -18
  24. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/callbacks/plugins.py +0 -1
  25. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/callbacks/register.py +1 -1
  26. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/callbacks/settings/__init__.py +1 -0
  27. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/callbacks/settings/password_reset.py +2 -2
  28. meerschaum-3.0.0rc1/meerschaum/api/dash/callbacks/settings/tokens.py +388 -0
  29. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/components.py +30 -8
  30. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/keys.py +19 -93
  31. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/pages/dashboard.py +1 -20
  32. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/pages/settings/__init__.py +1 -0
  33. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/pages/settings/password_reset.py +1 -1
  34. meerschaum-3.0.0rc1/meerschaum/api/dash/pages/settings/tokens.py +55 -0
  35. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/pipes.py +156 -58
  36. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/sessions.py +12 -0
  37. meerschaum-3.0.0rc1/meerschaum/api/dash/tokens.py +606 -0
  38. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/websockets.py +1 -1
  39. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/webterm.py +4 -0
  40. meerschaum-3.0.0rc1/meerschaum/api/models/__init__.py +31 -0
  41. meerschaum-3.0.0rc1/meerschaum/api/models/_actions.py +22 -0
  42. meerschaum-3.0.0rc1/meerschaum/api/models/_pipes.py +99 -0
  43. meerschaum-3.0.0rc1/meerschaum/api/models/_tokens.py +81 -0
  44. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/css/dash.css +16 -0
  45. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/templates/termpage.html +12 -0
  46. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/routes/__init__.py +1 -0
  47. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/routes/_actions.py +3 -4
  48. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/routes/_connectors.py +3 -7
  49. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/routes/_jobs.py +14 -35
  50. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/routes/_login.py +49 -12
  51. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/routes/_misc.py +5 -10
  52. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/routes/_pipes.py +134 -111
  53. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/routes/_plugins.py +38 -28
  54. meerschaum-3.0.0rc1/meerschaum/api/routes/_tokens.py +236 -0
  55. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/routes/_users.py +47 -35
  56. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/routes/_version.py +3 -3
  57. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/__init__.py +43 -20
  58. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_default.py +32 -5
  59. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_edit.py +28 -24
  60. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_environment.py +1 -1
  61. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_patch.py +6 -6
  62. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_paths.py +5 -1
  63. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_read_config.py +65 -34
  64. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_sync.py +6 -3
  65. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_version.py +1 -1
  66. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/stack/__init__.py +24 -5
  67. meerschaum-3.0.0rc1/meerschaum/config/static.py +18 -0
  68. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/_Connector.py +10 -4
  69. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/__init__.py +4 -20
  70. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/api/_APIConnector.py +34 -6
  71. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/api/_actions.py +2 -2
  72. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/api/_jobs.py +1 -1
  73. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/api/_login.py +33 -7
  74. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/api/_misc.py +2 -2
  75. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/api/_pipes.py +15 -14
  76. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/api/_plugins.py +2 -2
  77. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/api/_request.py +1 -1
  78. meerschaum-3.0.0rc1/meerschaum/connectors/api/_tokens.py +146 -0
  79. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/api/_users.py +70 -58
  80. meerschaum-3.0.0rc1/meerschaum/connectors/instance/_InstanceConnector.py +83 -0
  81. meerschaum-3.0.0rc1/meerschaum/connectors/instance/__init__.py +10 -0
  82. meerschaum-3.0.0rc1/meerschaum/connectors/instance/_pipes.py +442 -0
  83. meerschaum-3.0.0rc1/meerschaum/connectors/instance/_plugins.py +151 -0
  84. meerschaum-3.0.0rc1/meerschaum/connectors/instance/_tokens.py +296 -0
  85. meerschaum-3.0.0rc1/meerschaum/connectors/instance/_users.py +181 -0
  86. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/parse.py +4 -1
  87. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/_SQLConnector.py +8 -5
  88. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/_cli.py +12 -11
  89. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/_create_engine.py +6 -154
  90. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/_fetch.py +2 -18
  91. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/_pipes.py +42 -31
  92. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/_plugins.py +29 -0
  93. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/_sql.py +9 -2
  94. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/_users.py +29 -2
  95. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/tables/__init__.py +1 -1
  96. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/valkey/_ValkeyConnector.py +2 -4
  97. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/valkey/_pipes.py +9 -10
  98. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/valkey/_plugins.py +2 -26
  99. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/__init__.py +31 -14
  100. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_attributes.py +156 -58
  101. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_bootstrap.py +54 -24
  102. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_data.py +41 -1
  103. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_dtypes.py +29 -14
  104. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_edit.py +12 -4
  105. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_show.py +5 -5
  106. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_sync.py +48 -53
  107. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_verify.py +1 -1
  108. {meerschaum-2.9.4/meerschaum/plugins → meerschaum-3.0.0rc1/meerschaum/core/Plugin}/_Plugin.py +9 -11
  109. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Plugin/__init__.py +1 -1
  110. meerschaum-3.0.0rc1/meerschaum/core/Token/_Token.py +221 -0
  111. meerschaum-3.0.0rc1/meerschaum/core/Token/__init__.py +12 -0
  112. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/User/_User.py +34 -8
  113. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/User/__init__.py +9 -1
  114. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/__init__.py +1 -0
  115. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/jobs/_Job.py +3 -2
  116. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/jobs/__init__.py +3 -2
  117. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/jobs/systemd.py +1 -1
  118. meerschaum-3.0.0rc1/meerschaum/models/__init__.py +35 -0
  119. meerschaum-3.0.0rc1/meerschaum/models/pipes.py +247 -0
  120. meerschaum-3.0.0rc1/meerschaum/models/tokens.py +38 -0
  121. meerschaum-3.0.0rc1/meerschaum/models/users.py +26 -0
  122. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/plugins/__init__.py +22 -7
  123. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/plugins/bootstrap.py +2 -1
  124. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/_get_pipes.py +68 -27
  125. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/daemon/Daemon.py +2 -1
  126. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/daemon/__init__.py +30 -2
  127. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/dataframe.py +96 -15
  128. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/dtypes/__init__.py +93 -21
  129. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/dtypes/sql.py +44 -0
  130. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/formatting/__init__.py +1 -1
  131. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/formatting/_pipes.py +5 -4
  132. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/formatting/_shell.py +11 -9
  133. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/misc.py +237 -80
  134. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/packages/__init__.py +3 -6
  135. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/packages/_packages.py +34 -32
  136. meerschaum-3.0.0rc1/meerschaum/utils/pipes.py +181 -0
  137. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/process.py +1 -1
  138. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/prompt.py +3 -1
  139. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/schedule.py +1 -0
  140. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/sql.py +115 -39
  141. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/typing.py +1 -4
  142. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/venv/_Venv.py +2 -2
  143. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/venv/__init__.py +5 -7
  144. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum.egg-info/PKG-INFO +88 -80
  145. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum.egg-info/SOURCES.txt +24 -5
  146. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum.egg-info/requires.txt +87 -79
  147. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/setup.py +1 -1
  148. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/tests/test_pipes_dtypes.py +5 -5
  149. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/tests/test_sync.py +82 -8
  150. meerschaum-2.9.4/meerschaum/api/_oauth2.py +0 -52
  151. meerschaum-2.9.4/meerschaum/api/models/__init__.py +0 -11
  152. meerschaum-2.9.4/meerschaum/api/models/_interfaces.py +0 -15
  153. meerschaum-2.9.4/meerschaum/api/models/_locations.py +0 -15
  154. meerschaum-2.9.4/meerschaum/api/models/_metrics.py +0 -15
  155. meerschaum-2.9.4/meerschaum/api/models/_pipes.py +0 -21
  156. meerschaum-2.9.4/meerschaum/config/static/__init__.py +0 -186
  157. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/LICENSE +0 -0
  158. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/README.md +0 -0
  159. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/__main__.py +0 -0
  160. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/arguments/__init__.py +0 -0
  161. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/docs/__init__.py +0 -0
  162. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/docs/index.py +0 -0
  163. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/shell/ShellCompleter.py +0 -0
  164. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/shell/ValidAutoSuggest.py +0 -0
  165. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/shell/__init__.py +0 -0
  166. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/shell/resources/__init__.py +0 -0
  167. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/shell/updates.py +0 -0
  168. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/term/TermPageHandler.py +0 -0
  169. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/term/__init__.py +0 -0
  170. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/_internal/term/tools.py +0 -0
  171. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/__init__.py +0 -0
  172. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/attach.py +0 -0
  173. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/clear.py +0 -0
  174. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/copy.py +0 -0
  175. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/deduplicate.py +0 -0
  176. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/delete.py +0 -0
  177. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/drop.py +0 -0
  178. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/index.py +0 -0
  179. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/install.py +0 -0
  180. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/login.py +0 -0
  181. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/os.py +0 -0
  182. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/pause.py +0 -0
  183. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/python.py +0 -0
  184. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/reload.py +0 -0
  185. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/restart.py +0 -0
  186. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/setup.py +0 -0
  187. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/sh.py +0 -0
  188. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/sql.py +0 -0
  189. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/stack.py +0 -0
  190. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/start.py +0 -0
  191. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/uninstall.py +0 -0
  192. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/upgrade.py +0 -0
  193. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/actions/verify.py +0 -0
  194. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/_chain.py +0 -0
  195. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/_chunks.py +0 -0
  196. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/_exceptions.py +0 -0
  197. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/_websockets.py +0 -0
  198. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/assets/__init__.py +0 -0
  199. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/assets/ansi_up.js +0 -0
  200. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/assets/banner_1920x320.png +0 -0
  201. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/assets/favicon.ico +0 -0
  202. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/assets/logo_48x48.png +0 -0
  203. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/assets/logo_500x500.png +0 -0
  204. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/callbacks/__init__.py +0 -0
  205. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/callbacks/jobs.py +0 -0
  206. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/callbacks/login.py +0 -0
  207. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/callbacks/pipes.py +0 -0
  208. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/connectors.py +0 -0
  209. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/graphs.py +0 -0
  210. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/jobs.py +0 -0
  211. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/pages/__init__.py +0 -0
  212. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/pages/error.py +0 -0
  213. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/pages/job.py +0 -0
  214. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/pages/login.py +0 -0
  215. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/pages/pipes.py +0 -0
  216. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/pages/plugins.py +0 -0
  217. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/pages/register.py +0 -0
  218. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/plugins.py +0 -0
  219. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/sync.py +0 -0
  220. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/dash/users.py +0 -0
  221. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/__init__.py +0 -0
  222. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/__init__.py +0 -0
  223. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/css/__init__.py +0 -0
  224. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/css/bootstrap.min.css +0 -0
  225. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/css/dbc_dark.css +0 -0
  226. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/css/styles.css +0 -0
  227. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/css/xterm.css +0 -0
  228. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/ico/__init__.py +0 -0
  229. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/ico/logo.ico +0 -0
  230. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/js/__init__.py +0 -0
  231. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/js/action_button.js +0 -0
  232. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/js/main.js +0 -0
  233. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/js/terminado.js +0 -0
  234. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/js/xterm.js +0 -0
  235. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/static/png/__init__.py +0 -0
  236. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/templates/__init__.py +0 -0
  237. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/templates/index.html +0 -0
  238. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/templates/old_index.html +0 -0
  239. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/resources/templates/secret.html +0 -0
  240. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/routes/_index.py +0 -0
  241. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/routes/_webterm.py +0 -0
  242. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/api/tables/__init__.py +0 -0
  243. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_dash.py +0 -0
  244. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_formatting.py +0 -0
  245. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_jobs.py +0 -0
  246. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_preprocess.py +0 -0
  247. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/_shell.py +0 -0
  248. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/paths.py +0 -0
  249. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/resources/__init__.py +0 -0
  250. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/stack/grafana/__init__.py +0 -0
  251. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/stack/mosquitto/__init__.py +0 -0
  252. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/stack/mosquitto/resources/__init__.py +0 -0
  253. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/config/stack/resources/__init__.py +0 -0
  254. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/api/__init__.py +0 -0
  255. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/api/_fetch.py +0 -0
  256. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/api/_uri.py +0 -0
  257. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/plugin/PluginConnector.py +0 -0
  258. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/plugin/__init__.py +0 -0
  259. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/poll.py +0 -0
  260. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/__init__.py +0 -0
  261. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/_instance.py +0 -0
  262. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/_uri.py +0 -0
  263. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/tables/types.py +0 -0
  264. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/sql/tools.py +0 -0
  265. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/valkey/__init__.py +0 -0
  266. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/valkey/_fetch.py +0 -0
  267. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/connectors/valkey/_users.py +0 -0
  268. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_clear.py +0 -0
  269. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_copy.py +0 -0
  270. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_deduplicate.py +0 -0
  271. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_delete.py +0 -0
  272. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_drop.py +0 -0
  273. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_fetch.py +0 -0
  274. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_index.py +0 -0
  275. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/core/Pipe/_register.py +0 -0
  276. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/jobs/_Executor.py +0 -0
  277. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/__init__.py +0 -0
  278. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/daemon/FileDescriptorInterceptor.py +0 -0
  279. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/daemon/RotatingFile.py +0 -0
  280. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/daemon/StdinFile.py +0 -0
  281. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/daemon/_names.py +0 -0
  282. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/debug.py +0 -0
  283. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/formatting/_jobs.py +0 -0
  284. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/formatting/_pprint.py +0 -0
  285. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/interactive.py +0 -0
  286. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/networking.py +0 -0
  287. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/packages/lazy_loader.py +0 -0
  288. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/pool.py +0 -0
  289. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/threading.py +0 -0
  290. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/warnings.py +0 -0
  291. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum/utils/yaml.py +0 -0
  292. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum.egg-info/dependency_links.txt +0 -0
  293. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum.egg-info/entry_points.txt +0 -0
  294. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum.egg-info/top_level.txt +0 -0
  295. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/meerschaum.egg-info/zip-safe +0 -0
  296. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/setup.cfg +0 -0
  297. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/tests/test_actions.py +0 -0
  298. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/tests/test_arguments.py +0 -0
  299. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/tests/test_deduplicate.py +0 -0
  300. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/tests/test_jobs.py +0 -0
  301. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/tests/test_pipe_data.py +0 -0
  302. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/tests/test_sql.py +0 -0
  303. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/tests/test_users.py +0 -0
  304. {meerschaum-2.9.4 → meerschaum-3.0.0rc1}/tests/test_verify.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: meerschaum
3
- Version: 2.9.4
3
+ Version: 3.0.0rc1
4
4
  Summary: Sync Time-Series Pipes with Meerschaum
5
5
  Home-page: https://meerschaum.io
6
6
  Author: Bennett Meares
@@ -63,14 +63,16 @@ Requires-Dist: fasteners>=0.19.0; extra == "core"
63
63
  Requires-Dist: virtualenv>=20.1.0; extra == "core"
64
64
  Requires-Dist: attrs>=24.2.0; extra == "core"
65
65
  Requires-Dist: uv>=0.2.11; extra == "core"
66
+ Requires-Dist: pydantic>=2.11.7; extra == "core"
67
+ Requires-Dist: annotated-types>=0.7.0; extra == "core"
66
68
  Provides-Extra: jobs
67
- Requires-Dist: dill>=0.3.3; extra == "jobs"
68
- Requires-Dist: python-daemon>=0.2.3; extra == "jobs"
69
- Requires-Dist: watchfiles>=0.21.0; extra == "jobs"
70
- Requires-Dist: psutil>=5.8.0; extra == "jobs"
69
+ Requires-Dist: dill>=0.4.0; extra == "jobs"
70
+ Requires-Dist: python-daemon>=3.1.2; extra == "jobs"
71
+ Requires-Dist: watchfiles>=1.1.0; extra == "jobs"
72
+ Requires-Dist: psutil>=7.0.0; extra == "jobs"
71
73
  Provides-Extra: drivers
72
74
  Requires-Dist: cryptography>=38.0.1; extra == "drivers"
73
- Requires-Dist: psycopg[binary]>=3.2.1; extra == "drivers"
75
+ Requires-Dist: psycopg[binary]>=3.2.9; extra == "drivers"
74
76
  Requires-Dist: PyMySQL>=0.9.0; extra == "drivers"
75
77
  Requires-Dist: aiomysql>=0.0.21; extra == "drivers"
76
78
  Requires-Dist: sqlalchemy-cockroachdb>=2.0.0; extra == "drivers"
@@ -114,7 +116,7 @@ Requires-Dist: mkdocs-awesome-pages-plugin>=2.5.0; extra == "docs"
114
116
  Requires-Dist: mkdocs-section-index>=0.3.3; extra == "docs"
115
117
  Requires-Dist: mkdocs-linkcheck>=1.0.6; extra == "docs"
116
118
  Requires-Dist: mkdocs-redirects>=1.0.4; extra == "docs"
117
- Requires-Dist: jinja2==3.0.3; extra == "docs"
119
+ Requires-Dist: jinja2>=3.1.6; extra == "docs"
118
120
  Provides-Extra: gui
119
121
  Requires-Dist: pywebview>=3.6.3; extra == "gui"
120
122
  Requires-Dist: pycparser>=2.21.0; extra == "gui"
@@ -125,20 +127,20 @@ Requires-Dist: modin[ray]>=0.8.3; extra == "extras"
125
127
  Requires-Dist: nanoid>=2.0.0; extra == "extras"
126
128
  Requires-Dist: importlib-metadata>=4.12.0; extra == "extras"
127
129
  Provides-Extra: sql
128
- Requires-Dist: numpy>=1.18.5; extra == "sql"
129
- Requires-Dist: pandas[parquet]>=2.0.1; extra == "sql"
130
- Requires-Dist: pyarrow>=16.1.0; extra == "sql"
130
+ Requires-Dist: numpy>=2.3.1; extra == "sql"
131
+ Requires-Dist: pandas[parquet]>=2.3.1; extra == "sql"
132
+ Requires-Dist: pyarrow>=20.0.0; extra == "sql"
131
133
  Requires-Dist: dask[complete]>=2024.12.1; extra == "sql"
132
134
  Requires-Dist: partd>=1.4.2; extra == "sql"
133
135
  Requires-Dist: pytz; extra == "sql"
134
- Requires-Dist: joblib>=0.17.0; extra == "sql"
135
- Requires-Dist: SQLAlchemy>=2.0.5; extra == "sql"
136
+ Requires-Dist: joblib>=1.5.1; extra == "sql"
137
+ Requires-Dist: SQLAlchemy>=2.0.41; extra == "sql"
136
138
  Requires-Dist: GeoAlchemy2>=0.17.1; extra == "sql"
137
- Requires-Dist: databases>=0.4.0; extra == "sql"
138
- Requires-Dist: aiosqlite>=0.16.0; extra == "sql"
139
- Requires-Dist: asyncpg>=0.21.0; extra == "sql"
139
+ Requires-Dist: databases>=0.9.0; extra == "sql"
140
+ Requires-Dist: aiosqlite>=0.21.0; extra == "sql"
141
+ Requires-Dist: asyncpg>=0.30.0; extra == "sql"
140
142
  Requires-Dist: cryptography>=38.0.1; extra == "sql"
141
- Requires-Dist: psycopg[binary]>=3.2.1; extra == "sql"
143
+ Requires-Dist: psycopg[binary]>=3.2.9; extra == "sql"
142
144
  Requires-Dist: PyMySQL>=0.9.0; extra == "sql"
143
145
  Requires-Dist: aiomysql>=0.0.21; extra == "sql"
144
146
  Requires-Dist: sqlalchemy-cockroachdb>=2.0.0; extra == "sql"
@@ -166,43 +168,45 @@ Requires-Dist: fasteners>=0.19.0; extra == "sql"
166
168
  Requires-Dist: virtualenv>=20.1.0; extra == "sql"
167
169
  Requires-Dist: attrs>=24.2.0; extra == "sql"
168
170
  Requires-Dist: uv>=0.2.11; extra == "sql"
171
+ Requires-Dist: pydantic>=2.11.7; extra == "sql"
172
+ Requires-Dist: annotated-types>=0.7.0; extra == "sql"
169
173
  Requires-Dist: pyproj>=3.7.1; extra == "sql"
170
174
  Requires-Dist: geopandas>=1.0.1; extra == "sql"
171
175
  Requires-Dist: shapely>=2.0.7; extra == "sql"
172
176
  Provides-Extra: dash
173
- Requires-Dist: Flask-Compress>=1.10.1; extra == "dash"
174
- Requires-Dist: dash>=2.6.2; extra == "dash"
177
+ Requires-Dist: Flask-Compress>=1.17.0; extra == "dash"
178
+ Requires-Dist: dash>=3.1.1; extra == "dash"
175
179
  Requires-Dist: dash-bootstrap-components>=1.7.1; extra == "dash"
176
180
  Requires-Dist: dash-ace>=0.2.1; extra == "dash"
177
- Requires-Dist: dash-extensions>=1.0.4; extra == "dash"
178
- Requires-Dist: dash-daq>=0.5.0; extra == "dash"
179
- Requires-Dist: terminado>=0.12.1; extra == "dash"
180
- Requires-Dist: tornado>=6.1.0; extra == "dash"
181
+ Requires-Dist: dash-extensions>=2.0.4; extra == "dash"
182
+ Requires-Dist: dash-daq>=0.6.0; extra == "dash"
183
+ Requires-Dist: terminado>=0.18.1; extra == "dash"
184
+ Requires-Dist: tornado>=6.5.1; extra == "dash"
181
185
  Provides-Extra: api
182
- Requires-Dist: uvicorn[standard]>=0.29.0; extra == "api"
183
- Requires-Dist: gunicorn>=22.0.0; extra == "api"
184
- Requires-Dist: python-dotenv>=0.20.0; extra == "api"
185
- Requires-Dist: websockets>=11.0.3; extra == "api"
186
- Requires-Dist: fastapi>=0.111.0; extra == "api"
187
- Requires-Dist: fastapi-login>=1.7.2; extra == "api"
188
- Requires-Dist: python-multipart>=0.0.9; extra == "api"
189
- Requires-Dist: httpx>=0.27.2; extra == "api"
190
- Requires-Dist: httpcore>=1.0.6; extra == "api"
191
- Requires-Dist: valkey>=6.0.0; extra == "api"
192
- Requires-Dist: numpy>=1.18.5; extra == "api"
193
- Requires-Dist: pandas[parquet]>=2.0.1; extra == "api"
194
- Requires-Dist: pyarrow>=16.1.0; extra == "api"
186
+ Requires-Dist: uvicorn[standard]>=0.35.0; extra == "api"
187
+ Requires-Dist: gunicorn>=23.0.0; extra == "api"
188
+ Requires-Dist: python-dotenv>=1.1.1; extra == "api"
189
+ Requires-Dist: websockets>=15.0.1; extra == "api"
190
+ Requires-Dist: fastapi>=0.116.0; extra == "api"
191
+ Requires-Dist: fastapi-login>=1.10.3; extra == "api"
192
+ Requires-Dist: python-multipart>=0.0.20; extra == "api"
193
+ Requires-Dist: httpx>=0.28.1; extra == "api"
194
+ Requires-Dist: httpcore>=1.0.9; extra == "api"
195
+ Requires-Dist: valkey>=6.1.0; extra == "api"
196
+ Requires-Dist: numpy>=2.3.1; extra == "api"
197
+ Requires-Dist: pandas[parquet]>=2.3.1; extra == "api"
198
+ Requires-Dist: pyarrow>=20.0.0; extra == "api"
195
199
  Requires-Dist: dask[complete]>=2024.12.1; extra == "api"
196
200
  Requires-Dist: partd>=1.4.2; extra == "api"
197
201
  Requires-Dist: pytz; extra == "api"
198
- Requires-Dist: joblib>=0.17.0; extra == "api"
199
- Requires-Dist: SQLAlchemy>=2.0.5; extra == "api"
202
+ Requires-Dist: joblib>=1.5.1; extra == "api"
203
+ Requires-Dist: SQLAlchemy>=2.0.41; extra == "api"
200
204
  Requires-Dist: GeoAlchemy2>=0.17.1; extra == "api"
201
- Requires-Dist: databases>=0.4.0; extra == "api"
202
- Requires-Dist: aiosqlite>=0.16.0; extra == "api"
203
- Requires-Dist: asyncpg>=0.21.0; extra == "api"
205
+ Requires-Dist: databases>=0.9.0; extra == "api"
206
+ Requires-Dist: aiosqlite>=0.21.0; extra == "api"
207
+ Requires-Dist: asyncpg>=0.30.0; extra == "api"
204
208
  Requires-Dist: cryptography>=38.0.1; extra == "api"
205
- Requires-Dist: psycopg[binary]>=3.2.1; extra == "api"
209
+ Requires-Dist: psycopg[binary]>=3.2.9; extra == "api"
206
210
  Requires-Dist: PyMySQL>=0.9.0; extra == "api"
207
211
  Requires-Dist: aiomysql>=0.0.21; extra == "api"
208
212
  Requires-Dist: sqlalchemy-cockroachdb>=2.0.0; extra == "api"
@@ -230,6 +234,8 @@ Requires-Dist: fasteners>=0.19.0; extra == "api"
230
234
  Requires-Dist: virtualenv>=20.1.0; extra == "api"
231
235
  Requires-Dist: attrs>=24.2.0; extra == "api"
232
236
  Requires-Dist: uv>=0.2.11; extra == "api"
237
+ Requires-Dist: pydantic>=2.11.7; extra == "api"
238
+ Requires-Dist: annotated-types>=0.7.0; extra == "api"
233
239
  Requires-Dist: pyproj>=3.7.1; extra == "api"
234
240
  Requires-Dist: geopandas>=1.0.1; extra == "api"
235
241
  Requires-Dist: shapely>=2.0.7; extra == "api"
@@ -241,18 +247,18 @@ Requires-Dist: colorama>=0.4.3; extra == "api"
241
247
  Requires-Dist: rich>=13.4.2; extra == "api"
242
248
  Requires-Dist: more-termcolor>=1.1.3; extra == "api"
243
249
  Requires-Dist: humanfriendly>=10.0.0; extra == "api"
244
- Requires-Dist: Flask-Compress>=1.10.1; extra == "api"
245
- Requires-Dist: dash>=2.6.2; extra == "api"
250
+ Requires-Dist: Flask-Compress>=1.17.0; extra == "api"
251
+ Requires-Dist: dash>=3.1.1; extra == "api"
246
252
  Requires-Dist: dash-bootstrap-components>=1.7.1; extra == "api"
247
253
  Requires-Dist: dash-ace>=0.2.1; extra == "api"
248
- Requires-Dist: dash-extensions>=1.0.4; extra == "api"
249
- Requires-Dist: dash-daq>=0.5.0; extra == "api"
250
- Requires-Dist: terminado>=0.12.1; extra == "api"
251
- Requires-Dist: tornado>=6.1.0; extra == "api"
252
- Requires-Dist: dill>=0.3.3; extra == "api"
253
- Requires-Dist: python-daemon>=0.2.3; extra == "api"
254
- Requires-Dist: watchfiles>=0.21.0; extra == "api"
255
- Requires-Dist: psutil>=5.8.0; extra == "api"
254
+ Requires-Dist: dash-extensions>=2.0.4; extra == "api"
255
+ Requires-Dist: dash-daq>=0.6.0; extra == "api"
256
+ Requires-Dist: terminado>=0.18.1; extra == "api"
257
+ Requires-Dist: tornado>=6.5.1; extra == "api"
258
+ Requires-Dist: dill>=0.4.0; extra == "api"
259
+ Requires-Dist: python-daemon>=3.1.2; extra == "api"
260
+ Requires-Dist: watchfiles>=1.1.0; extra == "api"
261
+ Requires-Dist: psutil>=7.0.0; extra == "api"
256
262
  Provides-Extra: full
257
263
  Requires-Dist: pprintpp>=0.4.0; extra == "full"
258
264
  Requires-Dist: asciitree>=0.3.3; extra == "full"
@@ -284,12 +290,14 @@ Requires-Dist: fasteners>=0.19.0; extra == "full"
284
290
  Requires-Dist: virtualenv>=20.1.0; extra == "full"
285
291
  Requires-Dist: attrs>=24.2.0; extra == "full"
286
292
  Requires-Dist: uv>=0.2.11; extra == "full"
287
- Requires-Dist: dill>=0.3.3; extra == "full"
288
- Requires-Dist: python-daemon>=0.2.3; extra == "full"
289
- Requires-Dist: watchfiles>=0.21.0; extra == "full"
290
- Requires-Dist: psutil>=5.8.0; extra == "full"
293
+ Requires-Dist: pydantic>=2.11.7; extra == "full"
294
+ Requires-Dist: annotated-types>=0.7.0; extra == "full"
295
+ Requires-Dist: dill>=0.4.0; extra == "full"
296
+ Requires-Dist: python-daemon>=3.1.2; extra == "full"
297
+ Requires-Dist: watchfiles>=1.1.0; extra == "full"
298
+ Requires-Dist: psutil>=7.0.0; extra == "full"
291
299
  Requires-Dist: cryptography>=38.0.1; extra == "full"
292
- Requires-Dist: psycopg[binary]>=3.2.1; extra == "full"
300
+ Requires-Dist: psycopg[binary]>=3.2.9; extra == "full"
293
301
  Requires-Dist: PyMySQL>=0.9.0; extra == "full"
294
302
  Requires-Dist: aiomysql>=0.0.21; extra == "full"
295
303
  Requires-Dist: sqlalchemy-cockroachdb>=2.0.0; extra == "full"
@@ -300,36 +308,36 @@ Requires-Dist: geopandas>=1.0.1; extra == "full"
300
308
  Requires-Dist: shapely>=2.0.7; extra == "full"
301
309
  Requires-Dist: pywebview>=3.6.3; extra == "full"
302
310
  Requires-Dist: pycparser>=2.21.0; extra == "full"
303
- Requires-Dist: numpy>=1.18.5; extra == "full"
304
- Requires-Dist: pandas[parquet]>=2.0.1; extra == "full"
305
- Requires-Dist: pyarrow>=16.1.0; extra == "full"
311
+ Requires-Dist: numpy>=2.3.1; extra == "full"
312
+ Requires-Dist: pandas[parquet]>=2.3.1; extra == "full"
313
+ Requires-Dist: pyarrow>=20.0.0; extra == "full"
306
314
  Requires-Dist: dask[complete]>=2024.12.1; extra == "full"
307
315
  Requires-Dist: partd>=1.4.2; extra == "full"
308
316
  Requires-Dist: pytz; extra == "full"
309
- Requires-Dist: joblib>=0.17.0; extra == "full"
310
- Requires-Dist: SQLAlchemy>=2.0.5; extra == "full"
317
+ Requires-Dist: joblib>=1.5.1; extra == "full"
318
+ Requires-Dist: SQLAlchemy>=2.0.41; extra == "full"
311
319
  Requires-Dist: GeoAlchemy2>=0.17.1; extra == "full"
312
- Requires-Dist: databases>=0.4.0; extra == "full"
313
- Requires-Dist: aiosqlite>=0.16.0; extra == "full"
314
- Requires-Dist: asyncpg>=0.21.0; extra == "full"
315
- Requires-Dist: Flask-Compress>=1.10.1; extra == "full"
316
- Requires-Dist: dash>=2.6.2; extra == "full"
320
+ Requires-Dist: databases>=0.9.0; extra == "full"
321
+ Requires-Dist: aiosqlite>=0.21.0; extra == "full"
322
+ Requires-Dist: asyncpg>=0.30.0; extra == "full"
323
+ Requires-Dist: Flask-Compress>=1.17.0; extra == "full"
324
+ Requires-Dist: dash>=3.1.1; extra == "full"
317
325
  Requires-Dist: dash-bootstrap-components>=1.7.1; extra == "full"
318
326
  Requires-Dist: dash-ace>=0.2.1; extra == "full"
319
- Requires-Dist: dash-extensions>=1.0.4; extra == "full"
320
- Requires-Dist: dash-daq>=0.5.0; extra == "full"
321
- Requires-Dist: terminado>=0.12.1; extra == "full"
322
- Requires-Dist: tornado>=6.1.0; extra == "full"
323
- Requires-Dist: uvicorn[standard]>=0.29.0; extra == "full"
324
- Requires-Dist: gunicorn>=22.0.0; extra == "full"
325
- Requires-Dist: python-dotenv>=0.20.0; extra == "full"
326
- Requires-Dist: websockets>=11.0.3; extra == "full"
327
- Requires-Dist: fastapi>=0.111.0; extra == "full"
328
- Requires-Dist: fastapi-login>=1.7.2; extra == "full"
329
- Requires-Dist: python-multipart>=0.0.9; extra == "full"
330
- Requires-Dist: httpx>=0.27.2; extra == "full"
331
- Requires-Dist: httpcore>=1.0.6; extra == "full"
332
- Requires-Dist: valkey>=6.0.0; extra == "full"
327
+ Requires-Dist: dash-extensions>=2.0.4; extra == "full"
328
+ Requires-Dist: dash-daq>=0.6.0; extra == "full"
329
+ Requires-Dist: terminado>=0.18.1; extra == "full"
330
+ Requires-Dist: tornado>=6.5.1; extra == "full"
331
+ Requires-Dist: uvicorn[standard]>=0.35.0; extra == "full"
332
+ Requires-Dist: gunicorn>=23.0.0; extra == "full"
333
+ Requires-Dist: python-dotenv>=1.1.1; extra == "full"
334
+ Requires-Dist: websockets>=15.0.1; extra == "full"
335
+ Requires-Dist: fastapi>=0.116.0; extra == "full"
336
+ Requires-Dist: fastapi-login>=1.10.3; extra == "full"
337
+ Requires-Dist: python-multipart>=0.0.20; extra == "full"
338
+ Requires-Dist: httpx>=0.28.1; extra == "full"
339
+ Requires-Dist: httpcore>=1.0.9; extra == "full"
340
+ Requires-Dist: valkey>=6.1.0; extra == "full"
333
341
  Dynamic: author
334
342
  Dynamic: author-email
335
343
  Dynamic: classifier
@@ -3,7 +3,7 @@
3
3
  # vim:fenc=utf-8
4
4
 
5
5
  """
6
- Copyright 2023 Bennett Meares
6
+ Copyright 2025 Bennett Meares
7
7
 
8
8
  Licensed under the Apache License, Version 2.0 (the "License");
9
9
  you may not use this file except in compliance with the License.
@@ -19,13 +19,14 @@ limitations under the License.
19
19
  """
20
20
 
21
21
  import atexit
22
+
22
23
  from meerschaum.utils.typing import SuccessTuple
23
24
  from meerschaum.utils.packages import attempt_import
24
25
  from meerschaum.core.Pipe import Pipe
25
26
  from meerschaum.plugins import Plugin
26
27
  from meerschaum.utils.venv import Venv
27
28
  from meerschaum.jobs import Job, make_executor
28
- from meerschaum.connectors import get_connector, Connector, make_connector
29
+ from meerschaum.connectors import get_connector, Connector, InstanceConnector, make_connector
29
30
  from meerschaum.utils import get_pipes
30
31
  from meerschaum.utils.formatting import pprint
31
32
  from meerschaum._internal.docs import index as __doc__
@@ -42,6 +43,7 @@ __all__ = (
42
43
  "get_config",
43
44
  "Pipe",
44
45
  "Plugin",
46
+ "SuccessTuple",
45
47
  "Venv",
46
48
  "Plugin",
47
49
  "Job",
@@ -55,6 +57,7 @@ __all__ = (
55
57
  "utils",
56
58
  "SuccessTuple",
57
59
  "Connector",
60
+ "InstanceConnector",
58
61
  "make_connector",
59
62
  "entry",
60
63
  )
@@ -6,3 +6,4 @@
6
6
  Modules, classes, and variables declared in _internal are not intended for general public use.
7
7
  """
8
8
 
9
+ from meerschaum._internal.static import STATIC_CONFIG
@@ -23,7 +23,7 @@ def split_pipeline_sysargs(sysargs: List[str]) -> Tuple[List[str], List[str]]:
23
23
  """
24
24
  Split `sysargs` into the main pipeline and the flags following the pipeline separator (`:`).
25
25
  """
26
- from meerschaum.config.static import STATIC_CONFIG
26
+ from meerschaum._internal.static import STATIC_CONFIG
27
27
  pipeline_key = STATIC_CONFIG['system']['arguments']['pipeline_key']
28
28
  if pipeline_key not in sysargs:
29
29
  return sysargs, []
@@ -40,7 +40,7 @@ def split_chained_sysargs(sysargs: List[str]) -> List[List[str]]:
40
40
  Split a `sysargs` list containing "and" keys (`+`)
41
41
  into a list of individual `sysargs`.
42
42
  """
43
- from meerschaum.config.static import STATIC_CONFIG
43
+ from meerschaum._internal.static import STATIC_CONFIG
44
44
  and_key = STATIC_CONFIG['system']['arguments']['and_key']
45
45
 
46
46
  if not sysargs or and_key not in sysargs:
@@ -90,7 +90,7 @@ def parse_arguments(sysargs: List[str]) -> Dict[str, Any]:
90
90
 
91
91
  """
92
92
  import shlex
93
- from meerschaum.config.static import STATIC_CONFIG
93
+ from meerschaum._internal.static import STATIC_CONFIG
94
94
  from meerschaum._internal.arguments._parser import parser
95
95
 
96
96
  global _loaded_plugins_args
@@ -360,7 +360,7 @@ def remove_leading_action(
360
360
  """
361
361
  from meerschaum.actions import get_action, get_main_action_name
362
362
  from meerschaum.utils.warnings import warn
363
- from meerschaum.config.static import STATIC_CONFIG
363
+ from meerschaum._internal.static import STATIC_CONFIG
364
364
  action_function = get_action(action, _actions=_actions)
365
365
  if action_function is None:
366
366
  return action
@@ -195,6 +195,7 @@ groups['pipes'] = parser.add_argument_group(title='Pipes options')
195
195
  groups['sync'] = parser.add_argument_group(title='Sync options')
196
196
  groups['api'] = parser.add_argument_group(title='API options')
197
197
  groups['plugins'] = parser.add_argument_group(title='Plugins options')
198
+ groups['tokens'] = parser.add_argument_group(title='Tokens options')
198
199
  groups['packages'] = parser.add_argument_group(title='Packages options')
199
200
  groups['debug'] = parser.add_argument_group(title='Debugging options')
200
201
  groups['misc'] = parser.add_argument_group(title='Miscellaneous options')
@@ -393,7 +394,11 @@ groups['api'].add_argument(
393
394
  )
394
395
  groups['api'].add_argument(
395
396
  '--no-dash', '--nodash', action='store_true',
396
- help = 'When starting the API, do not start the Web interface.',
397
+ help = 'When starting the API, do not start the Web Console dashboard.',
398
+ )
399
+ groups['api'].add_argument(
400
+ '--no-webterm', '--nowebterm', action='store_true',
401
+ help="When starting the API, do not start the Webterm.",
397
402
  )
398
403
  groups['api'].add_argument(
399
404
  '--private', '--private-mode', action='store_true',
@@ -419,12 +424,23 @@ groups['api'].add_argument(
419
424
  '--certfile', type=str,
420
425
  help = "Start the API server with this certfile (requires --keyfile).",
421
426
  )
427
+
422
428
  ### Plugins options
423
429
  groups['plugins'].add_argument(
424
430
  '-r', '--repository', '--repo', type=str,
425
431
  help="Meerschaum plugins repository to connect to. Specify an API label (default: 'mrsm')"
426
432
  )
427
433
 
434
+ ### Tokens options
435
+ groups['tokens'].add_argument(
436
+ '--ttl-days', type=int,
437
+ help="For how many days should a token be valid.",
438
+ )
439
+ groups['tokens'].add_argument(
440
+ '--scopes', '--scope', nargs='+',
441
+ help="Which scope permissions to grant to a token.",
442
+ )
443
+
428
444
  ### Packages options
429
445
  groups['packages'].add_argument(
430
446
  '--venv', type=str,
@@ -15,7 +15,7 @@ import pathlib
15
15
 
16
16
  import meerschaum as mrsm
17
17
  from meerschaum.utils.typing import SuccessTuple, List, Optional, Dict, Callable, Any
18
- from meerschaum.config.static import STATIC_CONFIG as _STATIC_CONFIG
18
+ from meerschaum._internal.static import STATIC_CONFIG as _STATIC_CONFIG
19
19
 
20
20
  _systemd_result_path = None
21
21
  if (_STATIC_CONFIG['environment']['systemd_log_path']) in os.environ:
@@ -66,7 +66,7 @@ def entry(
66
66
  sysargs_has_api_executor_keys,
67
67
  get_pipeline_sysargs,
68
68
  )
69
- from meerschaum.config.static import STATIC_CONFIG
69
+ from meerschaum._internal.static import STATIC_CONFIG
70
70
  if sysargs is None:
71
71
  sysargs = []
72
72
  if not isinstance(sysargs, list):
@@ -206,7 +206,7 @@ def entry_with_args(
206
206
  from meerschaum.actions import get_action
207
207
  from meerschaum._internal.arguments import remove_leading_action
208
208
  from meerschaum.utils.venv import active_venvs, deactivate_venv
209
- from meerschaum.config.static import STATIC_CONFIG
209
+ from meerschaum._internal.static import STATIC_CONFIG
210
210
  from meerschaum.utils.typing import is_success_tuple
211
211
 
212
212
  if _patch_args:
@@ -325,9 +325,9 @@ def _do_action_wrapper(
325
325
  import traceback
326
326
  traceback.print_exception(type(e), e, e.__traceback__)
327
327
  result = False, (
328
- f"Failed to execute `{action_name}` "
329
- + "with exception:\n\n" +
330
- f"{e}."
328
+ f"Failed to execute `{action_name.strip()}` "
329
+ + f"with `{type(e).__name__}`"
330
+ + (f':\n\n{e}' if str(e) else '.')
331
331
  + (
332
332
  "\n\nRun again with '--debug' to see a full stacktrace."
333
333
  if not kw.get('debug', False) else ''
@@ -35,7 +35,7 @@ _clear_screen = get_config('shell', 'clear_screen', patch=True)
35
35
  from meerschaum.utils.misc import string_width, remove_ansi
36
36
  from meerschaum.utils.warnings import warn
37
37
  from meerschaum.jobs import get_executor_keys_from_context
38
- from meerschaum.config.static import STATIC_CONFIG
38
+ from meerschaum._internal.static import STATIC_CONFIG
39
39
  from meerschaum._internal.arguments._parse_arguments import (
40
40
  split_chained_sysargs,
41
41
  split_pipeline_sysargs,