From 6de93c9c5a79f474d886d898ffdb92687cb350df Mon Sep 17 00:00:00 2001
From: Jean-Paul Calderone <exarkun@twistedmatrix.com>
Date: Fri, 14 Jan 2022 10:34:55 -0500
Subject: [PATCH] Re-arrange and expand on the Tahoe-LAFS dependency section

---
 CONTRIBUTING.rst | 31 ++++++++++++++++++++-----------
 1 file changed, 20 insertions(+), 11 deletions(-)

diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst
index 2cbf8ef..5515468 100644
--- a/CONTRIBUTING.rst
+++ b/CONTRIBUTING.rst
@@ -42,6 +42,26 @@ To update the PyPI snapshot (and thus our python dependencies), run
 tahoe-lafs
 ..........
 
+ZKAPAuthorizer declares a dependency on Tahoe-LAFS with a narrow version range.
+This means that Tahoe-LAFS will be installed when ZKAPAuthorizer is installed.
+It also means that ZKAPAuthorizer exerts a great deal of control over the version of Tahoe-LAFS chosen.
+
+When installing using native Python packaging mechanisms
+(for example, pip)
+the relevant Tahoe-LAFS dependency declaration is in ``setup.cfg``.
+See the comments there about the narrow version constraint used.
+
+When installing the Nix package the version of Tahoe-LAFS is determined by the "tahoe-lafs" entry in the niv-managed ``nix/sources.json``.
+When feasible this is a released version of Tahoe-LAFS.
+To update to a new release, run:
+
+.. code:: shell
+
+   nix-shell --run 'niv update --rev tahoe-lafs-A.B.C tahoe-lafs'
+
+When it is not feasible to use a released version of Tahoe-LAFS,
+niv's ``--branch`` or ``--rev`` features can be used to update this dependency.
+
 We test against a pinned commit of Tahoe-LAFS master.
 To update to the current master@HEAD revision, run:
 
@@ -55,17 +75,6 @@ It might be worthwhile to `automate this process <https://github.com/PrivateStor
 
 It is also possible to pass ``pull/<pr-number>/head`` to test against a specific PR.
 
-The Nix package depends on a version of Tahoe-LAFS determined by the "tahoe-lafs" niv entry.
-When feasible this is a released version of Tahoe-LAFS.
-To update to a new release, run:
-
-.. code:: shell
-
-   nix-shell --run 'niv update --rev tahoe-lafs-A.B.C tahoe-lafs'
-
-When it is not feasible to use a released version of Tahoe-LAFS,
-niv's ``--branch`` or ``--rev`` features can be used to update this dependency.
-
 .. note::
 
    Since tahoe-lafs doesn't have correct version information when installed from a github archive,
-- 
GitLab