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

AVRO-4097: Replace boost::any with std::any; boost::tuple with std::tuple #3256

Merged
merged 2 commits into from
Dec 6, 2024

Conversation

mkmkme
Copy link
Contributor

@mkmkme mkmkme commented Dec 6, 2024

What is the purpose of the change

This pull request reduces the usage of boost by replacing boost::any and boost::tuple with std::any and std::tuple respectively, fixing AVRO-4097

Verifying this change

This change is a trivial rework / code cleanup without any test coverage.

Documentation

  • Does this pull request introduce a new feature? no
  • If yes, how is the feature documented? not applicable

@github-actions github-actions bot added the C++ Pull Requests for C++ binding label Dec 6, 2024
@martin-g
Copy link
Member

martin-g commented Dec 6, 2024

cc @wgtmac

Copy link
Member

@wgtmac wgtmac left a comment

Choose a reason for hiding this comment

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

Nice!

@martin-g martin-g merged commit 0fd1e78 into apache:main Dec 6, 2024
4 checks passed
@martin-g
Copy link
Member

martin-g commented Dec 6, 2024

Thank you, @mkmkme !

@marlowa
Copy link
Contributor

marlowa commented Dec 6, 2024

The reason that boost tuple, boost any etc were being used is that not every compiler env has the ones in the standard. I added a command line option to tell the code generator that one is using the cpp17 dialect, which does have them.

@mkmkme
Copy link
Contributor Author

mkmkme commented Dec 9, 2024

c++17 is required by default by avro-cpp though: https://github.com/apache/avro/blob/main/lang/c%2B%2B/CMakeLists.txt#L24

And C++17 features were supported by gcc7 and clang4, the latest of them was released in 2018. So we should be safe here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C++ Pull Requests for C++ binding
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants