artitrack 2026.9.1__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 (258) hide show
  1. artitrack-2026.9.1/.gitignore +739 -0
  2. artitrack-2026.9.1/LICENSE +21 -0
  3. artitrack-2026.9.1/PKG-INFO +352 -0
  4. artitrack-2026.9.1/README.md +320 -0
  5. artitrack-2026.9.1/conftest.py +33 -0
  6. artitrack-2026.9.1/docs/_templates/autosummary/class.rst +8 -0
  7. artitrack-2026.9.1/docs/_templates/autosummary/module.rst +64 -0
  8. artitrack-2026.9.1/docs/api.md +9 -0
  9. artitrack-2026.9.1/docs/conf.py +108 -0
  10. artitrack-2026.9.1/docs/examples/index.md +23 -0
  11. artitrack-2026.9.1/docs/examples/sweep_grid.ipynb +133 -0
  12. artitrack-2026.9.1/docs/examples/sweep_grid.py +83 -0
  13. artitrack-2026.9.1/docs/guide/cli.md +61 -0
  14. artitrack-2026.9.1/docs/guide/dedup-and-caching.md +61 -0
  15. artitrack-2026.9.1/docs/guide/mlmd-storage.md +54 -0
  16. artitrack-2026.9.1/docs/guide/sweeps.md +108 -0
  17. artitrack-2026.9.1/docs/guide/xmanager-compat.md +25 -0
  18. artitrack-2026.9.1/docs/index.md +62 -0
  19. artitrack-2026.9.1/docs/requirements.txt +6 -0
  20. artitrack-2026.9.1/examples/artifact_extraction.py +91 -0
  21. artitrack-2026.9.1/examples/gpu_training.py +222 -0
  22. artitrack-2026.9.1/examples/hyperparameter_sweep.py +106 -0
  23. artitrack-2026.9.1/examples/jobgroup_dependencies.py +171 -0
  24. artitrack-2026.9.1/examples/missing_job_handling.py +96 -0
  25. artitrack-2026.9.1/examples/mixed_executors.py +78 -0
  26. artitrack-2026.9.1/examples/parallel_experiments.py +188 -0
  27. artitrack-2026.9.1/examples/quick_pipeline.py +105 -0
  28. artitrack-2026.9.1/examples/server_client_workflow.py +137 -0
  29. artitrack-2026.9.1/examples/simple_training.py +161 -0
  30. artitrack-2026.9.1/examples/terminal_states_verification.py +116 -0
  31. artitrack-2026.9.1/pyproject.toml +107 -0
  32. artitrack-2026.9.1/skills/artitrack/SKILL.md +91 -0
  33. artitrack-2026.9.1/skills/artitrack/references/cli.md +395 -0
  34. artitrack-2026.9.1/skills/artitrack/references/xmanager.md +288 -0
  35. artitrack-2026.9.1/src/artitrack/__init__.py +90 -0
  36. artitrack-2026.9.1/src/artitrack/cli/__init__.py +4 -0
  37. artitrack-2026.9.1/src/artitrack/cli/commands/__init__.py +29 -0
  38. artitrack-2026.9.1/src/artitrack/cli/commands/cancel.py +108 -0
  39. artitrack-2026.9.1/src/artitrack/cli/commands/clear.py +72 -0
  40. artitrack-2026.9.1/src/artitrack/cli/commands/clear_test.py +64 -0
  41. artitrack-2026.9.1/src/artitrack/cli/commands/delete.py +187 -0
  42. artitrack-2026.9.1/src/artitrack/cli/commands/delete_test.py +155 -0
  43. artitrack-2026.9.1/src/artitrack/cli/commands/info.py +82 -0
  44. artitrack-2026.9.1/src/artitrack/cli/commands/info_test.py +98 -0
  45. artitrack-2026.9.1/src/artitrack/cli/commands/logbook.py +217 -0
  46. artitrack-2026.9.1/src/artitrack/cli/commands/logbook_test.py +356 -0
  47. artitrack-2026.9.1/src/artitrack/cli/commands/mcp_tunnel.py +181 -0
  48. artitrack-2026.9.1/src/artitrack/cli/commands/mcp_tunnel_test.py +157 -0
  49. artitrack-2026.9.1/src/artitrack/cli/commands/metrics.py +95 -0
  50. artitrack-2026.9.1/src/artitrack/cli/commands/metrics_test.py +104 -0
  51. artitrack-2026.9.1/src/artitrack/cli/commands/query.py +459 -0
  52. artitrack-2026.9.1/src/artitrack/cli/commands/query_render_test.py +73 -0
  53. artitrack-2026.9.1/src/artitrack/cli/commands/query_test.py +286 -0
  54. artitrack-2026.9.1/src/artitrack/cli/commands/reproduce.py +381 -0
  55. artitrack-2026.9.1/src/artitrack/cli/commands/reproduce_test.py +256 -0
  56. artitrack-2026.9.1/src/artitrack/cli/commands/submit.py +205 -0
  57. artitrack-2026.9.1/src/artitrack/cli/commands/submit_test.py +136 -0
  58. artitrack-2026.9.1/src/artitrack/cli/commands/sync.py +66 -0
  59. artitrack-2026.9.1/src/artitrack/cli/commands/sync_test.py +55 -0
  60. artitrack-2026.9.1/src/artitrack/cli/commands/tensorboard.py +169 -0
  61. artitrack-2026.9.1/src/artitrack/cli/commands/tensorboard_test.py +199 -0
  62. artitrack-2026.9.1/src/artitrack/cli/commands/update.py +142 -0
  63. artitrack-2026.9.1/src/artitrack/cli/completion.py +401 -0
  64. artitrack-2026.9.1/src/artitrack/cli/connection.py +149 -0
  65. artitrack-2026.9.1/src/artitrack/cli/display_utils.py +164 -0
  66. artitrack-2026.9.1/src/artitrack/cli/display_utils_test.py +64 -0
  67. artitrack-2026.9.1/src/artitrack/cli/fish/__at_colorize_status.fish +13 -0
  68. artitrack-2026.9.1/src/artitrack/cli/fish/__at_fzf.fish +41 -0
  69. artitrack-2026.9.1/src/artitrack/cli/fish/__at_jobs_reload_script.fish +9 -0
  70. artitrack-2026.9.1/src/artitrack/cli/fish/__at_launcher_flags.fish +168 -0
  71. artitrack-2026.9.1/src/artitrack/cli/fish/__at_log_pager.fish +11 -0
  72. artitrack-2026.9.1/src/artitrack/cli/fish/__at_nonempty_dirs.fish +10 -0
  73. artitrack-2026.9.1/src/artitrack/cli/fish/__at_page_job_detail.fish +6 -0
  74. artitrack-2026.9.1/src/artitrack/cli/fish/__at_page_job_log.fish +11 -0
  75. artitrack-2026.9.1/src/artitrack/cli/fish/__at_pick_run.fish +43 -0
  76. artitrack-2026.9.1/src/artitrack/cli/fish/__at_preview_job_log.fish +11 -0
  77. artitrack-2026.9.1/src/artitrack/cli/fish/__at_run_browser.fish +170 -0
  78. artitrack-2026.9.1/src/artitrack/cli/fish/__at_sort_runs.fish +6 -0
  79. artitrack-2026.9.1/src/artitrack/cli/fish/__at_sync_bg.fish +4 -0
  80. artitrack-2026.9.1/src/artitrack/cli/fish/at-jobs.fish +19 -0
  81. artitrack-2026.9.1/src/artitrack/cli/fish/at-runs.fish +95 -0
  82. artitrack-2026.9.1/src/artitrack/cli/fish/at-tb.fish +90 -0
  83. artitrack-2026.9.1/src/artitrack/cli/fish/at-trace.fish +47 -0
  84. artitrack-2026.9.1/src/artitrack/cli/fish/at-watch.fish +27 -0
  85. artitrack-2026.9.1/src/artitrack/cli/logbook_filter.py +77 -0
  86. artitrack-2026.9.1/src/artitrack/cli/logbook_filter_test.py +86 -0
  87. artitrack-2026.9.1/src/artitrack/cli/logbook_format.py +171 -0
  88. artitrack-2026.9.1/src/artitrack/cli/logbook_format_test.py +151 -0
  89. artitrack-2026.9.1/src/artitrack/cli/main.py +1196 -0
  90. artitrack-2026.9.1/src/artitrack/cli/main_test.py +122 -0
  91. artitrack-2026.9.1/src/artitrack/core/__init__.py +10 -0
  92. artitrack-2026.9.1/src/artitrack/core/cancel.py +122 -0
  93. artitrack-2026.9.1/src/artitrack/core/cancel_test.py +170 -0
  94. artitrack-2026.9.1/src/artitrack/core/observation.py +362 -0
  95. artitrack-2026.9.1/src/artitrack/core/observation_test.py +362 -0
  96. artitrack-2026.9.1/src/artitrack/core/pipeline.py +690 -0
  97. artitrack-2026.9.1/src/artitrack/core/pipeline_dependency_test.py +612 -0
  98. artitrack-2026.9.1/src/artitrack/core/pipeline_parameter_test.py +815 -0
  99. artitrack-2026.9.1/src/artitrack/core/pipeline_test.py +751 -0
  100. artitrack-2026.9.1/src/artitrack/data_service.py +579 -0
  101. artitrack-2026.9.1/src/artitrack/data_service_test.py +68 -0
  102. artitrack-2026.9.1/src/artitrack/launcher/__init__.py +118 -0
  103. artitrack-2026.9.1/src/artitrack/launcher/_test_helpers.py +203 -0
  104. artitrack-2026.9.1/src/artitrack/launcher/aio.py +55 -0
  105. artitrack-2026.9.1/src/artitrack/launcher/aio_test.py +45 -0
  106. artitrack-2026.9.1/src/artitrack/launcher/apply_args_test.py +99 -0
  107. artitrack-2026.9.1/src/artitrack/launcher/args_testing.py +50 -0
  108. artitrack-2026.9.1/src/artitrack/launcher/args_testing_test.py +37 -0
  109. artitrack-2026.9.1/src/artitrack/launcher/artifacts.py +100 -0
  110. artitrack-2026.9.1/src/artitrack/launcher/artifacts_test.py +148 -0
  111. artitrack-2026.9.1/src/artitrack/launcher/at_flags.py +179 -0
  112. artitrack-2026.9.1/src/artitrack/launcher/at_flags_test.py +72 -0
  113. artitrack-2026.9.1/src/artitrack/launcher/completion.py +277 -0
  114. artitrack-2026.9.1/src/artitrack/launcher/completion_test.py +361 -0
  115. artitrack-2026.9.1/src/artitrack/launcher/dedup.py +556 -0
  116. artitrack-2026.9.1/src/artitrack/launcher/dedup_test.py +767 -0
  117. artitrack-2026.9.1/src/artitrack/launcher/dispatch_test.py +194 -0
  118. artitrack-2026.9.1/src/artitrack/launcher/dry_run_execution.py +170 -0
  119. artitrack-2026.9.1/src/artitrack/launcher/executables.py +24 -0
  120. artitrack-2026.9.1/src/artitrack/launcher/execution.py +358 -0
  121. artitrack-2026.9.1/src/artitrack/launcher/execution_test.py +326 -0
  122. artitrack-2026.9.1/src/artitrack/launcher/experiment.py +1611 -0
  123. artitrack-2026.9.1/src/artitrack/launcher/experiment_context_test.py +491 -0
  124. artitrack-2026.9.1/src/artitrack/launcher/handles.py +112 -0
  125. artitrack-2026.9.1/src/artitrack/launcher/handles_test.py +177 -0
  126. artitrack-2026.9.1/src/artitrack/launcher/job_args.py +246 -0
  127. artitrack-2026.9.1/src/artitrack/launcher/job_args_test.py +232 -0
  128. artitrack-2026.9.1/src/artitrack/launcher/job_handle.py +148 -0
  129. artitrack-2026.9.1/src/artitrack/launcher/job_handle_test.py +144 -0
  130. artitrack-2026.9.1/src/artitrack/launcher/launch_context.py +35 -0
  131. artitrack-2026.9.1/src/artitrack/launcher/mixins/__init__.py +0 -0
  132. artitrack-2026.9.1/src/artitrack/launcher/mixins/dedup_execution.py +117 -0
  133. artitrack-2026.9.1/src/artitrack/launcher/mixins/dedup_execution_test.py +97 -0
  134. artitrack-2026.9.1/src/artitrack/launcher/mixins/dependencies.py +90 -0
  135. artitrack-2026.9.1/src/artitrack/launcher/mixins/dependencies_test.py +98 -0
  136. artitrack-2026.9.1/src/artitrack/launcher/mixins/printing.py +46 -0
  137. artitrack-2026.9.1/src/artitrack/launcher/mixins/printing_test.py +56 -0
  138. artitrack-2026.9.1/src/artitrack/launcher/mixins/recording.py +260 -0
  139. artitrack-2026.9.1/src/artitrack/launcher/mixins/recording_test.py +413 -0
  140. artitrack-2026.9.1/src/artitrack/launcher/output_paths.py +71 -0
  141. artitrack-2026.9.1/src/artitrack/launcher/output_paths_test.py +100 -0
  142. artitrack-2026.9.1/src/artitrack/launcher/run_id.py +31 -0
  143. artitrack-2026.9.1/src/artitrack/launcher/run_id_test.py +27 -0
  144. artitrack-2026.9.1/src/artitrack/launcher/run_test.py +1572 -0
  145. artitrack-2026.9.1/src/artitrack/launcher/step_selection.py +91 -0
  146. artitrack-2026.9.1/src/artitrack/launcher/step_selection_test.py +126 -0
  147. artitrack-2026.9.1/src/artitrack/launcher/summary.py +46 -0
  148. artitrack-2026.9.1/src/artitrack/launcher/sweep.py +433 -0
  149. artitrack-2026.9.1/src/artitrack/launcher/sweep_paths_test.py +122 -0
  150. artitrack-2026.9.1/src/artitrack/launcher/sweep_test.py +164 -0
  151. artitrack-2026.9.1/src/artitrack/launcher/xm_local/__init__.py +158 -0
  152. artitrack-2026.9.1/src/artitrack/launcher/xm_local/dry_run.py +37 -0
  153. artitrack-2026.9.1/src/artitrack/launcher/xm_local/registration.py +71 -0
  154. artitrack-2026.9.1/src/artitrack/launcher/xm_local/xm_local_test.py +64 -0
  155. artitrack-2026.9.1/src/artitrack/mcp/__init__.py +11 -0
  156. artitrack-2026.9.1/src/artitrack/mcp/cli.py +125 -0
  157. artitrack-2026.9.1/src/artitrack/mcp/grpc_manager.py +384 -0
  158. artitrack-2026.9.1/src/artitrack/mcp/grpc_manager_test.py +50 -0
  159. artitrack-2026.9.1/src/artitrack/mcp/server.py +604 -0
  160. artitrack-2026.9.1/src/artitrack/mcp/server_test.py +299 -0
  161. artitrack-2026.9.1/src/artitrack/metrics/__init__.py +5 -0
  162. artitrack-2026.9.1/src/artitrack/metrics/collector.py +103 -0
  163. artitrack-2026.9.1/src/artitrack/metrics/collector_test.py +297 -0
  164. artitrack-2026.9.1/src/artitrack/metrics/tensorboard.py +231 -0
  165. artitrack-2026.9.1/src/artitrack/metrics/tensorboard_test.py +207 -0
  166. artitrack-2026.9.1/src/artitrack/models/__init__.py +29 -0
  167. artitrack-2026.9.1/src/artitrack/models/execution.py +257 -0
  168. artitrack-2026.9.1/src/artitrack/models/pipeline.py +382 -0
  169. artitrack-2026.9.1/src/artitrack/models/pipeline_test.py +330 -0
  170. artitrack-2026.9.1/src/artitrack/models/pipeline_v2_test.py +390 -0
  171. artitrack-2026.9.1/src/artitrack/models/test_hash_stability.py +19 -0
  172. artitrack-2026.9.1/src/artitrack/models/test_multiline_fix.py +77 -0
  173. artitrack-2026.9.1/src/artitrack/models/test_step_hash.py +37 -0
  174. artitrack-2026.9.1/src/artitrack/protocols/__init__.py +36 -0
  175. artitrack-2026.9.1/src/artitrack/protocols/models.py +261 -0
  176. artitrack-2026.9.1/src/artitrack/protocols/orchestrator.py +59 -0
  177. artitrack-2026.9.1/src/artitrack/protocols/scheduler.py +64 -0
  178. artitrack-2026.9.1/src/artitrack/protocols/storage.py +470 -0
  179. artitrack-2026.9.1/src/artitrack/protocols/storage_test.py +51 -0
  180. artitrack-2026.9.1/src/artitrack/remote/__init__.py +13 -0
  181. artitrack-2026.9.1/src/artitrack/remote/ssh_client.py +260 -0
  182. artitrack-2026.9.1/src/artitrack/scheduler/__init__.py +9 -0
  183. artitrack-2026.9.1/src/artitrack/scheduler/null.py +76 -0
  184. artitrack-2026.9.1/src/artitrack/scheduler/task_spooler.py +446 -0
  185. artitrack-2026.9.1/src/artitrack/scheduler/task_spooler_test.py +464 -0
  186. artitrack-2026.9.1/src/artitrack/storage/__init__.py +0 -0
  187. artitrack-2026.9.1/src/artitrack/storage/connection_factory.py +202 -0
  188. artitrack-2026.9.1/src/artitrack/storage/connection_factory_test.py +112 -0
  189. artitrack-2026.9.1/src/artitrack/storage/failed_jobs_test.py +83 -0
  190. artitrack-2026.9.1/src/artitrack/storage/metadata.py +376 -0
  191. artitrack-2026.9.1/src/artitrack/storage/metadata_mixins.py +31 -0
  192. artitrack-2026.9.1/src/artitrack/storage/metadata_test.py +276 -0
  193. artitrack-2026.9.1/src/artitrack/storage/metadata_v2_hierarchy_test.py +157 -0
  194. artitrack-2026.9.1/src/artitrack/storage/migrations.py +409 -0
  195. artitrack-2026.9.1/src/artitrack/storage/migrations_test.py +313 -0
  196. artitrack-2026.9.1/src/artitrack/storage/mixins/__init__.py +31 -0
  197. artitrack-2026.9.1/src/artitrack/storage/mixins/_protocol.py +45 -0
  198. artitrack-2026.9.1/src/artitrack/storage/mixins/artifacts.py +584 -0
  199. artitrack-2026.9.1/src/artitrack/storage/mixins/conversion.py +350 -0
  200. artitrack-2026.9.1/src/artitrack/storage/mixins/deletion.py +485 -0
  201. artitrack-2026.9.1/src/artitrack/storage/mixins/deletion_test.py +72 -0
  202. artitrack-2026.9.1/src/artitrack/storage/mixins/events.py +151 -0
  203. artitrack-2026.9.1/src/artitrack/storage/mixins/experiments.py +98 -0
  204. artitrack-2026.9.1/src/artitrack/storage/mixins/jobs.py +286 -0
  205. artitrack-2026.9.1/src/artitrack/storage/mixins/jobs_test.py +20 -0
  206. artitrack-2026.9.1/src/artitrack/storage/mixins/lineage.py +136 -0
  207. artitrack-2026.9.1/src/artitrack/storage/mixins/metrics.py +137 -0
  208. artitrack-2026.9.1/src/artitrack/storage/mixins/runs.py +311 -0
  209. artitrack-2026.9.1/src/artitrack/storage/mixins/types.py +202 -0
  210. artitrack-2026.9.1/src/artitrack/storage/null.py +194 -0
  211. artitrack-2026.9.1/src/artitrack/storage/null_test.py +156 -0
  212. artitrack-2026.9.1/src/artitrack/storage/query.py +637 -0
  213. artitrack-2026.9.1/src/artitrack/storage/query_test.py +360 -0
  214. artitrack-2026.9.1/src/artitrack/storage/readonly.py +82 -0
  215. artitrack-2026.9.1/src/artitrack/storage/readonly_test.py +50 -0
  216. artitrack-2026.9.1/src/artitrack/storage/scheduler_id_test.py +129 -0
  217. artitrack-2026.9.1/src/artitrack/storage/update.py +535 -0
  218. artitrack-2026.9.1/src/artitrack/storage/update_builder_test.py +93 -0
  219. artitrack-2026.9.1/src/artitrack/types/__init__.py +50 -0
  220. artitrack-2026.9.1/src/artitrack/types/enums.py +189 -0
  221. artitrack-2026.9.1/src/artitrack/types/enums_test.py +29 -0
  222. artitrack-2026.9.1/src/artitrack/types/job_status_utils.py +147 -0
  223. artitrack-2026.9.1/src/artitrack/types/job_status_utils_test.py +205 -0
  224. artitrack-2026.9.1/src/artitrack/utils/__init__.py +35 -0
  225. artitrack-2026.9.1/src/artitrack/utils/execution_type_inference.py +85 -0
  226. artitrack-2026.9.1/src/artitrack/utils/execution_type_inference_test.py +149 -0
  227. artitrack-2026.9.1/src/artitrack/utils/git_utils.py +307 -0
  228. artitrack-2026.9.1/src/artitrack/utils/git_utils_test.py +359 -0
  229. artitrack-2026.9.1/src/artitrack/utils/pipeline_loader.py +341 -0
  230. artitrack-2026.9.1/src/artitrack/utils/pipeline_loader_test.py +338 -0
  231. artitrack-2026.9.1/src/artitrack/utils/pipeline_resolver.py +318 -0
  232. artitrack-2026.9.1/src/artitrack/utils/pipeline_resolver_test.py +131 -0
  233. artitrack-2026.9.1/src/artitrack/utils/test_dict_transform.py +36 -0
  234. artitrack-2026.9.1/src/artitrack/utils/time.py +19 -0
  235. artitrack-2026.9.1/src/artitrack/utils/time_test.py +41 -0
  236. artitrack-2026.9.1/tests/integration/test_artifact_addition.py +167 -0
  237. artitrack-2026.9.1/tests/integration/test_artifact_reuse.py +127 -0
  238. artitrack-2026.9.1/tests/integration/test_automatic_sync.py +171 -0
  239. artitrack-2026.9.1/tests/integration/test_cancel_direct.py +22 -0
  240. artitrack-2026.9.1/tests/integration/test_cancel_registration.py +24 -0
  241. artitrack-2026.9.1/tests/integration/test_cli_fixes.py +63 -0
  242. artitrack-2026.9.1/tests/integration/test_cli_init.py +33 -0
  243. artitrack-2026.9.1/tests/integration/test_cli_override_detection.py +82 -0
  244. artitrack-2026.9.1/tests/integration/test_data_service_log_fetching.py +127 -0
  245. artitrack-2026.9.1/tests/integration/test_dependency_failure.py +323 -0
  246. artitrack-2026.9.1/tests/integration/test_e2e_artifact_tracking.py +327 -0
  247. artitrack-2026.9.1/tests/integration/test_gpu_allocation.py +321 -0
  248. artitrack-2026.9.1/tests/integration/test_installed_cancel.py +30 -0
  249. artitrack-2026.9.1/tests/integration/test_pipeline.yaml +43 -0
  250. artitrack-2026.9.1/tests/integration/test_protobuf_mutation.py +109 -0
  251. artitrack-2026.9.1/tests/integration/test_put_execution_vs_put_executions.py +104 -0
  252. artitrack-2026.9.1/tests/integration/test_shell_cancel.py +33 -0
  253. artitrack-2026.9.1/tests/integration/test_simple_pipeline.py +299 -0
  254. artitrack-2026.9.1/tests/integration/test_sync_flow.py +423 -0
  255. artitrack-2026.9.1/tests/integration/test_sync_updates_timestamp.py +135 -0
  256. artitrack-2026.9.1/tests/integration/test_type_registration.py +61 -0
  257. artitrack-2026.9.1/tests/test_cli_commands.py +55 -0
  258. artitrack-2026.9.1/uv.lock +2239 -0
@@ -0,0 +1,739 @@
1
+ # Created by https://www.toptal.com/developers/gitignore/api/direnv,python,jupyternotebooks,visualstudio,visualstudiocode,pycharm+all,git
2
+ # Edit at https://www.toptal.com/developers/gitignore?templates=direnv,python,jupyternotebooks,visualstudio,visualstudiocode,pycharm+all,git
3
+
4
+ ### direnv ###
5
+ .direnv
6
+ .envrc
7
+
8
+ ### Git ###
9
+ # Created by git for backups. To disable backups in Git:
10
+ # $ git config --global mergetool.keepBackup false
11
+ *.orig
12
+
13
+ # Created by git when using merge tools for conflicts
14
+ *.BACKUP.*
15
+ *.BASE.*
16
+ *.LOCAL.*
17
+ *.REMOTE.*
18
+ *_BACKUP_*.txt
19
+ *_BASE_*.txt
20
+ *_LOCAL_*.txt
21
+ *_REMOTE_*.txt
22
+
23
+ ### JupyterNotebooks ###
24
+ # gitignore template for Jupyter Notebooks
25
+ # website: http://jupyter.org/
26
+
27
+ .ipynb_checkpoints
28
+ */.ipynb_checkpoints/*
29
+
30
+ # IPython
31
+ profile_default/
32
+ ipython_config.py
33
+
34
+ # Remove previous ipynb_checkpoints
35
+ # git rm -r .ipynb_checkpoints/
36
+
37
+ ### PyCharm+all ###
38
+ # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
39
+ # Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
40
+
41
+ # User-specific stuff
42
+ .idea/**/workspace.xml
43
+ .idea/**/tasks.xml
44
+ .idea/**/usage.statistics.xml
45
+ .idea/**/dictionaries
46
+ .idea/**/shelf
47
+
48
+ # AWS User-specific
49
+ .idea/**/aws.xml
50
+
51
+ # Generated files
52
+ .idea/**/contentModel.xml
53
+
54
+ # Sensitive or high-churn files
55
+ .idea/**/dataSources/
56
+ .idea/**/dataSources.ids
57
+ .idea/**/dataSources.local.xml
58
+ .idea/**/sqlDataSources.xml
59
+ .idea/**/dynamic.xml
60
+ .idea/**/uiDesigner.xml
61
+ .idea/**/dbnavigator.xml
62
+
63
+ # Gradle
64
+ .idea/**/gradle.xml
65
+ .idea/**/libraries
66
+
67
+ # Gradle and Maven with auto-import
68
+ # When using Gradle or Maven with auto-import, you should exclude module files,
69
+ # since they will be recreated, and may cause churn. Uncomment if using
70
+ # auto-import.
71
+ # .idea/artifacts
72
+ # .idea/compiler.xml
73
+ # .idea/jarRepositories.xml
74
+ # .idea/modules.xml
75
+ # .idea/*.iml
76
+ # .idea/modules
77
+ # *.iml
78
+ # *.ipr
79
+
80
+ # CMake
81
+ cmake-build-*/
82
+
83
+ # Mongo Explorer plugin
84
+ .idea/**/mongoSettings.xml
85
+
86
+ # File-based project format
87
+ *.iws
88
+
89
+ # IntelliJ
90
+ out/
91
+
92
+ # mpeltonen/sbt-idea plugin
93
+ .idea_modules/
94
+
95
+ # JIRA plugin
96
+ atlassian-ide-plugin.xml
97
+
98
+ # Cursive Clojure plugin
99
+ .idea/replstate.xml
100
+
101
+ # SonarLint plugin
102
+ .idea/sonarlint/
103
+
104
+ # Crashlytics plugin (for Android Studio and IntelliJ)
105
+ com_crashlytics_export_strings.xml
106
+ crashlytics.properties
107
+ crashlytics-build.properties
108
+ fabric.properties
109
+
110
+ # Editor-based Rest Client
111
+ .idea/httpRequests
112
+
113
+ # Android studio 3.1+ serialized cache file
114
+ .idea/caches/build_file_checksums.ser
115
+
116
+ ### PyCharm+all Patch ###
117
+ # Ignore everything but code style settings and run configurations
118
+ # that are supposed to be shared within teams.
119
+
120
+ .idea/*
121
+
122
+ !.idea/codeStyles
123
+ !.idea/runConfigurations
124
+
125
+ ### Python ###
126
+ # Byte-compiled / optimized / DLL files
127
+ __pycache__/
128
+ *.py[cod]
129
+ *$py.class
130
+
131
+ # C extensions
132
+ *.so
133
+
134
+ # Distribution / packaging
135
+ .Python
136
+ build/
137
+ develop-eggs/
138
+ dist/
139
+ downloads/
140
+ eggs/
141
+ .eggs/
142
+ lib/
143
+ lib64/
144
+ parts/
145
+ sdist/
146
+ var/
147
+ wheels/
148
+ share/python-wheels/
149
+ *.egg-info/
150
+ .installed.cfg
151
+ *.egg
152
+ MANIFEST
153
+
154
+ # PyInstaller
155
+ # Usually these files are written by a python script from a template
156
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
157
+ *.manifest
158
+ *.spec
159
+
160
+ # Installer logs
161
+ pip-log.txt
162
+ pip-delete-this-directory.txt
163
+
164
+ # Unit test / coverage reports
165
+ htmlcov/
166
+ .tox/
167
+ .nox/
168
+ .coverage
169
+ .coverage.*
170
+ .cache
171
+ nosetests.xml
172
+ coverage.xml
173
+ *.cover
174
+ *.py,cover
175
+ .hypothesis/
176
+ .pytest_cache/
177
+ cover/
178
+
179
+ # Translations
180
+ *.mo
181
+ *.pot
182
+
183
+ # Django stuff:
184
+ *.log
185
+ local_settings.py
186
+ db.sqlite3
187
+ db.sqlite3-journal
188
+
189
+ # Flask stuff:
190
+ instance/
191
+ .webassets-cache
192
+
193
+ # Scrapy stuff:
194
+ .scrapy
195
+
196
+ # Sphinx documentation
197
+ docs/_build/
198
+
199
+ # PyBuilder
200
+ .pybuilder/
201
+ target/
202
+
203
+ # Jupyter Notebook
204
+
205
+ # IPython
206
+
207
+ # pyenv
208
+ # For a library or package, you might want to ignore these files since the code is
209
+ # intended to run in multiple environments; otherwise, check them in:
210
+ # .python-version
211
+
212
+ # pipenv
213
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
214
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
215
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
216
+ # install all needed dependencies.
217
+ #Pipfile.lock
218
+
219
+ # poetry
220
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
221
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
222
+ # commonly ignored for libraries.
223
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
224
+ #poetry.lock
225
+
226
+ # pdm
227
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
228
+ #pdm.lock
229
+ # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
230
+ # in version control.
231
+ # https://pdm.fming.dev/#use-with-ide
232
+ .pdm.toml
233
+
234
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
235
+ __pypackages__/
236
+
237
+ # Celery stuff
238
+ celerybeat-schedule
239
+ celerybeat.pid
240
+
241
+ # SageMath parsed files
242
+ *.sage.py
243
+
244
+ # Environments
245
+ .env
246
+ .venv
247
+ env/
248
+ venv/
249
+ ENV/
250
+ env.bak/
251
+ venv.bak/
252
+
253
+ # Spyder project settings
254
+ .spyderproject
255
+ .spyproject
256
+
257
+ # Rope project settings
258
+ .ropeproject
259
+
260
+ # mkdocs documentation
261
+ /site
262
+
263
+ # mypy
264
+ .mypy_cache/
265
+ .dmypy.json
266
+ dmypy.json
267
+
268
+ # Pyre type checker
269
+ .pyre/
270
+
271
+ # pytype static type analyzer
272
+ .pytype/
273
+
274
+ # Cython debug symbols
275
+ cython_debug/
276
+
277
+ # PyCharm
278
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
279
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
280
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
281
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
282
+ #.idea/
283
+
284
+ ### Python Patch ###
285
+ # Poetry local configuration file - https://python-poetry.org/docs/configuration/#local-configuration
286
+ poetry.toml
287
+
288
+ # ruff
289
+ .ruff_cache/
290
+
291
+ # LSP config files
292
+ pyrightconfig.json
293
+
294
+ ### VisualStudioCode ###
295
+ .vscode/*
296
+ !.vscode/settings.json
297
+ !.vscode/tasks.json
298
+ !.vscode/launch.json
299
+ !.vscode/extensions.json
300
+ !.vscode/*.code-snippets
301
+
302
+ # Local History for Visual Studio Code
303
+ .history/
304
+
305
+ # Built Visual Studio Code Extensions
306
+ *.vsix
307
+
308
+ ### VisualStudioCode Patch ###
309
+ # Ignore all local history of files
310
+ .history
311
+ .ionide
312
+
313
+ ### VisualStudio ###
314
+ ## Ignore Visual Studio temporary files, build results, and
315
+ ## files generated by popular Visual Studio add-ons.
316
+ ##
317
+ ## Get latest from https://github.com/github/gitignore/blob/main/VisualStudio.gitignore
318
+
319
+ # User-specific files
320
+ *.rsuser
321
+ *.suo
322
+ *.user
323
+ *.userosscache
324
+ *.sln.docstates
325
+
326
+ # User-specific files (MonoDevelop/Xamarin Studio)
327
+ *.userprefs
328
+
329
+ # Mono auto generated files
330
+ mono_crash.*
331
+
332
+ # Build results
333
+ [Dd]ebug/
334
+ [Dd]ebugPublic/
335
+ [Rr]elease/
336
+ [Rr]eleases/
337
+ x64/
338
+ x86/
339
+ [Ww][Ii][Nn]32/
340
+ [Aa][Rr][Mm]/
341
+ [Aa][Rr][Mm]64/
342
+ bld/
343
+ [Bb]in/
344
+ [Oo]bj/
345
+ [Ll]og/
346
+ [Ll]ogs/
347
+
348
+ # Visual Studio 2015/2017 cache/options directory
349
+ .vs/
350
+ # Uncomment if you have tasks that create the project's static files in wwwroot
351
+ #wwwroot/
352
+
353
+ # Visual Studio 2017 auto generated files
354
+ Generated\ Files/
355
+
356
+ # MSTest test Results
357
+ [Tt]est[Rr]esult*/
358
+ [Bb]uild[Ll]og.*
359
+
360
+ # NUnit
361
+ *.VisualState.xml
362
+ TestResult.xml
363
+ nunit-*.xml
364
+
365
+ # Build Results of an ATL Project
366
+ [Dd]ebugPS/
367
+ [Rr]eleasePS/
368
+ dlldata.c
369
+
370
+ # Benchmark Results
371
+ BenchmarkDotNet.Artifacts/
372
+
373
+ # .NET Core
374
+ project.lock.json
375
+ project.fragment.lock.json
376
+ artifacts/
377
+
378
+ # ASP.NET Scaffolding
379
+ ScaffoldingReadMe.txt
380
+
381
+ # StyleCop
382
+ StyleCopReport.xml
383
+
384
+ # Files built by Visual Studio
385
+ *_i.c
386
+ *_p.c
387
+ *_h.h
388
+ *.ilk
389
+ *.meta
390
+ *.obj
391
+ *.iobj
392
+ *.pch
393
+ *.pdb
394
+ *.ipdb
395
+ *.pgc
396
+ *.pgd
397
+ *.rsp
398
+ *.sbr
399
+ *.tlb
400
+ *.tli
401
+ *.tlh
402
+ *.tmp
403
+ *.tmp_proj
404
+ *_wpftmp.csproj
405
+ *.tlog
406
+ *.vspscc
407
+ *.vssscc
408
+ .builds
409
+ *.pidb
410
+ *.svclog
411
+ *.scc
412
+
413
+ # Chutzpah Test files
414
+ _Chutzpah*
415
+
416
+ # Visual C++ cache files
417
+ ipch/
418
+ *.aps
419
+ *.ncb
420
+ *.opendb
421
+ *.opensdf
422
+ *.sdf
423
+ *.cachefile
424
+ *.VC.db
425
+ *.VC.VC.opendb
426
+
427
+ # Visual Studio profiler
428
+ *.psess
429
+ *.vsp
430
+ *.vspx
431
+ *.sap
432
+
433
+ # Visual Studio Trace Files
434
+ *.e2e
435
+
436
+ # TFS 2012 Local Workspace
437
+ $tf/
438
+
439
+ # Guidance Automation Toolkit
440
+ *.gpState
441
+
442
+ # ReSharper is a .NET coding add-in
443
+ _ReSharper*/
444
+ *.[Rr]e[Ss]harper
445
+ *.DotSettings.user
446
+
447
+ # TeamCity is a build add-in
448
+ _TeamCity*
449
+
450
+ # DotCover is a Code Coverage Tool
451
+ *.dotCover
452
+
453
+ # AxoCover is a Code Coverage Tool
454
+ .axoCover/*
455
+ !.axoCover/settings.json
456
+
457
+ # Coverlet is a free, cross platform Code Coverage Tool
458
+ coverage*.json
459
+ coverage*.xml
460
+ coverage*.info
461
+
462
+ # Visual Studio code coverage results
463
+ *.coverage
464
+ *.coveragexml
465
+
466
+ # NCrunch
467
+ _NCrunch_*
468
+ .*crunch*.local.xml
469
+ nCrunchTemp_*
470
+
471
+ # MightyMoose
472
+ *.mm.*
473
+ AutoTest.Net/
474
+
475
+ # Web workbench (sass)
476
+ .sass-cache/
477
+
478
+ # Installshield output folder
479
+ [Ee]xpress/
480
+
481
+ # DocProject is a documentation generator add-in
482
+ DocProject/buildhelp/
483
+ DocProject/Help/*.HxT
484
+ DocProject/Help/*.HxC
485
+ DocProject/Help/*.hhc
486
+ DocProject/Help/*.hhk
487
+ DocProject/Help/*.hhp
488
+ DocProject/Help/Html2
489
+ DocProject/Help/html
490
+
491
+ # Click-Once directory
492
+ publish/
493
+
494
+ # Publish Web Output
495
+ *.[Pp]ublish.xml
496
+ *.azurePubxml
497
+ # Note: Comment the next line if you want to checkin your web deploy settings,
498
+ # but database connection strings (with potential passwords) will be unencrypted
499
+ *.pubxml
500
+ *.publishproj
501
+
502
+ # Microsoft Azure Web App publish settings. Comment the next line if you want to
503
+ # checkin your Azure Web App publish settings, but sensitive information contained
504
+ # in these scripts will be unencrypted
505
+ PublishScripts/
506
+
507
+ # NuGet Packages
508
+ *.nupkg
509
+ # NuGet Symbol Packages
510
+ *.snupkg
511
+ # The packages folder can be ignored because of Package Restore
512
+ # **/[Pp]ackages/*
513
+ # except build/, which is used as an MSBuild target.
514
+ # !**/[Pp]ackages/build/
515
+ # Uncomment if necessary however generally it will be regenerated when needed
516
+ #!**/[Pp]ackages/repositories.config
517
+ # NuGet v3's project.json files produces more ignorable files
518
+ *.nuget.props
519
+ *.nuget.targets
520
+
521
+ # Microsoft Azure Build Output
522
+ csx/
523
+ *.build.csdef
524
+
525
+ # Microsoft Azure Emulator
526
+ ecf/
527
+ rcf/
528
+
529
+ # Windows Store app package directories and files
530
+ AppPackages/
531
+ BundleArtifacts/
532
+ Package.StoreAssociation.xml
533
+ _pkginfo.txt
534
+ *.appx
535
+ *.appxbundle
536
+ *.appxupload
537
+
538
+ # Visual Studio cache files
539
+ # files ending in .cache can be ignored
540
+ *.[Cc]ache
541
+ # but keep track of directories ending in .cache
542
+ !?*.[Cc]ache/
543
+
544
+ # Others
545
+ ClientBin/
546
+ ~$*
547
+ *~
548
+ *.dbmdl
549
+ *.dbproj.schemaview
550
+ *.jfm
551
+ *.pfx
552
+ *.publishsettings
553
+ orleans.codegen.cs
554
+
555
+ # Including strong name files can present a security risk
556
+ # (https://github.com/github/gitignore/pull/2483#issue-259490424)
557
+ #*.snk
558
+
559
+ # Since there are multiple workflows, uncomment next line to ignore bower_components
560
+ # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
561
+ #bower_components/
562
+
563
+ # RIA/Silverlight projects
564
+ Generated_Code/
565
+
566
+ # Backup & report files from converting an old project file
567
+ # to a newer Visual Studio version. Backup files are not needed,
568
+ # because we have git ;-)
569
+ _UpgradeReport_Files/
570
+ Backup*/
571
+ UpgradeLog*.XML
572
+ UpgradeLog*.htm
573
+ ServiceFabricBackup/
574
+ *.rptproj.bak
575
+
576
+ # SQL Server files
577
+ *.mdf
578
+ *.ldf
579
+ *.ndf
580
+
581
+ # Business Intelligence projects
582
+ *.rdl.data
583
+ *.bim.layout
584
+ *.bim_*.settings
585
+ *.rptproj.rsuser
586
+ *- [Bb]ackup.rdl
587
+ *- [Bb]ackup ([0-9]).rdl
588
+ *- [Bb]ackup ([0-9][0-9]).rdl
589
+
590
+ # Microsoft Fakes
591
+ FakesAssemblies/
592
+
593
+ # GhostDoc plugin setting file
594
+ *.GhostDoc.xml
595
+
596
+ # Node.js Tools for Visual Studio
597
+ .ntvs_analysis.dat
598
+ node_modules/
599
+
600
+ # Visual Studio 6 build log
601
+ *.plg
602
+
603
+ # Visual Studio 6 workspace options file
604
+ *.opt
605
+
606
+ # Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
607
+ *.vbw
608
+
609
+ # Visual Studio 6 auto-generated project file (contains which files were open etc.)
610
+ *.vbp
611
+
612
+ # Visual Studio 6 workspace and project file (working project files containing files to include in project)
613
+ *.dsw
614
+ *.dsp
615
+
616
+ # Visual Studio 6 technical files
617
+
618
+ # Visual Studio LightSwitch build output
619
+ **/*.HTMLClient/GeneratedArtifacts
620
+ **/*.DesktopClient/GeneratedArtifacts
621
+ **/*.DesktopClient/ModelManifest.xml
622
+ **/*.Server/GeneratedArtifacts
623
+ **/*.Server/ModelManifest.xml
624
+ _Pvt_Extensions
625
+
626
+ # Paket dependency manager
627
+ .paket/paket.exe
628
+ paket-files/
629
+
630
+ # FAKE - F# Make
631
+ .fake/
632
+
633
+ # CodeRush personal settings
634
+ .cr/personal
635
+
636
+ # Python Tools for Visual Studio (PTVS)
637
+ *.pyc
638
+
639
+ # Cake - Uncomment if you are using it
640
+ # tools/**
641
+ # !tools/packages.config
642
+
643
+ # Tabs Studio
644
+ *.tss
645
+
646
+ # Telerik's JustMock configuration file
647
+ *.jmconfig
648
+
649
+ # BizTalk build output
650
+ *.btp.cs
651
+ *.btm.cs
652
+ *.odx.cs
653
+ *.xsd.cs
654
+
655
+ # OpenCover UI analysis results
656
+ OpenCover/
657
+
658
+ # Azure Stream Analytics local run output
659
+ ASALocalRun/
660
+
661
+ # MSBuild Binary and Structured Log
662
+ *.binlog
663
+
664
+ # NVidia Nsight GPU debugger configuration file
665
+ *.nvuser
666
+
667
+ # MFractors (Xamarin productivity tool) working folder
668
+ .mfractor/
669
+
670
+ # Local History for Visual Studio
671
+ .localhistory/
672
+
673
+ # Visual Studio History (VSHistory) files
674
+ .vshistory/
675
+
676
+ # BeatPulse healthcheck temp database
677
+ healthchecksdb
678
+
679
+ # Backup folder for Package Reference Convert tool in Visual Studio 2017
680
+ MigrationBackup/
681
+
682
+ # Ionide (cross platform F# VS Code tools) working folder
683
+ .ionide/
684
+
685
+ # Fody - auto-generated XML schema
686
+ FodyWeavers.xsd
687
+
688
+ # VS Code files for those working on multiple tools
689
+ *.code-workspace
690
+
691
+ # Local History for Visual Studio Code
692
+
693
+ # Windows Installer files from build outputs
694
+ *.cab
695
+ *.msi
696
+ *.msix
697
+ *.msm
698
+ *.msp
699
+
700
+ # JetBrains Rider
701
+ *.sln.iml
702
+
703
+ ### VisualStudio Patch ###
704
+ # Additional files built by Visual Studio
705
+
706
+ # End of https://www.toptal.com/developers/gitignore/api/direnv,python,jupyternotebooks,visualstudio,visualstudiocode,pycharm+all,git
707
+
708
+ # MacOS Finder files
709
+ .DS_Store
710
+ docs/_autosummary/*
711
+ packages/artitrack/docs/_autosummary/*
712
+ packages/artitrack/docs/_build/
713
+
714
+ # Ragatouille generated indexes
715
+ .ragatouille/
716
+
717
+ # Vim and nano swp files
718
+
719
+ *.swp
720
+
721
+ logdir/
722
+ **/outputs/
723
+ _context/
724
+ .claude/
725
+ *.tar.gz
726
+ data/
727
+
728
+ # uv workspace
729
+ /.venv/
730
+ /packages/*/dist/
731
+ /packages/*/build/
732
+ /packages/*/*.egg-info/
733
+
734
+ # Workspace test/temp directories
735
+ testws/
736
+ .tmp-test/
737
+ .tmp-test2/
738
+ .context
739
+ **/assets/