Skip to content

doc: Improve dependencies.md#31895

Merged
fanquake merged 3 commits into
bitcoin:masterfrom
NicolaLS:doc-followup
May 15, 2025
Merged

doc: Improve dependencies.md#31895
fanquake merged 3 commits into
bitcoin:masterfrom
NicolaLS:doc-followup

Conversation

@NicolaLS

@NicolaLS NicolaLS commented Feb 18, 2025

Copy link
Copy Markdown
Contributor

Small improvements to the dependencies.md documentation as a follow-up for #31634.

Linux Kernel does not need to be in the dependencies as it is not required for cross-compiling from other systems, and users building on Linux should not expect they can build using any EOL kernel, see: #31634 (comment)

Runtime dependencies can be in a separate table to improve readability. See: #31634 (comment)

Version used is redundant as the depends package definition is already linked in the table and can thus be removed, see: #31895 (comment)

@DrahtBot

DrahtBot commented Feb 18, 2025

Copy link
Copy Markdown
Contributor

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

Code Coverage & Benchmarks

For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/31895.

Reviews

See the guideline for information on the review process.

Type Reviewers
ACK maflcko, hebasto, jonatack
Stale ACK hodlinator

If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

Conflicts

Reviewers, this pull request conflicts with the following ones:

  • #32128 (Draft: CCoinMap Experiments by martinus)
  • #31802 (Add bitcoin-{node,gui} to release binaries for IPC by Sjors)

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.

@NicolaLS

Copy link
Copy Markdown
Contributor Author

Preview

Comment thread doc/dependencies.md Outdated

@hodlinator hodlinator left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

ACK f3d2e9acbf3d9407101290ca86f014e82344cfce

Concept

Separates build and runtime dependencies into separate tables which makes more sense.

Nits

@NicolaLS

NicolaLS commented Apr 8, 2025

Copy link
Copy Markdown
Contributor Author

ACK f3d2e9a

Concept

Separates build and runtime dependencies into separate tables which makes more sense.

Nits

* Slight preference of using `### Build` over `**Build:**`, but it's subjective.

