hydra-eval-jobs: Don't keep track of used inputs

[?]
Sep 25, 2014, 11:38 AM
YNGIYQRFBKRKSRPSYSIG3R3U73ANOO5MC6C7VO4XOTDNBQHCKL3AC

Dependencies

  • [2] PMNWRTGJ Add multiple output support
  • [3] 5DYPEBSI hydra-eval-jobs: Use function argument default values
  • [4] P45ANG5B Fix build
  • [5] 7BRTFGVY Really fix hydra-eval-jobs
  • [6] R42G3IBQ Disallow multiple jobs with the same name
  • [7] AEFNBIIW * Merge the GC branch.
  • [8] FMJMW4PU
  • [9] A63IHCMX * Register GC roots properly.
  • [10] AEKIREIH * Updated hydra_eval_jobs for the new evaluator.
  • [11] AKRVETP5 Handle UTF-8 characters in eval error messages
  • [12] P76HTFOD Revert "Remove wacky "sysbuild" filtering"
  • [13] HJYRK37A * Revert r27114, it seems to break stuff.
  • [14] 5X6FHW3S hydra-eval-jobs: Fix building against the latest unstable Nix
  • [15] 7GKAIP3V Fix build and handling of string inputs starting with a dash
  • [16] HOVPJBFF * Require every argument to be specified.
  • [17] FGUL3HAZ hydra-eval-jobs: Don't go into an infinite recursion
  • [18] KD5237CU * eval-jobs now efficiently evaluates all Hydra jobs from a
  • [19] HVXL2XUZ
  • [20] 4N5APGRG * Start of a helper tool to evaluate job expressions efficiently.
  • [21] 3XTHEUMP * Implemented the clone feature.
  • [22] 3PNG7NIB Remove trailing whitespace
  • [23] 7YCFGMZB * Report evaluation errors per job, and don't bail out if a job fails
  • [24] VTNP5KDO * Don't catch all errors. Some errors mess up the connection with the
  • [25] 4LWGZL33
  • [26] SYN2GC3O allow null values for jobs, meaning it should build
  • [*] OOQ2D3KC * Refactoring: move fetchInput out of hydra_scheduler into a separate

Change contents

  • edit in src/c/hydra-eval-jobs.cc at line 22
    [7.28][7.350:420]()
    typedef std::map<Symbol, std::pair<unsigned int, Value *> > ArgsUsed;
  • replacement in src/c/hydra-eval-jobs.cc at line 27
    [7.218][7.118:217]()
    const ArgsUsed & argsUsed, const AutoArgs & argsLeft,
    Value & v, const string & attrPath);
    [7.218]
    [7.96]
    const AutoArgs & argsLeft, Value & v, const string & attrPath);
  • replacement in src/c/hydra-eval-jobs.cc at line 31
    [7.157][7.218:318]()
    const ArgsUsed & argsUsed, const AutoArgs & argsLeft,
    const string & attrPath, Value & fun,
    [7.157]
    [7.318]
    const AutoArgs & argsLeft, const string & attrPath, Value & fun,
  • replacement in src/c/hydra-eval-jobs.cc at line 41
    [7.676][7.561:624](),[7.561][7.561:624]()
    findJobs(state, doc, argsUsed, argsLeft, v, attrPath);
    [7.676]
    [7.448]
    findJobs(state, doc, argsLeft, v, attrPath);
  • replacement in src/c/hydra-eval-jobs.cc at line 53
    [3.177][3.177:268]()
    tryJobAlts(state, doc, argsUsed, argsLeft, attrPath, fun, next, last, actualArgs);
    [3.177]
    [3.268]
    tryJobAlts(state, doc, argsLeft, attrPath, fun, next, last, actualArgs);
  • edit in src/c/hydra-eval-jobs.cc at line 62
    [5.258][7.941:979](),[7.941][7.941:979]()
    ArgsUsed argsUsed2(argsUsed);
  • edit in src/c/hydra-eval-jobs.cc at line 65
    [7.833][7.833:905]()
    argsUsed2[cur->name] = std::pair<unsigned int, Value *>(n, *i);
  • replacement in src/c/hydra-eval-jobs.cc at line 66
    [7.1166][7.1166:1260]()
    tryJobAlts(state, doc, argsUsed2, argsLeft2, attrPath, fun, next, last, actualArgs2);
    [7.1166]
    [7.1260]
    tryJobAlts(state, doc, argsLeft2, attrPath, fun, next, last, actualArgs2);
  • edit in src/c/hydra-eval-jobs.cc at line 68
    [7.1273][7.1273:1279](),[7.123][7.0:4](),[7.1279][7.0:4](),[7.1405][7.0:4](),[7.4][7.1280:1349](),[7.1349][7.73:75](),[7.73][7.73:75](),[7.75][7.1350:1404](),[7.1404][7.129:157](),[7.129][7.129:157](),[7.157][7.1405:1443](),[7.1443][7.906:978](),[7.978][7.1514:1572](),[7.1514][7.1514:1572](),[7.343][7.257:306](),[7.1572][7.257:306](),[7.257][7.257:306]()
    }
    }
    static void showArgsUsed(XMLWriter & doc, const ArgsUsed & argsUsed)
    {
    foreach (ArgsUsed::const_iterator, i, argsUsed) {
    XMLAttrs xmlAttrs2;
    xmlAttrs2["name"] = i->first;
    xmlAttrs2["value"] = (format("%1%") % *i->second.second).str();
    xmlAttrs2["altnr"] = int2String(i->second.first);
    doc.writeEmptyElement("arg", xmlAttrs2);
  • replacement in src/c/hydra-eval-jobs.cc at line 97
    [7.377][7.1575:1673]()
    const ArgsUsed & argsUsed, const AutoArgs & argsLeft,
    Value & v, const string & attrPath)
    [7.377]
    [7.255]
    const AutoArgs & argsLeft, Value & v, const string & attrPath)
  • edit in src/c/hydra-eval-jobs.cc at line 167
    [2.321][2.321:322](),[2.322][7.378:419](),[7.1148][7.378:419]()
    showArgsUsed(doc, argsUsed);
  • replacement in src/c/hydra-eval-jobs.cc at line 172
    [7.178][7.178:250]()
    findJobs(state, doc, argsUsed, argsLeft, *i->value,
    [7.178]
    [7.250]
    findJobs(state, doc, argsLeft, *i->value,
  • replacement in src/c/hydra-eval-jobs.cc at line 180
    [4.49][7.2048:2112](),[7.2048][7.2048:2112]()
    tryJobAlts(state, doc, argsUsed, argsLeft, attrPath, v,
    [4.49]
    [7.2112]
    tryJobAlts(state, doc, argsLeft, attrPath, v,
  • replacement in src/c/hydra-eval-jobs.cc at line 196
    [7.551][7.2304:2402]()
    const ArgsUsed & argsUsed, const AutoArgs & argsLeft,
    Value & v, const string & attrPath)
    [7.551]
    [7.646]
    const AutoArgs & argsLeft, Value & v, const string & attrPath)
  • replacement in src/c/hydra-eval-jobs.cc at line 199
    [7.658][7.2403:2473]()
    findJobsWrapped(state, doc, argsUsed, argsLeft, v, attrPath);
    [7.658]
    [7.0]
    findJobsWrapped(state, doc, argsLeft, v, attrPath);
  • edit in src/c/hydra-eval-jobs.cc at line 205
    [7.907][7.907:944]()
    showArgsUsed(doc, argsUsed);
  • replacement in src/c/hydra-eval-jobs.cc at line 271
    [7.2067][7.2067:2126]()
    findJobs(state, doc, ArgsUsed(), autoArgs, v, "");
    [7.2067]
    [7.1022]
    findJobs(state, doc, autoArgs, v, "");
  • replacement in src/lib/Hydra/Helper/AddBuilds.pm at line 366
    [6.431][6.431:432](),[6.432][7.67:360](),[7.67][7.67:360]()
    my $validJob = 1;
    foreach my $arg (@{$job->{arg}}) {
    my $input = $inputInfo->{$arg->{name}}->[$arg->{altnr}];
    $validJob = 0 if $input->{type} eq "sysbuild" && $input->{system} ne $job->{system};
    }
    push(@filteredJobs, $job) if $validJob;
    [6.431]
    [7.360]
    push @filteredJobs, $job;