[CXX-2770] Add missing include of postlude header in v_noabi public headers Created: 25/Oct/23  Updated: 26/Oct/23

Status: Backlog
Project: C++ Driver
Component/s: None
Affects Version/s: None
Fix Version/s: 4.0.0

Type: Bug Priority: Unknown
Reporter: Ezra Chung Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to CXX-2767 Add macro guard tests to test for con... Closed

 Description   

Some headers that include the v_noabi prelude header are missing a corresponding include of the postlude header, leaking config macros into downstream user code. These headers are:

  • bsoncxx/v_noabi/bsoncxx/builder/list.hpp
  • mongocxx/v_noabi/mongocxx/gridfs/downloader.hpp
  • mongocxx/v_noabi/mongocxx/gridfs/uploader.hpp
  • mongocxx/v_noabi/mongocxx/options/auto_encryption.hpp
  • mongocxx/v_noabi/mongocxx/options/data_key.hpp
  • mongocxx/v_noabi/mongocxx/options/range.hpp

Adding the missing postlude header include is a source-breaking change, as users that are inadvertently depending on config macros to be defined by including one of these headers (directly or indirectly).

Consider adding the missing include of the v_noabi postlude header to the affected public header files in the next API major version release.



 Comments   
Comment by Githook User [ 26/Oct/23 ]

Author:

{'name': 'Ezra Chung', 'email': '88335979+eramongodb@users.noreply.github.com', 'username': 'eramongodb'}

Message: CXX-2767 Add macro guards tests for bsoncxx and mongocxx (#1043)

  • Use static library for catch/main.cpp
  • Add include/ and lib/ to target include directories
  • Add macro guard tests
  • Fix issues preventing standalone header inclusion
  • Fix missing prelude header include directives
  • Add macro guards tests to EVG config
  • Simplify and improve robustness of test library targets
  • CXX-2769 Document out-of-place BSONCXX_ENUM guards in macro guard headers
Generated at Wed Feb 07 22:06:58 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.