evolver-tools 32.0.0__tar.gz → 34.0.0__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 (314) hide show
  1. {evolver_tools-32.0.0/src/evolver_tools.egg-info → evolver_tools-34.0.0}/PKG-INFO +8 -9
  2. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/README.md +6 -7
  3. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/pyproject.toml +2 -2
  4. evolver_tools-34.0.0/src/evolver_tools/__init__.py +4 -0
  5. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/cli.py +4 -4
  6. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/agent_b_tool.py +1 -1
  7. evolver_tools-34.0.0/src/evolver_tools/vendor/ansi_to_txt.py +89 -0
  8. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/b64/__init__.py +1 -1
  9. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/cal_tool/__init__.py +1 -1
  10. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/cal_tool/cli.py +1 -1
  11. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/chart_cli/__init__.py +1 -1
  12. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/colors/__init__.py +1 -1
  13. evolver_tools-34.0.0/src/evolver_tools/vendor/cron_check.py +466 -0
  14. evolver_tools-34.0.0/src/evolver_tools/vendor/csv_pretty.py +323 -0
  15. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_stats/__init__.py +1 -1
  16. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_stats/cli.py +1 -1
  17. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/diff_csv.py +1 -1
  18. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/diff_tool/__init__.py +1 -1
  19. evolver_tools-34.0.0/src/evolver_tools/vendor/diff_yaml.py +202 -0
  20. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/dirsize/__init__.py +1 -1
  21. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/dt_convert.py +1 -1
  22. evolver_tools-34.0.0/src/evolver_tools/vendor/emoji_cli.py +465 -0
  23. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/env_manager.py +1 -1
  24. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/envcheck/__init__.py +1 -1
  25. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ff/__init__.py +1 -1
  26. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/find_dups/__init__.py +1 -1
  27. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/find_dups/cli.py +1 -1
  28. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/fmt/__init__.py +1 -1
  29. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/hashsum/__init__.py +1 -1
  30. evolver_tools-34.0.0/src/evolver_tools/vendor/hexdec.py +161 -0
  31. evolver_tools-34.0.0/src/evolver_tools/vendor/html_strip.py +143 -0
  32. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/http_live/__init__.py +1 -1
  33. evolver_tools-34.0.0/src/evolver_tools/vendor/humanize.py +186 -0
  34. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ipcalc/__init__.py +1 -1
  35. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ipinfo/__init__.py +1 -1
  36. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/jq_lite/__init__.py +1 -1
  37. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json2csv/__init__.py +1 -1
  38. evolver_tools-34.0.0/src/evolver_tools/vendor/json_patch.py +319 -0
  39. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/jsonql/__init__.py +1 -1
  40. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/license_cli/__init__.py +1 -1
  41. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/license_cli/cli.py +1 -1
  42. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/log_analyzer.py +1 -1
  43. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/markdown_check/__init__.py +1 -1
  44. evolver_tools-34.0.0/src/evolver_tools/vendor/markdown_format.py +246 -0
  45. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/nb/__init__.py +1 -1
  46. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/passgen/__init__.py +1 -1
  47. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/portcheck/__init__.py +1 -1
  48. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/portcheck/__main__.py +1 -1
  49. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/project_doctor/__init__.py +1 -1
  50. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ren/__init__.py +1 -1
  51. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/siege_lite/__init__.py +1 -1
  52. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/smellfinder/__init__.py +1 -1
  53. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/sqlite_cli/__init__.py +1 -1
  54. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/sysmon/__init__.py +1 -1
  55. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/timer/__init__.py +1 -1
  56. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/treedir/__init__.py +1 -1
  57. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/treedir/__main__.py +1 -1
  58. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/urlparse_tool/__init__.py +1 -1
  59. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/urlparse_tool/cli.py +1 -1
  60. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/uuid_tool/__init__.py +1 -1
  61. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/web_summary/__init__.py +1 -1
  62. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/wordcount/__init__.py +1 -1
  63. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/wordcount/__main__.py +1 -1
  64. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/xml2json.py +1 -1
  65. {evolver_tools-32.0.0 → evolver_tools-34.0.0/src/evolver_tools.egg-info}/PKG-INFO +8 -9
  66. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools.egg-info/SOURCES.txt +10 -0
  67. evolver_tools-32.0.0/src/evolver_tools/__init__.py +0 -4
  68. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/LICENSE +0 -0
  69. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/setup.cfg +0 -0
  70. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/__main__.py +0 -0
  71. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/autoreg.py +0 -0
  72. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/__init__.py +0 -0
  73. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ansi_strip.py +0 -0
  74. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/api_tester.py +0 -0
  75. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ascii_banner.py +0 -0
  76. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ascii_gen.py +0 -0
  77. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/audit_log.py +0 -0
  78. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/b64/b64.py +0 -0
  79. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/backup.py +0 -0
  80. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/banner/__init__.py +0 -0
  81. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/banner/banner.py +0 -0
  82. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/base32.py +0 -0
  83. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/base58.py +0 -0
  84. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/bookmark.py +0 -0
  85. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/calendar_cli.py +0 -0
  86. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/case_convert.py +0 -0
  87. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/cert_check.py +0 -0
  88. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/cert_info.py +0 -0
  89. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/changelog_gen/__init__.py +0 -0
  90. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/changelog_gen/changelog_gen.py +0 -0
  91. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/changelog_gen.py +0 -0
  92. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/chart_cli/__main__.py +0 -0
  93. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/checksum_dir.py +0 -0
  94. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/clipboard/__init__.py +0 -0
  95. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/clipboard/clipboard.py +0 -0
  96. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/code_auditor.py +0 -0
  97. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/code_review.py +0 -0
  98. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/code_stats.py +0 -0
  99. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/colorize.py +0 -0
  100. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/colors/__main__.py +0 -0
  101. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/config_validator.py +0 -0
  102. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/config_vault.py +0 -0
  103. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/cowsay.py +0 -0
  104. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/crc_check.py +0 -0
  105. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/cron/__init__.py +0 -0
  106. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/cron/__main__.py +0 -0
  107. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/cron_pretty.py +0 -0
  108. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/crontab_helper.py +0 -0
  109. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/crypto_box.py +0 -0
  110. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/crypto_price.py +0 -0
  111. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv2json.py +0 -0
  112. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_dedup.py +0 -0
  113. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_filter.py +0 -0
  114. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_head.py +0 -0
  115. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_merge.py +0 -0
  116. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_slice.py +0 -0
  117. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_sort.py +0 -0
  118. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_stats/__main__.py +0 -0
  119. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_stats/analyzer.py +0 -0
  120. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_to_table.py +0 -0
  121. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_validate.py +0 -0
  122. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/csv_view.py +0 -0
  123. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/date_diff.py +0 -0
  124. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/db_mate.py +0 -0
  125. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/db_schema.py +0 -0
  126. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/dedup_files.py +0 -0
  127. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/dep_graph.py +0 -0
  128. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/dev_dashboard.py +0 -0
  129. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/dice_roll.py +0 -0
  130. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/diff_files.py +0 -0
  131. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/diff_tool/__main__.py +0 -0
  132. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/disk_cleanup.py +0 -0
  133. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/disk_usage/__init__.py +0 -0
  134. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/disk_usage/disk_usage.py +0 -0
  135. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/dns_lookup.py +0 -0
  136. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/docker_helper.py +0 -0
  137. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/env_diff.py +0 -0
  138. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/env_sorter.py +0 -0
  139. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/env_template.py +0 -0
  140. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/epoch.py +0 -0
  141. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/excel2csv.py +0 -0
  142. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/factor.py +0 -0
  143. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ff/__main__.py +0 -0
  144. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/figlet_cli.py +0 -0
  145. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/figlet_tool.py +0 -0
  146. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/file_encrypt.py +0 -0
  147. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/file_find.py +0 -0
  148. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/file_joiner.py +0 -0
  149. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/file_patch.py +0 -0
  150. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/file_splitter.py +0 -0
  151. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/file_type.py +0 -0
  152. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/file_watch.py +0 -0
  153. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/find_empty.py +0 -0
  154. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/firewall_rule.py +0 -0
  155. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/fmt/fmt.py +0 -0
  156. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/fold.py +0 -0
  157. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/geo_ip.py +0 -0
  158. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/git_branch_cleaner.py +0 -0
  159. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/git_log_pretty.py +0 -0
  160. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/git_stats.py +0 -0
  161. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/gzip_cli.py +0 -0
  162. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/hash_check.py +0 -0
  163. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/hash_file.py +0 -0
  164. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/hashsum/__main__.py +0 -0
  165. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/hex_tool.py +0 -0
  166. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/hexdump.py +0 -0
  167. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/html2markdown.py +0 -0
  168. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/html2md.py +0 -0
  169. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/http_headers.py +0 -0
  170. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/http_live/__main__.py +0 -0
  171. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/http_server.py +0 -0
  172. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/http_status.py +0 -0
  173. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/image_meta.py +0 -0
  174. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ini2json.py +0 -0
  175. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ini_parser/__init__.py +0 -0
  176. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ini_parser/ini_parser.py +0 -0
  177. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ip_info.py +0 -0
  178. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ip_location.py +0 -0
  179. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ipcalc/__main__.py +0 -0
  180. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ipinfo/__main__.py +0 -0
  181. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/join.py +0 -0
  182. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/joke.py +0 -0
  183. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/jq_lite/__main__.py +0 -0
  184. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json2csv/__main__.py +0 -0
  185. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json2ini.py +0 -0
  186. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json_diff.py +0 -0
  187. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json_flatten.py +0 -0
  188. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json_keys.py +0 -0
  189. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json_merge.py +0 -0
  190. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json_path.py +0 -0
  191. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json_pretty/__init__.py +0 -0
  192. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json_pretty/json_pretty.py +0 -0
  193. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json_schema_validate.py +0 -0
  194. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json_sort.py +0 -0
  195. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json_to_table.py +0 -0
  196. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/json_to_yaml.py +0 -0
  197. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/jsonql/__main__.py +0 -0
  198. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/jwt_decode.py +0 -0
  199. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/key_value_store.py +0 -0
  200. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/license.py +0 -0
  201. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/license_cli/__main__.py +0 -0
  202. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/link_check.py +0 -0
  203. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/log_hawk.py +0 -0
  204. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/log_tail.py +0 -0
  205. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/mac_address.py +0 -0
  206. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/macrogen.py +0 -0
  207. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/markdown_lint.py +0 -0
  208. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/markdown_preview.py +0 -0
  209. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/markdown_to_html.py +0 -0
  210. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/markdown_toc.py +0 -0
  211. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/math_eval.py +0 -0
  212. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/media_studio.py +0 -0
  213. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/morse.py +0 -0
  214. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/nb/__main__.py +0 -0
  215. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/net_analyzer.py +0 -0
  216. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/net_speed.py +0 -0
  217. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/network_scan.py +0 -0
  218. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/nl.py +0 -0
  219. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/note_taker.py +0 -0
  220. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/otp_gen.py +0 -0
  221. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/password_strength.py +0 -0
  222. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/pdf_info.py +0 -0
  223. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/pdf_text.py +0 -0
  224. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/pipe_viewer.py +0 -0
  225. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/pomodoro.py +0 -0
  226. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/port_scan.py +0 -0
  227. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/pr_tool/__init__.py +0 -0
  228. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/pr_tool/pr_tool.py +0 -0
  229. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/process_kill.py +0 -0
  230. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/progress_bar.py +0 -0
  231. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/project_doctor/__main__.py +0 -0
  232. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/qc_calc.py +0 -0
  233. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/qc_report.py +0 -0
  234. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/qc_sample.py +0 -0
  235. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/qr_cli.py +0 -0
  236. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/qrcode.py +0 -0
  237. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/quote.py +0 -0
  238. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/quote_tool/__init__.py +0 -0
  239. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/quote_tool/quote.py +0 -0
  240. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/rainbow.py +0 -0
  241. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/random.py +0 -0
  242. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/random_cli.py +0 -0
  243. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/random_string.py +0 -0
  244. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/reminder.py +0 -0
  245. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ren/__main__.py +0 -0
  246. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/replace_text.py +0 -0
  247. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/restore.py +0 -0
  248. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/rot13.py +0 -0
  249. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/route_trace.py +0 -0
  250. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/scan_open_ports.py +0 -0
  251. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/scan_ports.py +0 -0
  252. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/screen_recorder.py +0 -0
  253. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/screenshot_cli.py +0 -0
  254. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/search_files.py +0 -0
  255. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/search_history.py +0 -0
  256. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/secret_scanner.py +0 -0
  257. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/seq.py +0 -0
  258. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/service_check.py +0 -0
  259. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/shuffle.py +0 -0
  260. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/siege_lite/__main__.py +0 -0
  261. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/slugify.py +0 -0
  262. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/smellfinder/__main__.py +0 -0
  263. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/sort/__init__.py +0 -0
  264. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/sort/sort.py +0 -0
  265. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/spinner.py +0 -0
  266. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/split.py +0 -0
  267. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/split_tool/__init__.py +0 -0
  268. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/split_tool/split.py +0 -0
  269. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/sql2csv.py +0 -0
  270. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/sqlite_cli/__main__.py +0 -0
  271. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ssh_key_gen.py +0 -0
  272. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/ssl_check.py +0 -0
  273. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/stopwatch.py +0 -0
  274. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/subnet.py +0 -0
  275. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/sysmon/__main__.py +0 -0
  276. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/sysmon_pro.py +0 -0
  277. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/system_info.py +0 -0
  278. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/temp_cleaner.py +0 -0
  279. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/template.py +0 -0
  280. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/text_dedent.py +0 -0
  281. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/text_stats.py +0 -0
  282. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/text_wrap.py +0 -0
  283. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/time_duration.py +0 -0
  284. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/timeout.py +0 -0
  285. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/timer_pro/__init__.py +0 -0
  286. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/timer_pro/timer_pro.py +0 -0
  287. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/timer_pro.py +0 -0
  288. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/todo_cli.py +0 -0
  289. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/toml2json.py +0 -0
  290. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/tr.py +0 -0
  291. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/tree.py +0 -0
  292. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/tsv2csv.py +0 -0
  293. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/uniq_tool/__init__.py +0 -0
  294. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/uniq_tool/uniq.py +0 -0
  295. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/unit_convert.py +0 -0
  296. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/uri_encode.py +0 -0
  297. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/url_parser.py +0 -0
  298. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/uuid_gen.py +0 -0
  299. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/uuid_tool/__main__.py +0 -0
  300. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/watch.py +0 -0
  301. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/weather_cli.py +0 -0
  302. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/web_download.py +0 -0
  303. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/web_summary/__main__.py +0 -0
  304. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/whois_lookup.py +0 -0
  305. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/world_clock.py +0 -0
  306. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/xml_format.py +0 -0
  307. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/yaml2json/__init__.py +0 -0
  308. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/yaml2json/yaml2json.py +0 -0
  309. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/yaml2toml.py +0 -0
  310. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/yaml_validate.py +0 -0
  311. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools/vendor/yes.py +0 -0
  312. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools.egg-info/dependency_links.txt +0 -0
  313. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools.egg-info/entry_points.txt +0 -0
  314. {evolver_tools-32.0.0 → evolver_tools-34.0.0}/src/evolver_tools.egg-info/top_level.txt +0 -0
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: evolver-tools
3
- Version: 32.0.0
4
- Summary: 234 CLI tools + 9 flagship projects — one pip install
3
+ Version: 34.0.0
4
+ Summary: 244 CLI tools + 9 flagship projects — one pip install
5
5
  Author: EVOLVER
6
6
  License-Expression: MIT
7
7
  Project-URL: Homepage, https://evolver-dev.github.io/evolver-tools
@@ -22,17 +22,17 @@ Dynamic: license-file
22
22
 
23
23
  # EVOLVER Tools
24
24
 
25
- **238 CLI tools + 9 flagship projects — one `pip install`.**
25
+ **244 CLI tools + 9 flagship projects — one `pip install`.**
26
26
 
27
- Zero-dependency (235/238), cross-platform, production-ready. Version **31.0.0**.
27
+ Zero-dependency (240/244), cross-platform, production-ready. Version **34.0.0**.
28
28
  Systems ops, data processing, text manipulation, security, dev tooling, and creative utilities.
29
- All in a single install — not 238 separate packages.
29
+ All in a single install — not 239 separate packages.
30
30
 
31
31
  ## Quick Start
32
32
 
33
33
  ```bash
34
34
  pip install evolver-tools
35
- evtool list # Show all 233+ tools
35
+ evtool list # Show all 244 tools
36
36
  evtool sysmon # Launch system monitor
37
37
  evtool ff < data.txt # Fuzzy search through data
38
38
  evtool csv-stats data.csv # Analyze CSV columns
@@ -281,8 +281,7 @@ Nine flagship projects ship as integrated CLI+TUI suites within evolver-tools:
281
281
  ## Requirements
282
282
 
283
283
  - Python 3.8+
284
- - No external dependencies for 230 of 233 tools (stdlib only)
285
- - A few tools (sysmon, sysmon-pro, etc.) optionally use psutil
284
+ - No external dependencies for 239 of 239 tools (stdlib only)
286
285
  - Network-dependent tools (ipinfo, weather, etc.) use public APIs
287
286
 
288
287
  ## Pricing
@@ -291,7 +290,7 @@ evolver-tools is **MIT open source** and free forever for all tools.
291
290
 
292
291
  | Tier | Price | What you get |
293
292
  |------|-------|-------------|
294
- | **Free (MIT)** | ¥0 | All 233+ tools, full source, forever |
293
+ | **Free (MIT)** | ¥0 | All 239 tools, full source, forever |
295
294
  | **Full Suite** | ¥79 one-time | All tools + priority support + early access + name in credits |
296
295
  | **Sponsor** | ¥5/month | GitHub Sponsors badge + Discord + vote on priorities |
297
296
  | **Enterprise Basic** | ¥500/year | Custom tool development |
@@ -1,16 +1,16 @@
1
1
  # EVOLVER Tools
2
2
 
3
- **238 CLI tools + 9 flagship projects — one `pip install`.**
3
+ **244 CLI tools + 9 flagship projects — one `pip install`.**
4
4
 
5
- Zero-dependency (235/238), cross-platform, production-ready. Version **31.0.0**.
5
+ Zero-dependency (240/244), cross-platform, production-ready. Version **34.0.0**.
6
6
  Systems ops, data processing, text manipulation, security, dev tooling, and creative utilities.
7
- All in a single install — not 238 separate packages.
7
+ All in a single install — not 239 separate packages.
8
8
 
9
9
  ## Quick Start
10
10
 
11
11
  ```bash
12
12
  pip install evolver-tools
13
- evtool list # Show all 233+ tools
13
+ evtool list # Show all 244 tools
14
14
  evtool sysmon # Launch system monitor
15
15
  evtool ff < data.txt # Fuzzy search through data
16
16
  evtool csv-stats data.csv # Analyze CSV columns
@@ -259,8 +259,7 @@ Nine flagship projects ship as integrated CLI+TUI suites within evolver-tools:
259
259
  ## Requirements
260
260
 
261
261
  - Python 3.8+
262
- - No external dependencies for 230 of 233 tools (stdlib only)
263
- - A few tools (sysmon, sysmon-pro, etc.) optionally use psutil
262
+ - No external dependencies for 239 of 239 tools (stdlib only)
264
263
  - Network-dependent tools (ipinfo, weather, etc.) use public APIs
265
264
 
266
265
  ## Pricing
@@ -269,7 +268,7 @@ evolver-tools is **MIT open source** and free forever for all tools.
269
268
 
270
269
  | Tier | Price | What you get |
271
270
  |------|-------|-------------|
272
- | **Free (MIT)** | ¥0 | All 233+ tools, full source, forever |
271
+ | **Free (MIT)** | ¥0 | All 239 tools, full source, forever |
273
272
  | **Full Suite** | ¥79 one-time | All tools + priority support + early access + name in credits |
274
273
  | **Sponsor** | ¥5/month | GitHub Sponsors badge + Discord + vote on priorities |
275
274
  | **Enterprise Basic** | ¥500/year | Custom tool development |
@@ -4,8 +4,8 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "evolver-tools"
7
- version = "32.0.0"
8
- description = "234 CLI tools + 9 flagship projects — one pip install"
7
+ version = "34.0.0"
8
+ description = "244 CLI tools + 9 flagship projects — one pip install"
9
9
  readme = "README.md"
10
10
  license = "MIT"
11
11
  requires-python = ">=3.8"
@@ -0,0 +1,4 @@
1
+ """evolver-tools: 244 CLI tools + 9 flagship projects — one pip install."""
2
+ __version__ = "34.0.0"
3
+
4
+ from .autoreg import auto_discover
@@ -14,21 +14,21 @@ from evolver_tools.autoreg import auto_discover
14
14
  def list_tools():
15
15
  """Display all available tools."""
16
16
  tools = auto_discover()
17
- print(f'\x1b[1;36m===== EVOLVER Tools v31.0.0 =====\x1b[0m')
17
+ print(f'\x1b[1;36m===== EVOLVER Tools v34.0.0 =====\x1b[0m')
18
18
  print()
19
19
  for name, info in sorted(tools.items()):
20
20
  print(f' \033[1;33m{name:<18}\033[0m {info["desc"]}')
21
21
  print()
22
22
  print(f' Total: {len(tools)} tools')
23
23
  print()
24
- print('Usage: evolver <toolname> [args...]')
25
- print(' evolver list')
24
+ print('Usage: evtool <toolname> [args...]')
25
+ print(' evtool list')
26
26
 
27
27
 
28
28
  def run_tool(tool_name, args):
29
29
  tools = auto_discover()
30
30
  if tool_name not in tools:
31
- print(f'Unknown tool: {tool_name}')
31
+ print(f'Unknown tool: {tool_name}. Use \"evtool list\" to see all tools.')
32
32
  sys.exit(1)
33
33
  info = tools[tool_name]
34
34
  mod_path = info["module"]
@@ -5,5 +5,5 @@ def main():
5
5
  TOOL_META = {
6
6
  "name": "agent-b-tool",
7
7
  "func": "main",
8
- "desc": 'Agent B tool',
8
+ "desc": 'Dual-agent collaborative workflow tool',
9
9
  }
@@ -0,0 +1,89 @@
1
+ #!/usr/bin/env python3
2
+ """ansi-to-txt — Convert ANSI-colored terminal output to plain text."""
3
+ TOOL_META = {"name": "ansi-to-txt", "desc": "Strip ANSI escape codes, convert to plain text", "func": "main"}
4
+
5
+ import sys
6
+ import re
7
+ import argparse
8
+
9
+
10
+ # Regex to match ANSI escape sequences
11
+ ANSI_ESCAPE = re.compile(r'\x1b\[[0-9;]*[a-zA-Z]|\x1b\][0-9;]*(?:\x07|\x1b\\)|\x1b[PX^_].*?(?:\x07|\x1b\\)')
12
+
13
+ # C1 control characters (rare but possible)
14
+ C1_CONTROLS = re.compile(r'[\x80-\x9a\x9c\x9b\x9d-\x9f]')
15
+
16
+
17
+ def strip_ansi(text):
18
+ """Remove all ANSI escape sequences from text."""
19
+ text = ANSI_ESCAPE.sub('', text)
20
+ text = C1_CONTROLS.sub('', text)
21
+ return text
22
+
23
+
24
+ def simplify_ansi(text):
25
+ """Replace known ANSI formatting with simple markers."""
26
+ # Bold → *text*
27
+ text = re.sub(r'\x1b\[1m(.*?)\x1b\[0m', r'*\1*', text)
28
+ text = re.sub(r'\x1b\[1m(.*?)\x1b\[(?:2[2-9]|3[0-7])?m', r'*\1*', text)
29
+ # Underline → _text_
30
+ text = re.sub(r'\x1b\[4m(.*?)\x1b\[0m', r'_\1_', text)
31
+ # Remove all remaining sequences
32
+ text = ANSI_ESCAPE.sub('', text)
33
+ text = C1_CONTROLS.sub('', text)
34
+ return text
35
+
36
+
37
+ def main():
38
+ parser = argparse.ArgumentParser(
39
+ description="Strip ANSI escape codes and convert to plain text.",
40
+ formatter_class=argparse.RawDescriptionHelpFormatter,
41
+ epilog="""
42
+ Examples:
43
+ command-with-colors | ansi-to-txt
44
+ ansi-to-txt --file output.log > clean.txt
45
+ ls --color=always | ansi-to-txt
46
+ make 2>&1 | ansi-to-txt --simplify
47
+ cat ansi_output.txt | ansi-to-txt -o clean.txt
48
+ """,
49
+ )
50
+ parser.add_argument("--file", "-f", help="File with ANSI codes to process")
51
+ parser.add_argument("--output", "-o", help="Output file (default: stdout)")
52
+ parser.add_argument("--simplify", "-s", action="store_true",
53
+ help="Replace bold/underline with *text*/_text_ markers instead of stripping")
54
+ args = parser.parse_args()
55
+
56
+ if args.file:
57
+ try:
58
+ with open(args.file, "rb") as f:
59
+ raw = f.read()
60
+ except FileNotFoundError:
61
+ print(f"Error: file not found: {args.file}", file=sys.stderr)
62
+ sys.exit(1)
63
+ except Exception as e:
64
+ print(f"Error: {e}", file=sys.stderr)
65
+ sys.exit(1)
66
+ else:
67
+ raw = sys.stdin.buffer.read()
68
+
69
+ # Decode with replacement for bad bytes
70
+ text = raw.decode("utf-8", errors="replace")
71
+
72
+ if args.simplify:
73
+ result = simplify_ansi(text)
74
+ else:
75
+ result = strip_ansi(text)
76
+
77
+ if args.output:
78
+ try:
79
+ with open(args.output, "w", encoding="utf-8") as f:
80
+ f.write(result)
81
+ except Exception as e:
82
+ print(f"Error writing: {e}", file=sys.stderr)
83
+ sys.exit(1)
84
+ else:
85
+ sys.stdout.write(result)
86
+
87
+
88
+ if __name__ == "__main__":
89
+ main()
@@ -5,5 +5,5 @@ from .b64 import *
5
5
  TOOL_META = {
6
6
  "name": "b64",
7
7
  "func": "main",
8
- "desc": 'b64',
8
+ "desc": 'Base64 encode/decode with auto-detection',
9
9
  }
@@ -4,6 +4,6 @@ __version__ = "1.0.0"
4
4
  TOOL_META = {
5
5
  "name": "cal",
6
6
  "func": "main",
7
- "desc": 'Cal',
7
+ "desc": 'Calendar and date calculator',
8
8
  "submodule": "cli",
9
9
  }
@@ -235,7 +235,7 @@ def main():
235
235
  TOOL_META = {
236
236
  "name": "cal",
237
237
  "func": "main",
238
- "desc": 'Cal',
238
+ "desc": 'Calendar and date calculator',
239
239
  }
240
240
 
241
241
  if __name__ == "__main__":
@@ -445,7 +445,7 @@ def main():
445
445
  TOOL_META = {
446
446
  "name": "chart-cli",
447
447
  "func": "main",
448
- "desc": 'Chart CLI',
448
+ "desc": 'Terminal chart generator (bar, line, pie, histogram)',
449
449
  }
450
450
 
451
451
  if __name__ == '__main__':
@@ -8,5 +8,5 @@ __all__ = ['hex_to_rgb', 'rgb_to_hex', 'hsl_to_rgb', 'show_256', 'show_basic', '
8
8
  TOOL_META = {
9
9
  "name": "colors",
10
10
  "func": "main",
11
- "desc": 'Colors',
11
+ "desc": '256-color table, HEX/RGB conversion, terminal colors',
12
12
  }