-
Notifications
You must be signed in to change notification settings - Fork 37.7k
RFC: Move Peer and PeerManagerImpl declarations to separate header #20925
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
Conversation
This is a minimal implementation of what was first discussed here: #20758 (comment). Thoughts, @ajtowns? |
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. ConflictsReviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not going to think seriously about this until having tried to pull orphan handling or similar into its own module, in the hopes that that alone will be enough to make testing work better.
be52d7e
to
1363e90
Compare
Fixed the typo. I'll fix the linter and fuzzer errors if this PR gets some concept ACKs. |
Closing this for now. Let's revisit once #21148 is merged. |
Not sure whether this is desirable, so marking as a proof of concept.
This moves the
Peer
andPeerManagerImpl
declarations to their own header file,peerman_impl.h
, which can be included bynet_processing.cpp
and the test/bench/fuzz files.The benefits of this are:
PeerManagerImpl
functions which are exposed through thePeerManager
interface for testing, but would otherwise be private can be removed fromPeerManager
. That means thatPeerManager
truly is net_processing's minimal interface to expose to the rest of the program.Peer
objects, it can do so, since they're exposed in peerman_impl header.