h* R      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~1.0.20 Safe-Inferred"%&-679:;<>r nix-diff1Will be Nothing, if there is no extra input namesnix-diff2Will be Nothing, if any of source files not existsnix-diff2Will be Nothing, if there is no extra source names&nix-diffMap from derivation name to its outputs. Will be Nothing, if 1 gives empty Maps for both new and old outputs'nix-diffDifference of outputs with the same name. Will be empty, if all outputs are equal.5nix-diff,Will be Nothing, if Platform does not change6nix-diff+Will be Nothing, if Builder does not change7nix-diff'Will be Nothing, if arguments are equal:nix-diff5Will be Nothing, if environment comparison is skipped   #"!$'&%(+*),:987654310/.-2;<=>?A@BEDCFGHIJKBEDC?A@>=<;,:987654310/.-2(+*)$'&% #"!  FGHIJK Safe-Inferred%&'- nix-diffIn large diffs there may be a lot of derivations that doesn't change at all, but changed some of its nested inputs, that was already compared. This case will produce "stairs" of useless reports: ``` @ The input derivation named a differs - nix;store/j1jmbxd74kzianaywml2nw1ja31a00r5-a.drv:{out} + nixstore/ww51c2dha7m5l5qjzh2rblicsamkrh62-a.drv:{out} @ The input derivation named b differs - nix=store/j1jmbxd74kzianaywml2nw1ja31a00r5-b.drv:{out} + nixstore/ww51c2dha7m5l5qjzh2rblicsamkrh62-b.drv:{out} @ The input derivation named c differs @ These two derivations have already been compared ``` This transformation will fold all these subtrees of diff into one OnlyAlreadComparedBelow.nix-diffThis transformation is most useful for --json output, because it will sqash a lot of `{"content":" ","type":Both },{"content":When,"type":Both},{"content":" ","type":Both},{"content":"in","type":Both},{"content":" ","type":Both4}` into one `{"content":" When in ","type":Both }` block.5To understand this problem clearer, see `golden-testsexpected-outputsjson` and `golden-testsexpected-outputsjson-squashed`._Warning_: this transformation can break some parts of printing in human readable mode. Safe-Inferred "%&'-4jnix-diff?Extract the name of a derivation (i.e. the part after the hash)This is used to guess which derivations are related to one another, even though their hash might differ-Note that this assumes that the path name is: +/nix/store/${32_CHARACTER_HASH}-${NAME}.drvNix technically does not require that the Nix store is actually stored underneath `nix6store`, but this is the overwhelmingly common use casenix-diffGroup paths by their namenix-diff#Extract the name of a build product Similar to %, this assumes that the path name is: +/nix/store/${32_CHARACTER_HASH}-${NAME}.drvnix-diffLike  , but for snix-diffRead a file as utf-8 encoded string, replacing non-utf-8 characters with the unicode replacement character. This is necessary since derivations (and nix source code!) can in principle contain arbitrary bytes, but `nix-derivation` can only parse from .nix-diff'Read and parse a derivation from a filenix-diffRead and parse a derivation from a store path that can be a derivation (.drv) or a realized path, in which case the corresponding derivation is queried.nix-diff Join two s on shared keys, discarding keys which are not present in both snix-diffDiff two outputsnix-diffDiff two sets of outputsnix-diffSplit  into spans of < that alternatively fail and satisfy the given predicateThe first span (if present) does not satisfy the predicate (even if the span is empty)decomposeOn (== 'b') "aabbaa"["aa","bb","aa"]decomposeOn (== 'b') "bbaa"["","bb","aa"]decomposeOn (== 'b') ""[]nix-diff Diff two  valuesnix-diffDiff two environmentsnix-diffDiff input sourcesnix-diff Output namenix-diffLeft derivation outputsnix-diffRight derivation outputsnix-diffLeft derivation outputsnix-diffRight derivation outputsnix-diffLeft value to comparenix-diffRight value to comparenix-diffList of blocks of diffed textnix-diffLeft derivation outputsnix-diffRight derivation outputsnix-diffLeft environment to comparenix-diffRight environment to comparenix-diffLeft input sourcesnix-diffRight inputSources)) Safe-Inferred "%&'-4A nix-diffColor text rednix-diffColor text background rednix-diffColor text greennix-diffColor text background greennix-diffColor text greynix-diffFormat the left half of a diffnix-diffFormat the right half of a diffnix-diffFormat text explaining a diffnix-diffUtility to automate a common pattern of printing the two halves of a diff. This passes the correct formatting function to each halfnix-diffFormat the derivation outputs       !!"##$%&&'())*+,-./01,23456789:;<=>>?@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~&nix-diff-1.0.20-BdCWKjPXpiiDgCRRX81H7wNix.Diff.TypesNix.Diff.TransformationsNix.DiffNix.Diff.Render.HumanReadablenix-diffData.Map difference EnvVarDiffenvKey envValueDiffEnvironmentDiffEnvironmentsAreEqual extraEnvDiffenvContentDiffInputDerivationsDiffOneDerivationDiffSomeDerivationsDiffdrvNamedrvDiffextraPartsDiff InputsDiffinputExtraNamesinputDerivationDiffsSourceFileDiffOneSourceFileDiffSomeSourceFileDiffsrcNamesrcContentDiff srcFileDiff SourcesDiff extraSrcNames srcFilesDiff ArgumentsDiffunArgumetsDiff OutputDiff outputNamehashDifference OutputsDiff extraOutputsoutputHashDiffOutputStructurederivationPathderivationOutputsDerivationDiffDerivationsAreTheSameAlreadyComparedOnlyAlreadyComparedBelowNamesDontMatchOutputsDontMatchoutputStructure outputsDiff platformDiff builderDiff argumentsDiff sourcesDiff inputsDiffenvDiffArgumentBuilderPlatform OutputHashTextDiff unTextDiffChangedbeforenow changedToJSONchangedFromJSON itemToJSON itemFromJSON arbitraryItemarbitraryDerivationOutput$fFromJSONChanged$fToJSONChanged$fArbitraryChanged$fFromJSONTextDiff$fToJSONTextDiff$fArbitraryTextDiff$fFromJSONOutputsDiff$fToJSONOutputsDiff$fArbitraryOutputsDiff$fFromJSONArgumentsDiff$fToJSONArgumentsDiff$fArbitraryArgumentsDiff$fEqDerivationDiff$fShowDerivationDiff$fGenericDerivationDiff$fDataDerivationDiff$fToJSONDerivationDiff$fFromJSONDerivationDiff$fArbitraryDerivationDiff$fEqInputsDiff$fShowInputsDiff$fGenericInputsDiff$fDataInputsDiff$fToJSONInputsDiff$fFromJSONInputsDiff$fArbitraryInputsDiff$fEqInputDerivationsDiff$fShowInputDerivationsDiff$fGenericInputDerivationsDiff$fDataInputDerivationsDiff$fToJSONInputDerivationsDiff$fFromJSONInputDerivationsDiff$fArbitraryInputDerivationsDiff$fEqEnvironmentDiff$fShowEnvironmentDiff$fGenericEnvironmentDiff$fDataEnvironmentDiff$fToJSONEnvironmentDiff$fFromJSONEnvironmentDiff$fArbitraryEnvironmentDiff$fEqEnvVarDiff$fShowEnvVarDiff$fGenericEnvVarDiff$fDataEnvVarDiff$fToJSONEnvVarDiff$fFromJSONEnvVarDiff$fArbitraryEnvVarDiff$fEqSourcesDiff$fShowSourcesDiff$fGenericSourcesDiff$fDataSourcesDiff$fToJSONSourcesDiff$fFromJSONSourcesDiff$fArbitrarySourcesDiff$fEqSourceFileDiff$fShowSourceFileDiff$fGenericSourceFileDiff$fDataSourceFileDiff$fToJSONSourceFileDiff$fFromJSONSourceFileDiff$fArbitrarySourceFileDiff$fEqArgumentsDiff$fShowArgumentsDiff$fDataArgumentsDiff$fEqOutputsDiff$fShowOutputsDiff$fDataOutputsDiff$fEqOutputDiff$fShowOutputDiff$fGenericOutputDiff$fDataOutputDiff$fToJSONOutputDiff$fFromJSONOutputDiff$fArbitraryOutputDiff$fEqOutputStructure$fShowOutputStructure$fGenericOutputStructure$fDataOutputStructure$fToJSONOutputStructure$fFromJSONOutputStructure$fArbitraryOutputStructure $fEqTextDiff$fShowTextDiff$fDataTextDiff $fEqChanged $fShowChanged$fFunctorChanged$fFoldableChanged$fTraversableChanged$fGenericChanged $fDataChanged$fDataDerivationOutputfoldAlreadyComparedSubTreessquashSourcesAndEnvsDifftransformNestedDerivationDiffsenvSkippedOrUnchangedalreadyComparedBelow transformIf Orientation CharacterWordLine DiffContext orientation environmentDiffunDiffDiffedleftDerivation leftOutputrightDerivation rightOutputStatusvisitedderivationName groupByNamebuildProductNamegroupSetsByNamereadFileUtf8LenientreadDerivation readInput innerJoingetGroupedDiff diffOutput diffOutputs decomposeOn lineBoundary wordBoundarydiffTextdiffEnvdiffSrcs diffPlatform diffBuilderdiffArgsdiff $fFunctorDiff$fApplicativeDiff $fMonadDiff$fMonadReaderDiffContextDiff$fMonadStateStatusDiff $fMonadIODiff$fMonadFailDiff $fEqDiffed $fOrdDiffedTTYIsTTYNotTTYRender$sel:unRender:Render RenderContext$sel:orientation:RenderContext$sel:tty:RenderContext$sel:indent:RenderContext$sel:context:RenderContext runRender runRender'echoindentedred redBackgroundgreengreenBackgroundgreyminusplusexplain renderWith renderOutputsrenderDiffHumanReadablezippers$fFunctorRender$fApplicativeRender $fMonadRender $fMonadReaderRenderContextRender$fMonadWriterTextRendercontainers-0.6.7Data.Set.InternalSet text-2.0.2Data.Text.InternalTextData.Map.InternalMap