Skip to content

Releases: libbpf/blazesym

v0.2.0-rc.1

05 Sep 17:56
Compare
Choose a tag to compare

What's Changed

  • Added support for using PROCMAP_QUERY ioctl during address normalization
    • Added enable_procmap_query to normalize::Normalizer
    • Added is_procmap_query_supported function to helper module
  • Adjusted normalization logic to not fail overall operation on build ID read failure
  • Added support for file based symbolization on the Windows operating system
  • Improved performance for parsing Breakpad files
  • Made sure to not emit "self" component in normalized paths when map_files is in use
  • Fixed potentially invalid reading of debug link checksum when .gnu_debuglink section is unaligned
  • Renamed enable_maps_caching method of normalize::Normalizer to enable_vma_caching
  • Renamed UserMeta::{apk,elf,unknown} methods by prefixing them with as_

New Contributors

Full Changelog: v0.2.0-rc.0...v0.2.0-rc.1

cli-v0.1.6

05 Sep 18:27
Compare
Choose a tag to compare
cli: Bump version to 0.1.6

This change bumps blazecli's version to 0.1.6. The following notable
changes have been made since 0.1.5:
- Added --procmap-query option to 'normalize user' sub-command
- Bumped blazesym dependency to 0.2.0-rc.1

Signed-off-by: Daniel Müller <[email protected]>

capi-v0.1.0-rc.1

05 Sep 18:42
Compare
Choose a tag to compare
capi: Bump version to 0.1.0-rc.1

This change bumps the blazesym-c's version to 0.1.0-rc.1. The
following notable changes have been made since 0.1.0-rc.0:
- Added 'procmap_query_ioctl' attribute to blaze_normalizer_opts
- Renamed blaze_result to blaze_syms
  - Renamed blaze_result_free to blaze_syms_free
- Renamed 'cache_maps' attribute of blaze_normalizer_opts to
  'cache_vmas'
- Introduced blaze_supports_procmap_query helper
- Bumped blazesym dependency to 0.2.0-rc.1

Signed-off-by: Daniel Müller <[email protected]>

v0.2.0-rc.0

10 Jun 17:17
Compare
Choose a tag to compare

What's Changed

  • Added support for transparently following debug links in ELF binaries
    • Added symbolize::Builder::set_debug_dirs for configuring directories searched for targets
  • Introduced normalize::NormalizeOpts type for configurable address normalization
    • Removed normalize::Normalizer::normalize_user_addrs_sorted in favor of normalize::Normalizer::normalize_user_addrs_opts
  • Fixed handling of zero sized symbols in Gsym symbolization logic
  • Fixed reading of ELF section contents of sections without actual data

Full Changelog: v0.2.0-alpha.12...v0.2.0-rc.0

cli-v0.1.5

10 Jun 17:28
Compare
Choose a tag to compare
cli: Bump version to 0.1.5

This change bumps blazecli's version to 0.1.5. The following notable
changes have been made since 0.1.4:
- Added --debug-dirs option to 'symbolize elf' sub-command
- Bumped blazesym dependency to 0.2.0-rc.0

Signed-off-by: Daniel Müller <[email protected]>

capi-v0.1.0-rc.0

10 Jun 17:37
Compare
Choose a tag to compare
capi: Bump version to 0.1.0-rc.0

This change bumps the blazesym-c's version to 0.1.0-rc.0. The
following notable changes have been made since 0.1.0-alpha.1:
- Added debug_dirs attribute to blaze_symbolizer_opts
- Added cache_maps attribute to blaze_normalizer_opts
- Introduced blaze_err enum and adjusted all fallible functions to
  set a thread local error
  - Introduced blaze_err_last to retrieve the last error
  - Introduced blaze_err_str function to convert errors to textual
    representation
- Introduced blaze_normalize_opts and added
  blaze_normalize_user_addrs_opts to use it
  - Removed blaze_normalize_user_addrs_sorted function
- Introduced blaze_normalize_reason type
  - Added reason attribute to blaze_user_meta_unknown
  - Added blaze_normalize_reason_str to retrieve textual representation
- Introduced blaze_symbolize_reason type
  - Added reason attribute to blaze_sym
  - Added blaze_symbolize_reason_str to retrieve textual representation
- Added blaze_symbolize_elf_file_offsets function for symbolization of
  file offsets
- Added support for transparently working with input data not in
  accordance with Rust's alignment requirements
- Removed BLAZE_INPUT macro
- Bumped blazesym dependency to 0.2.0-rc.0

Signed-off-by: Daniel Müller <[email protected]>

v0.2.0-alpha.12

06 May 20:29
Compare
Choose a tag to compare

What's Changed

  • Added support for advanced symbolization workflows involving containers (process or APKs) via configurable dispatch functions
  • Added cache_maps and cache_build_ids properties to normalize::Normalizer type
    • Adjusted normalization logic to return references to cached build IDs if cache_build_ids is true
  • Added support for compressed debug information
    • Added zlib (default enabled) and zstd (default disabled) features
  • Adjusted Inspector::for_each signature to no longer carry explicit state around
  • Introduced normalize::Reason enum to provide best guess at why normalization was not successful as part of the normalize::UserMeta::Unknown variant
  • Added From<Box<dyn std::error::Error>> conversion to Error
  • Added Display impl to ErrorKind
  • Added read_elf_build_id_from_mmap function to helper module
  • Reduced number of allocations performed on address normalization and process symbolization paths
  • Improved symbolization performance on certain unoptimized DWARF data
  • Fixed potential numeric overflow when parsing non-UTF-8 (invalid) Breakpad files
  • Removed Clone impl of symbolize::Builder type

New Contributors

Full Changelog: v0.2.0-alpha.11...v0.2.0-alpha.12

cli-v0.1.4

06 May 20:42
Compare
Choose a tag to compare
cli: Bump version to 0.1.4

This change bumps blazecli's version to 0.1.4. The following notable
changes have been made since 0.1.3:
- Added 'inspect' command
- Bumped blazesym dependency to 0.2.0-alpha.12

Signed-off-by: Daniel Müller <[email protected]>

v0.2.0-alpha.11

23 Feb 17:14
Compare
Choose a tag to compare

What's Changed

  • Added support for Breakpad format behind breakpad feature (disabled by default)
  • Added support for usage of perf map files as part of process symbolization
    • Added perf_map attribute to symbolize::Process type
  • Added map_files attribute to symbolize::Process type
  • Added support for symbolizing addresses mapping to ELF variables and for looking them up using inspect APIs
  • Added support for GNU indirect functions to ELF logic
  • Overhauled SymType enum:
    • Made it non-exhaustive
    • Moved it out of inspect module
    • Renamed Unknown variant to Undefined
  • Made auto reloading of symbolization sources on change configurable
  • Fixed DWARF symbolization in the presence of cross compilation unit references

New Contributors

Full Changelog: cli-v0.1.2...v0.2.0-alpha.11

cli-v0.1.3

23 Feb 17:22
Compare
Choose a tag to compare
cli: Bump version to 0.1.3

This change bumps blazecli's version to 0.1.3. The following notable
changes have been made since 0.1.2:
- Added support for symbolization using Breakpad (*.sym) files
- Added --no-debug-syms option to symbolize elf sub-command
- Added --no-build-ids option to normalize user sub-command
- Bumped blazesym dependency to 0.2.0-alpha.11

Signed-off-by: Daniel Müller <[email protected]>