Giter Site home page Giter Site logo

Comments (7)

grencez avatar grencez commented on May 30, 2024 1

Version 20230802.0 of the abseil-cpp module introduced a googletest dependency. (Unlike google_benchmark, which was changed to a dev_dependency in the .bcr.1 patch.)

Is this issue resolved? In an acceptable way?

from bazel-central-registry.

alexeagle avatar alexeagle commented on May 30, 2024

Maybe you're depending on the wrong targets in abseil? You probably shouldn't have any dependency on the :hash_testing target. Are you trying to bazel query @abseil-cpp//... or something? You could also use a bazel query somepath(//my:targets, @abseil-cpp.20210324.2//absl/hash:hash_testing) to see whether this dependency is legit.

from bazel-central-registry.

tkoeppe avatar tkoeppe commented on May 30, 2024

I was using the @//... (or //...) pattern to build everything. You're right that I don't have any dependency on :hash_testing from my own repository.

from bazel-central-registry.

alexeagle avatar alexeagle commented on May 30, 2024

Then I think this is WAI - it's often the case that an external repository has targets which aren't expected to build in userland (e.g. many rulesets have a docs/ folder with a stardoc dependency, but users aren't expected to install stardoc).

from bazel-central-registry.

tkoeppe avatar tkoeppe commented on May 30, 2024

Mind you, I am not building @com_google_absl//... (I renamed the import); but @//... -- i.e. my own repo. I don't think importing an external repo should leak into the @-space, should it?

from bazel-central-registry.

tkoeppe avatar tkoeppe commented on May 30, 2024

Ah no, never mind! I do depend on :hash_testing directly. Sorry!

https://github.com/deepmind/lab2d/blob/89f3dd2c498410b5201d271ca50860f311025ca6/dmlab2d/lib/system/grid_world/collections/BUILD#L15

Is :hash_testing not part of the public API of Abseil? I was using absl::VerifyTypeImplementsAbslHashCorrectly to test my hash implementation.

from bazel-central-registry.

Wyverald avatar Wyverald commented on May 30, 2024

Ah. This could be a "feature"-like feature that we're still missing. :hash_testing does look like a public API, but probably not every dependent of Abseil wants to use it, and hence they might not want a dependency on googletest at all.

Right now, Abseil either has a dependency on googletest, or doesn't; it cannot "sometimes" depend on googletest. In Cargo for example this is solved by "features" -- when adding a dependency, you can add on optional features (in this case, the "testing utils" feature of Abseil) that themselves bring in new dependencies. But this problem can be alternatively solved by splitting the feature into a separate module, so we haven't prioritized this.

So for the time being, we could either just add googletest as a dependency to Abseil, or try to split out the "testing utils" parts of Abseil into a separate module.

from bazel-central-registry.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.