Pipeline: Supporting APIs2.20Minimum Jenkins requirement: 2.62ID: workflow-support
View Pipeline: Supporting APIs on the plugin site for more information.
Older versions of this plugin may not be safe to use. Please review the following warnings before using an older version:
2.20 (Aug 7, 2018) - Users are encouraged to combine this with an updates to the Pipeline Job Plugin and Pipeline Nodes and Processes Plugin
- JEP-206 Use UTF-8 for all Pipeline build logs
2.19 (Jun 25, 2018)
- JENKINS-49014 Exposes currentBuild.keepLog
- JENKINS-51390 Use ProxyException when necessary for program.dat
2.18 (Feb 5, 2018)
2.17 (Jan 22, 2018)
- Major Feature: Add APIs for FlowNodeStorage to provide more granular control of when/how they write to disk (JENKINS-47172)
- Allows for deferred writes, where a FlowNode has all its actions attached before being written (cuts writes ~1/2 or more)
- Provides facilities a bit like DB transactions
- Major Feature: New and MUCH more efficient pipeline FlowNode storage (JENKINS-47173)
- Stores all FlowNodes in a single file, allowing for much faster bulk streaming read/writes, and faster access.
- Available with the performance-optimized durability setting - see Jenkins documentation for Pipeline Scalability for what you need to enable this.
- Enhancement: More compact representation of FlowNodes by using XStream Aliases (JENKINS-49084)
- Applies to all of the FlowNode storage engines, and reduces size-on-disk (and data written) by about 30%
- Compatibility note: after this change, builds with this plugin version CANNOT be read by older versions of this plugin
- Feature: utility API to switch between atomic and non-atomic XStream serialization
- Robustness enhancement: Timeout utility tries to repeatedly interrupt threads and notes that this is happening (PR#48)
- Feature: Sandboxed access to upstream build information (JENKINS-31576)
- ClassFilter entries to ensure the XStream/Remoting whitelist doesn't break Pipeline
- Bugfix: Fix a Groovy memory leak introduced previously with the Timeout utility: ensure that the timeout threadpool cannot be lazy-initialized with a GroovyClassloader as its contextClassloader
2.16 (Oct 13, 2017)
- JENKINS-26148 Create a default implementation of StepExecution.stop
- Add a WithThreadName utility to give threads more meaningful names for debugging
2.15 (Sep 26, 2017)
- JENKINS-26137 Integrate patched version of JBoss Marshalling with better diagnostics
- JENKINS-38223 / JENKINS-45553 Massively improve performance of pipeline with numerous parallel branches by using the new isActive API from workflow-api 2.22.
- JENKINS-37324 followup: Add an arguments column to the FlowGraphTable display
- JENKINS-36528 Fix Environment Variables Handling: Include AbstractBuild Env vars in build variables
- Optimization: eliminate need for reflection when calling getChangeSets - https://github.com/jenkinsci/workflow-support-plugin/pull/41
2.14 (Mar 31, 2017)
- JENKINS-42952 Make
- JENKINS-42521 Added a
currentBuildand the return value of
- JENKINS-40934 Speedup of log-related code run when adding a new step when using a massive number of
- Robustness fix noted in JENKINS-26137.
- Robustness fix associated with JENKINS-42556: tolerate errors encountered when printing progress of build resumption tasks.
2.13 (Feb 13, 2017)
No user-visible changes.
Timeoututility to implement JENKINS-32986.
2.12 (Jan 10, 2017)
Should be no user-visible changes.
- Test utility used to verify JENKINS-40909.
2.11 (Nov 11, 2016)
- Optimization: don't throw away the Actions attached to a FlowNode when loaded from disk (avoids double-loading)
- Small things:
- Remove SemaphoreListener (dead code from testing)
2.10 (Oct 20, 2016)
- Regression in log handling with certain steps inside
2.9 (Oct 19, 2016)
- Allow block-scoped steps to provide log output in addition to their what their bodies contribute (JENKINS-34637 related)
- Make PauseAction implement PersistentAction so it consumes the API optimizations from JENKINS-38867
- Small things:
- Generics fix for JDK 9 support
- Add a getStatus method to Semaphore step (used in testing)
Do not use, there is a known regression which will be fixed shortly in 2.10.
2.8 (Sep 26, 2016)
- Restore use of the DepthFirstScanner API that was reverted in JENKINS-38457 now that its handling of parallels matches FlowGraphWalker
2.6 (Sep 23, 2016)
- JENKINS-38457 Show parallel branches in correct order (broken since 2.3).
- Infrastructure for JENKINS-38114.
2.5 (Sep 16, 2016)
- Clean up display of timing information in pipeline steps for a few edge cases (no start time on node, times under 1 ms)
- Remove some obsolete approveSignature calls
2.4 (Sep 09, 2016)
- Added timing information to pipeline steps step display (show how long a step or block ran for)
2.3 (Sep 09, 2016)
- JENKINS-37366 Added properties
currentBuildor return value of
2.2 (Jul 11, 2016)
- JENKINS-30412 Sandbox-friendly
currentBuildor return value of
durationproperty for return value of
2.1 (Jun 16, 2016)
- Infrastructure for JENKINS-26130.
- Fixed title of log pages from Pipeline Steps.
2.0 (Apr 05, 2016)
- First release under per-plugin versioning scheme. See 1.x changelog for earlier releases.
- Various code moved out of this plugin into Pipeline Nodes and Processes Plugin, Pipeline Basic Steps Plugin, Pipeline Input Step Plugin, Pipeline Build Step Plugin, and Pipeline Stage Step Plugin. You must update those plugins to 2.x if updating this plugin to 2.x.
Previous Security Warnings
Arbitrary code execution due to incomplete sandbox protection
- Affects version 2.17 and earlier