Enable beman-tidy (--require-all mode) into beman.net#66
Merged
Conversation
dietmarkuehl
marked this pull request as ready for review
July 18, 2026 22:45
There was a problem hiding this comment.
Pull request overview
This PR adjusts the beman.net project layout and headers to satisfy beman-tidy’s --require-all mode, including adding umbrella headers and ensuring namespaces are declared in individual headers.
Changes:
- Enable
beman-tidyin--require-allmode via pre-commit. - Introduce
include/beman/net.hppumbrella header and update examples/CMake header sets to use it. - Add explicit
namespace beman::net {}declarations in many headers; adjust completion signature computation inrepeat_effect_until.
Reviewed changes
Copilot reviewed 52 out of 52 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| CMakeLists.txt | Moves creation of the beman.net interface target to the top-level and updates the beman.task FetchContent tag. |
| src/beman/net/CMakeLists.txt | Removes local add_library(beman.net ...) and adds include/beman/net.hpp to the installed public header set. |
| .pre-commit-config.yaml | Runs beman-tidy with --require-all. |
| README.md | Consolidates badges into a single line and adds a Compiler Explorer badge link. |
| include/beman/net.hpp | Adds a new umbrella header for consumers to include beman.net. |
| include/beman/net/net.hpp | Adds an explicit beman::net namespace declaration; modifies included detail headers list. |
| include/beman/net29/net.hpp | Adds an explicit beman::net namespace declaration before referencing beman::net::detail::ex. |
| include/beman/net/detail/basic_socket.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/basic_stream_socket.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/context_base.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/endpoint.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/execution.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/get_io_handle.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/internet.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/io_base.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/io_context_scheduler.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/iocp_context.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/local_endpoint.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/merge_completion_signatures.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/platform.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/preconnection.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/repeat_effect_until.hpp | Adds explicit namespace beman::net {} and adjusts error_types_of_t usage to produce error completion signatures. |
| include/beman/net/detail/security_props.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/sender.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/socket_base.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/sorted_list.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/task.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/timer.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/transport_preference.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/transport_props.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| include/beman/net/detail/uring_context.hpp | Adds explicit namespace beman::net {} to make the header self-contained. |
| examples/CMakeLists.txt | Renames example targets to underscore-style names and adjusts the examples list. |
| examples/client.cpp | Switches to umbrella includes (<beman/net.hpp>). |
| examples/cppcon_2024.cpp | Switches to umbrella includes and updates file header comment. |
| examples/empty.cpp | Switches to umbrella includes and updates file header comment. |
| examples/http_munich.cpp | Switches to umbrella includes and updates file header comment. |
| examples/http_server.cpp | Switches to umbrella includes and updates file header comment. |
| examples/http_warwick.cpp | Switches to umbrella includes and adjusts task include. |
| examples/memory_stream.cpp | Switches to umbrella net include and updates file header comment. |
| examples/milano.cpp | Switches to umbrella includes and updates file header comment. |
| examples/munich.cpp | Switches to umbrella includes and updates file header comment. |
| examples/populate_postgres.cpp | Updates file header comment (underscore naming). |
| examples/postgres.cpp | Switches to umbrella includes. |
| examples/postgres_talk.cpp | Switches to umbrella includes and updates file header comment (underscore naming). |
| examples/server.cpp | Switches to umbrella includes. |
| examples/taps.cpp | Switches to umbrella includes. |
| examples/task.cpp | Switches to umbrella includes. |
| examples/demo_algorithm.hpp | Switches to umbrella net include. |
| examples/demo_http.hpp | Switches to umbrella includes and updates task include. |
| examples/demo_scope.hpp | Switches to umbrella net include. |
| examples/demo_stream.hpp | Switches to umbrella includes. |
| examples/demo_task.hpp | Switches to umbrella net include. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
37
to
39
| if(${HAS_POSTGRES}) | ||
| list(APPEND EXAMPLES postgres postgres-talk populate-postgres) | ||
| list(APPEND xEXAMPLES postgres postgres_talk populate_postgres) | ||
| endif() |
Comment on lines
36
to
40
| #include <beman/net/detail/scope.hpp> | ||
| #include <beman/net/detail/task.hpp> | ||
| #include <beman/net/detail/initiate.hpp> | ||
| //-dk:FIXME #include <beman/net/detail/initiate.hpp> | ||
| #include <beman/net/detail/into_expected.hpp> | ||
| #include <beman/net/detail/repeat_effect_until.hpp> |
Comment on lines
+9
to
+12
| #if 0 | ||
| namespace beman::net.hpp {} | ||
| #endif | ||
| namespace beman::net {} |
8 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue: bemanproject/beman-tidy#259