vibe-reader 0.2.1__tar.gz → 0.2.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. vibe_reader-0.2.2/.github/dependabot.yml +18 -0
  2. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/.github/workflows/publish.yml +4 -4
  3. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/PKG-INFO +9 -9
  4. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/pyproject.toml +8 -8
  5. vibe_reader-0.2.2/uv.lock +413 -0
  6. vibe_reader-0.2.1/uv.lock +0 -389
  7. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/.gitignore +0 -0
  8. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/AGENTS.md +0 -0
  9. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/README.md +0 -0
  10. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/backend/__init__.py +0 -0
  11. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/backend/files.py +0 -0
  12. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/backend/git.py +0 -0
  13. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/backend/main.py +0 -0
  14. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/backend/rendering.py +0 -0
  15. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/backend/services/__init__.py +0 -0
  16. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/backend/services/git_diff_service.py +0 -0
  17. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/backend/services/path_service.py +0 -0
  18. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/backend/services/tmux_service.py +0 -0
  19. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/backend/tmux.py +0 -0
  20. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/doc/DESIGN.md +0 -0
  21. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/api.js +0 -0
  22. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/app.js +0 -0
  23. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/config.js +0 -0
  24. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/content-renderer.js +0 -0
  25. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/favicon.png +0 -0
  26. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/favicon.svg +0 -0
  27. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/file-status.js +0 -0
  28. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/files-view.js +0 -0
  29. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/index.html +0 -0
  30. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/manifest.json +0 -0
  31. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/mermaid-renderer.js +0 -0
  32. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/state.js +0 -0
  33. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/styles.css +0 -0
  34. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/sw.js +0 -0
  35. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/tmux-refresh.js +0 -0
  36. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/tmux-tree.js +0 -0
  37. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/tmux-view.js +0 -0
  38. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/ui.js +0 -0
  39. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/architecture-PBZL5I3N-X3DJOG6M.mjs +0 -0
  40. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/architecture-PBZL5I3N-X3DJOG6M.mjs.map +0 -0
  41. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/architectureDiagram-EJXTDGMB.mjs +0 -0
  42. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/architectureDiagram-EJXTDGMB.mjs.map +0 -0
  43. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/blockDiagram-HG7WUIX4.mjs +0 -0
  44. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/blockDiagram-HG7WUIX4.mjs.map +0 -0
  45. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/c4Diagram-BBK6TRR6.mjs +0 -0
  46. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/c4Diagram-BBK6TRR6.mjs.map +0 -0
  47. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-33NP3AWU.mjs +0 -0
  48. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-33NP3AWU.mjs.map +0 -0
  49. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-3UWU4A3N.mjs +0 -0
  50. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-3UWU4A3N.mjs.map +0 -0
  51. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-3YCYZ6SJ.mjs +0 -0
  52. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-3YCYZ6SJ.mjs.map +0 -0
  53. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-3ZBQQEZ6.mjs +0 -0
  54. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-3ZBQQEZ6.mjs.map +0 -0
  55. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-5YHUCXBM.mjs +0 -0
  56. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-5YHUCXBM.mjs.map +0 -0
  57. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-7RZVMHOQ.mjs +0 -0
  58. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-7RZVMHOQ.mjs.map +0 -0
  59. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-AEOMTBSW.mjs +0 -0
  60. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-AEOMTBSW.mjs.map +0 -0
  61. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-AHTCUU5T.mjs +0 -0
  62. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-AHTCUU5T.mjs.map +0 -0
  63. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-BDKIFH7H.mjs +0 -0
  64. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-BDKIFH7H.mjs.map +0 -0
  65. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-D2KP3OBD.mjs +0 -0
  66. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-D2KP3OBD.mjs.map +0 -0
  67. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-D4HHKWPY.mjs +0 -0
  68. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-D4HHKWPY.mjs.map +0 -0
  69. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-F3E5R7LK.mjs +0 -0
  70. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-F3E5R7LK.mjs.map +0 -0
  71. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-GAX3EE6F.mjs +0 -0
  72. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-GAX3EE6F.mjs.map +0 -0
  73. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-H3VCZNTA.mjs +0 -0
  74. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-H3VCZNTA.mjs.map +0 -0
  75. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-HN6EAY2L.mjs +0 -0
  76. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-HN6EAY2L.mjs.map +0 -0
  77. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-IWDTEBJL.mjs +0 -0
  78. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-IWDTEBJL.mjs.map +0 -0
  79. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-JIN56HTB.mjs +0 -0
  80. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-JIN56HTB.mjs.map +0 -0
  81. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-JVPIJFVP.mjs +0 -0
  82. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-JVPIJFVP.mjs.map +0 -0
  83. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-KSICW3F5.mjs +0 -0
  84. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-KSICW3F5.mjs.map +0 -0
  85. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-MFSPT3DZ.mjs +0 -0
  86. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-MFSPT3DZ.mjs.map +0 -0
  87. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-MGPAVIPZ.mjs +0 -0
  88. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-MGPAVIPZ.mjs.map +0 -0
  89. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-NHJX6F6M.mjs +0 -0
  90. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-NHJX6F6M.mjs.map +0 -0
  91. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-NN2NZ22Q.mjs +0 -0
  92. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-NN2NZ22Q.mjs.map +0 -0
  93. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-Q3CC2MQB.mjs +0 -0
  94. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-Q3CC2MQB.mjs.map +0 -0
  95. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-QU3B7NT4.mjs +0 -0
  96. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-QU3B7NT4.mjs.map +0 -0
  97. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-SK62O5VA.mjs +0 -0
  98. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-SK62O5VA.mjs.map +0 -0
  99. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-SYGLAQYM.mjs +0 -0
  100. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-SYGLAQYM.mjs.map +0 -0
  101. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-T4EQAHMB.mjs +0 -0
  102. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-T4EQAHMB.mjs.map +0 -0
  103. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-TBF5ZNIQ.mjs +0 -0
  104. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-TBF5ZNIQ.mjs.map +0 -0
  105. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-TFLKLN34.mjs +0 -0
  106. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-TFLKLN34.mjs.map +0 -0
  107. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-TJ4WWVTA.mjs +0 -0
  108. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-TJ4WWVTA.mjs.map +0 -0
  109. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-TU3PZOEN.mjs +0 -0
  110. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-TU3PZOEN.mjs.map +0 -0
  111. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-VELTKBKT.mjs +0 -0
  112. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-VELTKBKT.mjs.map +0 -0
  113. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-W2A4CRWB.mjs +0 -0
  114. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-W2A4CRWB.mjs.map +0 -0
  115. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-XBXGYYE5.mjs +0 -0
  116. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-XBXGYYE5.mjs.map +0 -0
  117. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-XODN6PIJ.mjs +0 -0
  118. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-XODN6PIJ.mjs.map +0 -0
  119. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-YLHEXJF3.mjs +0 -0
  120. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-YLHEXJF3.mjs.map +0 -0
  121. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-ZX4KS3OZ.mjs +0 -0
  122. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/chunk-ZX4KS3OZ.mjs.map +0 -0
  123. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/classDiagram-JG6F6YBT.mjs +0 -0
  124. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/classDiagram-JG6F6YBT.mjs.map +0 -0
  125. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/classDiagram-v2-CFK7UN3Z.mjs +0 -0
  126. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/classDiagram-v2-CFK7UN3Z.mjs.map +0 -0
  127. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/cose-bilkent-PNC4W37J.mjs +0 -0
  128. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/cose-bilkent-PNC4W37J.mjs.map +0 -0
  129. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/dagre-GNUAUHNH.mjs +0 -0
  130. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/dagre-GNUAUHNH.mjs.map +0 -0
  131. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/diagram-G7E7SVAT.mjs +0 -0
  132. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/diagram-G7E7SVAT.mjs.map +0 -0
  133. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/diagram-HOHITQNR.mjs +0 -0
  134. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/diagram-HOHITQNR.mjs.map +0 -0
  135. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/diagram-SUXTHJMA.mjs +0 -0
  136. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/diagram-SUXTHJMA.mjs.map +0 -0
  137. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/erDiagram-L2NYR2MQ.mjs +0 -0
  138. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/erDiagram-L2NYR2MQ.mjs.map +0 -0
  139. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/flowDiagram-IIOBCMXN.mjs +0 -0
  140. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/flowDiagram-IIOBCMXN.mjs.map +0 -0
  141. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/ganttDiagram-CBGYKTO2.mjs +0 -0
  142. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/ganttDiagram-CBGYKTO2.mjs.map +0 -0
  143. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/gitGraph-HDMCJU4V-C6Y2HLJ7.mjs +0 -0
  144. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/gitGraph-HDMCJU4V-C6Y2HLJ7.mjs.map +0 -0
  145. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/gitGraphDiagram-FCDOK2W6.mjs +0 -0
  146. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/gitGraphDiagram-FCDOK2W6.mjs.map +0 -0
  147. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/info-3K5VOQVL-GYCQBKJT.mjs +0 -0
  148. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/info-3K5VOQVL-GYCQBKJT.mjs.map +0 -0
  149. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/infoDiagram-JC2SMEGH.mjs +0 -0
  150. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/infoDiagram-JC2SMEGH.mjs.map +0 -0
  151. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/ishikawaDiagram-LCPTV24A.mjs +0 -0
  152. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/ishikawaDiagram-LCPTV24A.mjs.map +0 -0
  153. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/journeyDiagram-FZRSWBTQ.mjs +0 -0
  154. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/journeyDiagram-FZRSWBTQ.mjs.map +0 -0
  155. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/kanban-definition-ETIEC4YN.mjs +0 -0
  156. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/kanban-definition-ETIEC4YN.mjs.map +0 -0
  157. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/katex-GD7MH7QM.mjs +0 -0
  158. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/katex-GD7MH7QM.mjs.map +0 -0
  159. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/mindmap-definition-QTQOGDLH.mjs +0 -0
  160. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/mindmap-definition-QTQOGDLH.mjs.map +0 -0
  161. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/packet-RMMSAZCW-74OXTHQQ.mjs +0 -0
  162. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/packet-RMMSAZCW-74OXTHQQ.mjs.map +0 -0
  163. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/pie-UPGHQEXC-SNR2CZVS.mjs +0 -0
  164. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/pie-UPGHQEXC-SNR2CZVS.mjs.map +0 -0
  165. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/pieDiagram-O4VNXU6G.mjs +0 -0
  166. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/pieDiagram-O4VNXU6G.mjs.map +0 -0
  167. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/quadrantDiagram-DYU4IJOS.mjs +0 -0
  168. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/quadrantDiagram-DYU4IJOS.mjs.map +0 -0
  169. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/radar-KQ55EAFF-DTKK6RDY.mjs +0 -0
  170. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/radar-KQ55EAFF-DTKK6RDY.mjs.map +0 -0
  171. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/requirementDiagram-N2XL27SN.mjs +0 -0
  172. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/requirementDiagram-N2XL27SN.mjs.map +0 -0
  173. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/sankeyDiagram-HWP7ZNIN.mjs +0 -0
  174. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/sankeyDiagram-HWP7ZNIN.mjs.map +0 -0
  175. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/sequenceDiagram-PYXOKC54.mjs +0 -0
  176. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/sequenceDiagram-PYXOKC54.mjs.map +0 -0
  177. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/stateDiagram-UFOXNHOX.mjs +0 -0
  178. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/stateDiagram-UFOXNHOX.mjs.map +0 -0
  179. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/stateDiagram-v2-C774GKM7.mjs +0 -0
  180. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/stateDiagram-v2-C774GKM7.mjs.map +0 -0
  181. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/timeline-definition-GC5UGDFR.mjs +0 -0
  182. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/timeline-definition-GC5UGDFR.mjs.map +0 -0
  183. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/treemap-KZPCXAKY-RU5UWGQG.mjs +0 -0
  184. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/treemap-KZPCXAKY-RU5UWGQG.mjs.map +0 -0
  185. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/vennDiagram-R4MEU4WM.mjs +0 -0
  186. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/vennDiagram-R4MEU4WM.mjs.map +0 -0
  187. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/xychartDiagram-TMDUDL2A.mjs +0 -0
  188. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/chunks/mermaid.esm.min/xychartDiagram-TMDUDL2A.mjs.map +0 -0
  189. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/frontend/vendor/mermaid.esm.min.mjs +0 -0
  190. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/tests/test_files.py +0 -0
  191. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/tests/test_frontend_modules.py +0 -0
  192. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/tests/test_git_diff.py +0 -0
  193. {vibe_reader-0.2.1 → vibe_reader-0.2.2}/tests/test_tmux.py +0 -0
@@ -0,0 +1,18 @@
1
+ version: 2
2
+
3
+ updates:
4
+ - package-ecosystem: "uv"
5
+ directory: "/"
6
+ schedule:
7
+ interval: "weekly"
8
+ day: "monday"
9
+ time: "09:00"
10
+ timezone: "Etc/UTC"
11
+
12
+ - package-ecosystem: "github-actions"
13
+ directory: "/"
14
+ schedule:
15
+ interval: "weekly"
16
+ day: "monday"
17
+ time: "09:00"
18
+ timezone: "Etc/UTC"
@@ -13,18 +13,18 @@ jobs:
13
13
  contents: read
14
14
 
15
15
  steps:
16
- - uses: actions/checkout@v6.0.3
16
+ - uses: actions/checkout@v7.0.1
17
17
 
18
18
  - name: Set up Python
19
- uses: actions/setup-python@v6.2.0
19
+ uses: actions/setup-python@v7.0.0
20
20
  with:
21
21
  python-version: '3.13'
22
22
 
23
23
  - name: Install uv
24
- uses: astral-sh/setup-uv@v8.2.0
24
+ uses: astral-sh/setup-uv@v10.2.0
25
25
 
26
26
  - name: Build package
27
27
  run: uv build
28
28
 
29
29
  - name: Publish to PyPI
30
- uses: pypa/gh-action-pypi-publish@v1.14.0
30
+ uses: pypa/gh-action-pypi-publish@v1.14.2
@@ -1,19 +1,19 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.5
2
2
  Name: vibe-reader
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary: E-ink friendly web reader for tmux panes, project files, Markdown, and git diffs.
5
5
  Author-email: PsychArch <PsychArch@github.com>
6
6
  Requires-Python: >=3.13
7
- Requires-Dist: dulwich==1.2.6
8
- Requires-Dist: fastapi==0.136.3
9
- Requires-Dist: libtmux==0.58.0
10
- Requires-Dist: markdown==3.10.2
11
- Requires-Dist: pydantic==2.13.4
7
+ Requires-Dist: dulwich==1.2.15
8
+ Requires-Dist: fastapi==0.141.1
9
+ Requires-Dist: libtmux==0.62.0
10
+ Requires-Dist: markdown==3.11
11
+ Requires-Dist: pydantic==2.13.5
12
12
  Requires-Dist: pygments==2.20.0
13
- Requires-Dist: uvicorn==0.49.0
13
+ Requires-Dist: uvicorn==0.54.0
14
14
  Provides-Extra: dev
15
15
  Requires-Dist: httpx2>=2.4.0; extra == 'dev'
16
- Requires-Dist: pytest==9.0.3; extra == 'dev'
16
+ Requires-Dist: pytest==9.1.1; extra == 'dev'
17
17
  Description-Content-Type: text/markdown
18
18
 
19
19
  # Vibe Reader
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "vibe-reader"
3
- version = "0.2.1"
3
+ version = "0.2.2"
4
4
  description = "E-ink friendly web reader for tmux panes, project files, Markdown, and git diffs."
5
5
  readme = "README.md"
6
6
  authors = [
@@ -8,13 +8,13 @@ authors = [
8
8
  ]
9
9
  requires-python = ">=3.13"
10
10
  dependencies = [
11
- "fastapi==0.136.3",
12
- "libtmux==0.58.0",
13
- "uvicorn==0.49.0",
11
+ "fastapi==0.141.1",
12
+ "libtmux==0.62.0",
13
+ "uvicorn==0.54.0",
14
14
  "Pygments==2.20.0",
15
- "markdown==3.10.2",
16
- "dulwich==1.2.6",
17
- "pydantic==2.13.4",
15
+ "markdown==3.11",
16
+ "dulwich==1.2.15",
17
+ "pydantic==2.13.5",
18
18
  ]
19
19
 
20
20
  [project.scripts]
@@ -22,7 +22,7 @@ vibe-reader = "backend.main:main"
22
22
 
23
23
  [project.optional-dependencies]
24
24
  dev = [
25
- "pytest==9.0.3",
25
+ "pytest==9.1.1",
26
26
  "httpx2>=2.4.0",
27
27
  ]
28
28
 
@@ -0,0 +1,413 @@
1
+ version = 1
2
+ revision = 3
3
+ requires-python = ">=3.13"
4
+
5
+ [[package]]
6
+ name = "annotated-doc"
7
+ version = "0.0.4"
8
+ source = { registry = "https://pypi.org/simple" }
9
+ sdist = { url = "https://files.pythonhosted.org/packages/57/ba/046ceea27344560984e26a590f90bc7f4a75b06701f653222458922b558c/annotated_doc-0.0.4.tar.gz", hash = "sha256:fbcda96e87e9c92ad167c2e53839e57503ecfda18804ea28102353485033faa4", size = 7288, upload-time = "2025-11-10T22:07:42.062Z" }
10
+ wheels = [
11
+ { url = "https://files.pythonhosted.org/packages/1e/d3/26bf1008eb3d2daa8ef4cacc7f3bfdc11818d111f7e2d0201bc6e3b49d45/annotated_doc-0.0.4-py3-none-any.whl", hash = "sha256:571ac1dc6991c450b25a9c2d84a3705e2ae7a53467b5d111c24fa8baabbed320", size = 5303, upload-time = "2025-11-10T22:07:40.673Z" },
12
+ ]
13
+
14
+ [[package]]
15
+ name = "annotated-types"
16
+ version = "0.7.0"
17
+ source = { registry = "https://pypi.org/simple" }
18
+ sdist = { url = "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89", size = 16081, upload-time = "2024-05-20T21:33:25.928Z" }
19
+ wheels = [
20
+ { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" },
21
+ ]
22
+
23
+ [[package]]
24
+ name = "anyio"
25
+ version = "4.13.0"
26
+ source = { registry = "https://pypi.org/simple" }
27
+ dependencies = [
28
+ { name = "idna" },
29
+ ]
30
+ sdist = { url = "https://files.pythonhosted.org/packages/19/14/2c5dd9f512b66549ae92767a9c7b330ae88e1932ca57876909410251fe13/anyio-4.13.0.tar.gz", hash = "sha256:334b70e641fd2221c1505b3890c69882fe4a2df910cba14d97019b90b24439dc", size = 231622, upload-time = "2026-03-24T12:59:09.671Z" }
31
+ wheels = [
32
+ { url = "https://files.pythonhosted.org/packages/da/42/e921fccf5015463e32a3cf6ee7f980a6ed0f395ceeaa45060b61d86486c2/anyio-4.13.0-py3-none-any.whl", hash = "sha256:08b310f9e24a9594186fd75b4f73f4a4152069e3853f1ed8bfbf58369f4ad708", size = 114353, upload-time = "2026-03-24T12:59:08.246Z" },
33
+ ]
34
+
35
+ [[package]]
36
+ name = "click"
37
+ version = "8.4.1"
38
+ source = { registry = "https://pypi.org/simple" }
39
+ dependencies = [
40
+ { name = "colorama", marker = "sys_platform == 'win32'" },
41
+ ]
42
+ sdist = { url = "https://files.pythonhosted.org/packages/9b/98/518d8e5081007684232226f475082b30087d0f585e8457db087298259f49/click-8.4.1.tar.gz", hash = "sha256:918b5633eddf6b41c32d4f454bf0de810065c74e3f7dbf8ee5452f8be88d3e96", size = 353007, upload-time = "2026-05-22T04:08:37.769Z" }
43
+ wheels = [
44
+ { url = "https://files.pythonhosted.org/packages/c7/0d/67e5b4109ea4a837e80daa87c2c696711955e40449a97e8926672534def2/click-8.4.1-py3-none-any.whl", hash = "sha256:482be17c6991b8c19c5429a1e995d9b0efdbb63172824c41f99965dc0ade8ec2", size = 116639, upload-time = "2026-05-22T04:08:35.26Z" },
45
+ ]
46
+
47
+ [[package]]
48
+ name = "colorama"
49
+ version = "0.4.6"
50
+ source = { registry = "https://pypi.org/simple" }
51
+ sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" }
52
+ wheels = [
53
+ { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" },
54
+ ]
55
+
56
+ [[package]]
57
+ name = "dulwich"
58
+ version = "1.2.15"
59
+ source = { registry = "https://pypi.org/simple" }
60
+ dependencies = [
61
+ { name = "urllib3" },
62
+ ]
63
+ sdist = { url = "https://files.pythonhosted.org/packages/63/b9/5b68d879282190b0429c815d582dc1f212d4910aa22ac7c1aff39675a719/dulwich-1.2.15.tar.gz", hash = "sha256:e98f775601846fb4d44a384003e93c53c42b0c9796c8fe0cc3128b8e2e0bbf88", size = 1371420, upload-time = "2026-09-14T21:20:24.556Z" }
64
+ wheels = [
65
+ { url = "https://files.pythonhosted.org/packages/ba/2f/ed4b389c2bc16feb0de8c454240b28e35d4f1292234f76ef44dab5e9a309/dulwich-1.2.15-cp313-cp313-android_24_arm64_v8a.whl", hash = "sha256:6364ed238f6957087b3c544b3e0fdae0fcf9c936a50c94dccbf063d4de6470ce", size = 1618317, upload-time = "2026-09-14T21:19:25.688Z" },
66
+ { url = "https://files.pythonhosted.org/packages/dc/60/75bc28e8495c910bc0bdf483770470c8888131f0a4780210d32deac87f88/dulwich-1.2.15-cp313-cp313-android_24_x86_64.whl", hash = "sha256:0442ef51c02ed31773b3f279b3d05060f90625a3c8bc14b4adb75c3fe18672f4", size = 1551790, upload-time = "2026-09-14T21:19:27.185Z" },
67
+ { url = "https://files.pythonhosted.org/packages/72/72/9e293c3dad90936050f346d55a6fd4535f57db79b64fd9895b3182838f23/dulwich-1.2.15-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:c37e9acc1060cee69187e34c29fb02cc74f859d82d855deb7866dc3011c8131e", size = 1407994, upload-time = "2026-09-14T21:19:28.712Z" },
68
+ { url = "https://files.pythonhosted.org/packages/73/cf/184ef119caf572d0c416f0ff3c5a821507b56e2da3050c4b766796c23315/dulwich-1.2.15-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:ff49c76ed843f43c025fa39a4491af360852ca2926111ad1ce91090b5b5c6ff4", size = 1446924, upload-time = "2026-09-14T21:19:30.135Z" },
69
+ { url = "https://files.pythonhosted.org/packages/c2/f7/1291d8bf56f42ccb391a6a08c07e0f9645d6098031d5389c8a2177fc8582/dulwich-1.2.15-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:38b66910c0bc78c59964ef665df657833a4372ab6a4e5ae2969d8c49d9769687", size = 1536850, upload-time = "2026-09-14T21:19:31.638Z" },
70
+ { url = "https://files.pythonhosted.org/packages/00/c0/16c7707f832b07f0b625a0f52d4a618e3c7530a81145c18ca746aa6014a9/dulwich-1.2.15-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:82d4511bec54b72baca40b728f3fcff3b00ab3d2281cfe4fd21c59d7e689406e", size = 1511293, upload-time = "2026-09-14T21:19:33.35Z" },
71
+ { url = "https://files.pythonhosted.org/packages/d7/a7/63c08b856e1e020f77993bcb04883f93904ec1688dc23bc5cce0c0b21d4e/dulwich-1.2.15-cp313-cp313-win32.whl", hash = "sha256:4a802aa1cca5eef1487a490dc9515714493032b0b972b37accd2d42a3bf7ef70", size = 1076877, upload-time = "2026-09-14T21:19:34.897Z" },
72
+ { url = "https://files.pythonhosted.org/packages/c2/0f/4d4efd392285f83faf37c85d35e0ba240da6573dc8dc576dec0a14f02dc1/dulwich-1.2.15-cp313-cp313-win_amd64.whl", hash = "sha256:156673b2486a12ae45a0f3150e329d0907ef6af38b73d034c5c06c8047a49b7f", size = 1093039, upload-time = "2026-09-14T21:19:36.349Z" },
73
+ { url = "https://files.pythonhosted.org/packages/cc/ca/17d6be76ca99d49dd90e707db192dd99ca65b04262766af787a7fa63285a/dulwich-1.2.15-cp314-cp314-android_24_arm64_v8a.whl", hash = "sha256:d833ba0f3ecb34f8743bba7357ec0efaf9b496ba01f24bbe46c7f953b2128ce2", size = 1561827, upload-time = "2026-09-14T21:19:37.896Z" },
74
+ { url = "https://files.pythonhosted.org/packages/24/a0/2f9dfac675e34cdea4146c50baf99f25a7c0a5f6935a6fba9a4844df7ca7/dulwich-1.2.15-cp314-cp314-android_24_x86_64.whl", hash = "sha256:390af2baa9b5114258f6770855b70c573cbc16466eb5a1a49d210c1dbadc9dbd", size = 1617450, upload-time = "2026-09-14T21:19:39.463Z" },
75
+ { url = "https://files.pythonhosted.org/packages/33/17/49774aa026967e5c56a1081bcd568629ec491700bfead55ca7306eac294e/dulwich-1.2.15-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:0e3f08530f9e4006a6ecb5179f4c3e37f6cf93c93449084e2c15a3c388fc0973", size = 1472813, upload-time = "2026-09-14T21:19:41.117Z" },
76
+ { url = "https://files.pythonhosted.org/packages/4d/a6/a5cba13ca8ad86a872fd756a899abeed6571d01ed77ef63f6524cab78a4b/dulwich-1.2.15-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:4ff2a7180f6a9f7b9ba50c785b0af03973871fede6aa31ba0ba561750eca8830", size = 1450283, upload-time = "2026-09-14T21:19:42.601Z" },
77
+ { url = "https://files.pythonhosted.org/packages/a9/5f/d6a2def67402a1503eaa4ceb76d6b9415845d7fea389b79cde51bbf89bcd/dulwich-1.2.15-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:9d5fa7a5e26ab776311af4534a93b77a2d36d4f1b52ba3ab74a87edd20583996", size = 1537517, upload-time = "2026-09-14T21:19:44.1Z" },
78
+ { url = "https://files.pythonhosted.org/packages/8e/b3/c88fe72cc1d7213060395ba5757034b3a9154cfdfdd4d886d1f9e43d5004/dulwich-1.2.15-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:cf77898f405f258a31d597cba179dea05eefb50dae59a3221c50a7f9113cc691", size = 1574759, upload-time = "2026-09-14T21:19:45.594Z" },
79
+ { url = "https://files.pythonhosted.org/packages/0e/58/756b0224cf85f6904b701b214c4870f03582b9b75b6e558ef478b1d1c37e/dulwich-1.2.15-cp314-cp314-win32.whl", hash = "sha256:038850cbb88b6d0f9553f30b31f4aeb59c9497a55077d21da08a1a429f867fb4", size = 1087348, upload-time = "2026-09-14T21:19:47.096Z" },
80
+ { url = "https://files.pythonhosted.org/packages/29/3c/c30f1eea85f2d4486ca0aa85979974137b1d2f271a050345b7cb9c0ec4df/dulwich-1.2.15-cp314-cp314-win_amd64.whl", hash = "sha256:60e46a95cd866b01cbc1843541cf11033dd189c8b4767c05bd7b4ee0600cf6ab", size = 1160857, upload-time = "2026-09-14T21:19:48.642Z" },
81
+ { url = "https://files.pythonhosted.org/packages/74/40/bb83a28e975762ca4a1672faa5f45b241644d66fe018fcfe0964c3941f3e/dulwich-1.2.15-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:bbb42d5fdc17df2a7fe4f0a8d7439be2b06d97769c4ac1079280e6fa9a28ef05", size = 1409361, upload-time = "2026-09-14T21:19:50.073Z" },
82
+ { url = "https://files.pythonhosted.org/packages/b6/27/4dc9c43813f5937c38c9dd88ebd9d9ac45ff9d40f712f26dd0f69940b0bf/dulwich-1.2.15-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:9ab042f02da1e4b19b0777e9a3236f77a43faf043f78ec2b9c8add08db0836a2", size = 1390063, upload-time = "2026-09-14T21:19:51.612Z" },
83
+ { url = "https://files.pythonhosted.org/packages/d6/1e/928fdbb2d9908471fd24db8cdaa327d95db1880d3de55b39cd3bb6c808e6/dulwich-1.2.15-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:ba9412fad4e3548971f0a4c8967341b356771578035876a4f01a762a42f2527b", size = 1535083, upload-time = "2026-09-14T21:19:53.261Z" },
84
+ { url = "https://files.pythonhosted.org/packages/da/73/f12ca680f45d5200df6811f3be139ee9a344ac602ec9e3e28152db29dad7/dulwich-1.2.15-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:5fe361c6db07463c32a4c0841abdd7285e3686674e3eb4b9dc5944b531e74489", size = 1512962, upload-time = "2026-09-14T21:19:54.744Z" },
85
+ { url = "https://files.pythonhosted.org/packages/45/39/bdc0109da0908421d7dfd7d110f5ba402f985caaf2feaf33337073992e73/dulwich-1.2.15-cp314-cp314t-win32.whl", hash = "sha256:601da25f9d39cc802c3523cc299310c93f50a4de70c529fc0f14c7b15bd7a8c0", size = 1085222, upload-time = "2026-09-14T21:19:56.156Z" },
86
+ { url = "https://files.pythonhosted.org/packages/b0/d6/99510d7ab73d5c275965cf91e86d330396f7c855eea2e2f6bd442b65d7dc/dulwich-1.2.15-cp314-cp314t-win_amd64.whl", hash = "sha256:06aa6bad114e3823d4bb380f1369655189cdf5b7b50d7d5a23445946cd3ea9ff", size = 1102430, upload-time = "2026-09-14T21:19:57.722Z" },
87
+ { url = "https://files.pythonhosted.org/packages/db/46/58d08aff4f4b51b35c1a9c749edc10d92e1bfb7f2f80f4fb6bad55911d04/dulwich-1.2.15-cp315-cp315-android_24_arm64_v8a.whl", hash = "sha256:28d21f59e914aff3ace677255d2436a282f3844c95db5f27b9bef2d0e2e7b378", size = 1562619, upload-time = "2026-09-14T21:19:59.366Z" },
88
+ { url = "https://files.pythonhosted.org/packages/70/94/76bca4e007222926da1c26aadec0444eaa6d16262451dae142e4755bfa53/dulwich-1.2.15-cp315-cp315-android_24_x86_64.whl", hash = "sha256:24a8e2705b839b5992d2899a55d5c0a9609a21a8b9a825debf952fd42b748481", size = 1617130, upload-time = "2026-09-14T21:20:00.993Z" },
89
+ { url = "https://files.pythonhosted.org/packages/96/39/e4a1506bdee10f8b3c4f61556a56b4103ede0bffb28d22ead400980ee56c/dulwich-1.2.15-cp315-cp315-macosx_10_15_x86_64.whl", hash = "sha256:9d24079adc550acbc9cf69ca9b33bfc9dd80f00cae779197fbd5535b3e873c6d", size = 1472336, upload-time = "2026-09-14T21:20:02.589Z" },
90
+ { url = "https://files.pythonhosted.org/packages/f9/a8/ae29ccc30a8998c90a61bc2d41fc32372019624229c45add231869e59e9f/dulwich-1.2.15-cp315-cp315-macosx_11_0_arm64.whl", hash = "sha256:caeec3ce1f713120a33ac48ff11cfc78cd2c148371ecaf5dc7a68d28adcf0ef6", size = 1450106, upload-time = "2026-09-14T21:20:04.164Z" },
91
+ { url = "https://files.pythonhosted.org/packages/f9/0f/7401ecc53624bb0f4ee1e055d857402295bc673e0da564ebd4573e013cd2/dulwich-1.2.15-cp315-cp315-manylinux_2_28_aarch64.whl", hash = "sha256:f157812ce877d50a93336136a1b9dd2b368395801a96cd8484c257a4f4665c23", size = 1538214, upload-time = "2026-09-14T21:20:05.783Z" },
92
+ { url = "https://files.pythonhosted.org/packages/53/e9/3f337ba533ce5d953f63f8cd97016f44e3352686d4813b6daec89a7bd3e5/dulwich-1.2.15-cp315-cp315-manylinux_2_28_x86_64.whl", hash = "sha256:5b6f10587589f759747d167d1b6750de62961b17b4fb8c2be4ead49557c50ab9", size = 1576086, upload-time = "2026-09-14T21:20:07.456Z" },
93
+ { url = "https://files.pythonhosted.org/packages/5e/8d/acd1dc88be4520afaa5a1eead5933736a10830bcd79835c44701db3681d7/dulwich-1.2.15-cp315-cp315-win32.whl", hash = "sha256:e57dc844abfc7973baaa8dd7fe248ebc0b4ee1c879d49c041599d4eb7148fa24", size = 1087483, upload-time = "2026-09-14T21:20:09.03Z" },
94
+ { url = "https://files.pythonhosted.org/packages/85/5f/cbfcbe4bfe00a73b3d6958da9eecf70089329d0089eead7b10bdd8982398/dulwich-1.2.15-cp315-cp315-win_amd64.whl", hash = "sha256:0b9f8583e72942233ea79d0f4cf931e963cf8b47255971ae4ab197129824c7e5", size = 1161365, upload-time = "2026-09-14T21:20:10.631Z" },
95
+ { url = "https://files.pythonhosted.org/packages/c3/7b/d13e819de2209740be3241cd78899fabb15957e8c2c4d43e3348c4dfcf10/dulwich-1.2.15-cp315-cp315t-macosx_10_15_x86_64.whl", hash = "sha256:2d87c76063cb29ee334e7f29a74dddf2dae36447208c84d21576451c24a815a0", size = 1409708, upload-time = "2026-09-14T21:20:12.488Z" },
96
+ { url = "https://files.pythonhosted.org/packages/b3/51/b1909717f1b3498627dcf0c37031d4cb25652cb3495954071897c1be0d2f/dulwich-1.2.15-cp315-cp315t-macosx_11_0_arm64.whl", hash = "sha256:ed792ce5c5b21ec209ea7376e2a22b4a2891208b7cc8a88febf539d4c9013c24", size = 1390498, upload-time = "2026-09-14T21:20:14.111Z" },
97
+ { url = "https://files.pythonhosted.org/packages/42/d5/059f76895bc1ce8df673b7ba7ffb27655420f46f6709a526e6c3c9073b3a/dulwich-1.2.15-cp315-cp315t-manylinux_2_28_aarch64.whl", hash = "sha256:63074719524d876e0688cd522dbe9c84aaea999a7018507db24a8fc134036d73", size = 1536812, upload-time = "2026-09-14T21:20:15.771Z" },
98
+ { url = "https://files.pythonhosted.org/packages/5b/90/bc94d35dcd9caa1819372d4ad7a2693032397687961cd30793648db246c5/dulwich-1.2.15-cp315-cp315t-manylinux_2_28_x86_64.whl", hash = "sha256:c18578b0af944eae2198bd3c81084a2f2cb8eb4b993fb5ce95ec823764d5b2f0", size = 1514614, upload-time = "2026-09-14T21:20:17.479Z" },
99
+ { url = "https://files.pythonhosted.org/packages/dd/1b/8ae20b8716d15a2ccb8e395a66921728903edf58a4b9e30046ad7fb63839/dulwich-1.2.15-cp315-cp315t-win32.whl", hash = "sha256:18dc286482e7c76df4865421385bf98ed93aacedf5947bfe12b3d1e2528dd36c", size = 1085741, upload-time = "2026-09-14T21:20:19.178Z" },
100
+ { url = "https://files.pythonhosted.org/packages/50/90/2f4ae3ba60feedf7ccb2422c04006b0ccb3823f18eae15f90dabe4e714b4/dulwich-1.2.15-cp315-cp315t-win_amd64.whl", hash = "sha256:53fa50546d72a7c8ebda380c80c399bcc3e46509caa9762791f202058303cf2e", size = 1102662, upload-time = "2026-09-14T21:20:20.938Z" },
101
+ { url = "https://files.pythonhosted.org/packages/3a/96/b4c8f1cf6c69811098415903ec299cdea87576c51b0c1f13f21215368c63/dulwich-1.2.15-py3-none-any.whl", hash = "sha256:5c863992962bab0fc5f75be132399a16f670f2a9283faf9aaeb953fd8891db83", size = 733132, upload-time = "2026-09-14T21:20:22.697Z" },
102
+ ]
103
+
104
+ [[package]]
105
+ name = "fastapi"
106
+ version = "0.141.1"
107
+ source = { registry = "https://pypi.org/simple" }
108
+ dependencies = [
109
+ { name = "annotated-doc" },
110
+ { name = "pydantic" },
111
+ { name = "starlette" },
112
+ { name = "typing-extensions" },
113
+ { name = "typing-inspection" },
114
+ ]
115
+ sdist = { url = "https://files.pythonhosted.org/packages/8a/02/91e3416a8fdd715abb903a952a6bec7cdd8d14eed55d415fc8595524c319/fastapi-0.141.1.tar.gz", hash = "sha256:e8822fc40db1e1858054d7a949a888695bc9bdce70139178e33bd2871a453ca1", size = 425799, upload-time = "2026-07-29T17:18:05.568Z" }
116
+ wheels = [
117
+ { url = "https://files.pythonhosted.org/packages/cb/03/10388a42375ee7e4ac9b94eb2c5c569c8b5795e377e701c9ac3ad63de890/fastapi-0.141.1-py3-none-any.whl", hash = "sha256:bfb91aa2d334c61cb35ba9a116fc123b3d3df31640b801cf57a7a78ec3f603b3", size = 131954, upload-time = "2026-07-29T17:18:04.364Z" },
118
+ ]
119
+
120
+ [[package]]
121
+ name = "h11"
122
+ version = "0.16.0"
123
+ source = { registry = "https://pypi.org/simple" }
124
+ sdist = { url = "https://files.pythonhosted.org/packages/01/ee/02a2c011bdab74c6fb3c75474d40b3052059d95df7e73351460c8588d963/h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1", size = 101250, upload-time = "2025-04-24T03:35:25.427Z" }
125
+ wheels = [
126
+ { url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86", size = 37515, upload-time = "2025-04-24T03:35:24.344Z" },
127
+ ]
128
+
129
+ [[package]]
130
+ name = "httpcore2"
131
+ version = "2.13.1"
132
+ source = { registry = "https://pypi.org/simple" }
133
+ dependencies = [
134
+ { name = "h11" },
135
+ { name = "truststore" },
136
+ ]
137
+ sdist = { url = "https://files.pythonhosted.org/packages/cb/f3/1db7aa2bc2524062192bb0e0323969492d1883152a232fe36eea65f4e35c/httpcore2-2.13.1.tar.gz", hash = "sha256:e0aa977abe17e69a3b820a24542a6fa88702676d83880b8d194dcd18408e5103", size = 68071, upload-time = "2026-09-23T07:47:22.372Z" }
138
+ wheels = [
139
+ { url = "https://files.pythonhosted.org/packages/09/ba/a4568248771ce81957bfb7cc600264a40fbcda092391ee1c415c50be4bea/httpcore2-2.13.1-py3-none-any.whl", hash = "sha256:e1e05d4f25f7d7d496bfb96748f6f4b67657b03da069b3a68c36069f3db73d0a", size = 83423, upload-time = "2026-09-23T07:47:19.365Z" },
140
+ ]
141
+
142
+ [[package]]
143
+ name = "httpx2"
144
+ version = "2.13.1"
145
+ source = { registry = "https://pypi.org/simple" }
146
+ dependencies = [
147
+ { name = "anyio", marker = "sys_platform != 'emscripten'" },
148
+ { name = "httpcore2", marker = "sys_platform != 'emscripten'" },
149
+ { name = "httpx2-jsfetch", marker = "sys_platform == 'emscripten'" },
150
+ { name = "idna" },
151
+ { name = "truststore", marker = "sys_platform != 'emscripten'" },
152
+ ]
153
+ sdist = { url = "https://files.pythonhosted.org/packages/d5/44/474bef2a0e9d90f1715d32cb98b0738695ca17ba324095fb2497ed7fbd59/httpx2-2.13.1.tar.gz", hash = "sha256:e48744a19e3af5ee48313d0ce5fe941d5422fae5705ea922a4aabf94d7800dfa", size = 100405, upload-time = "2026-09-23T07:47:23.052Z" }
154
+ wheels = [
155
+ { url = "https://files.pythonhosted.org/packages/d8/9c/6fe8931fd9f381042a9e4c7d5a7b4cbf7016b252bec0c99a49fce42c3326/httpx2-2.13.1-py3-none-any.whl", hash = "sha256:6dff50fabc270ee5fd25d845d0b078ed20564579744d6d962850975996d2f9a4", size = 95597, upload-time = "2026-09-23T07:47:20.995Z" },
156
+ ]
157
+
158
+ [[package]]
159
+ name = "httpx2-jsfetch"
160
+ version = "1.0"
161
+ source = { registry = "https://pypi.org/simple" }
162
+ sdist = { url = "https://files.pythonhosted.org/packages/cd/c4/0e5636363151a2a1795e0a77617168b9ca438e1748ec05fc9b5687f93d64/httpx2_jsfetch-1.0.tar.gz", hash = "sha256:70a0e3eabfef7cce5ad9c629f7d01ca05e418f586646f4ddf14782e4c1454c60", size = 6872, upload-time = "2026-08-07T00:13:07.492Z" }
163
+ wheels = [
164
+ { url = "https://files.pythonhosted.org/packages/9b/43/832f631d32e4f1211caa2ba368317739fe71f0b8530e4c9d15dc454bac2a/httpx2_jsfetch-1.0-py3-none-any.whl", hash = "sha256:cb916b707601e69a07721aabc8f3f6659be3a6893bc1ff5c6f9e02241df2da32", size = 6382, upload-time = "2026-08-07T00:13:06.567Z" },
165
+ ]
166
+
167
+ [[package]]
168
+ name = "idna"
169
+ version = "3.18"
170
+ source = { registry = "https://pypi.org/simple" }
171
+ sdist = { url = "https://files.pythonhosted.org/packages/cd/63/9496c57188a2ee585e0f1db071d75089a11e98aa86eb99d9d7618fc1edce/idna-3.18.tar.gz", hash = "sha256:ffb385a7e039654cef1ab9ef32c6fafe283c0c0467bba1d9029738ce4a14a848", size = 196711, upload-time = "2026-06-02T14:34:07.794Z" }
172
+ wheels = [
173
+ { url = "https://files.pythonhosted.org/packages/1e/5e/d4e9f1a599fb8e573b7b87160658329fbf28d19eac2718f51fc3def3aa5a/idna-3.18-py3-none-any.whl", hash = "sha256:7f952cbe720b688055e3f87de14f5c3e5fdaa8bc3928985c4077ca689de849a2", size = 65455, upload-time = "2026-06-02T14:34:06.319Z" },
174
+ ]
175
+
176
+ [[package]]
177
+ name = "iniconfig"
178
+ version = "2.3.0"
179
+ source = { registry = "https://pypi.org/simple" }
180
+ sdist = { url = "https://files.pythonhosted.org/packages/72/34/14ca021ce8e5dfedc35312d08ba8bf51fdd999c576889fc2c24cb97f4f10/iniconfig-2.3.0.tar.gz", hash = "sha256:c76315c77db068650d49c5b56314774a7804df16fee4402c1f19d6d15d8c4730", size = 20503, upload-time = "2025-10-18T21:55:43.219Z" }
181
+ wheels = [
182
+ { url = "https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl", hash = "sha256:f631c04d2c48c52b84d0d0549c99ff3859c98df65b3101406327ecc7d53fbf12", size = 7484, upload-time = "2025-10-18T21:55:41.639Z" },
183
+ ]
184
+
185
+ [[package]]
186
+ name = "libtmux"
187
+ version = "0.62.0"
188
+ source = { registry = "https://pypi.org/simple" }
189
+ sdist = { url = "https://files.pythonhosted.org/packages/0c/b8/0410c8487f7673926d141a5aaaf60133984a564b3c90eb4f3f99e92e7740/libtmux-0.62.0.tar.gz", hash = "sha256:41e9e80602b2656fd119b13253b27bad46af5cfef32099be53cdd391e2936b61", size = 571757, upload-time = "2026-07-12T21:48:02.781Z" }
190
+ wheels = [
191
+ { url = "https://files.pythonhosted.org/packages/87/96/471ac01844ee157fe794446e17568e9bf219d323575c2acc7957a9a2d8c9/libtmux-0.62.0-py3-none-any.whl", hash = "sha256:626aa6fae45e3a423e1acc81604efafa63b7262b1d67b2c7a8778b1ad691456b", size = 127700, upload-time = "2026-07-12T21:48:01.52Z" },
192
+ ]
193
+
194
+ [[package]]
195
+ name = "markdown"
196
+ version = "3.11"
197
+ source = { registry = "https://pypi.org/simple" }
198
+ sdist = { url = "https://files.pythonhosted.org/packages/f8/4f/700155c8c20d9e655dd0732b5fc3c7614f291b9148da271d7388e50bf774/markdown-3.11.tar.gz", hash = "sha256:180224db6aed87ba9ce1f2781ebcd5826253de8ff637112090e24b84502bbf9f", size = 485623, upload-time = "2026-09-25T13:46:23.473Z" }
199
+ wheels = [
200
+ { url = "https://files.pythonhosted.org/packages/ec/1e/32971905a7ab47f8b66866ed949fa48b104ba1c4a6fa57794c4f2c4b2cb8/markdown-3.11-py3-none-any.whl", hash = "sha256:cd6c89e7eb308c8b332ed673215a52d208a43f8bacc030b1419376129408719e", size = 111296, upload-time = "2026-09-25T13:46:22.163Z" },
201
+ ]
202
+
203
+ [[package]]
204
+ name = "packaging"
205
+ version = "26.2"
206
+ source = { registry = "https://pypi.org/simple" }
207
+ sdist = { url = "https://files.pythonhosted.org/packages/d7/f1/e7a6dd94a8d4a5626c03e4e99c87f241ba9e350cd9e6d75123f992427270/packaging-26.2.tar.gz", hash = "sha256:ff452ff5a3e828ce110190feff1178bb1f2ea2281fa2075aadb987c2fb221661", size = 228134, upload-time = "2026-04-24T20:15:23.917Z" }
208
+ wheels = [
209
+ { url = "https://files.pythonhosted.org/packages/df/b2/87e62e8c3e2f4b32e5fe99e0b86d576da1312593b39f47d8ceef365e95ed/packaging-26.2-py3-none-any.whl", hash = "sha256:5fc45236b9446107ff2415ce77c807cee2862cb6fac22b8a73826d0693b0980e", size = 100195, upload-time = "2026-04-24T20:15:22.081Z" },
210
+ ]
211
+
212
+ [[package]]
213
+ name = "pluggy"
214
+ version = "1.6.0"
215
+ source = { registry = "https://pypi.org/simple" }
216
+ sdist = { url = "https://files.pythonhosted.org/packages/f9/e2/3e91f31a7d2b083fe6ef3fa267035b518369d9511ffab804f839851d2779/pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3", size = 69412, upload-time = "2025-05-15T12:30:07.975Z" }
217
+ wheels = [
218
+ { url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746", size = 20538, upload-time = "2025-05-15T12:30:06.134Z" },
219
+ ]
220
+
221
+ [[package]]
222
+ name = "pydantic"
223
+ version = "2.13.5"
224
+ source = { registry = "https://pypi.org/simple" }
225
+ dependencies = [
226
+ { name = "annotated-types" },
227
+ { name = "pydantic-core" },
228
+ { name = "typing-extensions" },
229
+ { name = "typing-inspection" },
230
+ ]
231
+ sdist = { url = "https://files.pythonhosted.org/packages/53/ef/fc4f868f4e2cee79f863883abffceff107875f569b848507319842d2a681/pydantic-2.13.5.tar.gz", hash = "sha256:51a9c5f7b2f8e636f04c6cada605d9b6a3bf1348fdf945a3d8869b19bba0ee08", size = 845750, upload-time = "2026-08-28T14:04:00.916Z" }
232
+ wheels = [
233
+ { url = "https://files.pythonhosted.org/packages/eb/47/c95ffc2009878c7aac0c5e08528022dcb885933252a88b5f170058014464/pydantic-2.13.5-py3-none-any.whl", hash = "sha256:346a034f080da3755d8e9cb5e00e8b07de1d39e4f6e2c87d8ab7cafa0b269a73", size = 472589, upload-time = "2026-08-28T14:03:59.136Z" },
234
+ ]
235
+
236
+ [[package]]
237
+ name = "pydantic-core"
238
+ version = "2.46.5"
239
+ source = { registry = "https://pypi.org/simple" }
240
+ dependencies = [
241
+ { name = "typing-extensions" },
242
+ ]
243
+ sdist = { url = "https://files.pythonhosted.org/packages/af/f9/8a06bea35ef8daf588f707784c973a7046e0034c8d8cfb08828eeffb8b75/pydantic_core-2.46.5.tar.gz", hash = "sha256:10416c15b8839ecc4ef4d0885da76da6fd0f67333a0eb8aff6d93c4b8f2910fc", size = 472262, upload-time = "2026-08-28T10:01:31.677Z" }
244
+ wheels = [
245
+ { url = "https://files.pythonhosted.org/packages/f5/37/5abe39a8372a61d3dc3c1338fc504281c01b32fdb3169cd7187153b56d3e/pydantic_core-2.46.5-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:b7ca9034437b6022f941f4857459562ee00a560b97e7cce8a0ec5a74fc6766e0", size = 2075885, upload-time = "2026-08-28T09:58:47.856Z" },
246
+ { url = "https://files.pythonhosted.org/packages/21/43/6323b1f8b217780454c61304bcd2b38ae4762f50754414124603ccc90bb2/pydantic_core-2.46.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f332f0e72a5a0400141f830744e141bf9f97917878dbe968669e8a7fefea78ff", size = 1922768, upload-time = "2026-08-28T09:58:49.58Z" },
247
+ { url = "https://files.pythonhosted.org/packages/0f/a3/c05ca796e1197618a774b01e596aeedfefc2f7d8c01ae3054e910b120e8a/pydantic_core-2.46.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:193375f3548919d3f0b60936ca113ada3e38f264f91b9b8e0508efaad57be931", size = 1951241, upload-time = "2026-08-28T09:58:51.511Z" },
248
+ { url = "https://files.pythonhosted.org/packages/68/32/33bc39ac705c52cffc908e8389f9754fdb208aea5c69cceddf4eb3ce99af/pydantic_core-2.46.5-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:79bdfa52f843137045b2d081cc05c120ba6665d29b7559c2c47690906f39279f", size = 2031975, upload-time = "2026-08-28T09:58:53.166Z" },
249
+ { url = "https://files.pythonhosted.org/packages/b0/70/2333e885c0f6a67bc105c5916965dac9b57f2718ee20d81d1a06a4ebdc13/pydantic_core-2.46.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:24922243639cbdac66c75fcb6fd6495a9cb52b213d62f9a0d16f0310b1ff8038", size = 2208542, upload-time = "2026-08-28T09:58:55.017Z" },
250
+ { url = "https://files.pythonhosted.org/packages/f7/ea/296debfb4264207bbda5936133892e027c0a58875ad53ebd512fba8ec3a2/pydantic_core-2.46.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c76fe65e607be28c7fd4d56fc3c42b1583aa058ce3408b7ad0fd540171d31f9f", size = 2264692, upload-time = "2026-08-28T09:58:56.767Z" },
251
+ { url = "https://files.pythonhosted.org/packages/d3/f2/9e4de77a6271e07a76d2d58b11c091a979c191ed2939bf80067568b369d2/pydantic_core-2.46.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6f7b393a8b3da82f5c1fc0751e6d01ac6c55b93c18226a60bdfba4a724efafd1", size = 2066633, upload-time = "2026-08-28T09:58:58.531Z" },
252
+ { url = "https://files.pythonhosted.org/packages/8d/db/f9e9d0c97445987b2084823d5c240de88087338f04fc2cfaa2df186b8049/pydantic_core-2.46.5-cp313-cp313-manylinux_2_31_riscv64.whl", hash = "sha256:7ac031912d54f3d83ef3b3eb98dfabc1608802e2202263d25957eeed40b94761", size = 2105235, upload-time = "2026-08-28T09:59:00.421Z" },
253
+ { url = "https://files.pythonhosted.org/packages/07/c5/79169b047b3b2c3e99e04bc76372af9637e0bf6db638274fa927df96369e/pydantic_core-2.46.5-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:837b396ca3d7b74091ca623f6cbd8351bd42d670a79c2683e79fb089f06a2de5", size = 2157367, upload-time = "2026-08-28T09:59:02.442Z" },
254
+ { url = "https://files.pythonhosted.org/packages/26/b5/ba6057afb7c291bd449f51b867f95aef2072941c4ce4e5c31d6ffd132d3b/pydantic_core-2.46.5-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:5ee239d575f80b08eca11f6e20f90c4c695de7825c67eefe6091fbf20dda648e", size = 2158420, upload-time = "2026-08-28T09:59:04.2Z" },
255
+ { url = "https://files.pythonhosted.org/packages/6e/28/2057abecaafdc22912afa819603a51f0a62d40643b7c4871c51721fea9be/pydantic_core-2.46.5-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:e80675d75ae2cd14372cb65cad5400d9347a3d3f6c13000183f22dfd027283ed", size = 2309588, upload-time = "2026-08-28T09:59:06.048Z" },
256
+ { url = "https://files.pythonhosted.org/packages/71/9d/881156dc404e27479c4246128d73538464cab4a239bec61995e227644c30/pydantic_core-2.46.5-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:9c4b71f10dd532fb7a5cbc8f58707779e64f03a258c2bf8bfbaecfcd9970b519", size = 2341866, upload-time = "2026-08-28T09:59:08.539Z" },
257
+ { url = "https://files.pythonhosted.org/packages/5a/38/d66f443a259f84d13babdceae568e572b0ed26da17ca5d0a649ebb110a67/pydantic_core-2.46.5-cp313-cp313-win32.whl", hash = "sha256:97bf8de4d541598c94a59344eeb988a94c08ff76b5723c41f6567ec18c7892ea", size = 1938580, upload-time = "2026-08-28T09:59:10.402Z" },
258
+ { url = "https://files.pythonhosted.org/packages/2c/1e/1d5371213f4cc9a7ed70c0bfcc7911de22311ee99a662a56077d7292d2ac/pydantic_core-2.46.5-cp313-cp313-win_amd64.whl", hash = "sha256:15f4a94963c95accac15b7b657bb177d3ad82bb90b0d0526d9a9b85079925db5", size = 2041980, upload-time = "2026-08-28T09:59:12.396Z" },
259
+ { url = "https://files.pythonhosted.org/packages/5a/48/4222d90b1c67568bace4dec6dca6271449c66de3595d72b6d098f5fde597/pydantic_core-2.46.5-cp313-cp313-win_arm64.whl", hash = "sha256:d22a945598fb91236b4dd793a6e42e4f3dd7740bb5aace5ebd7d4c08d13bb575", size = 1997213, upload-time = "2026-08-28T09:59:14.245Z" },
260
+ { url = "https://files.pythonhosted.org/packages/8e/8a/14596f2a8367da50cf7cbac48169ee5d9c8e11d486a3b527082384630c72/pydantic_core-2.46.5-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:c1c43ad4339643d70ebb8124e1305a7dab423001eff58bb41a0f731adbc98355", size = 2074081, upload-time = "2026-08-28T09:59:16.141Z" },
261
+ { url = "https://files.pythonhosted.org/packages/ae/d5/d8a4eb6d6c7f66b91dd37c576d76e9e60fba900caf5372c17bcf949febc2/pydantic_core-2.46.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1a353f84de772f423b5ffb11d7ae352fbbef0f446f3c0b0af0f8236d7233606e", size = 1920497, upload-time = "2026-08-28T09:59:18.065Z" },
262
+ { url = "https://files.pythonhosted.org/packages/8e/26/092079428f86e927e030b2c0ced87df69dbb1c875cdeaa67bf42ea2be746/pydantic_core-2.46.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5086029a57366b8cf81b130a43908738095c270c21a8d7f0e8bdfdb89718e2f3", size = 1952130, upload-time = "2026-08-28T09:59:20.476Z" },
263
+ { url = "https://files.pythonhosted.org/packages/08/c3/8ec0e290a9ebaebd64047bf5fda94be835c6b1551b02437e4b76778fbcd7/pydantic_core-2.46.5-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:46c25dda9d092a06c08db76ffe0a197107904d0dfac653f7d5306bbcd6d6119c", size = 2026371, upload-time = "2026-08-28T09:59:22.227Z" },
264
+ { url = "https://files.pythonhosted.org/packages/01/72/4fd20ad520fb8da0157f95b27a7eb05a72790ef08138e7701ac972c342ea/pydantic_core-2.46.5-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:37ea7b83c935e5b0d68c9449b82651accf78a10828b2c02b2f2d9e9496446c21", size = 2202822, upload-time = "2026-08-28T09:59:24.277Z" },
265
+ { url = "https://files.pythonhosted.org/packages/31/b0/d16e0771206b29314f0d52198b720be21e8a99ab2bf11e3bc0d7c9cebdff/pydantic_core-2.46.5-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e64e88d5585bea9ce95861079de72006c7fa6d3df4e3a3b65ba31eb979c15c9f", size = 2262756, upload-time = "2026-08-28T09:59:26.608Z" },
266
+ { url = "https://files.pythonhosted.org/packages/2c/9b/59634b7ac631c63b2a37760eb6943af3e29573d6b59a4abc5e7f019d4cee/pydantic_core-2.46.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:54d510bac3ee52247af28ed4bb18a1e799f040ac60fd2bf5ccd4c92f1fbe786f", size = 2068352, upload-time = "2026-08-28T09:59:29.044Z" },
267
+ { url = "https://files.pythonhosted.org/packages/08/7c/570abb1ad2155348dc754ea91be22e5aaa18eb6d69a6068f7c6f2679a6ed/pydantic_core-2.46.5-cp314-cp314-manylinux_2_31_riscv64.whl", hash = "sha256:a2a5e1d0ff29adddc9f6d6821a66302e4493f8ca898b715b6b1182c2c201ea0a", size = 2104777, upload-time = "2026-08-28T09:59:30.95Z" },
268
+ { url = "https://files.pythonhosted.org/packages/8e/25/5bf74adc65a1ac5b7be3f6cb0bcb5433615c1598a801c19d830d84c98ded/pydantic_core-2.46.5-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:03b9666e41e35d8909852ba191a0607520f81b74eaf12ccf8737005dbb313821", size = 2156312, upload-time = "2026-08-28T09:59:32.604Z" },
269
+ { url = "https://files.pythonhosted.org/packages/90/6a/2ef38830675e050121040618135564ed56b860b45433b02d9b4ebece46f3/pydantic_core-2.46.5-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:a91c17edf6eea2402cb5457b4c89e99bc5ed1004aa34c4adf1d4258c1a5c22c2", size = 2150067, upload-time = "2026-08-28T09:59:34.453Z" },
270
+ { url = "https://files.pythonhosted.org/packages/90/ef/a7dbb03a14a64c2a4621f989c615ed9a892535a6cad938fc27079f919d80/pydantic_core-2.46.5-cp314-cp314-musllinux_1_1_armv7l.whl", hash = "sha256:b49924c73a235e969511bf2aabdff3beebf9820931f646c80274d5d780010c47", size = 2304516, upload-time = "2026-08-28T09:59:36.194Z" },
271
+ { url = "https://files.pythonhosted.org/packages/68/f8/6bb4c4b80e8a6fde1904c64a51c62a1d04fcdfa3ea521a66b2ddefa1d885/pydantic_core-2.46.5-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:2cbd9a5eff05e51c447c34dfa4632145b26b09120cf04bd0c871e44c1a5e1c9a", size = 2335223, upload-time = "2026-08-28T09:59:37.931Z" },
272
+ { url = "https://files.pythonhosted.org/packages/2a/80/f46b8c681195190b2c1f1c7c0a81abce60663e987613e09ef64d433dd96b/pydantic_core-2.46.5-cp314-cp314-win32.whl", hash = "sha256:2d5d76654becf5efd62c9e51c3756c67b49498b0c9a40884934c40807adbd074", size = 1934827, upload-time = "2026-08-28T09:59:39.836Z" },
273
+ { url = "https://files.pythonhosted.org/packages/f7/3c/60674207246bc0a4009d2391b7c7251c7159f279c8d2ab8aae8ef46f3dee/pydantic_core-2.46.5-cp314-cp314-win_amd64.whl", hash = "sha256:fa10ef4112775900e7a0661068635eb67b2ab824fbde764de6e0e21982a93db0", size = 2042648, upload-time = "2026-08-28T09:59:41.792Z" },
274
+ { url = "https://files.pythonhosted.org/packages/69/0c/117c562c7c1babdf44576b72a5e496906506c93690387ecfbca7c729ae2e/pydantic_core-2.46.5-cp314-cp314-win_arm64.whl", hash = "sha256:045ab3b6d308439e32b81cc173bba5b9018bc6ed896afd0c65b3b009b1699af5", size = 1989652, upload-time = "2026-08-28T09:59:43.702Z" },
275
+ { url = "https://files.pythonhosted.org/packages/e8/66/9336ae58f9eb68c41d121894e52c4c89eccb07eb8f602a04ee9c3f37736a/pydantic_core-2.46.5-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:8816f3d218beb4b787de5c9759c259b8fa61f9dec42dc7811f320a33771778b7", size = 2065829, upload-time = "2026-08-28T09:59:45.364Z" },
276
+ { url = "https://files.pythonhosted.org/packages/c5/02/bc19b47a96c2d3109760711acf22369e56bd7e405ca52f7ade164d2ead57/pydantic_core-2.46.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:bce57638e08ac148e5778cce7feb968307a727d66f8e2274a543d0cf0c9ad6a3", size = 1905716, upload-time = "2026-08-28T09:59:47.18Z" },
277
+ { url = "https://files.pythonhosted.org/packages/52/a4/70b47c0509923dd98ccfed04fb3e32ea3849c82a0ff2205bb41009b43c00/pydantic_core-2.46.5-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:976e1128455aa595ea04c79ccfedff1aaeab96ee013fcc916bed120c4f0ad94f", size = 1934216, upload-time = "2026-08-28T09:59:49.241Z" },
278
+ { url = "https://files.pythonhosted.org/packages/52/ab/aa03b65f7bb198585edf806b906c3223ecf1795543e39e23aec4cce27ad2/pydantic_core-2.46.5-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e7b891faeedeafba41b2983e5001a81b6a915b69544c7e7570d1989ce1c36ac7", size = 2010635, upload-time = "2026-08-28T09:59:51.692Z" },
279
+ { url = "https://files.pythonhosted.org/packages/3c/8b/0da06343f30b84ec549aafd309c6456223d5dc8bd36af504c573faad561d/pydantic_core-2.46.5-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5f194189415698233dd1114a093a9b56e61e2c57e11b469be3b0506f46f0771c", size = 2209369, upload-time = "2026-08-28T09:59:53.582Z" },
280
+ { url = "https://files.pythonhosted.org/packages/d6/5b/844c4defaa34a3df66eb9257087d121d70c201298b96abdf9f492fc2f1bf/pydantic_core-2.46.5-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:82a36973cf8a2ef5406f4fe2edbf8ed0c99629535d959e0b100c76a32535a111", size = 2253238, upload-time = "2026-08-28T09:59:55.484Z" },
281
+ { url = "https://files.pythonhosted.org/packages/f4/64/a4e536cb16d7f61a7fd3120b46c577fc7fa7325992f69c4f52bc786d77d8/pydantic_core-2.46.5-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cdbb78909f52b981d3b2d56b97328d71eb0b974c36bd77c920123a7ebb192829", size = 2065740, upload-time = "2026-08-28T09:59:58.038Z" },
282
+ { url = "https://files.pythonhosted.org/packages/5f/75/aaa38c6bc2d085f6605b34eabdc6a8a4e0b2e61fc9c8e6e52b28e97b3125/pydantic_core-2.46.5-cp314-cp314t-manylinux_2_31_riscv64.whl", hash = "sha256:52e24eacdb536cade636aa90fb851835222becff8484b7001fdc78cb0290f2aa", size = 2087425, upload-time = "2026-08-28T09:59:59.898Z" },
283
+ { url = "https://files.pythonhosted.org/packages/55/ae/fcab4cfc39aba3689e1d20c8b5250ad280957022c09af2ed9cd585602a5e/pydantic_core-2.46.5-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:37ae34309d7bd8c0d61ab839668058f2a7962ea1fc51d105d2db228fe0618034", size = 2139306, upload-time = "2026-08-28T10:00:03.057Z" },
284
+ { url = "https://files.pythonhosted.org/packages/2d/f4/f1d03a4bc9d9acbc62f4d742b8a319af52f71885079868b2ff8e48a651ee/pydantic_core-2.46.5-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:0cdbada856a1c69a7624a64d3d9aefe79300bd6ef827b43a4f265010b9b55184", size = 2144589, upload-time = "2026-08-28T10:00:05.645Z" },
285
+ { url = "https://files.pythonhosted.org/packages/83/f3/7a53bb1356de514a4cd295f25b6ac39237895620c0462d2592b76c16e114/pydantic_core-2.46.5-cp314-cp314t-musllinux_1_1_armv7l.whl", hash = "sha256:545f26c504b27c3758439a5e6d9349931f0a04f855668d5fe323c89e82300a38", size = 2288882, upload-time = "2026-08-28T10:00:07.931Z" },
286
+ { url = "https://files.pythonhosted.org/packages/cd/94/5a81583660c175c59d49ffb09f4b3a44debeaf86a19fca664ae1cdd9ee32/pydantic_core-2.46.5-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:ff218293c9c806138dca139765e3b067621be52bcd93cdc14c7711be7ddc90a9", size = 2335210, upload-time = "2026-08-28T10:00:10.177Z" },
287
+ { url = "https://files.pythonhosted.org/packages/5a/9f/5d685c2693b972d1a59c998586e8823712b66603aeff47ee60a4bdaafd37/pydantic_core-2.46.5-cp314-cp314t-win32.whl", hash = "sha256:97cf3eb53a8cccacf9d46686a0926186c9bfb5574f2ed66d3639d5fe117cd3a9", size = 1921180, upload-time = "2026-08-28T10:00:12.35Z" },
288
+ { url = "https://files.pythonhosted.org/packages/70/12/5c94ee16d65a37a15f9e869f5e6256df111154491173801a4c5e800ab548/pydantic_core-2.46.5-cp314-cp314t-win_amd64.whl", hash = "sha256:d2f9fc07a8042a8f95925b35c4f04f469707c981fc33245b6ca187cf5d2dd290", size = 2020515, upload-time = "2026-08-28T10:00:14.774Z" },
289
+ { url = "https://files.pythonhosted.org/packages/63/19/67830dda664e6bdf9285ee2e40f355d0d7d6b92aa0c42e8d217bb8d33d36/pydantic_core-2.46.5-cp314-cp314t-win_arm64.whl", hash = "sha256:acf8a67ba51f4ca9ddbd0e6b3000a65ac51ab734661778b3e7ba64d99a710f2f", size = 1989276, upload-time = "2026-08-28T10:00:16.984Z" },
290
+ ]
291
+
292
+ [[package]]
293
+ name = "pygments"
294
+ version = "2.20.0"
295
+ source = { registry = "https://pypi.org/simple" }
296
+ sdist = { url = "https://files.pythonhosted.org/packages/c3/b2/bc9c9196916376152d655522fdcebac55e66de6603a76a02bca1b6414f6c/pygments-2.20.0.tar.gz", hash = "sha256:6757cd03768053ff99f3039c1a36d6c0aa0b263438fcab17520b30a303a82b5f", size = 4955991, upload-time = "2026-03-29T13:29:33.898Z" }
297
+ wheels = [
298
+ { url = "https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl", hash = "sha256:81a9e26dd42fd28a23a2d169d86d7ac03b46e2f8b59ed4698fb4785f946d0176", size = 1231151, upload-time = "2026-03-29T13:29:30.038Z" },
299
+ ]
300
+
301
+ [[package]]
302
+ name = "pytest"
303
+ version = "9.1.1"
304
+ source = { registry = "https://pypi.org/simple" }
305
+ dependencies = [
306
+ { name = "colorama", marker = "sys_platform == 'win32'" },
307
+ { name = "iniconfig" },
308
+ { name = "packaging" },
309
+ { name = "pluggy" },
310
+ { name = "pygments" },
311
+ ]
312
+ sdist = { url = "https://files.pythonhosted.org/packages/e4/47/b9efed96c114afcfa3c9d3fe98a76a1d14c74a9e266d397cf6eb64be5e01/pytest-9.1.1.tar.gz", hash = "sha256:1088fbde8f2b49d95a549a195707afa7a76a3ce9bcadc26b6d71f0ffda5fe313", size = 1636369, upload-time = "2026-06-19T10:58:32.857Z" }
313
+ wheels = [
314
+ { url = "https://files.pythonhosted.org/packages/24/25/1de2678b631f5a49215c6c96fff41ba892b0a34df68d6d80292b1b48aa7f/pytest-9.1.1-py3-none-any.whl", hash = "sha256:37a86b45efb9a47a61a36449063e8e18d0cab3161329fc099eb21783169c4f0c", size = 386536, upload-time = "2026-06-19T10:58:31.347Z" },
315
+ ]
316
+
317
+ [[package]]
318
+ name = "starlette"
319
+ version = "1.3.1"
320
+ source = { registry = "https://pypi.org/simple" }
321
+ dependencies = [
322
+ { name = "anyio" },
323
+ ]
324
+ sdist = { url = "https://files.pythonhosted.org/packages/eb/e3/7c1dc7381d9f8ab7d854328ebfa884e62cb3f3d8549ddfd37c7814f42afa/starlette-1.3.1.tar.gz", hash = "sha256:05d0213193f2fbaae60e2ecb593b4add4262ad4e46536b54abe36f11a71724e0", size = 2703240, upload-time = "2026-06-12T09:23:11.602Z" }
325
+ wheels = [
326
+ { url = "https://files.pythonhosted.org/packages/ec/bb/2799cc2ede3ed41131f8975621e7213dfc7ef4acbbaadfa440f32500c370/starlette-1.3.1-py3-none-any.whl", hash = "sha256:c7372aae11c3c3f26a42df7bd626cec2f47d03483d261d369516a615a53714c6", size = 73632, upload-time = "2026-06-12T09:23:10.017Z" },
327
+ ]
328
+
329
+ [[package]]
330
+ name = "truststore"
331
+ version = "0.10.4"
332
+ source = { registry = "https://pypi.org/simple" }
333
+ sdist = { url = "https://files.pythonhosted.org/packages/53/a3/1585216310e344e8102c22482f6060c7a6ea0322b63e026372e6dcefcfd6/truststore-0.10.4.tar.gz", hash = "sha256:9d91bd436463ad5e4ee4aba766628dd6cd7010cf3e2461756b3303710eebc301", size = 26169, upload-time = "2025-08-12T18:49:02.73Z" }
334
+ wheels = [
335
+ { url = "https://files.pythonhosted.org/packages/19/97/56608b2249fe206a67cd573bc93cd9896e1efb9e98bce9c163bcdc704b88/truststore-0.10.4-py3-none-any.whl", hash = "sha256:adaeaecf1cbb5f4de3b1959b42d41f6fab57b2b1666adb59e89cb0b53361d981", size = 18660, upload-time = "2025-08-12T18:49:01.46Z" },
336
+ ]
337
+
338
+ [[package]]
339
+ name = "typing-extensions"
340
+ version = "4.15.0"
341
+ source = { registry = "https://pypi.org/simple" }
342
+ sdist = { url = "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466", size = 109391, upload-time = "2025-08-25T13:49:26.313Z" }
343
+ wheels = [
344
+ { url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548", size = 44614, upload-time = "2025-08-25T13:49:24.86Z" },
345
+ ]
346
+
347
+ [[package]]
348
+ name = "typing-inspection"
349
+ version = "0.4.2"
350
+ source = { registry = "https://pypi.org/simple" }
351
+ dependencies = [
352
+ { name = "typing-extensions" },
353
+ ]
354
+ sdist = { url = "https://files.pythonhosted.org/packages/55/e3/70399cb7dd41c10ac53367ae42139cf4b1ca5f36bb3dc6c9d33acdb43655/typing_inspection-0.4.2.tar.gz", hash = "sha256:ba561c48a67c5958007083d386c3295464928b01faa735ab8547c5692e87f464", size = 75949, upload-time = "2025-10-01T02:14:41.687Z" }
355
+ wheels = [
356
+ { url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl", hash = "sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7", size = 14611, upload-time = "2025-10-01T02:14:40.154Z" },
357
+ ]
358
+
359
+ [[package]]
360
+ name = "urllib3"
361
+ version = "2.7.0"
362
+ source = { registry = "https://pypi.org/simple" }
363
+ sdist = { url = "https://files.pythonhosted.org/packages/53/0c/06f8b233b8fd13b9e5ee11424ef85419ba0d8ba0b3138bf360be2ff56953/urllib3-2.7.0.tar.gz", hash = "sha256:231e0ec3b63ceb14667c67be60f2f2c40a518cb38b03af60abc813da26505f4c", size = 433602, upload-time = "2026-05-07T16:13:18.596Z" }
364
+ wheels = [
365
+ { url = "https://files.pythonhosted.org/packages/7f/3e/5db95bcf282c52709639744ca2a8b149baccf648e39c8cc87553df9eae0c/urllib3-2.7.0-py3-none-any.whl", hash = "sha256:9fb4c81ebbb1ce9531cce37674bbc6f1360472bc18ca9a553ede278ef7276897", size = 131087, upload-time = "2026-05-07T16:13:17.151Z" },
366
+ ]
367
+
368
+ [[package]]
369
+ name = "uvicorn"
370
+ version = "0.54.0"
371
+ source = { registry = "https://pypi.org/simple" }
372
+ dependencies = [
373
+ { name = "click" },
374
+ { name = "h11" },
375
+ ]
376
+ sdist = { url = "https://files.pythonhosted.org/packages/da/34/30e9280707135d2cfc589dfff3cb796bd07a3aeb1a3e415ba09dd89d7bb4/uvicorn-0.54.0.tar.gz", hash = "sha256:a2e33cbfaa0306f8e6b0c13e0cb89d7d7a2da3e62b90c66e18c33d9807b28620", size = 112283, upload-time = "2026-09-25T06:52:37.601Z" }
377
+ wheels = [
378
+ { url = "https://files.pythonhosted.org/packages/38/0c/b54a4fdd7f90a3af8b02ebc9ce6712c2c208b7926a2f7bad95c33ebbe943/uvicorn-0.54.0-py3-none-any.whl", hash = "sha256:505bdb0f318731d45f1f712071fc781a8981f6847a31c902c9f5e652d4f67faf", size = 87427, upload-time = "2026-09-25T06:52:35.829Z" },
379
+ ]
380
+
381
+ [[package]]
382
+ name = "vibe-reader"
383
+ version = "0.2.2"
384
+ source = { editable = "." }
385
+ dependencies = [
386
+ { name = "dulwich" },
387
+ { name = "fastapi" },
388
+ { name = "libtmux" },
389
+ { name = "markdown" },
390
+ { name = "pydantic" },
391
+ { name = "pygments" },
392
+ { name = "uvicorn" },
393
+ ]
394
+
395
+ [package.optional-dependencies]
396
+ dev = [
397
+ { name = "httpx2" },
398
+ { name = "pytest" },
399
+ ]
400
+
401
+ [package.metadata]
402
+ requires-dist = [
403
+ { name = "dulwich", specifier = "==1.2.15" },
404
+ { name = "fastapi", specifier = "==0.141.1" },
405
+ { name = "httpx2", marker = "extra == 'dev'", specifier = ">=2.4.0" },
406
+ { name = "libtmux", specifier = "==0.62.0" },
407
+ { name = "markdown", specifier = "==3.11" },
408
+ { name = "pydantic", specifier = "==2.13.5" },
409
+ { name = "pygments", specifier = "==2.20.0" },
410
+ { name = "pytest", marker = "extra == 'dev'", specifier = "==9.1.1" },
411
+ { name = "uvicorn", specifier = "==0.54.0" },
412
+ ]
413
+ provides-extras = ["dev"]