-
Notifications
You must be signed in to change notification settings - Fork 37.7k
doc: rewrite dependencies.md #23565
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
doc: rewrite dependencies.md #23565
Conversation
Concept ACK - nice cleanup |
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.
Concept ACK
to have duplicated lists of dependencies in other build docs
I had originally duplicated the lists in the other build docs, besides build-unix.md. Since we have dependencies.md, I'd be in agreement of keeping dependencies there. My idea with the dependencies list in the build docs was to keep most of the information that a user needs to build contained within the build doc itself, and not need to jump around. I understand that this approach can be an unnecessary maintenance cost, especially when these dependencies change.
Do you want to go ahead and remove the dependency tables from the other build-*.md docs?
73ee8dd
to
e57aca9
Compare
Have done. |
Concept ACK |
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.
Concept ACK
- Cleanup looks good. The list displays all the significant dependencies for compiling Bitcoin Core.
- I have checked that the information provided in update
dependencies.md
is unchanged from the master’sdependencies.md
. - MiniUPnPc minimum version required info is added. Unfortunately, I cannot test whether this information is correct as I am on Ubuntu 20.04, and the package version below 2.1.20 is not available on it.
- The links are correct and direct to the right appropriate web pages.
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.
Concept ACK
[qrencode](https://formulae.brew.sh/formula/qrencode) | QR codes in GUI | Generating QR codes (only needed when GUI enabled) | ||
[zeromq](https://formulae.brew.sh/formula/zeromq) | ZMQ notification | Allows generating ZMQ notifications (requires ZMQ version >= 4.0.0) | ||
[sqlite](https://formulae.brew.sh/formula/sqlite) | SQLite DB | Wallet storage (only needed when wallet enabled) | ||
[miniupnpc](https://formulae.brew.sh/formula/miniupnpc) | UPnP Support | Firewall-jumping support (needed for port mapping support) |
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.
So far as I can tell, for deps like miniupnpc
we no longer have the "Description" information living here. Might be nice to add a column to the dependencies.md table that lists the info here.
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.
bison
needs to be installed for the /depends build. (yacc)
Maybe include it here for completeness?
@RandyMcMillan the mentioned build docs and this PR are for dynamic builds, not static builds. The bison dependency for static builds is already documented under the /depends readme. |
@jarolrod - I get it - but to reduce documentation complexity further - we could download everything for a static build - then it is just a matter of enumerating the different commands for dynamic or static builds. Each platform would need one build doc. |
Concept ACK. Cleanup is nice |
e57aca9
to
090dd73
Compare
090dd73
to
9d50ed2
Compare
| --- | --- | --- | --- | | ||
| [Boost](https://www.boost.org/users/download/) | 1.71.0 | [1.64.0](https://github.com/bitcoin/bitcoin/pull/22320) | No | | ||
| [libevent](https://github.com/libevent/libevent/releases) | 2.1.12-stable | [2.0.21](https://github.com/bitcoin/bitcoin/pull/18676) | No | | ||
| [glibc](https://www.gnu.org/software/libc/) | N/A | [2.18](https://github.com/bitcoin/bitcoin/pull/23511) | Yes | |
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.
AFAIK 2.18 is only required for the release binaries, not the minimum required.
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.
It could potentially be 2.16
, if you build with --disable-threadlocal
, however I think using 2.18
, which aligns with the release binairies, is fine here.
9d50ed2
to
f5e2f99
Compare
f5e2f99
to
0d36c89
Compare
Rebased. |
0d36c89
to
8ad9e7f
Compare
Rebased past #24132. |
8ad9e7f
to
791030c
Compare
Rebased past #24164. |
791030c
to
893e180
Compare
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.
cr ACK 893e180
Nice cleanup
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.
ACK 893e180, I have reviewed the code and it looks OK, I agree it can be merged.
I've verified links, package versions -- both in depends, and minimum required. GUI dependencies verified against Qt docs.
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.
crACK 893e180
Thanks for the reviews. Planning on open some further doc consolidation PRs shortly. |
…n build-osx.md 57f3f5c doc: s/Compiler/Dependency in dependencies.md (fanquake) bf84677 doc: cleanup wallet docs in build-osx.md (fanquake) Pull request description: Re-order legacy and descriptor wallet section. Installing sqlite isn't required (the version pre-installed on macOS is just as good as what will be installed via `brew`). Remove prelude that pointlessly repeats the same info. Basically the macOS version of bitcoin#23446. Includes a small fixup from bitcoin#23565. ACKs for top commit: RandyMcMillan: ACK 57f3f5c hebasto: ACK 57f3f5c, I have reviewed the changes and they look OK, I agree they can be merged. Tree-SHA512: a1ca5f73aa4f4f56de747fd9669bce572c1d7d23925afb47b5d963314df1738762ea26428c040e9c706d288eb7e775227d2387a322cda065885b89c6a619314f
abcb876 doc: add more info to dependencies.md (Pavol Rusnak) Pull request description: Follow-up to bitcoin/bitcoin#23565 I added more info to dependencies.md - especially links to `depends/packages/*.mk` files and link to PRs where used versions were bumped. Preview at: https://github.com/prusnak/bitcoin/blob/dependencies/doc/dependencies.md ACKs for top commit: fanquake: ACK abcb876 - I didn't click on or test all of the links, but this looks ok. Tree-SHA512: e91deb639afebeb37f7bf05dddad8f70547b51688e938a30692e59dbd7c9e49d52b7f9bfacb74ef60c98862b6f8f444199d0ae06973c42dc647314bc1ffc22d5
abcb876 doc: add more info to dependencies.md (Pavol Rusnak) Pull request description: Follow-up to bitcoin#23565 I added more info to dependencies.md - especially links to `depends/packages/*.mk` files and link to PRs where used versions were bumped. Preview at: https://github.com/prusnak/bitcoin/blob/dependencies/doc/dependencies.md ACKs for top commit: fanquake: ACK abcb876 - I didn't click on or test all of the links, but this looks ok. Tree-SHA512: e91deb639afebeb37f7bf05dddad8f70547b51688e938a30692e59dbd7c9e49d52b7f9bfacb74ef60c98862b6f8f444199d0ae06973c42dc647314bc1ffc22d5
This PR rewrites dependencies.md. The current list is hard to parse, includes information that is either incorrect and/or misleading, and duplicates info in other documentation. The list of dependencies is much smaller, because it's now just the actual dependencies of Bitcoin Core, not random Qt things, or the dependencies of other tooling. We don't need another section on configure flag usage, or, to have duplicated lists of dependencies in other build docs, as that somewhat defeats the point of having dependencies.md, and just means more effort keeping things in sync.