codedna 0.3.1__tar.gz → 0.3.3__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 (360) hide show
  1. {codedna-0.3.1 → codedna-0.3.3}/CHANGELOG.md +22 -0
  2. {codedna-0.3.1 → codedna-0.3.3}/PKG-INFO +17 -1
  3. {codedna-0.3.1 → codedna-0.3.3}/README.md +16 -0
  4. {codedna-0.3.1 → codedna-0.3.3}/codedna/__init__.py +1 -1
  5. {codedna-0.3.1 → codedna-0.3.3}/codedna/cli.py +102 -0
  6. {codedna-0.3.1 → codedna-0.3.3}/pyproject.toml +1 -1
  7. {codedna-0.3.1 → codedna-0.3.3}/.env.example +0 -0
  8. {codedna-0.3.1 → codedna-0.3.3}/.github/CODEOWNERS +0 -0
  9. {codedna-0.3.1 → codedna-0.3.3}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  10. {codedna-0.3.1 → codedna-0.3.3}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  11. {codedna-0.3.1 → codedna-0.3.3}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  12. {codedna-0.3.1 → codedna-0.3.3}/.github/dependabot.yml +0 -0
  13. {codedna-0.3.1 → codedna-0.3.3}/.github/workflows/codedna.yml +0 -0
  14. {codedna-0.3.1 → codedna-0.3.3}/.github/workflows/codeql.yml +0 -0
  15. {codedna-0.3.1 → codedna-0.3.3}/.github/workflows/test.yml +0 -0
  16. {codedna-0.3.1 → codedna-0.3.3}/.gitignore +0 -0
  17. {codedna-0.3.1 → codedna-0.3.3}/.python-version +0 -0
  18. {codedna-0.3.1 → codedna-0.3.3}/CONTRIBUTING.md +0 -0
  19. {codedna-0.3.1 → codedna-0.3.3}/LICENSE +0 -0
  20. {codedna-0.3.1 → codedna-0.3.3}/SECURITY.md +0 -0
  21. {codedna-0.3.1 → codedna-0.3.3}/codedna/ai.py +0 -0
  22. {codedna-0.3.1 → codedna-0.3.3}/codedna/ai_box.py +0 -0
  23. {codedna-0.3.1 → codedna-0.3.3}/codedna/ai_fingerprint.py +0 -0
  24. {codedna-0.3.1 → codedna-0.3.3}/codedna/analyzer.py +0 -0
  25. {codedna-0.3.1 → codedna-0.3.3}/codedna/api.py +0 -0
  26. {codedna-0.3.1 → codedna-0.3.3}/codedna/auth.py +0 -0
  27. {codedna-0.3.1 → codedna-0.3.3}/codedna/bus_factor.py +0 -0
  28. {codedna-0.3.1 → codedna-0.3.3}/codedna/db.py +0 -0
  29. {codedna-0.3.1 → codedna-0.3.3}/codedna/git_hook.py +0 -0
  30. {codedna-0.3.1 → codedna-0.3.3}/codedna/integrations/__init__.py +0 -0
  31. {codedna-0.3.1 → codedna-0.3.3}/codedna/integrations/github_bot.py +0 -0
  32. {codedna-0.3.1 → codedna-0.3.3}/codedna/integrations/jira.py +0 -0
  33. {codedna-0.3.1 → codedna-0.3.3}/codedna/integrations/lemonsqueezy.py +0 -0
  34. {codedna-0.3.1 → codedna-0.3.3}/codedna/interview.py +0 -0
  35. {codedna-0.3.1 → codedna-0.3.3}/codedna/onboarding.py +0 -0
  36. {codedna-0.3.1 → codedna-0.3.3}/codedna/plan.py +0 -0
  37. {codedna-0.3.1 → codedna-0.3.3}/codedna/protection.py +0 -0
  38. {codedna-0.3.1 → codedna-0.3.3}/codedna/rate_limit.py +0 -0
  39. {codedna-0.3.1 → codedna-0.3.3}/codedna/scorer.py +0 -0
  40. {codedna-0.3.1 → codedna-0.3.3}/codedna/sprint_health.py +0 -0
  41. {codedna-0.3.1 → codedna-0.3.3}/codedna/survey.py +0 -0
  42. {codedna-0.3.1 → codedna-0.3.3}/codedna/tech_debt.py +0 -0
  43. {codedna-0.3.1 → codedna-0.3.3}/dashboard/.env.local.example +0 -0
  44. {codedna-0.3.1 → codedna-0.3.3}/dashboard/.gitignore +0 -0
  45. {codedna-0.3.1 → codedna-0.3.3}/dashboard/README.md +0 -0
  46. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/ai-compare/page.tsx +0 -0
  47. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/api/auth/login/route.ts +0 -0
  48. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/api/auth/logout/route.ts +0 -0
  49. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/api/auth/me/route.ts +0 -0
  50. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/api/auth/register/route.ts +0 -0
  51. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/api/billing/checkout/route.ts +0 -0
  52. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/billing/page.tsx +0 -0
  53. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/bus-factor/page.tsx +0 -0
  54. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/commits/page.tsx +0 -0
  55. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/debt/page.tsx +0 -0
  56. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/favicon.ico +0 -0
  57. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/files/page.tsx +0 -0
  58. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/fonts/GeistMonoVF.woff +0 -0
  59. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/fonts/GeistVF.woff +0 -0
  60. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/globals.css +0 -0
  61. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/interview/page.tsx +0 -0
  62. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/layout.tsx +0 -0
  63. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/login/page.tsx +0 -0
  64. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/onboarding/page.tsx +0 -0
  65. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/page.tsx +0 -0
  66. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/pricing/page.tsx +0 -0
  67. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/protected/page.tsx +0 -0
  68. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/register/page.tsx +0 -0
  69. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/settings/integrations/page.tsx +0 -0
  70. {codedna-0.3.1 → codedna-0.3.3}/dashboard/app/sprints/page.tsx +0 -0
  71. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/AuthProvider.tsx +0 -0
  72. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/ClientProviders.tsx +0 -0
  73. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/CommitTable.tsx +0 -0
  74. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/CostInfoTooltip.tsx +0 -0
  75. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/ErrorBanner.tsx +0 -0
  76. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/FeatureGate.tsx +0 -0
  77. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/FileHeatmap.tsx +0 -0
  78. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/LanguageSwitcher.tsx +0 -0
  79. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/NavClient.tsx +0 -0
  80. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/OverviewTitles.tsx +0 -0
  81. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/QuickInsights.tsx +0 -0
  82. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/RiskBadge.tsx +0 -0
  83. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/SummaryCards.tsx +0 -0
  84. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/UnderstandingChart.tsx +0 -0
  85. {codedna-0.3.1 → codedna-0.3.3}/dashboard/components/UpgradeBanner.tsx +0 -0
  86. {codedna-0.3.1 → codedna-0.3.3}/dashboard/lib/api.ts +0 -0
  87. {codedna-0.3.1 → codedna-0.3.3}/dashboard/lib/auth.ts +0 -0
  88. {codedna-0.3.1 → codedna-0.3.3}/dashboard/lib/i18n/en.ts +0 -0
  89. {codedna-0.3.1 → codedna-0.3.3}/dashboard/lib/i18n/index.tsx +0 -0
  90. {codedna-0.3.1 → codedna-0.3.3}/dashboard/lib/i18n/tr.ts +0 -0
  91. {codedna-0.3.1 → codedna-0.3.3}/dashboard/lib/plan.ts +0 -0
  92. {codedna-0.3.1 → codedna-0.3.3}/dashboard/next-env.d.ts +0 -0
  93. {codedna-0.3.1 → codedna-0.3.3}/dashboard/next.config.mjs +0 -0
  94. {codedna-0.3.1 → codedna-0.3.3}/dashboard/package-lock.json +0 -0
  95. {codedna-0.3.1 → codedna-0.3.3}/dashboard/package.json +0 -0
  96. {codedna-0.3.1 → codedna-0.3.3}/dashboard/postcss.config.mjs +0 -0
  97. {codedna-0.3.1 → codedna-0.3.3}/dashboard/tailwind.config.ts +0 -0
  98. {codedna-0.3.1 → codedna-0.3.3}/dashboard/tsconfig.json +0 -0
  99. {codedna-0.3.1 → codedna-0.3.3}/hooks/post-commit +0 -0
  100. {codedna-0.3.1 → codedna-0.3.3}/uv.lock +0 -0
  101. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/.bin/tsc +0 -0
  102. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/.bin/tsserver +0 -0
  103. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/.package-lock.json +0 -0
  104. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/LICENSE +0 -0
  105. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/README.md +0 -0
  106. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/assert/strict.d.ts +0 -0
  107. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/assert.d.ts +0 -0
  108. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/async_hooks.d.ts +0 -0
  109. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/buffer.buffer.d.ts +0 -0
  110. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/buffer.d.ts +0 -0
  111. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/child_process.d.ts +0 -0
  112. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/cluster.d.ts +0 -0
  113. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/compatibility/disposable.d.ts +0 -0
  114. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/compatibility/index.d.ts +0 -0
  115. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/compatibility/indexable.d.ts +0 -0
  116. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/compatibility/iterators.d.ts +0 -0
  117. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/console.d.ts +0 -0
  118. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/constants.d.ts +0 -0
  119. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/crypto.d.ts +0 -0
  120. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/dgram.d.ts +0 -0
  121. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/diagnostics_channel.d.ts +0 -0
  122. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/dns/promises.d.ts +0 -0
  123. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/dns.d.ts +0 -0
  124. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/domain.d.ts +0 -0
  125. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/events.d.ts +0 -0
  126. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/fs/promises.d.ts +0 -0
  127. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/fs.d.ts +0 -0
  128. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/globals.d.ts +0 -0
  129. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/globals.typedarray.d.ts +0 -0
  130. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/http.d.ts +0 -0
  131. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/http2.d.ts +0 -0
  132. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/https.d.ts +0 -0
  133. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/index.d.ts +0 -0
  134. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/inspector.generated.d.ts +0 -0
  135. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/module.d.ts +0 -0
  136. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/net.d.ts +0 -0
  137. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/os.d.ts +0 -0
  138. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/package.json +0 -0
  139. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/path.d.ts +0 -0
  140. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/perf_hooks.d.ts +0 -0
  141. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/process.d.ts +0 -0
  142. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/punycode.d.ts +0 -0
  143. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/querystring.d.ts +0 -0
  144. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/readline/promises.d.ts +0 -0
  145. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/readline.d.ts +0 -0
  146. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/repl.d.ts +0 -0
  147. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/sea.d.ts +0 -0
  148. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/stream/consumers.d.ts +0 -0
  149. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/stream/promises.d.ts +0 -0
  150. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/stream/web.d.ts +0 -0
  151. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/stream.d.ts +0 -0
  152. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/string_decoder.d.ts +0 -0
  153. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/test.d.ts +0 -0
  154. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/timers/promises.d.ts +0 -0
  155. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/timers.d.ts +0 -0
  156. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/tls.d.ts +0 -0
  157. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/trace_events.d.ts +0 -0
  158. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -0
  159. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -0
  160. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/ts5.6/index.d.ts +0 -0
  161. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/tty.d.ts +0 -0
  162. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/url.d.ts +0 -0
  163. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/util.d.ts +0 -0
  164. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/v8.d.ts +0 -0
  165. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/vm.d.ts +0 -0
  166. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/wasi.d.ts +0 -0
  167. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -0
  168. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/web-globals/domexception.d.ts +0 -0
  169. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/web-globals/events.d.ts +0 -0
  170. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/web-globals/fetch.d.ts +0 -0
  171. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/worker_threads.d.ts +0 -0
  172. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/node/zlib.d.ts +0 -0
  173. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/vscode/LICENSE +0 -0
  174. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/vscode/README.md +0 -0
  175. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/vscode/index.d.ts +0 -0
  176. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/@types/vscode/package.json +0 -0
  177. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/LICENSE.txt +0 -0
  178. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/README.md +0 -0
  179. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/SECURITY.md +0 -0
  180. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/ThirdPartyNoticeText.txt +0 -0
  181. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/bin/tsc +0 -0
  182. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/bin/tsserver +0 -0
  183. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/_tsc.js +0 -0
  184. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/_tsserver.js +0 -0
  185. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/_typingsInstaller.js +0 -0
  186. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +0 -0
  187. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/de/diagnosticMessages.generated.json +0 -0
  188. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/es/diagnosticMessages.generated.json +0 -0
  189. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +0 -0
  190. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/it/diagnosticMessages.generated.json +0 -0
  191. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +0 -0
  192. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +0 -0
  193. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.d.ts +0 -0
  194. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.decorators.d.ts +0 -0
  195. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.decorators.legacy.d.ts +0 -0
  196. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +0 -0
  197. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.dom.d.ts +0 -0
  198. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.dom.iterable.d.ts +0 -0
  199. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2015.collection.d.ts +0 -0
  200. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2015.core.d.ts +0 -0
  201. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2015.d.ts +0 -0
  202. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2015.generator.d.ts +0 -0
  203. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2015.iterable.d.ts +0 -0
  204. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2015.promise.d.ts +0 -0
  205. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2015.proxy.d.ts +0 -0
  206. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2015.reflect.d.ts +0 -0
  207. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2015.symbol.d.ts +0 -0
  208. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +0 -0
  209. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2016.array.include.d.ts +0 -0
  210. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2016.d.ts +0 -0
  211. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2016.full.d.ts +0 -0
  212. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2016.intl.d.ts +0 -0
  213. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +0 -0
  214. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2017.d.ts +0 -0
  215. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2017.date.d.ts +0 -0
  216. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2017.full.d.ts +0 -0
  217. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2017.intl.d.ts +0 -0
  218. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2017.object.d.ts +0 -0
  219. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +0 -0
  220. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2017.string.d.ts +0 -0
  221. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +0 -0
  222. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +0 -0
  223. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +0 -0
  224. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2018.d.ts +0 -0
  225. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2018.full.d.ts +0 -0
  226. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2018.intl.d.ts +0 -0
  227. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2018.promise.d.ts +0 -0
  228. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2018.regexp.d.ts +0 -0
  229. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2019.array.d.ts +0 -0
  230. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2019.d.ts +0 -0
  231. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2019.full.d.ts +0 -0
  232. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2019.intl.d.ts +0 -0
  233. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2019.object.d.ts +0 -0
  234. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2019.string.d.ts +0 -0
  235. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2019.symbol.d.ts +0 -0
  236. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2020.bigint.d.ts +0 -0
  237. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2020.d.ts +0 -0
  238. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2020.date.d.ts +0 -0
  239. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2020.full.d.ts +0 -0
  240. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2020.intl.d.ts +0 -0
  241. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2020.number.d.ts +0 -0
  242. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2020.promise.d.ts +0 -0
  243. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +0 -0
  244. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2020.string.d.ts +0 -0
  245. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +0 -0
  246. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2021.d.ts +0 -0
  247. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2021.full.d.ts +0 -0
  248. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2021.intl.d.ts +0 -0
  249. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2021.promise.d.ts +0 -0
  250. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2021.string.d.ts +0 -0
  251. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2021.weakref.d.ts +0 -0
  252. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2022.array.d.ts +0 -0
  253. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2022.d.ts +0 -0
  254. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2022.error.d.ts +0 -0
  255. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2022.full.d.ts +0 -0
  256. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2022.intl.d.ts +0 -0
  257. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2022.object.d.ts +0 -0
  258. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2022.regexp.d.ts +0 -0
  259. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2022.string.d.ts +0 -0
  260. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2023.array.d.ts +0 -0
  261. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2023.collection.d.ts +0 -0
  262. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2023.d.ts +0 -0
  263. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2023.full.d.ts +0 -0
  264. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2023.intl.d.ts +0 -0
  265. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +0 -0
  266. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2024.collection.d.ts +0 -0
  267. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2024.d.ts +0 -0
  268. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2024.full.d.ts +0 -0
  269. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2024.object.d.ts +0 -0
  270. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2024.promise.d.ts +0 -0
  271. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2024.regexp.d.ts +0 -0
  272. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +0 -0
  273. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es2024.string.d.ts +0 -0
  274. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es5.d.ts +0 -0
  275. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.es6.d.ts +0 -0
  276. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.esnext.array.d.ts +0 -0
  277. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.esnext.collection.d.ts +0 -0
  278. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.esnext.d.ts +0 -0
  279. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.esnext.decorators.d.ts +0 -0
  280. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.esnext.disposable.d.ts +0 -0
  281. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.esnext.error.d.ts +0 -0
  282. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.esnext.float16.d.ts +0 -0
  283. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.esnext.full.d.ts +0 -0
  284. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.esnext.intl.d.ts +0 -0
  285. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.esnext.iterator.d.ts +0 -0
  286. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.esnext.promise.d.ts +0 -0
  287. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts +0 -0
  288. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.scripthost.d.ts +0 -0
  289. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +0 -0
  290. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.webworker.d.ts +0 -0
  291. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +0 -0
  292. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/lib.webworker.iterable.d.ts +0 -0
  293. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +0 -0
  294. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +0 -0
  295. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +0 -0
  296. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +0 -0
  297. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/tsc.js +0 -0
  298. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/tsserver.js +0 -0
  299. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/tsserverlibrary.d.ts +0 -0
  300. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/tsserverlibrary.js +0 -0
  301. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/typesMap.json +0 -0
  302. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/typescript.d.ts +0 -0
  303. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/typescript.js +0 -0
  304. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/typingsInstaller.js +0 -0
  305. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/watchGuard.js +0 -0
  306. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +0 -0
  307. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +0 -0
  308. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/typescript/package.json +0 -0
  309. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/LICENSE +0 -0
  310. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/README.md +0 -0
  311. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/agent.d.ts +0 -0
  312. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/api.d.ts +0 -0
  313. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/balanced-pool.d.ts +0 -0
  314. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/cache.d.ts +0 -0
  315. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/client.d.ts +0 -0
  316. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/connector.d.ts +0 -0
  317. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/content-type.d.ts +0 -0
  318. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/cookies.d.ts +0 -0
  319. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/diagnostics-channel.d.ts +0 -0
  320. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/dispatcher.d.ts +0 -0
  321. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -0
  322. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/errors.d.ts +0 -0
  323. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/eventsource.d.ts +0 -0
  324. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/fetch.d.ts +0 -0
  325. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/file.d.ts +0 -0
  326. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/filereader.d.ts +0 -0
  327. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/formdata.d.ts +0 -0
  328. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/global-dispatcher.d.ts +0 -0
  329. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/global-origin.d.ts +0 -0
  330. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/handlers.d.ts +0 -0
  331. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/header.d.ts +0 -0
  332. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/index.d.ts +0 -0
  333. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/interceptors.d.ts +0 -0
  334. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/mock-agent.d.ts +0 -0
  335. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/mock-client.d.ts +0 -0
  336. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/mock-errors.d.ts +0 -0
  337. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/mock-interceptor.d.ts +0 -0
  338. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/mock-pool.d.ts +0 -0
  339. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/package.json +0 -0
  340. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/patch.d.ts +0 -0
  341. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/pool-stats.d.ts +0 -0
  342. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/pool.d.ts +0 -0
  343. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/proxy-agent.d.ts +0 -0
  344. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/readable.d.ts +0 -0
  345. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/retry-agent.d.ts +0 -0
  346. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/retry-handler.d.ts +0 -0
  347. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/util.d.ts +0 -0
  348. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/webidl.d.ts +0 -0
  349. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/node_modules/undici-types/websocket.d.ts +0 -0
  350. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/out/apiClient.js.map +0 -0
  351. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/out/decorations.js.map +0 -0
  352. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/out/extension.js.map +0 -0
  353. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/out/statusBar.js.map +0 -0
  354. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/package-lock.json +0 -0
  355. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/package.json +0 -0
  356. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/src/apiClient.ts +0 -0
  357. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/src/decorations.ts +0 -0
  358. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/src/extension.ts +0 -0
  359. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/src/statusBar.ts +0 -0
  360. {codedna-0.3.1 → codedna-0.3.3}/vscode-extension/tsconfig.json +0 -0
@@ -1,5 +1,27 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.3.3] - 2026-06-24 — "One-Command Update"
4
+
5
+ ### ✨ Added
6
+ - **`codedna update` command** — self-upgrade from PyPI in a single command
7
+ - `codedna update` — upgrade to latest version
8
+ - `codedna update --check` — only check, do not install
9
+ - `codedna update --target 0.3.2` — install a specific version
10
+ - Auto-detects installer (`uv` first, falls back to `pip`)
11
+ - Verifies new version after install
12
+ - User no longer needs to remember `pip install --upgrade` or PATH dance
13
+ - **`codedna update --check` exit code** — 0 if up-to-date, 1 if update available (CI-friendly)
14
+
15
+ ## [0.3.2] - 2026-06-24 — "Windows PATH Fix"
16
+
17
+ ### 📚 Documentation
18
+ - **Windows PATH setup section** added to README
19
+ - Explains pip's "not on PATH" warning
20
+ - One-time PowerShell fix for current session
21
+ - Permanent fix via `[Environment]::SetEnvironmentVariable`
22
+ - Notes that macOS / Linux users are unaffected
23
+ - **Verify Installation subsection** added (`codedna --version`, `codedna doctor`)
24
+
3
25
  ## [0.3.1] - 2026-06-24 — "Doctor Added"
4
26
 
5
27
  ### ✨ Added
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codedna
3
- Version: 0.3.1
3
+ Version: 0.3.3
4
4
  Summary: AI Code Transparency Tool - detect AI-written code and measure developer understanding
5
5
  Project-URL: Homepage, https://codedna.dev
6
6
  Project-URL: Repository, https://github.com/natureco-official/codedna
@@ -167,6 +167,22 @@ cd codedna
167
167
  pip install -e .
168
168
  ```
169
169
 
170
+ > ⚠️ **Windows users:** pip may warn *"The script codedna.exe is installed in '...' which is not on PATH"*. To fix:
171
+ > ```powershell
172
+ > # One-time setup (PowerShell, current user only)
173
+ > $env:Path += ";$env:LocalAppData\Python\pythoncore-3.14-64\Scripts"
174
+ > # Make it permanent:
175
+ > [Environment]::SetEnvironmentVariable("Path", $env:Path + ";$env:LocalAppData\Python\pythoncore-3.14-64\Scripts", "User")
176
+ > ```
177
+ > Then open a new PowerShell window and run `codedna --version`. **macOS / Linux** users don't need this — pip installs to `/usr/local/bin` or `~/.local/bin`, which is already on PATH.
178
+
179
+ ### Verify Installation
180
+
181
+ ```bash
182
+ codedna --version # should show "codedna 0.3.x"
183
+ codedna doctor # full system health check
184
+ ```
185
+
170
186
  ### First Use (60 seconds)
171
187
 
172
188
  ```bash
@@ -115,6 +115,22 @@ cd codedna
115
115
  pip install -e .
116
116
  ```
117
117
 
118
+ > ⚠️ **Windows users:** pip may warn *"The script codedna.exe is installed in '...' which is not on PATH"*. To fix:
119
+ > ```powershell
120
+ > # One-time setup (PowerShell, current user only)
121
+ > $env:Path += ";$env:LocalAppData\Python\pythoncore-3.14-64\Scripts"
122
+ > # Make it permanent:
123
+ > [Environment]::SetEnvironmentVariable("Path", $env:Path + ";$env:LocalAppData\Python\pythoncore-3.14-64\Scripts", "User")
124
+ > ```
125
+ > Then open a new PowerShell window and run `codedna --version`. **macOS / Linux** users don't need this — pip installs to `/usr/local/bin` or `~/.local/bin`, which is already on PATH.
126
+
127
+ ### Verify Installation
128
+
129
+ ```bash
130
+ codedna --version # should show "codedna 0.3.x"
131
+ codedna doctor # full system health check
132
+ ```
133
+
118
134
  ### First Use (60 seconds)
119
135
 
120
136
  ```bash
@@ -1,4 +1,4 @@
1
1
  """CodeDNA — AI Code Transparency Tool."""
2
2
 
3
- __version__ = "0.3.1"
3
+ __version__ = "0.3.3"
4
4
  __app_name__ = "codedna"
@@ -1885,6 +1885,108 @@ def doctor(
1885
1885
  raise typer.Exit(1)
1886
1886
 
1887
1887
 
1888
+ # ---------------------------------------------------------------------------
1889
+ # codedna update (self-upgrade from PyPI)
1890
+ # ---------------------------------------------------------------------------
1891
+ @app.command()
1892
+ def update(
1893
+ check_only: bool = typer.Option(False, "--check", "-c", help="Only check for updates, do not install"),
1894
+ target: Optional[str] = typer.Option(None, "--target", "-t", help="Install a specific version (e.g. 0.3.2)"),
1895
+ ) -> None:
1896
+ """Check for updates and upgrade CodeDNA to the latest PyPI release."""
1897
+ import json
1898
+ import urllib.request
1899
+ import urllib.error
1900
+
1901
+ console.print(Panel.fit("🧬 CodeDNA — Update Check", style="bold cyan"))
1902
+ console.print()
1903
+
1904
+ # 1. Get current version
1905
+ import codedna
1906
+ current = codedna.__version__
1907
+ console.print(f" Current version: [bold]{current}[/bold]")
1908
+
1909
+ # 2. Fetch latest version from PyPI
1910
+ try:
1911
+ req = urllib.request.Request(
1912
+ "https://pypi.org/pypi/codedna/json",
1913
+ headers={"Accept": "application/json", "User-Agent": "codedna-updater"},
1914
+ )
1915
+ with urllib.request.urlopen(req, timeout=10) as r:
1916
+ data = json.loads(r.read())
1917
+ except Exception as e:
1918
+ console.print(f" [red]✗[/red] Could not reach PyPI: {e}")
1919
+ raise typer.Exit(1)
1920
+
1921
+ latest = data["info"]["version"]
1922
+ desired = target or latest
1923
+ console.print(f" Latest version : [bold]{latest}[/bold]")
1924
+
1925
+ if target:
1926
+ console.print(f" Target version : [bold]{target}[/bold]")
1927
+
1928
+ # 3. Compare
1929
+ def _parse(v: str) -> tuple[int, ...]:
1930
+ return tuple(int(x) for x in v.split(".") if x.isdigit())
1931
+
1932
+ if _parse(current) >= _parse(desired) and not target:
1933
+ console.print()
1934
+ console.print(f" [bold green]✓ Already on the latest version.[/bold green]")
1935
+ return
1936
+
1937
+ console.print()
1938
+ if check_only:
1939
+ console.print(f" [yellow]![/yellow] Update available: {current} → {desired}")
1940
+ console.print(f" [dim]Run [bold]codedna update[/bold] to install.[/dim]")
1941
+ return
1942
+
1943
+ # 4. Detect installer (uv > pip)
1944
+ import shutil
1945
+ import subprocess
1946
+
1947
+ use_uv = shutil.which("uv") is not None
1948
+ if use_uv:
1949
+ cmd = ["uv", "tool", "install", "--force", f"codedna=={desired}"]
1950
+ label = "uv tool install --force"
1951
+ else:
1952
+ cmd = [sys.executable, "-m", "pip", "install", "--upgrade", f"codedna=={desired}"]
1953
+ label = "pip install --upgrade"
1954
+
1955
+ console.print(f" [cyan]→[/cyan] Running: {label} codedna=={desired}")
1956
+ try:
1957
+ result = subprocess.run(cmd, capture_output=True, text=True, timeout=120)
1958
+ except subprocess.TimeoutExpired:
1959
+ console.print(" [red]✗[/red] Install timed out after 120s")
1960
+ raise typer.Exit(1)
1961
+ except Exception as e:
1962
+ console.print(f" [red]✗[/red] Install failed: {e}")
1963
+ raise typer.Exit(1)
1964
+
1965
+ if result.returncode != 0:
1966
+ console.print(f" [red]✗[/red] Install returned exit code {result.returncode}")
1967
+ if result.stderr:
1968
+ # Show last 10 lines of stderr
1969
+ for line in result.stderr.strip().split("\n")[-10:]:
1970
+ console.print(f" [dim]{line}[/dim]")
1971
+ raise typer.Exit(1)
1972
+
1973
+ # 5. Verify new version
1974
+ try:
1975
+ # Re-import to get fresh metadata
1976
+ import importlib
1977
+ importlib.reload(codedna)
1978
+ new_ver = codedna.__version__
1979
+ except Exception:
1980
+ new_ver = "?"
1981
+
1982
+ console.print()
1983
+ if new_ver == desired:
1984
+ console.print(f" [bold green]✓ Updated {current} → {new_ver}[/bold green]")
1985
+ else:
1986
+ console.print(f" [bold green]✓ Update complete.[/bold green] Installed {desired}; current process shows {new_ver}.")
1987
+ console.print(f" [dim]Restart your shell to pick up the new binary.[/dim]")
1988
+
1989
+
1888
1990
  # ---------------------------------------------------------------------------
1889
1991
  # Helper functions
1890
1992
  # ---------------------------------------------------------------------------
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "codedna"
3
- version = "0.3.1"
3
+ version = "0.3.3"
4
4
  description = "AI Code Transparency Tool - detect AI-written code and measure developer understanding"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes