Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-17762

Renaming the Clang parsers silently breaks Jenkins configs

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • warnings-plugin
    • None

      In warnings v4.24, the clang/llvm parser was renamed from "Apple LLVM Compiler (Clang)" to "Clang (LLVM based)". That's fine, I'm cool with better naming.

      Problem is, updating to warnings v4.24 silently broke my config in a very bad way. :-O

      When `warnings` cannot find a match, it seems to silently default to the nearest alphabetic match, which in my case turns out to be of all things "Acu COBOL", and so suddenly and silently all my clang/llvm jobs were running with completely the wrong parser.

      If hadn't noticed this by chance I'd have been happily running the wrong parser for who knows how long. I don't think I need to expand on how horribly bad it is to fail silently in this way.

      Quick fix:

      Yell and bail out if a parser name is not an EXACT match instead of defaulting to the nearest alphabetic match (alphabetic match seems worse the more one thinks about it).

      Long-term fix:

      Identify and store parsers by ID rather than the human-readable name so that amendments to the human-readable name don't touch the config.

      Hope this is useful,
      Richard.

            drulli Ulli Hafner
            sailmaker Richard Buckle
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: