rules_cc_toolchain icon indicating copy to clipboard operation
rules_cc_toolchain copied to clipboard

chore(deps): update dependency com_github_google_benchmark to v1.6.0

Open renovate[bot] opened this issue 4 years ago • 5 comments

WhiteSource Renovate

This PR contains the following updates:

Package Type Update Change
com_github_google_benchmark http_archive minor v1.5.0 -> v1.6.0

Release Notes

google/benchmark

v1.6.0

Compare Source

features

  • [breaking change] introduce accessorrs for public data members (#​1208)
  • add support for percentage units in statistics (#​1219)
  • introduce coefficient of variation aggregate (#​1220)
  • format percentages in console reporter (#​1221)

bugfixes

  • fix unreachable code warning (#​1214)
  • replace #warning with #pragma message (#​1216)
  • report PFM as found when it is
  • update u-test value expectations due to scipy upgrade

other stuff

  • refactored documentation to minimise README.md (#​1211)
  • install docs when installing library (#​1212)

v1.5.6

Compare Source

features

  • helper methods to create integer lists (#​1179)
  • default of --benchmark_filter is now rather than "." (#​1207)

fixes

  • type warning (#​1193)
  • returning a reference when callers want pointers (65dc63b)

cleanup

v1.5.5

Compare Source

new features

fixes

  • Fix perf counter argument parsing (#​1160)

internal cleanup

  • Drop warning to satisfy clang's -Wunused-but-set-variable diag (#​1174)
  • Enable some sanitizer builds in github actions (#​1167 #​1171)
  • Fix memory leak in test (#​1169)

v1.5.4

Compare Source

new features

compiler cleanliness

v1.5.3

Compare Source

New features

  • Implement custom benchmark names (#​1107)
  • Support for macro expansion in benchmark names (#​1054)
  • Reduce ramp up repetitions when KeepRunningBatch is used (#​1113)

Platform support

  • CycleTimer implemented for M68K architecture (#​1050)
  • Support for DragonFly BSD (#​1058)
  • Better support for z/OS (#​1063, #​1067)
  • Add MSVC ARM64 support for cycle clocks (#​1052)
  • Add support for Elbrus 2000 (#​1091)
  • Fix CPU frequency for AMD Ryzen (and probably other CPUs) (#​1117)

Bug fixes

  • Fix range when starting at zero (#​1073)

Tool improvements

  • Build tools with bazel (#​982)
  • Support JSON dumps of benchmark diffs (#​1042)

v1.5.2

Compare Source

  • Timestamps in output are now rfc3339-formatted #​965
  • overflow warnings with timers fixed #​980
  • Python dependencies are now covered by a requirements.txt #​994
  • JSON output cleaned up when no CPU scaling is present (#​1008)
  • CartesianProduct added for easier settings of multiple ranges (#​1029)
  • Python bindings improvements:
  • Workflow additions in github include pylint (#​1039) and bindings runs (#​1041)

v1.5.1

Compare Source

  • Python bindings are now available in //bindings/python
  • Upgraded bazel from 0.10.1 to 3.2.0 (long overdue)
  • RISC-V and PPC cycleclock fixes
  • Various build warnings and cmake issues resolved
  • Documentation improvements

Configuration

📅 Schedule: At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • [ ] If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by WhiteSource Renovate. View repository job log here.

renovate[bot] avatar Aug 06 '21 05:08 renovate[bot]

Looks like CI is failing with:

ERROR: error loading package '@com_github_google_benchmark//tools': Unable to find package for @py_deps//:requirements.bzl: The repository '@py_deps' could not be resolved.

I probably won't be able to take a closer look until end of week earliest, but @silvergasp do you have any idea what might cause that error?

akirabaruah avatar Sep 01 '21 06:09 akirabaruah

No stress. This one is just an autogenerated version bump. But it doesn't seem to have worked it out properly. So feel free to have a go at sorting it out.

Definitely low priority though, this is just a dev dependency, and it's only used in the CI to test that the toolchain works against a set of 'common' repositories, but it's certainly not critical.

nathaniel-brough avatar Sep 01 '21 08:09 nathaniel-brough

Took a quick peek at the error and it seems like github.com/google/benchmark added some new deps to its WORKSPACE file between v1.5.0 and v1.5.6.

The offending dep is a missing @py_deps Bazel repository included in the upstream WORKSPACE here. IIUC, the deps in that workspace aren't loaded by our downstream repo.

@silvergasp does this make sense? If so, what's the recommended way to resolve this issue?

A few possible solutions off the top of my head:

  1. Load the required dep(s) from upstream directly in our WORKSPACE file.
  2. Make a PR to the upstream repo to add a macro that loads all deps and call that in our WORKSPACE file.

akirabaruah avatar Sep 06 '21 22:09 akirabaruah

BTW @silvergasp I've downloaded this repo locally to an Ubuntu container and tried running the test command to try to reproduce the issue, but I'm running into this error:

$ bazelisk test @com_google_googletest//... @com_github_google_benchmark//... @com_google_absl//... --test_tag_filters=-benchmark
...
external/clang_llvm_12_00_x86_64_linux_gnu_ubuntu_16_04/bin/clang: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory

Installing libtinfo-dev and rerunning seems to produce the same issue. Any ideas what I might be missing here?

akirabaruah avatar Sep 06 '21 23:09 akirabaruah

Yeah you'll need to install libncurses it's a runtime dep for clang. Otherwise that makes sense.

nathaniel-brough avatar Sep 07 '21 09:09 nathaniel-brough