makes
makes copied to clipboard
Deprecate builtins
Their learning curve is higher than language-specific tools.
Errors require high nix knowledge to debug.
We mainly use them to keep language-specific dependencies as derivations for cache, but for large projects, many times running npm ci is faster than makeNodeJsModules.
I would advise getting rid of all builtins that focus on building language-specific dependencies as derivations and install them on runtime using poetry install or npm ci
Deprecate:
- [x]
makeNodeJs* - [ ]
makePython*
Let's also deprecate:
- [x] testPython
- [x] calculateScorecard
- [x] lintPython
- [x] formatPython
- [x] securePythonWithBandit
- [x] secureKubernetesWithRbacPolice
- [x] deployNomad
- [x] taintTerraform
- [x] lintClojure
- [x] workspaceForTerraformFromEnv
- [x] makeSopsEncryptedFile
- [x] secretsForKubernetesConfigFromAws
- [x] formatJavascript
- [x] formatScala
- [x] lintWithLizard
Let's also deprecate:
- [x] testPython
- [x] calculateScorecard
- [x] lintPython
- [x] formatPython
- [x] securePythonWithBandit
- [x] secureKubernetesWithRbacPolice
- [x] deployNomad
- [x] taintTerraform
- [x] lintClojure
- [x] workspaceForTerraformFromEnv
- [x] makeSopsEncryptedFile
- [x] secretsForKubernetesConfigFromAws
- [x] formatJavascript
- [x] formatScala
- [x] lintWithLizard
I will release a major makes version deprecating all these builtins (low impact)
Deprecate:
- [x] lintGitCommitMsg
- [x] calculateCvss3
- [x] chunks
- [x] escapeShellArg
- [x] escapeShellArgs
- [x] filterAttrs
- [x] flatten
- [x] fromToml
- [x] makeDerivationParallel
- [x] makeNomadEnvironment
- [x] sortAscii
- [x] sortAsciiCaseless
- [x] secretsForGpgFromEnv
- [x] helloWorld
- [x] makeSecretForNomadFromEnv
- [x] makeSecretForKubernetesConfigFromAws
- [x] makeScriptParallel