diff --git a/flake.lock b/flake.lock index 406c334..32a6deb 100644 --- a/flake.lock +++ b/flake.lock @@ -19,11 +19,11 @@ ] }, "locked": { - "lastModified": 1777487137, - "narHash": "sha256-TuvKVBX60mqyMT6OB5JqVEh1YIWtFMR/igLCaCdC9tw=", + "lastModified": 1788181969, + "narHash": "sha256-OUB6hPlFBB9FRdZgZXSye4lDOg+fbrqKe8ePv2IM7NY=", "owner": "cachix", "repo": "cachix", - "rev": "a66a440c321d35f7193472c317f42a55ccd1cb93", + "rev": "98093e8eea6c1635ef1337a576fa76f3e8bd4f39", "type": "github" }, "original": { @@ -79,11 +79,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1787015266, - "narHash": "sha256-B4eXU1+QiZc3fFgH0pTl185xNUYNzW+1KIe9Jmtavkk=", + "lastModified": 1789691577, + "narHash": "sha256-mS9lQo1gpKzwWMYgzdxc4yv4sIdwqI0GfFMCbV4LZtA=", "owner": "cachix", "repo": "devenv", - "rev": "c18de5253016e6eb97689724327f08e9dd2d4768", + "rev": "ccb4a99d35474afd07634ee194174ae40f7d98af", "type": "github" }, "original": { @@ -116,11 +116,11 @@ ] }, "locked": { - "lastModified": 1778716662, - "narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=", + "lastModified": 1788306937, + "narHash": "sha256-lbrI1UYVpFgKSsyrU9oeF7FHfnu8nLD9ja0ou9f2rxk=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb", + "rev": "f16b25b8c3d2809b87925d0b76652d7821a75c68", "type": "github" }, "original": { @@ -132,16 +132,17 @@ "ghostty": { "flake": false, "locked": { - "lastModified": 1784602798, - "narHash": "sha256-298x90knBUWX5GHGXh2SKsAKvStjU2ri9UgOGoF79/8=", + "lastModified": 1786026742, + "narHash": "sha256-tRtgTg/i3w1nFdRHU2IGekfJN8EyP+HARW4MtoUZyqk=", "owner": "ghostty-org", "repo": "ghostty", - "rev": "88b4cd047fa627cdca6781bc7e7dc8b75a2cecb9", + "rev": "22d13172cde98a0a4dda05d3d6a3fcb0dd8ed018", "type": "github" }, "original": { "owner": "ghostty-org", "repo": "ghostty", + "rev": "22d13172cde98a0a4dda05d3d6a3fcb0dd8ed018", "type": "github" } }, @@ -157,11 +158,11 @@ ] }, "locked": { - "lastModified": 1782908218, - "narHash": "sha256-wLMOrPgVyeF3XmP+qfYcLqnVdTxikdcSvbIY7rA9jTA=", + "lastModified": 1788267358, + "narHash": "sha256-nt+lUqYVpc9Y6JeMd2WmXzCDojasdadKo0mWcluvY2Y=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "9f7e99119ece7705299595299f3b031f39356de1", + "rev": "27555e2624241fb116b49095df4caaee85a25691", "type": "github" }, "original": { @@ -196,11 +197,11 @@ ] }, "locked": { - "lastModified": 1787002634, - "narHash": "sha256-Mdi8Ge6bMMLO901i2WCMOkiwNTYiKJivKN2kRfGxvXo=", + "lastModified": 1788036898, + "narHash": "sha256-3NT3yTvoRT7+rxLDNovpyeTDIJkZlBoO72rcu2x9Y9o=", "owner": "cachix", "repo": "nix", - "rev": "f521bcc0b07d80921104a973996823392d247f7a", + "rev": "b9b81726b38469c55b9706d80d37d6c73cc7f76c", "type": "github" }, "original": { @@ -223,11 +224,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1783935112, - "narHash": "sha256-IAQ14nteIKXAz4cd75UcZrsHGEVJ7QNrkUwX9rmeZ/Y=", + "lastModified": 1788165251, + "narHash": "sha256-ITHt6eU6DuwQqlNV1/wehvKYPE6J8sZIlv75CpDjcHI=", "owner": "nix-community", "repo": "nixd", - "rev": "a64cd33e53b316b6b092ea0a966640cd2309bf3d", + "rev": "e2ca72c353cfbc3d63e942fe9aeae4ec497863bf", "type": "github" }, "original": { @@ -241,11 +242,11 @@ "nixpkgs-src": "nixpkgs-src" }, "locked": { - "lastModified": 1782132010, - "narHash": "sha256-ZnAVHdVrotp80iIMm5CSR1fdxPlw7Uwmwxb+O/wsgZ8=", + "lastModified": 1787753358, + "narHash": "sha256-Tl77VbWyAKrOfRNQhL6JbQtb/MLzbYa/1RG1gWWfICk=", "owner": "cachix", "repo": "devenv-nixpkgs", - "rev": "12866ae2dddbc0ab8b329915f8072bb9c75bde89", + "rev": "256551e45f6303e142ab4a98be1bf243feb77dc0", "type": "github" }, "original": { @@ -258,11 +259,11 @@ "nixpkgs-src": { "flake": false, "locked": { - "lastModified": 1781607440, - "narHash": "sha256-rxO+uc/KFbSJp+pgyXRuAX6QlG9hJdnt0BXpEQRXY+U=", + "lastModified": 1787394516, + "narHash": "sha256-pRGOQSClnXNI2iLUG6DYpsGvYcuw0drOutVZFTJNw90=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3e41b24abd260e8f71dbe2f5737d24122f972158", + "rev": "c8f90650c15282fa8656a041bfbbd2403997a9a7", "type": "github" }, "original": { @@ -274,11 +275,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1787001381, - "narHash": "sha256-Ue1Yo8gfHdD4TMtNewhA4tkSYeFqXThju0nCyJc3ALo=", + "lastModified": 1789684949, + "narHash": "sha256-ZKhUe/2IJUq1JhKxKMu8rbkgSGmPP2ZCqlIPn40aGCM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ec2d622de0773551768cf98f3fc50cbcc003b9c5", + "rev": "e554fab72f81915600f3f449b786fd9af40439a5", "type": "github" }, "original": { @@ -303,11 +304,11 @@ ] }, "locked": { - "lastModified": 1782875958, - "narHash": "sha256-5eqDcnBjb1424HRQdnhuhNOBZguq1Z2tqSa2OMF/m2c=", + "lastModified": 1788332415, + "narHash": "sha256-BTFrmyh0oaVDsvA9NNw0YpbbeppTwU0t70iVx672Ew8=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "13139aefa973f3d96c60c0fbab801de058ae25ca", + "rev": "860d7c835ab91bfc8972b67092f5f2db8e9390a0", "type": "github" }, "original": { @@ -325,11 +326,11 @@ ] }, "locked": { - "lastModified": 1780220602, - "narHash": "sha256-eynAfOmbmxJnkp7YewvCEbShNnnYJ9gLLqkzsYtBPeM=", + "lastModified": 1786901030, + "narHash": "sha256-WSFCsDSE5ffgD2MqzkM2CYjeFiKhRF/dJUN8uedb6YE=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "db947814a175b7ca6ded66e21383d938df01c227", + "rev": "27b3b12a8e6375f28ebe122f07d230ca5459bbfa", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index fba7617..ec2ddee 100644 --- a/flake.nix +++ b/flake.nix @@ -429,12 +429,23 @@ EOF export HOME="$TMPDIR" + # Unlike gutenberg-downgrade and wordpress-sqlite-anywhere, + # wordpress-stubs.php is fetched as a raw fetchurl file rather + # than the php-stubs/wordpress-stubs Composer package (see the + # comment on wordpressStubs above), so it never gets a "dist" + # entry in installed.json for PHPStan >= 2.2.13's path-package + # detection (phpstan-src#6356) to mistrigger on -- installed.json + # here has no path packages at all. The scanFiles route is what + # costs memory instead: with no locked package version to hang a + # cache key on, PHPStan >= 2.2.13 parses and reflects the whole + # 5.5 MB stub file to export its nodes for the result cache on + # every run, which alone needs a bit over 2G. 3G leaves headroom. phpstan analyse \ -c tests/phpstan-nix.neon \ --no-progress \ --error-format=table \ --autoload-file=vendor/autoload.php \ - --memory-limit=2G + --memory-limit=3G touch "$out" ''; diff --git a/nix/devenv-module.nix b/nix/devenv-module.nix index 7b19900..a047664 100644 --- a/nix/devenv-module.nix +++ b/nix/devenv-module.nix @@ -78,6 +78,15 @@ in ]; }; + # Under process-compose, a process whose `ready` config has no `timeout` is + # handed to process-compose's own policy (supervisionMode = "external"), + # and devenv then reports it Ready the instant it is spawned without ever + # running the exec probe -- so devenv:mysql:configure (which creates + # initialDatabases) races mariadbd's actual startup instead of waiting on + # it. Setting `timeout` keeps devenv supervising mysql itself, so the probe + # actually runs and the databases get created after mariadbd is really up. + processes.mysql.ready.timeout = 60; + services.minio = { enable = true; accessKey = "wpcftestkey";