pw_bloat: Allow removal of zero sized labels

Update API to allow the option to not include labels with size equal to
zero in the json report. This can occur because the --tsv argument will
return labels from the file size domain even if the domain is set to vm.

Bug: 282057969

Change-Id: I64b820945b1ee5ba3499ec413c9f620b33aee3e4
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/190599
Pigweed-Auto-Submit: Emily Tucci <etucci@google.com>
Commit-Queue: Auto-Submit <auto-submit@pigweed-service-accounts.iam.gserviceaccount.com>
Reviewed-by: Alexei Frolov <frolv@google.com>
3 files changed
tree: 4ba338d405026eeff176a493b23260e39879d954
  1. .allstar/
  2. .vscode/
  3. build_overrides/
  4. docker/
  5. docs/
  6. kudzu/
  7. pw_alignment/
  8. pw_allocator/
  9. pw_analog/
  10. pw_android_toolchain/
  11. pw_arduino_build/
  12. pw_assert/
  13. pw_assert_basic/
  14. pw_assert_log/
  15. pw_assert_tokenized/
  16. pw_assert_zephyr/
  17. pw_async/
  18. pw_async2/
  19. pw_async2_basic/
  20. pw_async_basic/
  21. pw_base64/
  22. pw_bloat/
  23. pw_blob_store/
  24. pw_bluetooth/
  25. pw_bluetooth_hci/
  26. pw_bluetooth_profiles/
  27. pw_bluetooth_sapphire/
  28. pw_boot/
  29. pw_boot_cortex_m/
  30. pw_build/
  31. pw_build_info/
  32. pw_build_mcuxpresso/
  33. pw_bytes/
  34. pw_channel/
  35. pw_checksum/
  36. pw_chre/
  37. pw_chrono/
  38. pw_chrono_embos/
  39. pw_chrono_freertos/
  40. pw_chrono_rp2040/
  41. pw_chrono_stl/
  42. pw_chrono_threadx/
  43. pw_chrono_zephyr/
  44. pw_cli/
  45. pw_compilation_testing/
  46. pw_config_loader/
  47. pw_console/
  48. pw_containers/
  49. pw_cpu_exception/
  50. pw_cpu_exception_cortex_m/
  51. pw_crypto/
  52. pw_digital_io/
  53. pw_digital_io_mcuxpresso/
  54. pw_digital_io_rp2040/
  55. pw_docgen/
  56. pw_doctor/
  57. pw_emu/
  58. pw_env_setup/
  59. pw_file/
  60. pw_format/
  61. pw_function/
  62. pw_fuzzer/
  63. pw_grpc/
  64. pw_hdlc/
  65. pw_hex_dump/
  66. pw_i2c/
  67. pw_i2c_linux/
  68. pw_i2c_mcuxpresso/
  69. pw_ide/
  70. pw_interrupt/
  71. pw_interrupt_cortex_m/
  72. pw_interrupt_xtensa/
  73. pw_interrupt_zephyr/
  74. pw_intrusive_ptr/
  75. pw_kvs/
  76. pw_libc/
  77. pw_libcxx/
  78. pw_log/
  79. pw_log_android/
  80. pw_log_basic/
  81. pw_log_null/
  82. pw_log_rpc/
  83. pw_log_string/
  84. pw_log_tokenized/
  85. pw_log_zephyr/
  86. pw_malloc/
  87. pw_malloc_freelist/
  88. pw_malloc_freertos/
  89. pw_metric/
  90. pw_minimal_cpp_stdlib/
  91. pw_module/
  92. pw_multibuf/
  93. pw_multisink/
  94. pw_package/
  95. pw_perf_test/
  96. pw_persistent_ram/
  97. pw_polyfill/
  98. pw_preprocessor/
  99. pw_presubmit/
  100. pw_protobuf/
  101. pw_protobuf_compiler/
  102. pw_random/
  103. pw_result/
  104. pw_ring_buffer/
  105. pw_router/
  106. pw_rpc/
  107. pw_rpc_transport/
  108. pw_rust/
  109. pw_snapshot/
  110. pw_software_update/
  111. pw_span/
  112. pw_spi/
  113. pw_spi_mcuxpresso/
  114. pw_status/
  115. pw_stm32cube_build/
  116. pw_stream/
  117. pw_stream_shmem_mcuxpresso/
  118. pw_stream_uart_linux/
  119. pw_stream_uart_mcuxpresso/
  120. pw_string/
  121. pw_symbolizer/
  122. pw_sync/
  123. pw_sync_baremetal/
  124. pw_sync_embos/
  125. pw_sync_freertos/
  126. pw_sync_stl/
  127. pw_sync_threadx/
  128. pw_sync_zephyr/
  129. pw_sys_io/
  130. pw_sys_io_ambiq_sdk/
  131. pw_sys_io_arduino/
  132. pw_sys_io_baremetal_lm3s6965evb/
  133. pw_sys_io_baremetal_stm32f429/
  134. pw_sys_io_emcraft_sf2/
  135. pw_sys_io_mcuxpresso/
  136. pw_sys_io_rp2040/
  137. pw_sys_io_stdio/
  138. pw_sys_io_stm32cube/
  139. pw_sys_io_zephyr/
  140. pw_system/
  141. pw_target_runner/
  142. pw_thread/
  143. pw_thread_embos/
  144. pw_thread_freertos/
  145. pw_thread_stl/
  146. pw_thread_threadx/
  147. pw_thread_zephyr/
  148. pw_tls_client/
  149. pw_tls_client_boringssl/
  150. pw_tls_client_mbedtls/
  151. pw_tokenizer/
  152. pw_toolchain/
  153. pw_toolchain_bazel/
  154. pw_trace/
  155. pw_trace_tokenized/
  156. pw_transfer/
  157. pw_unit_test/
  158. pw_unit_test_zephyr/
  159. pw_varint/
  160. pw_watch/
  161. pw_web/
  162. pw_work_queue/
  163. seed/
  164. targets/
  165. third_party/
  166. ts/
  167. zephyr/
  168. .bazelignore
  169. .bazelrc
  170. .black.toml
  171. .clang-format
  172. .clang-tidy
  173. .eslintrc.cjs
  174. .git-blame-ignore-revs
  175. .gitattributes
  176. .gitignore
  177. .gn
  178. .mypy.ini
  179. .prettierignore
  180. .prettierrc.cjs
  181. .pw_ide.yaml
  182. .pylintrc
  183. activate.bat
  184. Android.bp
  185. AUTHORS
  186. bootstrap.bat
  187. bootstrap.sh
  188. BUILD.bazel
  189. BUILD.gn
  190. BUILDCONFIG.gn
  191. CMakeLists.txt
  192. jest.config.ts
  193. Kconfig.zephyr
  194. LICENSE
  195. modules.gni
  196. OWNERS
  197. package-lock.json
  198. package.json
  199. pigweed.json
  200. PIGWEED_MODULES
  201. README.md
  202. rollup.config.js
  203. tsconfig.json
  204. WORKSPACE
README.md

Pigweed

Pigweed is an open source collection of embedded-targeted libraries–or as we like to call them, modules. These modules are building blocks and infrastructure that enable faster and more reliable development on small-footprint MMU-less 32-bit microcontrollers like the STMicroelectronics STM32L452 or the Nordic nRF52832.

For more information please see our website: https://pigweed.dev/.

Links