h&;=2      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                                         !!!!!"#$%&'()))))*+,-.////////////////////////////////////////////////////01234455678889:;<=>?@ABCDEFGHIJKLLLMNOPQRSTTTTUUVVVW Safe-Inferred "%&';= D,hadolintA simple rule that can be implemented in terms of returning True or False for each instruction If you need to calculate some state to decide upon past information, use --hadolintA rule that accumulates a State a. The state contains the collection of failed lines and a custom data type that can be used to track properties for the rule. Each step always returns the new State, which offers the ability to both accumulate properties and mark failures for every given instruction..hadolint Similarly to -, it returns a State a for each step, but it has the ability to run a done callback as the last step of the rule. The done callback can be used to transform the state and mark failures for any arbitrary line in the input. This helper is meant for rules that need to do lookahead. Instead of looking ahead, the state should store the facts and make a decision about them once the input is finished.0hadolintReturns the result of running the check function on the image alias name, if the passed instruction is a FROM instruction with a stage alias. Otherwise, returns True.3hadolintUnwraps ONBUILD instructions and applies the rule to the content,hadolint rule codehadolintseverity for the rulehadolintfailure message for the rulehadolintstep calculation for the rule. Returns True or False for each line in the dockerfile depending on its validity..hadolintstep calculation for the rule. Called for each instruction in the docker file it must return the state after being modified by the rulehadolint initial statehadolintdone callaback. It is passed the final accumulated state and it should return all failures found by the rule3    !"#$%&'()*+,-./01233 !"#   $%&'()*+,-./0123 0 Safe-Inferred "%&';= KLMNKLMN Safe-Inferred "%&';=&OPQRSTU[\Z]VWXY^_`abcdeTU[\Z]VWXYOPQRScbed`a^_ Safe-Inferred "%&';=mnoonm Safe-Inferred "%&';=pqpq Safe-Inferred "%&';=stst Safe-Inferred "%&';=@vv Safe-Inferred "%&';=ywxyzyzwx  Safe-Inferred "%&';=  Safe-Inferred "%&';=  Safe-Inferred "%&';=hadolintThis function needs to convert the set to a list because Doc ann is not ordered.hadolintpretty print a list with a custom pretty printing function for each element!!  Safe-Inferred "%&';=  Safe-Inferred "%&';=hadolint/Gets the configuration file which Hadolint useshadolintIf no configuration file path was given on the command line, Hadolint searches these locations or their equivalents on MacOS/Windows: - $(pwd)/.hadolint.{yaml|yml} - $HOME.confighadolint.{yaml|yml} - $HOME .hadolint{hadolint|config}.{yaml|yml} - $HOME/.hadolint.{yaml|yml} The first file found is used, all other are ignored. Safe-Inferred "%&';=X Safe-Inferred "%&';=)+  Safe-Inferred "%&';= Safe-Inferred "%&';= Safe-Inferred "%&';=@ Safe-Inferred "%&';={ Safe-Inferred "%&';= Safe-Inferred "%&';= Safe-Inferred "%&';=, Safe-Inferred "%&';=g Safe-Inferred "%&';= Safe-Inferred "%&';= Safe-Inferred "%&';= Safe-Inferred "%&';=S Safe-Inferred "%&';= Safe-Inferred "%&';= Safe-Inferred "%&';= Safe-Inferred "%&';=hadolintgenerates a list of references to variable names referenced on the right hand side of a variable definition, except when the variable is referenced on its own right hand side.hadolintis a reference of a variable substring of any text? matches ${var_name} and $var_name, but not $var_nameblafoohadolint we find a bare variable with name v in a text, if '$v' is in the text at any place and any text following after that occurence would terminate a variable name. To determine that, the text t is split at every occurence of var, check if '$v' is in the text and if any part of the split text would terminate a variable name. Safe-Inferred "%&';=hadolintThe state here keeps the image name/alias of the current build stage and a map from image names/aliases to a Bool, saving whether or not a WORKDIR has been set in a build stage.  Safe-Inferred "%&';=! Safe-Inferred "%&';=Z" Safe-Inferred "%&';=# Safe-Inferred "%&';=$ Safe-Inferred "%&';= % Safe-Inferred "%&';=F& Safe-Inferred "%&';=' Safe-Inferred "%&';=( Safe-Inferred "%&';=) Safe-Inferred "%&';=2* Safe-Inferred "%&';=m+ Safe-Inferred "%&';=, Safe-Inferred "%&';=- Safe-Inferred "%&';=. Safe-Inferred "%&';=Y/ Safe-Inferred "%&';= hadolintgiven a flag and a command, return list of arguments for that particulat flag. E.g., if the command is `useradd -u 12345 luser` and this function is called for the command u, it returns ["12345"].hadolintCheck if a command contains a program call in the Run instruction000 Safe-Inferred "%&';=!hadolint3Converts ShellCheck errors into our own errors type1 Safe-Inferred "%&';="92 Safe-Inferred "%&';="t3 Safe-Inferred "%&';="4 Safe-Inferred "%&';=#JhadolintThis is needed as placeholder when no FROM statement has yet been envountered.5 Safe-Inferred "%&';=$hadolint'This Rule catches multiple consecutive RUN instructions. It ignores the case where multiple commands are chained together (e.g. with ) because in that case the programmer most likely has deliberately chosen to use multiuple RUN instructions. Cases where --mount=xxx flags differ are excluded as well.6 Safe-Inferred "%&';=%7 Safe-Inferred "%&';=%T8 Safe-Inferred "%&';=%9 Safe-Inferred "%&';=%: Safe-Inferred "%&';=&; Safe-Inferred "%&';=&@< Safe-Inferred "%&';=&{= Safe-Inferred "%&';=&> Safe-Inferred "%&';=&? Safe-Inferred "%&';=',@ Safe-Inferred "%&';='gA Safe-Inferred "%&';='B Safe-Inferred "%&';='C Safe-Inferred "%&';=(D Safe-Inferred "%&';=(SE Safe-Inferred "%&';=(F Safe-Inferred "%&';=(G Safe-Inferred "%&';=+hadolintRule for pinning NPM packages to version, tag, or commit supported formats by Hadolint npm install (with no args, in package dir) npm install [ @scope/] name npm install [ @scope/] name tag npm install [<scope>/] name@ version$ npm install git[+http|+https]:/ git-host git-user/ repo-name[ |semver: semver] npm install git+ssh:/ git-host: git-user repo-name[ |semver: semver]H Safe-Inferred "%&';=+QI Safe-Inferred "%&';=+J Safe-Inferred "%&';=+K Safe-Inferred "%&';=,L Safe-Inferred "%&';=-hadolintEven though dockerfiles without a FROM are not valid, we still want to provide some feedback for this rule so we pretend there is a base image at the start of the file if there is noneM Safe-Inferred "%&';=-BN Safe-Inferred "%&';=-}O Safe-Inferred "%&';=-P Safe-Inferred "%&';=-Q Safe-Inferred "%&';=..R Safe-Inferred "%&';=.iS Safe-Inferred "%&';=/@hadolint!The set of ignored rules per linehadolint!The set of globally ignored ruleshadolint*A set of failures collected for reach ruleT Safe-Inferred "%&';=0hadolintPerforms the process of parsing the dockerfile and analyzing it with all the applicable rules, depending on the list of ignored rules.Y Safe-Inferred"%&';=0[U Safe-Inferred "%&';=0V Safe-Inferred "%&';=1hadolintSARIF only specifies three severities "error", "warning" and "note" We pack our "info" and "style" severities together into the "note" severity here.W Safe-Inferred "%&';=1OPQRSTU[\Z]VWXY^TU[\Z]VWXYOPQRS^Z Safe-Inferred "%&';=2$ OSRPQTYXWV]Z\U[^  [\]^_`abcdefghiijklmmnopqrrstuvwxyz{|}~                                                         !!!!!"#$%&'()))))*+,-.////////////////////////////////////////////////////01234455678889:;<=>?@ABCDEFGHIJKLLLMNOPQRSTTTTUUVVVW    04GLSSSYYYYYYYYV&hadolint-2.12.0-H3bsWJqlgXKFKqSMzbhywiHadolint.Formatter.Format Hadolint.RuleHadolint.PragmaHadolint.Formatter.TTYHadolint.Formatter.SonarQubeHadolint.Formatter.JsonHadolint.Formatter.GnuHadolint.Formatter.CodeclimateHadolint.Formatter.CodacyHadolint.Formatter.CheckstyleHadolint.Config.ConfigurationHadolint.Config.EnvironmentHadolint.Config.ConfigfileHadolint.Config.CommandlineHadolint.Rule.DL3000Hadolint.Rule.DL3002Hadolint.Rule.DL3006Hadolint.Rule.DL3007Hadolint.Rule.DL3011Hadolint.Rule.DL3012Hadolint.Rule.DL3020Hadolint.Rule.DL3021Hadolint.Rule.DL3022Hadolint.Rule.DL3023Hadolint.Rule.DL3024Hadolint.Rule.DL3025Hadolint.Rule.DL3026Hadolint.Rule.DL3029Hadolint.Rule.DL3043Hadolint.Rule.DL3044Hadolint.Rule.DL3045Hadolint.Rule.DL3048Hadolint.Rule.DL3049Hadolint.Rule.DL3050Hadolint.Rule.DL3051Hadolint.Rule.DL3052Hadolint.Rule.DL3053Hadolint.Rule.DL3054Hadolint.Rule.DL3055Hadolint.Rule.DL3056Hadolint.Rule.DL3057Hadolint.Rule.DL3058Hadolint.Rule.DL3061Hadolint.Rule.DL4000Hadolint.Rule.DL4003Hadolint.Rule.DL4004Hadolint.ShellHadolint.Rule.ShellcheckHadolint.Rule.DL4006Hadolint.Rule.DL4005Hadolint.Rule.DL4001Hadolint.Rule.DL3060Hadolint.Rule.DL3059Hadolint.Rule.DL3047Hadolint.Rule.DL3046Hadolint.Rule.DL3042Hadolint.Rule.DL3041Hadolint.Rule.DL3040Hadolint.Rule.DL3038Hadolint.Rule.DL3037Hadolint.Rule.DL3036Hadolint.Rule.DL3035Hadolint.Rule.DL3034Hadolint.Rule.DL3033Hadolint.Rule.DL3032Hadolint.Rule.DL3030Hadolint.Rule.DL3028Hadolint.Rule.DL3027Hadolint.Rule.DL3019Hadolint.Rule.DL3018Hadolint.Rule.DL3016Hadolint.Rule.DL3015Hadolint.Rule.DL3014Hadolint.Rule.DL3013Hadolint.Rule.DL3010Hadolint.Rule.DL3009Hadolint.Rule.DL3008Hadolint.Rule.DL3005Hadolint.Rule.DL3004Hadolint.Rule.DL3003Hadolint.Rule.DL3001Hadolint.Rule.DL1001Hadolint.Process Hadolint.Lint Hadolint.MetaHadolint.Formatter.SarifHadolint.FormatterHadolint.ConfigPaths_hadolintHadolint'megaparsec-9.2.2-Bh5JbmGMk2pDR4NazpOEEQText.Megaparsec.ErrorerrorBundlePrettyRule LabelSchema LabelTypeEmailGitHashRawTextRfc3339SemVerSpdxUrl LabelNameStatefailuresstateFailures CheckFailurecodeseveritymessagelineRuleCode unRuleCode DLSeverityDLErrorC DLWarningCDLInfoCDLStyleC DLIgnoreC|> withSeverityreadEitherSeverityreadMaybeSeverityreadEitherLabelType withLabelTypewithLineNumberaddFail emptyState simpleStatemodify replaceWith simpleRule customRuleveryCustomRule foldArguments aliasMustBearchiveFileFormatExtensions dropQuotesonbuild$fPrettyDLSeverity$fDefaultDLSeverity$fMonoidDLSeverity$fSemigroupDLSeverity$fFromYAMLDLSeverity$fPrettyRuleCode$fIsStringRuleCode$fShowRuleCode$fOrdCheckFailure$fPrettyLabelType$fFromYAMLLabelType $fEqLabelType$fShowLabelType $fShowState$fShowCheckFailure$fEqCheckFailure $fEqRuleCode $fOrdRuleCode$fEqDLSeverity$fOrdDLSeverity$fShowDLSeverity$fGenericDLSeverity$fNFDataDLSeverityignored globalIgnoredparseIgnorePragma parseShellResultfileNameerrorschecks OutputFormatJson SonarQubeTTYCodeclimateJsonGitlabCodeclimateJsonGnu CheckstyleCodacySarifreadMaybeOutputFormattoResult severityText stripNewlineserrorMessageLine errorMessageerrorPositionPretty errorPosition$fDefaultOutputFormat$fFromYAMLOutputFormat$fMonoidOutputFormat$fSemigroupOutputFormat$fPrettyOutputFormat$fEqOutputFormat$fShowOutputFormat formatError formatCheck printResults formatResult$fToJSONSonarQubeFormat$fToJSONJsonFormatformatGitlabResultprintGitlabResults $fToJSONPos$fToJSONLocation $fToJSONIssue$fToJSONFingerprintIssue $fGenericPosPartialConfiguration partialNoFailpartialNoColorpartialVerbose partialFormatpartialErrorRulespartialWarningRulespartialInfoRulespartialStyleRulespartialIgnoreRulespartialAllowedRegistriespartialLabelSchemapartialStrictLabelspartialDisableIgnorePragmapartialFailureThreshold ConfigurationnoFailnoColorverboseformat errorRules warningRules infoRules styleRules ignoreRulesallowedRegistries labelSchema strictLabelsdisableIgnorePragmafailureThresholdapplyPartialConfiguration$fPrettyConfiguration$fDefaultConfiguration$fDefaultPartialConfiguration$fMonoidPartialConfiguration$fSemigroupPartialConfiguration$fFromYAMLOverrideConfig$fMonoidOverrideConfig$fSemigroupOverrideConfig$fFromYAMLPartialConfiguration$fShowOverrideConfig$fEqOverrideConfig$fGenericOverrideConfig$fEqPartialConfiguration$fShowPartialConfiguration$fEqConfiguration$fShowConfigurationgetConfigFromEnvironmentgetConfigFromFileCommandlineConfig showVersion configFile dockerfilesfilePathInReportOption configurationparseCommandline$fEqCommandlineConfig$fShowCommandlineConfigrule $fShowAcc $fEqStage $fOrdStage $fEqStageID $fOrdStageID $fShowStageID ShellOpts shellNameenvVars ParsedShelloriginalparsedpresentCommandsCommandname argumentsflagsCmdPartargpartIddefaultShellOptsaddVarssetShell shellchecknonPosixShellshasUnsupportedShebangfindCommandsInResultextractTokensWith findPipeshasPipes allCommands noCommands anyCommandsfindCommandNames cmdHasArgs cmdsHaveArgscmdHasPrefixArgextractAllArgsgetArgs getAllFlagsgetArgsNoFlagshasFlag hasAnyFlaghasArg dropFlagArg getFlagArg getValueId usingProgram isPipInstall $fEqCommand $fShowCommand $fEqCmdPart $fShowCmdPart$fEqAccrunTrustedRegistrylintIOlintanalyze getVersiongetShortVersion$fToJSONSarifFormatprettyPrintRegistriesprettyPrintList getConfig findConfiglistOfReferencesisSubstringOfAnybareVariableInTextAcc toFailurescratchghc-prim GHC.Classes&&dl3016 emptyImagefailedversiongetDataFileName getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDir toSeverity