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

Renaming the Clang parsers silently breaks Jenkins configs

    XMLWordPrintable

    Details

    • Similar Issues:

      Description

      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.

        Attachments

          Activity

          Hide
          sailmaker Richard Buckle added a comment -

          Thanks again Ulli. I shall update my blog post to reflect this information.

          Regards,
          Richard.

          Show
          sailmaker Richard Buckle added a comment - Thanks again Ulli. I shall update my blog post to reflect this information. Regards, Richard.
          Hide
          sailmaker Richard Buckle added a comment -

          Hi Ulli, I have looked around in GitHub but I'm unclear in which release this fix is deployed. Please forgive my lack of experience with the release process. If you could please point me to the release that includes this fix, I'd be very grateful!

          Show
          sailmaker Richard Buckle added a comment - Hi Ulli, I have looked around in GitHub but I'm unclear in which release this fix is deployed. Please forgive my lack of experience with the release process. If you could please point me to the release that includes this fix, I'd be very grateful!
          Hide
          drulli Ulli Hafner added a comment -

          It is not yet released...

          Show
          drulli Ulli Hafner added a comment - It is not yet released...
          Hide
          drulli Ulli Hafner added a comment -

          Ok, now the release 4.26 is published!

          Show
          drulli Ulli Hafner added a comment - Ok, now the release 4.26 is published!
          Hide
          kpfleming Kevin Fleming added a comment -

          I just ran a build with 4.25 installed (I had forgotten to update before starting the build), and now the build shows Cobol warnings (of which there were none since the code is C++) and not Clang warnings. I have reconfigured the job to use the Clang parser, but the existing build still shows the wrong warnings output.

          Show
          kpfleming Kevin Fleming added a comment - I just ran a build with 4.25 installed (I had forgotten to update before starting the build), and now the build shows Cobol warnings (of which there were none since the code is C++) and not Clang warnings. I have reconfigured the job to use the Clang parser, but the existing build still shows the wrong warnings output.

            People

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

              Dates

              • Created:
                Updated:
                Resolved: