Skip to content

Commit ff5eb21

Browse files
chore: update foxy for Boost 1.90 compat and unpin macOS Boost
- Add BOOST_VERSION preprocessor guards in export_connect_fields.hpp to conditionally exclude proxy_authentication_info, proxy_features, and proxy_instruction fields removed in Boost 1.90 - Retains full support for Boost 1.8x - Remove boost@1.85 pin on macOS, reverting to latest Homebrew boost Co-Authored-By: rlamb@launchdarkly.com <kingdewman@gmail.com>
1 parent d0b80a8 commit ff5eb21

2 files changed

Lines changed: 16 additions & 2 deletions

File tree

.github/actions/install-boost/action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,8 @@ runs:
4343
if: runner.os == 'macOS'
4444
shell: bash
4545
run: |
46-
brew install boost@1.85
47-
echo "BOOST_ROOT=$(brew --prefix boost@1.85)" >> $GITHUB_OUTPUT
46+
brew install boost
47+
echo "BOOST_ROOT=$(brew --prefix boost)" >> $GITHUB_OUTPUT
4848
4949
- name: Determine root
5050
id: determine-root

vendor/foxy/include/foxy/detail/export_connect_fields.hpp

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818

1919
#include <boost/utility/string_view.hpp>
2020
#include <boost/range/algorithm.hpp>
21+
#include <boost/version.hpp>
2122

2223
#include <type_traits>
2324
#include <array>
@@ -88,6 +89,18 @@ launchdarkly::foxy::detail::export_connect_fields(boost::beast::http::basic_fiel
8889
// iterate the `src` fields, moving any connect headers and the corresponding tokens to the `dst`
8990
// fields
9091
//
92+
// Boost 1.90 removed proxy_authentication_info, proxy_features, and
93+
// proxy_instruction from boost::beast::http::field.
94+
#if BOOST_VERSION >= 109000
95+
auto const hop_by_hops = std::array<http::field, 8>{http::field::connection,
96+
http::field::keep_alive,
97+
http::field::proxy_authenticate,
98+
http::field::proxy_authorization,
99+
http::field::proxy_connection,
100+
http::field::te,
101+
http::field::trailer,
102+
http::field::transfer_encoding};
103+
#else
91104
auto const hop_by_hops = std::array<http::field, 11>{http::field::connection,
92105
http::field::keep_alive,
93106
http::field::proxy_authenticate,
@@ -99,6 +112,7 @@ launchdarkly::foxy::detail::export_connect_fields(boost::beast::http::basic_fiel
99112
http::field::te,
100113
http::field::trailer,
101114
http::field::transfer_encoding};
115+
#endif
102116

103117
auto const is_connect_opt =
104118
[&connect_opts,

0 commit comments

Comments
 (0)