title: Calculated-String as the parameter to Jenkins's Groovy "STAGE"
body: <p>I put this in the script section of a Jenkins UI job's configuration -</p>
  
  <pre><code>pipeline {
      agent any
  
      stages{
          stage('Project') {
      ...
  </code></pre>
  
  <p>That works, however -</p>
  
  <pre><code>pipeline {
      agent any
  
      stages{
          stage('Project ' + 'Josh') {
      ...
  </code></pre>
  
  <p>throws and displays an incorrect error message because the parser gets all confused due to the constructed string inside the stage.</p>
  
  <p>Moreover,</p>
  
  <pre><code>String description = 'Project' + ' Josh'
  pipeline {
      agent any
  
      stages{
          stage(description) {
      ...
  </code></pre>
  
  <p>does not fail, but displays '<code>description</code>' as the stage's description.</p>
  
  <p>Now, if you try to load a groovy PaC file with this in it:</p>
  
  <pre><code>node {
      stage('Project' + 'Josh') {
      ...
  </code></pre>
  
  <p>it works without a hitch.</p>
  
  <p>Is it possible that there are two different Groovy parsers employed, one for the UI and another for loaded PaC's? This means that the UI one has this really horrible bug in it...</p>
  
  <p>Ideas?
  .a.</p>