Skip to content

Latest commit

 

History

History
84 lines (64 loc) · 2.56 KB

CHANGELOG.md

File metadata and controls

84 lines (64 loc) · 2.56 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[0.7.0] - 2024-08-05

Added

  • LLVM 19 support (ignores function entry coverage and some failing proftext files)

[0.6.0] - 2024-05-17

Added

  • Added the ability to filter out certain sections from the generated coverage reports

Changed

  • Now use some hashmap based caching to speedup record lookup during profile merge.

[0.5.0] - 2024-04-28

Changed

  • Now allow binaries to fail parsing for the mapping information (depdendent on function argument)

[0.4.0] - 2024-04-12

Added

  • LLVM 17 and 18 support (test fails still: check_mapping_consistency but tarpaulin tests all pass so nearly all working)

Changed

  • Removed another two redundant hash computations

[0.3.3] - 2023-04-04

Changed

  • Cache name hash calculation to avoid recomputing (perf)

[0.3.2] - 2023-03-29

Added

  • llvm-16 test files to ensure support doesn't break

Fixed

  • Fixed parsing of branch region counters

[0.3.1] - 2023-01-23

Added

  • Debug logging via tracing

Fixed

  • Build on 32 bit architectures

[0.3.0] - 2022-09-26

Added

  • InstrumenationProfile::is_empty to detect when there are no records
  • Fuzzing module for profile files

Changed

  • Added anyhow and use in place of Result<T, Box<dyn Error>>
  • Make error type for profiles VerboseError

Fixed

  • Handle merging of completely disjoint records - now profiles generated from multiple applications are accurately merged
  • Handle invalid Hash enum variant in IndexedProfile

[0.2.0] - 2022-09-11

Changed

  • Made instrumentation profile parsing failure message more serious
  • Made hit adding in report use saturating_add to prevent overflow

Fixed

  • Make counter value signed when tracking expressions to prevent underflow
  • Multiply max counters by counter size when comparing to counter delta
  • Fixed handling of profile instrumentation not tied to a counter with source location
  • Incorrect matching on hashes for instrumentation profile merging

[0.1.1] - 2022-06-26

Added

  • Detection of memory profiling

Fixed

  • Counter offsetting in raw profiles now implemented
  • Counter size for byte coverage now correct
  • Text profile now handles carriage returns

[0.1.0] - 2022-06-05

Added

  • Parsing of indexed, text and raw profiles (llvm version 11, 12, 13, 14)
  • Parsing of instrumented binary and generating line coverage reports