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

Repeatable jelly tag appears to be broken in 1.474+

    XMLWordPrintable

    Details

    • Similar Issues:

      Description

      I used Jenkins 1.474 and installed the Publish Over SSH(1.7). I can configure the SSH server in the Configure System.
      But it can't work at the job configure.

      I clicked "Add post-build action" and selected "Send build artifacts over SSH" and than I clicked the button "Add Server" , and when I clicked the button "Add Transfer Set".there is no response. In the noraml we can see the label "Source files" and "Remove prefix" and others,what's wrong ? you can see the attend file"1.7.jpg"

      we can see the label "Source files" and "Remove prefix" and others using the Publish Over SSH(1.4). you can see the attend file "1.4.jpg"

        Attachments

        1. 1.4.jpg
          1.4.jpg
          93 kB
        2. 1.7.jpg
          1.7.jpg
          39 kB

          Issue Links

            Activity

            msfly MS FLY created issue -
            Hide
            msfly MS FLY added a comment -

            can you reslove it ?

            Show
            msfly MS FLY added a comment - can you reslove it ?
            Hide
            mwinters Mathew Winters added a comment -

            The same issue is in the CIFS and FTP plugins, the "Add Transfer Set" doesnt work on those plugins either. You get a flash like something is being added, then its removed..

            Show
            mwinters Mathew Winters added a comment - The same issue is in the CIFS and FTP plugins, the "Add Transfer Set" doesnt work on those plugins either. You get a flash like something is being added, then its removed..
            Hide
            msfly MS FLY added a comment -

            How to reslove it ? can you tell me ? I don't have flash .

            Show
            msfly MS FLY added a comment - How to reslove it ? can you tell me ? I don't have flash .
            Hide
            msfly MS FLY added a comment -

            when the Jenkins version is lower than 1.473 . there is no this problem.

            Show
            msfly MS FLY added a comment - when the Jenkins version is lower than 1.473 . there is no this problem.
            bap bap made changes -
            Field Original Value New Value
            Component/s core [ 15593 ]
            Component/s gui [ 15492 ]
            Component/s publish-over-cifs [ 15850 ]
            Component/s publish-over-ftp [ 15791 ]
            Component/s publish-over-ssh [ 15792 ]
            Component/s adaptiveplugin [ 16100 ]
            Assignee Slide-O-Mix [ slide_o_mix ]
            Summary Publish Over SSH(1.7) can not work at Jenkins ver. 1.474 Repeatable jelly tag appears to be broken in 1.474+
            bap bap made changes -
            Link This issue is related to JENKINS-14491 [ JENKINS-14491 ]
            bap bap made changes -
            Link This issue is related to JENKINS-14381 [ JENKINS-14381 ]
            bap bap made changes -
            Assignee Slide-O-Mix [ slide_o_mix ] Kohsuke Kawaguchi [ kohsuke ]
            Hide
            bap bap added a comment -

            The repeatable blocks fail to display when using jenkins 1.474 onwards (possibly due to the modular js and the use of adjunct)

            https://github.com/jenkinsci/publish-over-ftp-plugin/blob/2bba237f3deaac9eb543f6312d038a711f7f2862/src/main/resources/jenkins/plugins/publish_over_ftp/BapFtpPublisherPlugin/config.jelly behaves correctly on 1.388 -> 1.473

            Show
            bap bap added a comment - The repeatable blocks fail to display when using jenkins 1.474 onwards (possibly due to the modular js and the use of adjunct) https://github.com/jenkinsci/publish-over-ftp-plugin/blob/2bba237f3deaac9eb543f6312d038a711f7f2862/src/main/resources/jenkins/plugins/publish_over_ftp/BapFtpPublisherPlugin/config.jelly behaves correctly on 1.388 -> 1.473
            Hide
            bap bap added a comment -

            Another candidate is the change to prevent ajax calls when the page is not visible.

            I cannot find anything else in the changes from 1.473 to 1.474 that may have introduced this issue

            Show
            bap bap added a comment - Another candidate is the change to prevent ajax calls when the page is not visible. I cannot find anything else in the changes from 1.473 to 1.474 that may have introduced this issue
            Hide
            msfly MS FLY added a comment -

            I downloaded the Latest and greatest jenkins (1.475),the problem still be exists.I checked the tomcat log,but there were no exceptions .

            I changed to 1.473,It worked ok.

            the version is bigger than 1.473,I can see the buttown "Add Transfer Set", the version is 1.473 or lower than 1.473,I can't see the button "Add Transfer Set".

            So i don't know what changes and differents between 1.473 and 1.474 and 1.475 ?

            Show
            msfly MS FLY added a comment - I downloaded the Latest and greatest jenkins (1.475),the problem still be exists.I checked the tomcat log,but there were no exceptions . I changed to 1.473,It worked ok. the version is bigger than 1.473,I can see the buttown "Add Transfer Set", the version is 1.473 or lower than 1.473,I can't see the button "Add Transfer Set". So i don't know what changes and differents between 1.473 and 1.474 and 1.475 ?
            Hide
            eyalzf Eyal Zfira added a comment -

            Got the following JavaScript errors when using the 'Sectioned view' plugin and adding a section:

            Uncaught TypeError: Object #<HTMLTextAreaElement> has no method 'createTextRange' codemirror.js:2050
            setSelRange codemirror.js:2050
            prepareInput codemirror.js:624

            Uncaught TypeError: Cannot call method 'hasClassName' of undefined hetero-list.js:17
            Behaviour.list.unshift.DIV.hetero-list-container hetero-list.js:17
            apply behavior.js:73
            (anonymous function) behavior.js:79
            Behaviour.applySubtree behavior.js:68
            menuButton.getMenu.renderEvent.subscribe.i hetero-list.js:108
            (anonymous function) hudson-behavior.js:519
            next hudson-behavior.js:558
            script.onload.script.onreadystatechange hudson-behavior.js:2016

            Show
            eyalzf Eyal Zfira added a comment - Got the following JavaScript errors when using the 'Sectioned view' plugin and adding a section: Uncaught TypeError: Object #<HTMLTextAreaElement> has no method 'createTextRange' codemirror.js:2050 setSelRange codemirror.js:2050 prepareInput codemirror.js:624 Uncaught TypeError: Cannot call method 'hasClassName' of undefined hetero-list.js:17 Behaviour.list.unshift.DIV.hetero-list-container hetero-list.js:17 apply behavior.js:73 (anonymous function) behavior.js:79 Behaviour.applySubtree behavior.js:68 menuButton.getMenu.renderEvent.subscribe.i hetero-list.js:108 (anonymous function) hudson-behavior.js:519 next hudson-behavior.js:558 script.onload.script.onreadystatechange hudson-behavior.js:2016
            jglick Jesse Glick made changes -
            Link This issue is related to JENKINS-14381 [ JENKINS-14381 ]
            jglick Jesse Glick made changes -
            Link This issue is duplicated by JENKINS-14381 [ JENKINS-14381 ]
            jglick Jesse Glick made changes -
            Link This issue is duplicated by JENKINS-14491 [ JENKINS-14491 ]
            jglick Jesse Glick made changes -
            Link This issue is related to JENKINS-14491 [ JENKINS-14491 ]
            jglick Jesse Glick made changes -
            Assignee Kohsuke Kawaguchi [ kohsuke ] jglick [ jglick ]
            jglick Jesse Glick made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            Hide
            jglick Jesse Glick added a comment -
            Show
            jglick Jesse Glick added a comment - Confirmed that https://github.com/jenkinsci/jenkins/commit/96442cd9cd7b432a19d05dd945502a854541cae7 introduced this bug.
            jglick Jesse Glick made changes -
            Component/s htmlpublisher [ 15681 ]
            Component/s gui [ 15492 ]
            jglick Jesse Glick made changes -
            Link This issue is related to JENKINS-14465 [ JENKINS-14465 ]
            jglick Jesse Glick made changes -
            Link This issue is related to JENKINS-14478 [ JENKINS-14478 ]
            jglick Jesse Glick made changes -
            Link This issue is duplicated by JENKINS-14505 [ JENKINS-14505 ]
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            core/src/main/resources/lib/form/repeatable/repeatable.js
            http://jenkins-ci.org/commit/jenkins/acf394f4f65b6bb77d3737dff2159f0d336129dc
            Log:
            [FIXED JENKINS-14514] 96442cd broke "Add <Something>" buttons for many plugins.
            Not yet clear to me exactly what went wrong, but debugging shows that the init(...) function
            is called twice: once with legitimate arguments, then again with a bogus 'master' argument.
            Seems to suffice to ignore redundant initializations of the same element.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: core/src/main/resources/lib/form/repeatable/repeatable.js http://jenkins-ci.org/commit/jenkins/acf394f4f65b6bb77d3737dff2159f0d336129dc Log: [FIXED JENKINS-14514] 96442cd broke "Add <Something>" buttons for many plugins. Not yet clear to me exactly what went wrong, but debugging shows that the init(...) function is called twice: once with legitimate arguments, then again with a bogus 'master' argument. Seems to suffice to ignore redundant initializations of the same element.
            scm_issue_link SCM/JIRA link daemon made changes -
            Resolution Fixed [ 1 ]
            Status In Progress [ 3 ] Resolved [ 5 ]
            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: changelog.html http://jenkins-ci.org/commit/jenkins/35af5960eadf193a7502807a9f901cc5b1186f4d Log: JENKINS-14434 JENKINS-14514 Noting. Compare: https://github.com/jenkinsci/jenkins/compare/d531f75f4e5d...35af5960eadf
            Hide
            dogfood dogfood added a comment -

            Integrated in jenkins_main_trunk #1825
            [FIXED JENKINS-14514] 96442cd broke "Add <Something>" buttons for many plugins. (Revision acf394f4f65b6bb77d3737dff2159f0d336129dc)
            JENKINS-14434 JENKINS-14514 Noting. (Revision 35af5960eadf193a7502807a9f901cc5b1186f4d)

            Result = SUCCESS
            Jesse Glick : acf394f4f65b6bb77d3737dff2159f0d336129dc
            Files :

            • core/src/main/resources/lib/form/repeatable/repeatable.js

            Jesse Glick : 35af5960eadf193a7502807a9f901cc5b1186f4d
            Files :

            • changelog.html
            Show
            dogfood dogfood added a comment - Integrated in jenkins_main_trunk #1825 [FIXED JENKINS-14514] 96442cd broke "Add <Something>" buttons for many plugins. (Revision acf394f4f65b6bb77d3737dff2159f0d336129dc) JENKINS-14434 JENKINS-14514 Noting. (Revision 35af5960eadf193a7502807a9f901cc5b1186f4d) Result = SUCCESS Jesse Glick : acf394f4f65b6bb77d3737dff2159f0d336129dc Files : core/src/main/resources/lib/form/repeatable/repeatable.js Jesse Glick : 35af5960eadf193a7502807a9f901cc5b1186f4d Files : changelog.html
            Hide
            bporter Brian Porter added a comment -

            Commenting here since 14381 resolved as duplicate of this issue. Issue with HTML Publisher remains - adding post build action of Publish HTML reports does not show data entry fields. I have updated to the current 1.476 war file and restarted server.

            Show
            bporter Brian Porter added a comment - Commenting here since 14381 resolved as duplicate of this issue. Issue with HTML Publisher remains - adding post build action of Publish HTML reports does not show data entry fields. I have updated to the current 1.476 war file and restarted server.
            Hide
            jglick Jesse Glick added a comment -

            @Brian: not really sure what is in 1.476; http://jenkins-ci.org/changelog does not list it, and there is no tag for it! I think I specifically tested the HTML Publisher plugin against this change, but if you still see the bug when running against master (currently 1.477-SNAPSHOT) please reopen JENKINS-14381.

            Show
            jglick Jesse Glick added a comment - @Brian: not really sure what is in 1.476; http://jenkins-ci.org/changelog does not list it, and there is no tag for it! I think I specifically tested the HTML Publisher plugin against this change, but if you still see the bug when running against master (currently 1.477-SNAPSHOT ) please reopen JENKINS-14381 .
            jglick Jesse Glick made changes -
            Link This issue is related to JENKINS-14495 [ JENKINS-14495 ]
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            changelog.html
            core/src/main/resources/lib/form/repeatable/repeatable.js
            war/src/main/webapp/scripts/behavior.js
            http://jenkins-ci.org/commit/jenkins/dbb100da58a084fb0a6ce129d3f2b7ad827e87ee
            Log:
            [FIXED JENKINS-14495] Hetero lists not working correctly after adding elements.
            Unlike JENKINS-14514 this is a true fix rather than a workaround (now removed), and is more general.
            cjo9900 discovered that behaviors were being redundantly registered (as of 1.474 the monolithic JS is broken up);
            this caused some behaviors to be run repeatedly on the same elements, breaking reasonable expectations of some behaviors.
            The ideal fix would be to change Behavior.register to be idempotent: for example, key it by selector, then maintain a set of distinct behavior functions for each.
            Unfortunately some adjuncts directly call Behavior.list.unshift, bypassing register(...), which would be tricky to intercept (would need to make a mock of Array).
            The known one cases are in core, but it is possible plugin adjuncts do this too, in which case it would be incompatible to (say) change the Array<Map<String,Behavior>> to a Map<String,Array<Behavior>>.
            Instead, permitting redundant registrations as before, and just silently skipping all but the first at runtime when applying behaviors.
            Beware that since adjuncts are loaded from multiple places, different JS function objects are registered each time, so a naive set of behavior functions does not work;
            have to identify functions by their toString in order to ensure that each is run only once.
            (Currently once per selector, conceivably >1x per element; could if necessary be refined to make sure a given behavior is only run once on a given element during one call to applySubtree even if the element matches multiple selectors.)

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: changelog.html core/src/main/resources/lib/form/repeatable/repeatable.js war/src/main/webapp/scripts/behavior.js http://jenkins-ci.org/commit/jenkins/dbb100da58a084fb0a6ce129d3f2b7ad827e87ee Log: [FIXED JENKINS-14495] Hetero lists not working correctly after adding elements. Unlike JENKINS-14514 this is a true fix rather than a workaround (now removed), and is more general. cjo9900 discovered that behaviors were being redundantly registered (as of 1.474 the monolithic JS is broken up); this caused some behaviors to be run repeatedly on the same elements, breaking reasonable expectations of some behaviors. The ideal fix would be to change Behavior.register to be idempotent: for example, key it by selector, then maintain a set of distinct behavior functions for each. Unfortunately some adjuncts directly call Behavior.list.unshift, bypassing register(...), which would be tricky to intercept (would need to make a mock of Array). The known one cases are in core, but it is possible plugin adjuncts do this too, in which case it would be incompatible to (say) change the Array<Map<String,Behavior>> to a Map<String,Array<Behavior>>. Instead, permitting redundant registrations as before, and just silently skipping all but the first at runtime when applying behaviors. Beware that since adjuncts are loaded from multiple places, different JS function objects are registered each time, so a naive set of behavior functions does not work; have to identify functions by their toString in order to ensure that each is run only once. (Currently once per selector , conceivably >1x per element; could if necessary be refined to make sure a given behavior is only run once on a given element during one call to applySubtree even if the element matches multiple selectors.)
            jglick Jesse Glick made changes -
            Link This issue is related to JENKINS-14478 [ JENKINS-14478 ]
            rtyler R. Tyler Croy made changes -
            Workflow JNJira [ 145150 ] JNJira + In-Review [ 191375 ]
            r2b2_nz Richard Bywater made changes -
            Status Resolved [ 5 ] Closed [ 6 ]

              People

              Assignee:
              jglick Jesse Glick
              Reporter:
              msfly MS FLY
              Votes:
              5 Vote for this issue
              Watchers:
              13 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: