deepfos 1.1.70__tar.gz → 1.1.72__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 (191) hide show
  1. {deepfos-1.1.70 → deepfos-1.1.72}/CHANGELOG.md +15 -0
  2. {deepfos-1.1.70 → deepfos-1.1.72}/PKG-INFO +1 -1
  3. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/_version.py +3 -3
  4. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/deep_pipeline.py +1 -1
  5. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/deep_pipeline.py +14 -3
  6. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/deep_pipeline.py +29 -16
  7. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/deepmodel.py +1 -1
  8. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos.egg-info/PKG-INFO +1 -1
  9. {deepfos-1.1.70 → deepfos-1.1.72}/.gitattributes +0 -0
  10. {deepfos-1.1.70 → deepfos-1.1.72}/.gitee/ISSUE_GUIDELINES.md +0 -0
  11. {deepfos-1.1.70 → deepfos-1.1.72}/.gitee/ISSUE_TEMPLATE.md +0 -0
  12. {deepfos-1.1.70 → deepfos-1.1.72}/.gitignore +0 -0
  13. {deepfos-1.1.70 → deepfos-1.1.72}/MANIFEST.in +0 -0
  14. {deepfos-1.1.70 → deepfos-1.1.72}/README.md +0 -0
  15. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/__init__.py +0 -0
  16. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/algo/__init__.py +0 -0
  17. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/algo/graph.py +0 -0
  18. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/V1_1/__init__.py +0 -0
  19. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/V1_1/business_model.py +0 -0
  20. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/V1_1/dimension.py +0 -0
  21. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/V1_1/models/__init__.py +0 -0
  22. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/V1_1/models/business_model.py +0 -0
  23. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/V1_1/models/dimension.py +0 -0
  24. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/V1_2/__init__.py +0 -0
  25. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/V1_2/dimension.py +0 -0
  26. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/V1_2/models/__init__.py +0 -0
  27. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/V1_2/models/dimension.py +0 -0
  28. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/__init__.py +0 -0
  29. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/account.py +0 -0
  30. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/accounting_engines.py +0 -0
  31. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/app.py +0 -0
  32. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/approval_process.py +0 -0
  33. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/base.py +0 -0
  34. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/business_model.py +0 -0
  35. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/consolidation.py +0 -0
  36. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/consolidation_process.py +0 -0
  37. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/datatable.py +0 -0
  38. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/deepconnector.py +0 -0
  39. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/deepfos_task.py +0 -0
  40. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/deepmodel.py +0 -0
  41. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/dimension.py +0 -0
  42. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/financial_model.py +0 -0
  43. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/journal_model.py +0 -0
  44. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/journal_template.py +0 -0
  45. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/memory_financial_model.py +0 -0
  46. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/__init__.py +0 -0
  47. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/account.py +0 -0
  48. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/accounting_engines.py +0 -0
  49. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/app.py +0 -0
  50. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/approval_process.py +0 -0
  51. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/base.py +0 -0
  52. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/business_model.py +0 -0
  53. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/consolidation.py +0 -0
  54. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/consolidation_process.py +0 -0
  55. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/datatable_mysql.py +0 -0
  56. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/deepconnector.py +0 -0
  57. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/deepfos_task.py +0 -0
  58. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/deepmodel.py +0 -0
  59. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/dimension.py +0 -0
  60. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/financial_model.py +0 -0
  61. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/journal_model.py +0 -0
  62. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/journal_template.py +0 -0
  63. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/memory_financial_model.py +0 -0
  64. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/platform.py +0 -0
  65. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/python.py +0 -0
  66. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/reconciliation_engine.py +0 -0
  67. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/reconciliation_report.py +0 -0
  68. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/role_strategy.py +0 -0
  69. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/smartlist.py +0 -0
  70. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/space.py +0 -0
  71. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/system.py +0 -0
  72. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/variable.py +0 -0
  73. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/models/workflow.py +0 -0
  74. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/platform.py +0 -0
  75. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/python.py +0 -0
  76. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/reconciliation_engine.py +0 -0
  77. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/reconciliation_report.py +0 -0
  78. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/role_strategy.py +0 -0
  79. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/smartlist.py +0 -0
  80. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/space.py +0 -0
  81. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/system.py +0 -0
  82. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/variable.py +0 -0
  83. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/api/workflow.py +0 -0
  84. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/boost/__init__.py +0 -0
  85. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/boost/jstream.c +0 -0
  86. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/boost/jstream.pyx +0 -0
  87. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/boost/pandas.c +0 -0
  88. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/boost/pandas.pyx +0 -0
  89. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/boost/py_jstream.py +0 -0
  90. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/boost/py_pandas.py +0 -0
  91. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/cache.py +0 -0
  92. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/config.py +0 -0
  93. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/__init__.py +0 -0
  94. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/cube/__init__.py +0 -0
  95. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/cube/_base.py +0 -0
  96. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/cube/constants.py +0 -0
  97. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/cube/cube.py +0 -0
  98. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/cube/formula.py +0 -0
  99. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/cube/syscube.py +0 -0
  100. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/cube/typing.py +0 -0
  101. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/cube/utils.py +0 -0
  102. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/dimension/__init__.py +0 -0
  103. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/dimension/_base.py +0 -0
  104. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/dimension/dimcreator.py +0 -0
  105. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/dimension/dimension.py +0 -0
  106. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/dimension/dimexpr.py +0 -0
  107. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/dimension/dimmember.py +0 -0
  108. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/dimension/eledimension.py +0 -0
  109. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/dimension/filters.py +0 -0
  110. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/dimension/sysdimension.py +0 -0
  111. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/logictable/__init__.py +0 -0
  112. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/logictable/_cache.py +0 -0
  113. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/logictable/_operator.py +0 -0
  114. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/logictable/nodemixin.py +0 -0
  115. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/logictable/sqlcondition.py +0 -0
  116. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/core/logictable/tablemodel.py +0 -0
  117. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/__init__.py +0 -0
  118. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/cipher.py +0 -0
  119. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/clickhouse.py +0 -0
  120. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/connector.py +0 -0
  121. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/daclickhouse.py +0 -0
  122. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/dameng.py +0 -0
  123. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/damysql.py +0 -0
  124. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/dbkits.py +0 -0
  125. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/deepengine.py +0 -0
  126. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/deepmodel.py +0 -0
  127. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/deepmodel_kingbase.py +0 -0
  128. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/edb.py +0 -0
  129. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/gauss.py +0 -0
  130. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/kingbase.py +0 -0
  131. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/mysql.py +0 -0
  132. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/oracle.py +0 -0
  133. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/postgresql.py +0 -0
  134. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/sqlserver.py +0 -0
  135. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/db/utils.py +0 -0
  136. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/__init__.py +0 -0
  137. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/accounting.py +0 -0
  138. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/apvlprocess.py +0 -0
  139. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/base.py +0 -0
  140. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/bizmodel.py +0 -0
  141. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/datatable.py +0 -0
  142. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/deepconnector.py +0 -0
  143. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/dimension.py +0 -0
  144. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/fact_table.py +0 -0
  145. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/finmodel.py +0 -0
  146. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/journal.py +0 -0
  147. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/journal_template.py +0 -0
  148. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/pyscript.py +0 -0
  149. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/reconciliation.py +0 -0
  150. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/rolestrategy.py +0 -0
  151. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/smartlist.py +0 -0
  152. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/variable.py +0 -0
  153. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/element/workflow.py +0 -0
  154. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/exceptions/__init__.py +0 -0
  155. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/exceptions/hook.py +0 -0
  156. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lazy.py +0 -0
  157. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/__init__.py +0 -0
  158. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/_javaobj.py +0 -0
  159. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/asynchronous.py +0 -0
  160. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/concurrency.py +0 -0
  161. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/constant.py +0 -0
  162. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/decorator.py +0 -0
  163. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/deepchart.py +0 -0
  164. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/deepux.py +0 -0
  165. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/discovery.py +0 -0
  166. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/edb_lexer.py +0 -0
  167. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/eureka.py +0 -0
  168. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/filterparser.py +0 -0
  169. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/httpcli.py +0 -0
  170. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/jsonstreamer.py +0 -0
  171. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/msg.py +0 -0
  172. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/nacos.py +0 -0
  173. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/patch.py +0 -0
  174. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/redis.py +0 -0
  175. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/serutils.py +0 -0
  176. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/stopwatch.py +0 -0
  177. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/subtask.py +0 -0
  178. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/sysutils.py +0 -0
  179. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/lib/utils.py +0 -0
  180. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/local.py +0 -0
  181. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/options.py +0 -0
  182. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos/translation.py +0 -0
  183. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos.egg-info/SOURCES.txt +0 -0
  184. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos.egg-info/dependency_links.txt +0 -0
  185. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos.egg-info/not-zip-safe +0 -0
  186. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos.egg-info/requires.txt +0 -0
  187. {deepfos-1.1.70 → deepfos-1.1.72}/deepfos.egg-info/top_level.txt +0 -0
  188. {deepfos-1.1.70 → deepfos-1.1.72}/requirements.txt +0 -0
  189. {deepfos-1.1.70 → deepfos-1.1.72}/setup.cfg +0 -0
  190. {deepfos-1.1.70 → deepfos-1.1.72}/setup.py +0 -0
  191. {deepfos-1.1.70 → deepfos-1.1.72}/versioneer.py +0 -0
@@ -1,3 +1,18 @@
1
+ ## [1.1.72] - 2025-08-26
2
+
3
+ ### 更新
4
+
5
+ * 修正deepmodel批量插入、更新提供的dataframe的int列包含空值时会被转换为float64列,导致bulk语句执行失败的问题
6
+
7
+
8
+ ## [1.1.71] - 2025-08-21
9
+
10
+ ### 更新
11
+
12
+ * 根据数据流3.0组件API调整更新模型定义
13
+ * 数据流3.0异步启动默认为带启停启动,同步固定为不带启停启动
14
+
15
+
1
16
  ## [1.1.70] - 2025-08-19
2
17
 
3
18
  ### 新增
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: deepfos
3
- Version: 1.1.70
3
+ Version: 1.1.72
4
4
  Summary: Collecions of useful and handy tools for deepfos platform
5
5
  Home-page: http://py.deepfos.com
6
6
  Author: deepfos-python-team
@@ -8,11 +8,11 @@ import json
8
8
 
9
9
  version_json = '''
10
10
  {
11
- "date": "2025-08-18T10:23:53+0000",
11
+ "date": "2025-08-25T08:27:57+0000",
12
12
  "dirty": false,
13
13
  "error": null,
14
- "full-revisionid": "7c62afcad8175dbdb4e323deb062c91083af3793",
15
- "version": "1.1.70"
14
+ "full-revisionid": "525ae9f3636ed46b3000c17a55a8149cd5af2dc7",
15
+ "version": "1.1.72"
16
16
  }
17
17
  ''' # END VERSION_JSON
18
18
 
@@ -12,7 +12,7 @@ class RunAPI(ChildAPI):
12
12
  endpoint = '/'
13
13
 
14
14
  @post('run')
15
- def run_async(self, run_info: RunInfo) -> Union[str, Awaitable[str]]:
15
+ def run_async(self, run_info: Union[RunInfo, RunInfoWithParam]) -> Union[str, Awaitable[str]]:
16
16
  """
17
17
  异步执行数据流
18
18
  异步执行数据流,返回任务id
@@ -3,11 +3,24 @@ from typing import Any, Optional
3
3
  from .base import BaseModel
4
4
 
5
5
  __all__ = [
6
- "RunInfo", "FlowInfo",
6
+ "RunInfo", "FlowInfo", "RunInfoWithParam",
7
7
  ]
8
8
 
9
9
 
10
10
  class RunInfo(BaseModel):
11
+ #: 元素名/编码
12
+ elementName: str
13
+ #: 元素类型
14
+ elementType: str = "DPL"
15
+ #: 文件路径
16
+ path: Optional[str] = None
17
+ #: 文件夹id
18
+ folderId: Optional[str] = None
19
+ # 是否在同一个进程执行
20
+ inProcess: bool = False
21
+
22
+
23
+ class RunInfoWithParam(BaseModel):
11
24
  #: 元素名/编码
12
25
  elementName: str
13
26
  #: 元素类型
@@ -30,8 +43,6 @@ class Revision(BaseModel):
30
43
 
31
44
 
32
45
  class Configure(BaseModel):
33
- #: 超时时间(秒)
34
- timeout: int
35
46
  #: 公共脚本
36
47
  prelude: Optional[str] = None
37
48
  #: 实例名称
@@ -1,17 +1,19 @@
1
1
  import asyncio
2
2
  import time
3
+ import warnings
3
4
  from math import ceil
4
5
  from typing import Any, TYPE_CHECKING, List
5
6
 
6
7
  from deepfos import OPTION
7
8
  from deepfos.api.deep_pipeline import DeepPipelineAPI
8
- from deepfos.api.models.deep_pipeline import RunInfo, FlowInfo
9
+ from deepfos.api.models.deep_pipeline import RunInfo, FlowInfo, RunInfoWithParam
9
10
  from deepfos.element.base import ElementBase, SyncMeta
10
11
  from deepfos.exceptions import (
11
12
  APIResponseError, RunIdInvalid, RunTerminated,
12
13
  ReleaseFlowTimeout, RunFailedError, ReleaseFlowNotExists,
13
14
  )
14
15
  from deepfos.lib.asynchronous import future_property
16
+ from deepfos.lib.constant import UNSET
15
17
  from deepfos.lib.decorator import cached_property
16
18
 
17
19
  errcode_map = {
@@ -47,7 +49,7 @@ class AsyncDeepPipeline(ElementBase[DeepPipelineAPI]):
47
49
 
48
50
  async def run(
49
51
  self,
50
- parameter: Any = None,
52
+ parameter: Any = UNSET,
51
53
  timeout: int = None,
52
54
  in_process: bool = True,
53
55
  ) -> Any:
@@ -57,25 +59,29 @@ class AsyncDeepPipeline(ElementBase[DeepPipelineAPI]):
57
59
  Args:
58
60
  parameter: 执行参数
59
61
  timeout: 超时时间(秒)
60
- in_process: 是否在同一个进程执行
62
+ in_process: 是否在同一个进程执行(仅作新旧兼容,实际只会在同一个进程执行,即不带启停启动)
61
63
 
62
64
  Returns:
63
65
  执行结果
64
66
  """
65
- run_id = await self.run_async(parameter, in_process)
67
+ if not in_process:
68
+ warnings.warn(
69
+ '同步启动固定为同一个进程执行(不带启停启动),in_process参数为False不会影响该行为'
70
+ )
71
+ run_id = await self.run_async(parameter, True)
66
72
  return await self.result(run_id, timeout)
67
73
 
68
74
  async def run_async(
69
75
  self,
70
- parameter: Any = None,
71
- in_process: bool = True,
76
+ parameter: Any = UNSET,
77
+ in_process: bool = False,
72
78
  ) -> str:
73
79
  """
74
80
  异步启动数据流
75
81
 
76
82
  Args:
77
83
  parameter: 执行参数
78
- in_process: 是否在同一个进程执行
84
+ in_process: 是否在同一个进程执行,默认False,即带启停启动
79
85
 
80
86
  Returns:
81
87
  执行ID
@@ -83,14 +89,21 @@ class AsyncDeepPipeline(ElementBase[DeepPipelineAPI]):
83
89
  if not self.has_approved_release:
84
90
  raise ReleaseFlowNotExists('暂无启用中状态的数据流版本')
85
91
 
86
- return await self.async_api.run.run_async(
87
- RunInfo(
92
+ if parameter is UNSET:
93
+ payload = RunInfo(
94
+ elementName=self.element_name,
95
+ folderId=self.element_info.folderId,
96
+ inProcess=in_process
97
+ )
98
+ else:
99
+ payload = RunInfoWithParam(
88
100
  elementName=self.element_name,
89
101
  parameter=parameter,
90
102
  folderId=self.element_info.folderId,
91
103
  inProcess=in_process
92
104
  )
93
- )
105
+
106
+ return await self.async_api.run.run_async(payload)
94
107
 
95
108
  async def result(self, run_id: str, timeout: int = None) -> Any:
96
109
  """
@@ -134,14 +147,14 @@ class AsyncDeepPipeline(ElementBase[DeepPipelineAPI]):
134
147
  async def run_batch(
135
148
  self,
136
149
  parameters: List[Any],
137
- in_process: bool = True,
150
+ in_process: bool = False,
138
151
  ) -> List[str]:
139
152
  """
140
153
  批量异步启动数据流
141
154
 
142
155
  Args:
143
156
  parameters: 执行参数列表
144
- in_process: 是否在同一个进程执行
157
+ in_process: 是否在同一个进程执行,默认False,即带启停启动
145
158
 
146
159
  Returns:
147
160
  执行ID列表
@@ -162,7 +175,7 @@ class DeepPipeline(AsyncDeepPipeline, metaclass=SyncMeta):
162
175
  if TYPE_CHECKING: # pragma: no cover
163
176
  def run(
164
177
  self,
165
- parameter: Any = None,
178
+ parameter: Any = UNSET,
166
179
  timeout: int = None,
167
180
  in_process: bool = True,
168
181
  ) -> Any:
@@ -170,8 +183,8 @@ class DeepPipeline(AsyncDeepPipeline, metaclass=SyncMeta):
170
183
 
171
184
  def run_async(
172
185
  self,
173
- parameter: Any = None,
174
- in_process: bool = True,
186
+ parameter: Any = UNSET,
187
+ in_process: bool = False,
175
188
  ) -> str:
176
189
  ...
177
190
 
@@ -181,6 +194,6 @@ class DeepPipeline(AsyncDeepPipeline, metaclass=SyncMeta):
181
194
  def run_batch(
182
195
  self,
183
196
  parameters: List[Any],
184
- in_process: bool = True,
197
+ in_process: bool = False,
185
198
  ):
186
199
  ...
@@ -382,7 +382,7 @@ class FieldJson(BaseField):
382
382
 
383
383
  class FieldInt(BaseField):
384
384
  def fit(self, df: pd.DataFrame, field_name: str, raw_pg: bool = False):
385
- df[field_name] = pd.to_numeric(df[field_name])
385
+ df[field_name] = df[field_name].astype(pd.Int64Dtype(), errors='ignore')
386
386
 
387
387
  def cast(self, df: pd.DataFrame, field_name: str, direct_access: bool = True):
388
388
  df[field_name] = df[field_name].astype(pd.Int64Dtype(), errors='ignore')
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: deepfos
3
- Version: 1.1.70
3
+ Version: 1.1.72
4
4
  Summary: Collecions of useful and handy tools for deepfos platform
5
5
  Home-page: http://py.deepfos.com
6
6
  Author: deepfos-python-team
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes