From 279ecf7cdee94b3b5e37e4ade3af3a6d20ca9cde Mon Sep 17 00:00:00 2001
From: John Ericson <John.Ericson@Obsidian.Systems>
Date: Fri, 15 Jul 2022 13:29:15 +0000
Subject: [PATCH] Remove `computed-derivations` experimental feature

We don't need it yet.
---
 doc/manual/src/release-notes/rl-next.md | 3 +--
 src/libcmd/installables.cc              | 1 -
 src/libutil/experimental-features.cc    | 1 -
 src/libutil/experimental-features.hh    | 1 -
 src/nix/nix.md                          | 2 --
 tests/build-explicit-output.sh          | 3 ---
 6 files changed, 1 insertion(+), 10 deletions(-)

diff --git a/doc/manual/src/release-notes/rl-next.md b/doc/manual/src/release-notes/rl-next.md
index 3bb12c013..7047e2421 100644
--- a/doc/manual/src/release-notes/rl-next.md
+++ b/doc/manual/src/release-notes/rl-next.md
@@ -1,4 +1,3 @@
 # Release X.Y (202?-??-??)
 
-* Add experimental *indexed store derivations* installable syntax, part of the
-  the `computed-derivations` experimental feature.
+* Add *indexed store derivations* installable syntax.
diff --git a/src/libcmd/installables.cc b/src/libcmd/installables.cc
index 7b8860a88..0641e99ff 100644
--- a/src/libcmd/installables.cc
+++ b/src/libcmd/installables.cc
@@ -814,7 +814,6 @@ std::vector<std::shared_ptr<Installable>> SourceExprCommand::parseInstallables(
                     result.push_back(std::make_shared<InstallableStorePath>(
                         store,
                         DerivedPath::Built::parse(*store, s.substr(0, found), s.substr(found + 1))));
-                    settings.requireExperimentalFeature(Xp::ComputedDerivations);
                     continue;
                 } catch (BadStorePath &) {
                 } catch (...) {
diff --git a/src/libutil/experimental-features.cc b/src/libutil/experimental-features.cc
index 6b2dd02e6..fa79cca6b 100644
--- a/src/libutil/experimental-features.cc
+++ b/src/libutil/experimental-features.cc
@@ -14,7 +14,6 @@ std::map<ExperimentalFeature, std::string> stringifiedXpFeatures = {
     { Xp::NoUrlLiterals, "no-url-literals" },
     { Xp::FetchClosure, "fetch-closure" },
     { Xp::ReplFlake, "repl-flake" },
-    { Xp::ComputedDerivations, "computed-derivations" },
 };
 
 const std::optional<ExperimentalFeature> parseExperimentalFeature(const std::string_view & name)
diff --git a/src/libutil/experimental-features.hh b/src/libutil/experimental-features.hh
index 4cb2708dd..d09ab025c 100644
--- a/src/libutil/experimental-features.hh
+++ b/src/libutil/experimental-features.hh
@@ -23,7 +23,6 @@ enum struct ExperimentalFeature
     NoUrlLiterals,
     FetchClosure,
     ReplFlake,
-    ComputedDerivations, // RFC 92
 };
 
 /**
diff --git a/src/nix/nix.md b/src/nix/nix.md
index 5d669e8b1..ede88ebde 100644
--- a/src/nix/nix.md
+++ b/src/nix/nix.md
@@ -132,8 +132,6 @@ the Nix store. Here are the recognised types of installables:
 
 * **Indexed store derivations**: `/nix/store/p7gp6lxdg32h4ka1q398wd9r2zkbbz2v-hello-2.10.drv^out`
 
-  *(Experimental, part of by the `computed-derivations` experimental feature.)*
-
   Store derivations can be indexed with a non-empty comma-separated list
   of specific output names, or `*` meaning all ouptuts. This allows
   finer control versus just specifying a derivation (without
diff --git a/tests/build-explicit-output.sh b/tests/build-explicit-output.sh
index a4cb1c5ad..45320d6e3 100644
--- a/tests/build-explicit-output.sh
+++ b/tests/build-explicit-output.sh
@@ -2,9 +2,6 @@ source common.sh
 
 set -o pipefail
 
-enableFeatures "computed-derivations"
-restartDaemon
-
 drv=$(nix eval -f multiple-outputs.nix --raw a.drvPath)
 if nix build "$drv^not-an-output" --no-link --json; then
     fail "'not-an-output' should fail to build"