* Maybe [32bdc7d](https://github.com/bitcoin/bitcoin/commit/32bdc7dc47bcd67458bc8f687fcf8659ec3f0b1e) could also include a link to https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/cmake.scm?id=53396a22afc04536ddf75d8f82ad2eafa5082725#n169 in the commit message, since it's a bit opaque otherwise?

Thanks. Fixed both nits, I also think headlines are better.

@hodlinator hodlinator left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

re-ACK 8da43955376bde65fa517af462fd2a1514764d2b

PR addresses feedback from at least 3 long-time contributors (see comment links in PR description).

Changes: Addressed nits from first ACK.

Nice bonus that one can now link directly to a specific sub-heading.
https://github.com/bitcoin/bitcoin/blob/8da43955376bde65fa517af462fd2a1514764d2b/doc/dependencies.md#build-1

Comment thread doc/dependencies.md Outdated

@jonatack jonatack left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Swung by here a couple times previously and this pull is looking better now.

ACK fefe8fc3c38701bdc3a3b1c6e4d0c8885f94e75f modulo question below

Comment thread doc/dependencies.md Outdated
Comment thread doc/dependencies.md Outdated
@jonatack

Copy link
Copy Markdown
Member

ACK 4b6171982a20d736b2c627ab9b7ea788b06af457

@hodlinator hodlinator left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

re-ACK 4b6171982a20d736b2c627ab9b7ea788b06af457

Changes since previous ACK: Addressed feedback (#31895 (comment) #31895 (comment)).

Comment thread doc/dependencies.md Outdated
Comment thread doc/dependencies.md Outdated
@NicolaLS NicolaLS force-pushed the doc-followup branch 2 times, most recently from d68a5bd to 810916f Compare May 15, 2025 13:34
@NicolaLS

Copy link
Copy Markdown
Contributor Author

Squashed and reworded commits.

NicolaLS added 3 commits May 15, 2025 16:08
Linux Kernel is neither an optional nor a required dependency for
Bitcoin Core.
The `dependencies.md` should mention that it is possible to self-compile
the dependencies and reference `depends/README.md` for instructions.
Also mention full path to `/doc/build-*.md` for clarity.
- Remove the "Version used" column from the dependencies tables as the
  depends package definition which defines the version used is already
  linked. In case a developer is interested in which PR introduced this
  file/version they can use `git blame` on the package definition as
  usual. This removes doc. maintenance overhead and eliminates the risk
  of stale information about the "Version used", see comment:
  bitcoin#31895 (comment)

- Separate dependency tables into build-time and run-time tables for
  easier distinction of the two and to avoid repeating the same
  information ("No"/"Yes") for better readability.

- Order dependencies alphabetically
@NicolaLS

Copy link
Copy Markdown
Contributor Author

(fixed typo in commit message)

@maflcko

maflcko commented May 15, 2025

Copy link
Copy Markdown
Member

lgtm ACK e62423d 🛄

Show signature

Signature:

untrusted comment: signature from minisign secret key on empty file; verify via: minisign -Vm "${path_to_any_empty_file}" -P RWTRmVTMeKV5noAMqVlsMugDDCyyTSbA3Re5AkUrhvLVln0tSaFWglOw -x "${path_to_this_whole_four_line_signature_blob}"
RUTRmVTMeKV5npGrKx1nqXCw5zeVHdtdYURB/KlyA/LMFgpNCs+SkW9a8N95d+U4AP1RJMi+krxU1A3Yux4bpwZNLvVBKy0wLgM=
trusted comment: lgtm ACK e62423d6f1514b022155edb5bc930cecc4236731 🛄
N/8vnAtKiknzcPjLx34qQXyWw6WJR2IMUqKEaXbtLLNH3EKd5p9Dl4+O+mFpfYxiJ6PAt6UHjD6BQ98pJvBgCg==

@DrahtBot DrahtBot requested a review from hodlinator May 15, 2025 15:02

@hebasto hebasto left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

ACK e62423d.

Comment thread doc/dependencies.md
| Dependency | Releases | Minimum required |
| --- | --- | --- |
| [Boost](../depends/packages/boost.mk) | [link](https://www.boost.org/users/download/) | [1.73.0](https://github.com/bitcoin/bitcoin/pull/29066) |
| CMake | [link](https://cmake.org/) | [3.22](https://github.com/bitcoin/bitcoin/pull/30454) |

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

nit:

Suggested change
| CMake | [link](https://cmake.org/) | [3.22](https://github.com/bitcoin/bitcoin/pull/30454) |
| CMake | [link](https://cmake.org/download/) | [3.22](https://github.com/bitcoin/bitcoin/pull/30454) |

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Anything here seems fine, we don't link to https://sqlite.org/download.html or https://freetype.org/download.html.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Anything here seems fine, we don't link to https://sqlite.org/download.html or https://freetype.org/download.html.

But we do link to https://www.boost.org/users/download/ and https://github.com/libevent/libevent/releases.

I’ve ACKed the current branch and am content with it as is.

Comment thread doc/dependencies.md
Comment on lines +49 to +50
| [Fontconfig](../depends/packages/fontconfig.mk) (gui) | [link](https://www.freedesktop.org/wiki/Software/fontconfig/) | 2.6 |
| [FreeType](../depends/packages/freetype.mk) (gui) | [link](https://freetype.org) | 2.3.0 |

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

nit: From #30997 (comment):

Starting with Qt 6.5.0, the libxcb-cursor0 package is required to be installed at runtime.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I don't any x11 packages are listed here, so it seems unrelated?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

It was a nit. I am OK with the current branch.

@jonatack jonatack left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

ACK e62423d

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants