Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[test_common/BUILD] Start dissolving :printers_include rule. #14429

Merged
merged 1 commit into from
Dec 16, 2020

Conversation

tkoeppe
Copy link
Contributor

@tkoeppe tkoeppe commented Dec 15, 2020

Commit Message:
[test_common/BUILD] Start dissolving :printers_include rule.

Additional Description:
A rule that exports a header without defining all the symbols declared
by that header causes ODR violations. Basically, Bazel rules should
never contain "include" rules like this. Rather, printer.h and
printer.cc should be served from the same library.

This change is a cautious, local first step. A second step can later
remove the printer_include rule and replace its uses with printer_lib.

Risk Level: low(?)

Testing:

Docs Changes: n/a
Release Notes: n/a
Platform Specific Features: n/a

@repokitteh-read-only
Copy link

Hi @tkoeppe, welcome and thank you for your contribution.

We will try to review your Pull Request as quickly as possible.

In the meantime, please take a look at the contribution guidelines if you have not done so already.

🐱

Caused by: #14429 was opened by tkoeppe.

see: more, trace.

A rule that exports a header without defining all the symbols declared
by that header causes ODR violations. Basically, Bazel rules should
never contain "include" rules like this. Rather, printer.h and
printer.cc should be served from the same library.

This change is a cautious, local first step. A second step can later
remove the printer_include rule and replace its uses with printer_lib.

Signed-off-by: Thomas Köppe <[email protected]>
Copy link
Contributor

@alyssawilk alyssawilk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like a good start! Want to just swap the libraries here? I think it's fine to do in one PR.

@alyssawilk alyssawilk self-assigned this Dec 16, 2020
@tkoeppe
Copy link
Contributor Author

tkoeppe commented Dec 16, 2020

Thanks! Let's do it in steps please if that's OK. I already tested this change against Google's codebase, and it's nice and small. For the follow-up, we'll have to touch a couple of users (and it has the potential to break external users whom we can't test), so it might be nice to keep that as a separate step.

I'll make the next PR now if you like.

@alyssawilk alyssawilk merged commit ae1ed1f into envoyproxy:master Dec 16, 2020
@tkoeppe
Copy link
Contributor Author

tkoeppe commented Dec 16, 2020

Thanks! I'll test the next step locally first.

@tkoeppe
Copy link
Contributor Author

tkoeppe commented Dec 16, 2020

Next step in #14442.

mpuncel added a commit to mpuncel/envoy that referenced this pull request Dec 16, 2020
* master: (49 commits)
  sds: allow multiple init managers share sds target (envoyproxy#14357)
  [http] Remove legacy codecs (envoyproxy#14381)
  http2: Add integration tests for METADATA and RST_STREAM frame flood mitigation for upstream servers (envoyproxy#14365)
  test: start dissolving :printers_include rule. (envoyproxy#14429)
  integration tests: re-enable set_node_on_first_message_only (envoyproxy#14270)
  formatter: add a formatter that returns a google::protobuf::Struct rather than a string (envoyproxy#14258)
  ratelimit: support returning custom response bodies for non-OK responses from the external ratelimit service (envoyproxy#14189)
  deps: update protobuf to 3.14 (envoyproxy#14253)
  stream_info: add setResponseCode and update local_reply to take a normal StreamInfo (envoyproxy#14402)
  http: alpn upstream (envoyproxy#13922)
  Moved starttls integration test to test/extensions/transport_sockets/starttls. (envoyproxy#14425)
  generic conn pool: directly use thread local cluster (envoyproxy#14423)
  wasm: add mathetake to CODEOWNERS (envoyproxy#14427)
  wasm: clear route cache when modifying HTTP request headers. (envoyproxy#14318)
  tls: disable TLS inspector injection (envoyproxy#14404)
  aggregate cluster: cleanups (envoyproxy#14411)
  Mark starttls_integration_test flaky on Windows (envoyproxy#14419)
  tcp: improved unit testing (envoyproxy#14415)
  config: making protocol config explicit (envoyproxy#14362)
  wasm: dead code (envoyproxy#14407)
  ...

Signed-off-by: Michael Puncel <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants