Skip to content

Conversation

fanquake
Copy link
Member

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.

@fanquake fanquake added the Docs label Nov 21, 2021
@mjdietzx
Copy link
Contributor

Concept ACK - nice cleanup

Copy link
Member

@jarolrod jarolrod left a 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?

@fanquake fanquake force-pushed the cleanup_dependencies_doc branch from 73ee8dd to e57aca9 Compare November 22, 2021 07:01
@fanquake
Copy link
Member Author

Do you want to go ahead and remove the dependency tables from the other build-*.md docs?

Have done.

@naumenkogs
Copy link
Member

Concept ACK

@DrahtBot
Copy link
Contributor

DrahtBot commented Nov 22, 2021

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Conflicts

Reviewers, this pull request conflicts with the following ones:

  • #24031 (build: don't compress macOS DMG by fanquake)

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.

Copy link
Contributor

@shaavan shaavan left a 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’s dependencies.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.

Copy link
Contributor

@jamesob jamesob left a 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)
Copy link
Contributor

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.

Copy link
Contributor

@RandyMcMillan RandyMcMillan left a comment

Choose a reason for hiding this comment

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

@jarolrod
Copy link
Member

@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.

@RandyMcMillan
Copy link
Contributor

@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.

@DrahtBot DrahtBot mentioned this pull request Dec 1, 2021
@Rspigler
Copy link
Contributor

Rspigler commented Dec 3, 2021

Concept ACK. Cleanup is nice

| --- | --- | --- | --- |
| [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 |
Copy link
Member

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.

Copy link
Member Author

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.

@fanquake fanquake force-pushed the cleanup_dependencies_doc branch from 9d50ed2 to f5e2f99 Compare February 22, 2022 10:32
@fanquake fanquake force-pushed the cleanup_dependencies_doc branch from f5e2f99 to 0d36c89 Compare March 4, 2022 17:20
@fanquake
Copy link
Member Author

fanquake commented Mar 4, 2022

Rebased.

@fanquake fanquake force-pushed the cleanup_dependencies_doc branch from 0d36c89 to 8ad9e7f Compare March 7, 2022 14:56
@fanquake
Copy link
Member Author

fanquake commented Mar 7, 2022

Rebased past #24132.

@fanquake fanquake force-pushed the cleanup_dependencies_doc branch from 8ad9e7f to 791030c Compare March 12, 2022 20:25
@fanquake
Copy link
Member Author

Rebased past #24164.

@fanquake fanquake force-pushed the cleanup_dependencies_doc branch from 791030c to 893e180 Compare March 16, 2022 10:19
Copy link
Member

@maflcko maflcko left a 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

Copy link
Member

@hebasto hebasto left a 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.

Copy link
Member

@jarolrod jarolrod left a comment

Choose a reason for hiding this comment

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

crACK 893e180

@fanquake fanquake merged commit ee47800 into bitcoin:master Mar 16, 2022
@fanquake fanquake deleted the cleanup_dependencies_doc branch March 16, 2022 15:46
@fanquake
Copy link
Member Author

Thanks for the reviews. Planning on open some further doc consolidation PRs shortly.

sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Mar 16, 2022
maflcko pushed a commit to maflcko/bitcoin-core that referenced this pull request Mar 17, 2022
…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
fanquake added a commit to bitcoin-core/gui that referenced this pull request Apr 21, 2022
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
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Apr 22, 2022
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
@bitcoin bitcoin locked and limited conversation to collaborators Mar 16, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.