1. 12 9月, 2011 1 次提交
  2. 07 9月, 2011 2 次提交
  3. 05 9月, 2011 2 次提交
  4. 01 9月, 2011 4 次提交
  5. 31 8月, 2011 2 次提交
  6. 30 8月, 2011 7 次提交
    • K
      the trunk is toward 1.430-SNAPSHOT · aca30e55
      Kohsuke Kawaguchi 提交于
      aca30e55
    • D
      Allow jobs associated only through fingerprinted files to appear in the · 9ab5f567
      dty 提交于
      dependency graph. This functionality is enabled through a feature flag,
      hudson.tasks.Fingerprinter.enableFingerprintsInDependencyGraph, which is off
      by default.
      
      - Rebuild the dependency graph as part of each fingerprint action.
        Fingerprinter.buildDependencyGraph adds information to the dependency graph
        for projects found in fingerprint records. Since the dependency graph is
        based on project, once a relationship is established between two projects,
        we can skip scanning subsequent builds of the projects. Entries in the
        graph added by the fingerprinter action will never automatically trigger
        downstream builds.
      
         core/src/main/java/hudson/tasks/Fingerprinter.java
      
      - When reporting dependency changes, don't consider builds that no longer
        exist. This handles issues when projects are renamed, and new projects are
        created using the same name, causing the change to point to incorrect
        builds.
      
         core/src/main/java/hudson/model/AbstractBuild.java
      
      - Tests.
      
         test/src/test/java/hudson/tasks/FingerprinterTest.java
      9ab5f567
    • K
      making this overridable · 5474755a
      Kohsuke Kawaguchi 提交于
      5474755a
    • K
      e95de826
    • K
      Reverting 4de81f1e. · f322503d
      Kohsuke Kawaguchi 提交于
      Max Spring discovered a stack overflow in http://jenkins.361315.n4.nabble.com/channel-example-and-plugin-classes-gives-ClassNotFoundException-td3756092.html that pointed this call into thread context classloader (TCL) as the culprit. Independently, Paul Sandoz discovered the same issue in our products. If TCL is another classloader that delegates to UberClassLoader (UCL), this code causes infinite recursion.
      
      And moreover, given the goal of UCL, it seems wrong that this class is changing behaviour based on contextual information like TCL.
      
       In looking at 4de81f1e, the change was introduced to make sure XStream unmarshalling invoked from Plugin.start() would see the classes in that plugin. This was an issue back then when plugins are prepared and loaded one by one, as UCL didn't have visibility into plugins being prepared. But in the current Jenkins, classloaders for all the plugins are prepared, before any plugin gets started, so by the time Plugin.start() runs, UCL is fully functioning.
      
       Therefore, there's no need to consult TCL for the purpose of resolving its own classes. I could have also removed the code that sets TCL, but because some libraries often depend on TCL and doesn't properly look at caller class, I'm leaving it in, even though it's generally a bad practice to rely on TCL in multi-classloader apps like Jenkins
      f322503d
    • K
      c354a01e
    • K
      a3d5d3ce
  7. 29 8月, 2011 5 次提交
  8. 28 8月, 2011 1 次提交
  9. 27 8月, 2011 2 次提交
  10. 26 8月, 2011 2 次提交
  11. 25 8月, 2011 2 次提交
  12. 24 8月, 2011 8 次提交
  13. 20 8月, 2011 2 次提交