diff --git a/scripts/generate-package-manager-manifests.js b/scripts/generate-package-manager-manifests.js index 3cdd20c..05b4b8a 100644 --- a/scripts/generate-package-manager-manifests.js +++ b/scripts/generate-package-manager-manifests.js @@ -74,8 +74,8 @@ export function createHomebrewFormula({ sha256, version }) { sha256 "${digest}" license "Apache-2.0" - depends_on "node" depends_on "python" => :build + depends_on "node" def install system "npm", "install", *std_npm_args diff --git a/test/package-manager.test.js b/test/package-manager.test.js index 90e0068..50de551 100644 --- a/test/package-manager.test.js +++ b/test/package-manager.test.js @@ -91,6 +91,11 @@ test("Homebrew candidate follows the standard Node formula layout", () => { assert.match(formula, /url "https:\/\/registry\.npmjs\.org\/relmio\/-\/relmio-1\.2\.3\.tgz"/u); assert.match(formula, /depends_on "node"/u); assert.match(formula, /depends_on "python" => :build/u); + assert.ok( + formula.indexOf('depends_on "python" => :build') < + formula.indexOf('depends_on "node"'), + "Homebrew build dependencies must precede runtime dependencies", + ); assert.match(formula, /system "npm", "install", \*std_npm_args/u); assert.match(formula, /bin\.install_symlink libexec\.glob\("bin\/\*"\)/u); assert.match(formula, /assert_predicate bin\/"relmio", :executable\?/u);