codegreen 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 (215) hide show
  1. {codegreen-0.2.1 → codegreen-0.2.2}/CMakeLists.txt +12 -6
  2. {codegreen-0.2.1/codegreen.egg-info → codegreen-0.2.2}/PKG-INFO +1 -1
  3. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/__init__.py +1 -1
  4. {codegreen-0.2.1 → codegreen-0.2.2/codegreen.egg-info}/PKG-INFO +1 -1
  5. {codegreen-0.2.1 → codegreen-0.2.2}/pyproject.toml +2 -1
  6. codegreen-0.2.2/setup.py +125 -0
  7. codegreen-0.2.1/setup.py +0 -105
  8. {codegreen-0.2.1 → codegreen-0.2.2}/LICENSE +0 -0
  9. {codegreen-0.2.1 → codegreen-0.2.2}/MANIFEST.in +0 -0
  10. {codegreen-0.2.1 → codegreen-0.2.2}/README.md +0 -0
  11. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/__init__.py +0 -0
  12. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/__main__.py +0 -0
  13. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/compilers.py +0 -0
  14. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/config.py +0 -0
  15. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/harness.py +0 -0
  16. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/profilers.py +0 -0
  17. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/results.py +0 -0
  18. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/suites/__init__.py +0 -0
  19. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/suites/base.py +0 -0
  20. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/suites/benchmarksgame.py +0 -0
  21. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/suites/perfopt.py +0 -0
  22. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/validation/__init__.py +0 -0
  23. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/validation/analysis.py +0 -0
  24. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/validation/experiments.py +0 -0
  25. {codegreen-0.2.1 → codegreen-0.2.2}/benchmark/validation/reporting.py +0 -0
  26. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analysis/__init__.py +0 -0
  27. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analysis/_ts_java.py +0 -0
  28. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analysis/cfg/__init__.py +0 -0
  29. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analysis/cfg/builder.py +0 -0
  30. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analysis/cfg/callgraph.py +0 -0
  31. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analysis/cfg/dataflow.py +0 -0
  32. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analysis/cfg/energy_flow.py +0 -0
  33. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analysis/cfg/features.py +0 -0
  34. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analysis/cfg/pdg.py +0 -0
  35. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analysis/cfg/types.py +0 -0
  36. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analysis/cfg/visualization.py +0 -0
  37. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analyzer/__init__.py +0 -0
  38. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/analyzer/plot.py +0 -0
  39. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/cli/__init__.py +0 -0
  40. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/cli/cli.py +0 -0
  41. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/cli/entrypoint.py +0 -0
  42. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/config.json +0 -0
  43. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/__init__.py +0 -0
  44. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/ast_processor.py +0 -0
  45. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/bridge_analyze.py +0 -0
  46. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/bridge_instrument.py +0 -0
  47. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/config.py +0 -0
  48. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/configs/TEMPLATE.json +0 -0
  49. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/configs/c.json +0 -0
  50. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/configs/cpp.json +0 -0
  51. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/configs/java.json +0 -0
  52. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/configs/javascript.json +0 -0
  53. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/configs/python.json +0 -0
  54. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/engine.py +0 -0
  55. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/language_configs.py +0 -0
  56. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/language_engine.py +0 -0
  57. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/language_runtimes/c/codegreen_runtime.h +0 -0
  58. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/language_runtimes/cpp/codegreen/runtime.hpp +0 -0
  59. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/language_runtimes/java/codegreen/runtime/CodeGreenRuntime.java +0 -0
  60. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/language_runtimes/java/codegreen/runtime/CodeGreenStandaloneRuntime.java +0 -0
  61. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/instrumentation/language_runtimes/python/codegreen_runtime.py +0 -0
  62. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/utils/__init__.py +0 -0
  63. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/utils/binary.py +0 -0
  64. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen/utils/platform.py +0 -0
  65. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen.egg-info/SOURCES.txt +0 -0
  66. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen.egg-info/dependency_links.txt +0 -0
  67. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen.egg-info/entry_points.txt +0 -0
  68. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen.egg-info/not-zip-safe +0 -0
  69. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen.egg-info/requires.txt +0 -0
  70. {codegreen-0.2.1 → codegreen-0.2.2}/codegreen.egg-info/top_level.txt +0 -0
  71. {codegreen-0.2.1 → codegreen-0.2.2}/requirements.txt +0 -0
  72. {codegreen-0.2.1 → codegreen-0.2.2}/setup.cfg +0 -0
  73. {codegreen-0.2.1 → codegreen-0.2.2}/tests/test_instrumentation.py +0 -0
  74. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/binarytrees/2.c +0 -0
  75. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/helloworld/1.c +0 -0
  76. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/knucleotide/1.c +0 -0
  77. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/mandelbrot/1-ffi.c +0 -0
  78. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/mandelbrot/1-mffi.c +0 -0
  79. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/nbody/2.c +0 -0
  80. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/nbody/5.c +0 -0
  81. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/nbody/8-i.c +0 -0
  82. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/nsieve/1.c +0 -0
  83. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/spectral-norm/3.c +0 -0
  84. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/spectral-norm/4.c +0 -0
  85. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/spectral-norm/5-im.c +0 -0
  86. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/Programming-Language-Benchmarks/bench/algorithm/spectral-norm/6-im.c +0 -0
  87. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/aligned_indent.c +0 -0
  88. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/array.c +0 -0
  89. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/comment.c +0 -0
  90. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/compound_lit.c +0 -0
  91. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/cond.c +0 -0
  92. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/enum.c +0 -0
  93. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/expr.c +0 -0
  94. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/func.c +0 -0
  95. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/if_else.c +0 -0
  96. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/issue-1568.c +0 -0
  97. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/issue-2086.c +0 -0
  98. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/issue-4079.c +0 -0
  99. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/issue-4117.c +0 -0
  100. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/issue-4525.c +0 -0
  101. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/label.c +0 -0
  102. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/loop.c +0 -0
  103. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/no_braces.c +0 -0
  104. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/preproc_cond.c +0 -0
  105. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/preproc_func.c +0 -0
  106. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/string.c +0 -0
  107. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/struct.c +0 -0
  108. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/switch.c +0 -0
  109. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/ternary.c +0 -0
  110. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/indent/c/unfinished_comment.c +0 -0
  111. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/nvim-treesitter/tests/query/highlights/c/enums-as-constants.c +0 -0
  112. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/crates/cli/src/templates/PARSER_NAME.h +0 -0
  113. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/crates/cli/src/templates/py-binding.c +0 -0
  114. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/crates/generate/src/templates/alloc.h +0 -0
  115. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/crates/generate/src/templates/array.h +0 -0
  116. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/crates/highlight/include/tree_sitter/highlight.h +0 -0
  117. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/crates/tags/include/tree_sitter/tags.h +0 -0
  118. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/CMakeLists.txt +0 -0
  119. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/binding_web/lib/tree-sitter.c +0 -0
  120. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/include/tree_sitter/api.h +0 -0
  121. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/alloc.c +0 -0
  122. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/alloc.h +0 -0
  123. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/array.h +0 -0
  124. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/atomic.h +0 -0
  125. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/clock.h +0 -0
  126. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/error_costs.h +0 -0
  127. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/get_changed_ranges.c +0 -0
  128. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/get_changed_ranges.h +0 -0
  129. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/host.h +0 -0
  130. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/language.c +0 -0
  131. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/language.h +0 -0
  132. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/length.h +0 -0
  133. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/lexer.c +0 -0
  134. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/lexer.h +0 -0
  135. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/lib.c +0 -0
  136. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/node.c +0 -0
  137. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/parser.c +0 -0
  138. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/parser.h +0 -0
  139. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/point.h +0 -0
  140. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/portable/endian.h +0 -0
  141. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/query.c +0 -0
  142. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/reduce_action.h +0 -0
  143. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/reusable_node.h +0 -0
  144. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/stack.c +0 -0
  145. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/stack.h +0 -0
  146. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/subtree.c +0 -0
  147. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/subtree.h +0 -0
  148. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/tree.c +0 -0
  149. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/tree.h +0 -0
  150. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/tree_cursor.c +0 -0
  151. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/tree_cursor.h +0 -0
  152. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/ts_assert.h +0 -0
  153. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/unicode/ptypes.h +0 -0
  154. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/unicode/umachine.h +0 -0
  155. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/unicode/urename.h +0 -0
  156. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/unicode/utf.h +0 -0
  157. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/unicode/utf16.h +0 -0
  158. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/unicode/utf8.h +0 -0
  159. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/unicode.h +0 -0
  160. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/wasm/stdlib.c +0 -0
  161. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/wasm/wasm-stdlib.h +0 -0
  162. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/wasm_store.c +0 -0
  163. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/lib/src/wasm_store.h +0 -0
  164. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/test/fixtures/test_grammars/depends_on_column/scanner.c +0 -0
  165. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/test/fixtures/test_grammars/epsilon_external_extra_tokens/scanner.c +0 -0
  166. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/test/fixtures/test_grammars/epsilon_external_tokens/scanner.c +0 -0
  167. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/test/fixtures/test_grammars/external_and_internal_anonymous_tokens/scanner.c +0 -0
  168. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/test/fixtures/test_grammars/external_and_internal_tokens/scanner.c +0 -0
  169. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/test/fixtures/test_grammars/external_extra_tokens/scanner.c +0 -0
  170. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/test/fixtures/test_grammars/external_tokens/scanner.c +0 -0
  171. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/test/fixtures/test_grammars/external_unicode_column_alignment/scanner.c +0 -0
  172. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/test/fixtures/test_grammars/get_col_eof/scanner.c +0 -0
  173. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/test/fixtures/test_grammars/get_col_should_hang_not_crash/scanner.c +0 -0
  174. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/test/fixtures/test_grammars/inverted_external_token/scanner.c +0 -0
  175. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter/test/fixtures/test_grammars/uses_current_column/scanner.c +0 -0
  176. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/CMakeLists.txt +0 -0
  177. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/bindings/c/tree_sitter/tree-sitter-c.h +0 -0
  178. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/bindings/python/tree_sitter_c/binding.c +0 -0
  179. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/bindings/swift/TreeSitterC/c.h +0 -0
  180. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/examples/cluster.c +0 -0
  181. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/examples/malloc.c +0 -0
  182. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/examples/parser.c +0 -0
  183. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/src/parser.c +0 -0
  184. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/src/tree_sitter/alloc.h +0 -0
  185. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/src/tree_sitter/array.h +0 -0
  186. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/src/tree_sitter/parser.h +0 -0
  187. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/test/highlight/keywords.c +0 -0
  188. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-c/test/highlight/names.c +0 -0
  189. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-cpp/CMakeLists.txt +0 -0
  190. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-cpp/bindings/c/tree-sitter-cpp.h +0 -0
  191. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-cpp/bindings/python/tree_sitter_cpp/binding.c +0 -0
  192. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-cpp/bindings/swift/TreeSitterCPP/cpp.h +0 -0
  193. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-cpp/examples/marker-index.h +0 -0
  194. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-cpp/src/parser.c +0 -0
  195. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-cpp/src/scanner.c +0 -0
  196. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-cpp/src/tree_sitter/alloc.h +0 -0
  197. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-cpp/src/tree_sitter/array.h +0 -0
  198. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-cpp/src/tree_sitter/parser.h +0 -0
  199. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-java/CMakeLists.txt +0 -0
  200. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-java/bindings/c/tree-sitter-java.h +0 -0
  201. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-java/bindings/python/tree_sitter_java/binding.c +0 -0
  202. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-java/bindings/swift/TreeSitterJava/java.h +0 -0
  203. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-java/src/parser.c +0 -0
  204. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-java/src/tree_sitter/alloc.h +0 -0
  205. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-java/src/tree_sitter/array.h +0 -0
  206. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-java/src/tree_sitter/parser.h +0 -0
  207. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-python/CMakeLists.txt +0 -0
  208. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-python/bindings/c/tree-sitter-python.h +0 -0
  209. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-python/bindings/python/tree_sitter_python/binding.c +0 -0
  210. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-python/bindings/swift/TreeSitterPython/python.h +0 -0
  211. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-python/src/parser.c +0 -0
  212. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-python/src/scanner.c +0 -0
  213. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-python/src/tree_sitter/alloc.h +0 -0
  214. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-python/src/tree_sitter/array.h +0 -0
  215. {codegreen-0.2.1 → codegreen-0.2.2}/third_party/tree-sitter-python/src/tree_sitter/parser.h +0 -0
