{"record":{"id":"078b59f37b30dcd1","repo":"dotnet/runtime","slug":"invalid-entry-line-in-inclusion-filename","errorCode":null,"errorMessage":"Invalid Entry {line}in {inclusion_filename}","messagePattern":"Invalid Entry (.+?)in (.+?)","errorType":"exception","errorClass":"Exception","httpStatus":null,"severity":"error","filePath":"src/coreclr/scripts/utilities.py","lineNumber":195,"sourceCode":"\n    if not os.path.isfile(inclusion_filename):\n        return inclusion_list\n\n    with open(inclusion_filename,'r') as InclusionFile:\n        for line in InclusionFile:\n            line = line.strip()\n\n            #remove comments\n            if not line or line.startswith('#'):\n                continue\n\n            tokens = line.split(':')\n\n            if len(tokens) == 0:\n                continue\n\n            if len(tokens) > 2:\n                raise Exception(\"Invalid Entry \" + line + \"in \"+ inclusion_filename)\n\n            providerName = \"\"\n            eventName = \"\"\n\n            if len(tokens) == 2:\n                providerName = tokens[0]\n                eventName = tokens[1]\n\n            if len(tokens) == 1:\n                providerName = \"*\"\n                eventName = tokens[0]\n\n            if providerName not in inclusion_list:\n                inclusion_list[providerName] = set()\n\n            inclusion_list[providerName].add(eventName)\n\n    return inclusion_list","sourceCodeStart":177,"sourceCodeEnd":213,"githubUrl":"https://github.com/dotnet/runtime/blob/60108ba66eb7d1d12f595480091b4ad80a24b172/src/coreclr/scripts/utilities.py#L177-L213","documentation":"Raised by parseInclusionList() in utilities.py at src/coreclr/scripts/utilities.py:195 when a non-comment line in the inclusion file has more than 2 colon-separated tokens. The expected format is [ProviderName:]EventName.","triggerScenarios":"An inclusion file line with 3+ colon-separated tokens.","commonSituations":"Hand-editing an inclusion file and adding extra fields; copying exclusion-format lines (which allow 5 fields) into an inclusion file (which allows 2).","solutions":["Reduce the offending line to at most 2 colon-separated tokens (provider:event or just event).","Remove stray colons in event/provider names."],"exampleFix":"// before\nProviderName:EventName:extra\n// after\nProviderName:EventName","handlingStrategy":"validation","validationCode":"with open(inclusion_filename) as f:\n    for i, raw in enumerate(f, 1):\n        line = raw.strip()\n        if not line or line.startswith('#'):\n            continue\n        if len(line.split(':')) > 2:\n            raise SystemExit(f'{inclusion_filename}:{i} has >2 tokens: {line!r}')","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Remember inclusion files use a 2-field format, unlike exclusion files (5 fields)."],"tags":["dotnet","coreclr","superpmi","config-file","parsing"],"backgroundTag":null,"analyzedSha":"60108ba66eb7d1d12f595480091b4ad80a24b172","analyzedAt":"2026-08-10T18:54:11.478Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}