@@ -16,7 +16,7 @@ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
16
16
  set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
17
17
 
18
18
  # Find required packages
19
- find_package(PkgConfig REQUIRED)
19
+ find_package(PkgConfig)
20
20
  find_package(Threads REQUIRED)
21
21
 
22
22
  # Optional GPU library support
@@ -47,10 +47,16 @@ else()
47
47
  set(HAVE_ROCM_SMI OFF)
48
48
  endif()
49
49
 
50
- # Find system libraries
51
- pkg_check_modules(JSONCPP REQUIRED jsoncpp)
52
- pkg_check_modules(CURL REQUIRED libcurl)
53
- pkg_check_modules(SQLITE3 REQUIRED sqlite3)
50
+ # System libraries (required for legacy core on Linux, not for NEMB-only macOS builds)
51
+ if(NOT APPLE)
52
+ pkg_check_modules(JSONCPP REQUIRED jsoncpp)
53
+ pkg_check_modules(CURL REQUIRED libcurl)
54
+ pkg_check_modules(SQLITE3 REQUIRED sqlite3)
55
+ else()
56
+ pkg_check_modules(JSONCPP jsoncpp)
57
+ pkg_check_modules(CURL libcurl)
58
+ pkg_check_modules(SQLITE3 sqlite3)
59
+ endif()
54
60
 
55
61
  # Global include directories
56
62
  include_directories(${CMAKE_SOURCE_DIR}/codegreen/measurement/include)
@@ -248,7 +254,7 @@ add_custom_target(dev-install ALL
248
254
  COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_SOURCE_DIR}/bin
249
255
  COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/codegreen ${CMAKE_SOURCE_DIR}/bin/
250
256
  COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_SOURCE_DIR}/lib
251
- COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/lib/libcodegreen-nemb.so ${CMAKE_SOURCE_DIR}/lib/
257
+ COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/lib/libcodegreen-nemb${CMAKE_SHARED_LIBRARY_SUFFIX} ${CMAKE_SOURCE_DIR}/lib/
252
258
  COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/lib/libcodegreen-core.a ${CMAKE_SOURCE_DIR}/lib/
253
259
  COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_SOURCE_DIR}/bin/python/instrumentation
254
260
  COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/codegreen/instrumentation/bridge_analyze.py ${CMAKE_SOURCE_DIR}/bin/python/instrumentation/
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codegreen
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary: Energy-aware software development tool for measuring and optimizing code energy consumption
5
5
  Author-email: Saurabhsingh Rajput <saurabh@dal.ca>
6
6
  Maintainer-email: Saurabhsingh Rajput <saurabh@dal.ca>
@@ -5,7 +5,7 @@ A comprehensive energy measurement and code optimization tool for developers
5
5
  and researchers who need precise, fine-grained energy consumption analysis.
6
6
  """
7
7
 
8
- __version__ = "0.2.1"
8
+ __version__ = "0.2.2"
9
9
  __author__ = "Saurabhsingh Rajput"
10
10
  __email__ = "saurabh@dal.ca"
11
11
  __description__ = "Energy-aware software development tool"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codegreen
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary: Energy-aware software development tool for measuring and optimizing code energy consumption
5
5
  Author-email: Saurabhsingh Rajput <saurabh@dal.ca>
6
6
  Maintainer-email: Saurabhsingh Rajput <saurabh@dal.ca>
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "codegreen"
7
- version = "0.2.1"
7
+ version = "0.2.2"
8
8
  description = "Energy-aware software development tool for measuring and optimizing code energy consumption"
9
9
  readme = "README.md"
10
10
  license = {file = "LICENSE"}
@@ -105,6 +105,7 @@ find = {where = ["."], include = [
105
105
  "codegreen" = [
106
106
  "config.json",
107
107
  "lib/*.so",
108
+ "lib/*.dylib",
108
109
  "lib/runtime/**/*.h",
109
110
  "bin/codegreen",
110
111
  ]
@@ -0,0 +1,125 @@
1
+ #!/usr/bin/env python3
2
+ """CodeGreen setup with C++ backend compilation for wheel builds."""
3
+
4
+ import os
5
+ import platform
6
+ import shutil
7
+ import subprocess
8
+ import sys
9
+ from pathlib import Path
10
+ from setuptools import setup, Distribution
11
+ from setuptools.command.build_py import build_py
12
+
13
+ _EXCLUDE_DIRS = {"ide", "measurement", "optimizer"}
14
+ _NATIVE_LIB = {
15
+ "Darwin": "libcodegreen-nemb.dylib",
16
+ "Linux": "libcodegreen-nemb.so",
17
+ }
18
+
19
+
20
+ def _find_native_lib(source_dir: Path) -> Path | None:
21
+ """Find the NEMB shared library for the current platform."""
22
+ name = _NATIVE_LIB.get(platform.system())
23
+ if not name:
24
+ return None
25
+ path = source_dir / "lib" / name
26
+ return path if path.exists() else None
27
+
28
+
29
+ class BuildWithCMake(build_py):
30
+ """Build C++ backend via cmake, then run normal build_py."""
31
+
32
+ def run(self):
33
+ source_dir = Path(__file__).resolve().parent
34
+ native_lib = _find_native_lib(source_dir)
35
+
36
+ if not native_lib:
37
+ self._try_cmake_build(source_dir)
38
+ native_lib = _find_native_lib(source_dir)
39
+
40
+ super().run()
41
+ if self.build_lib:
42
+ self._install_native_artifacts(source_dir, native_lib)
43
+
44
+ def _try_cmake_build(self, source_dir: Path) -> None:
45
+ try:
46
+ build_dir = source_dir / "build"
47
+ build_dir.mkdir(exist_ok=True)
48
+ subprocess.check_call(
49
+ ["cmake", str(source_dir), "-DCMAKE_BUILD_TYPE=Release",
50
+ f"-DPython3_EXECUTABLE={sys.executable}"],
51
+ cwd=build_dir)
52
+ subprocess.check_call(
53
+ ["cmake", "--build", ".", "--config", "Release",
54
+ "-j", str(os.cpu_count() or 2)],
55
+ cwd=build_dir)
56
+ except (subprocess.CalledProcessError, FileNotFoundError) as e:
57
+ print(f"NEMB build skipped ({e.__class__.__name__}). "
58
+ "Python-only install (no native energy measurement).")
59
+
60
+ def _install_native_artifacts(self, source_dir: Path, native_lib: Path | None) -> None:
61
+ build_src = Path(self.build_lib) / "codegreen"
62
+ for d in _EXCLUDE_DIRS:
63
+ bad = build_src / d
64
+ if bad.exists():
65
+ shutil.rmtree(bad)
66
+
67
+ if not native_lib:
68
+ return
69
+
70
+ dest_lib = build_src / "lib"
71
+ dest_lib.mkdir(parents=True, exist_ok=True)
72
+ self.copy_file(str(native_lib), str(dest_lib / native_lib.name))
73
+
74
+ bin_file = source_dir / "build" / "bin" / "codegreen"
75
+ if not bin_file.exists():
76
+ bin_file = source_dir / "bin" / "codegreen"
77
+ if bin_file.exists():
78
+ dest_bin = build_src / "bin"
79
+ dest_bin.mkdir(parents=True, exist_ok=True)
80
+ self.copy_file(str(bin_file), str(dest_bin / "codegreen"))
81
+ os.chmod(str(dest_bin / "codegreen"), 0o755)
82
+
83
+ rt_base = source_dir / "codegreen" / "instrumentation" / "language_runtimes"
84
+ for lang in ("c", "cpp"):
85
+ header = rt_base / lang / "codegreen_runtime.h"
86
+ if header.exists():
87
+ dest_rt = dest_lib / "runtime" / lang
88
+ dest_rt.mkdir(parents=True, exist_ok=True)
89
+ self.copy_file(str(header), str(dest_rt / "codegreen_runtime.h"))
90
+
91
+
92
+ class BinaryDistribution(Distribution):
93
+ def has_ext_modules(self):
94
+ return _find_native_lib(Path(__file__).resolve().parent) is not None
95
+
96
+
97
+ PACKAGES = [
98
+ "codegreen", "codegreen.cli", "codegreen.analyzer", "codegreen.instrumentation", "codegreen.utils",
99
+ "codegreen.analysis", "codegreen.analysis.cfg",
100
+ "benchmark", "benchmark.validation", "benchmark.suites",
101
+ ]
102
+
103
+ setup(
104
+ distclass=BinaryDistribution,
105
+ packages=PACKAGES,
106
+ cmdclass={"build_py": BuildWithCMake},
107
+ package_data={
108
+ "codegreen.instrumentation": [
109
+ "configs/*.json",
110
+ "language_runtimes/python/*.py",
111
+ "language_runtimes/c/*.h",
112
+ "language_runtimes/cpp/*.h",
113
+ "language_runtimes/cpp/*.hpp",
114
+ "language_runtimes/java/**/*.java",
115
+ ],
116
+ "codegreen": [
117
+ "lib/*.so",
118
+ "lib/*.dylib",
119
+ "lib/runtime/**/*.h",
120
+ "bin/codegreen",
121
+ "config.json",
122
+ ],
123
+ },
124
+ zip_safe=False,
125
+ )
codegreen-0.2.1/setup.py DELETED
@@ -1,105 +0,0 @@
1
- #!/usr/bin/env python3
2
- """CodeGreen setup with C++ backend compilation for wheel builds."""
3
-
4
- import os
5
- import shutil
6
- import subprocess
7
- import sys
8
- from pathlib import Path
9
- from setuptools import setup, Distribution
10
- from setuptools.command.build_py import build_py
11
-
12
- # Directories that must NOT be in the wheel
13
- _EXCLUDE_DIRS = {"ide", "measurement", "optimizer"}
14
-
15
-
16
- class BuildWithCMake(build_py):
17
- """Build C++ backend via cmake, then run normal build_py."""
18
-
19
- def run(self):
20
- source_dir = Path(__file__).resolve().parent
21
- lib_dir = source_dir / "lib"
22
- so_file = lib_dir / "libcodegreen-nemb.so"
23
-
24
- if not so_file.exists():
25
- build_dir = source_dir / "build"
26
- build_dir.mkdir(exist_ok=True)
27
- subprocess.check_call(
28
- ["cmake", str(source_dir), "-DCMAKE_BUILD_TYPE=Release",
29
- f"-DPython3_EXECUTABLE={sys.executable}"],
30
- cwd=build_dir)
31
- subprocess.check_call(
32
- ["cmake", "--build", ".", "--config", "Release",
33
- "-j", str(os.cpu_count() or 2)],
34
- cwd=build_dir)
35
-
36
- super().run()
37
-
38
- if not self.build_lib:
39
- return
40
-
41
- build_src = Path(self.build_lib) / "codegreen"
42
-
43
- # Remove unwanted directories that setuptools auto-included
44
- for d in _EXCLUDE_DIRS:
45
- bad = build_src / d
46
- if bad.exists():
47
- shutil.rmtree(bad)
48
-
49
- # Copy native files
50
- if so_file.exists():
51
- dest_lib = build_src / "lib"
52
- dest_lib.mkdir(parents=True, exist_ok=True)
53
- self.copy_file(str(so_file), str(dest_lib / "libcodegreen-nemb.so"))
54
-
55
- bin_file = source_dir / "build" / "bin" / "codegreen"
56
- if not bin_file.exists():
57
- bin_file = source_dir / "bin" / "codegreen"
58
- if bin_file.exists():
59
- dest_bin = build_src / "bin"
60
- dest_bin.mkdir(parents=True, exist_ok=True)
61
- self.copy_file(str(bin_file), str(dest_bin / "codegreen"))
62
- os.chmod(str(dest_bin / "codegreen"), 0o755)
63
-
64
- rt_base = source_dir / "codegreen" / "instrumentation" / "language_runtimes"
65
- for lang in ("c", "cpp"):
66
- header = rt_base / lang / "codegreen_runtime.h"
67
- if header.exists():
68
- dest_rt = dest_lib / "runtime" / lang
69
- dest_rt.mkdir(parents=True, exist_ok=True)
70
- self.copy_file(str(header), str(dest_rt / "codegreen_runtime.h"))
71
-
72
-
73
- class BinaryDistribution(Distribution):
74
- def has_ext_modules(self):
75
- return True
76
-
77
-
78
- PACKAGES = [
79
- "codegreen", "codegreen.cli", "codegreen.analyzer", "codegreen.instrumentation", "codegreen.utils",
80
- "codegreen.analysis", "codegreen.analysis.cfg",
81
- "benchmark", "benchmark.validation", "benchmark.suites",
82
- ]
83
-
84
- setup(
85
- distclass=BinaryDistribution,
86
- packages=PACKAGES,
87
- cmdclass={"build_py": BuildWithCMake},
88
- package_data={
89
- "codegreen.instrumentation": [
90
- "configs/*.json",
91
- "language_runtimes/python/*.py",
92
- "language_runtimes/c/*.h",
93
- "language_runtimes/cpp/*.h",
94
- "language_runtimes/cpp/*.hpp",
95
- "language_runtimes/java/**/*.java",
96
- ],
97
- "codegreen": [
98
- "lib/*.so",
99
- "lib/runtime/**/*.h",
100
- "bin/codegreen",
101
- "config.json",
102
- ],
103
- },
104
- zip_safe=False,
105
- )
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes