Just in time for the year end festivities, we are pleased to announce the release of Software Delivery Machine 1.2.0. This release was primarily focused on bug fixes but we also managed to add some cool new features.
If you’re new to Atomist and the SDM framework, I strongly recommend reading through the Atomist Advent of Automations.
New Features
The following noteworthy features were added in the 1.2.0 release:
- The CLI now provides an improved
config
command to log into Atomist and configure your API key and workspaces. - Introduced
LazyProjectLoader
to prevent eager cloning of Git projects during evaluation ofpushRules
. - Added convenience method to implement
ExecuteGoal
instances that operate on cloned projects withdoWithProject
. - Reworked spawning of external system processes to make it more reliable across all platforms.
CodeTransforms
can now run in dry-run mode to preview their impact.GoalExecutionListener
instances can now be registered on goals.
Changelog
Here is the combined changelog for the following released projects:
@atomist/sdm@1.2.0
- Source Code, API Docs, OSS Licenses@atomist/sdm-core@1.2.0
- Source Code, API Docs, OSS Licenses@atomist/automation-client@1.2.0
- Source Code, API Docs, OSS Licenses@atomist/sdm-local@1.0.4
- Source Code, API Docs, OSS Licenses@atomist/cli@1.1.0
- Source Code, API Docs, OSS Licenses
The format is based on Keep a Changelog and the projects adhere to Semantic Versioning.
Added
- Allow more options to be passed to createGoal. ab89243
@atomist/sdm@1.2.0
- Add dryRun flag to CodeTransform invocations. #613
@atomist/sdm@1.2.0
- Add helpers for
doWithRepos
anddoWithProject
. #615@atomist/sdm@1.2.0
- Provide spawnLog with consistent spawn interface. #620
@atomist/sdm@1.2.0
- Add exec and spawn to doWithProject callback. #618
@atomist/sdm@1.2.0
- Add goal function to create a new GoalWithFulfillment. 311a273
@atomist/sdm@1.2.0
- Allow to register
GoalExecutionListener
on aGoalWithFulfillment
. #624@atomist/sdm@1.2.0
- Allow state computation in push rule evaluation. #630
@atomist/sdm@1.2.0
- Add actionableMenu to create menus from CommandHandlerRegistrations. 9ddfe18
@atomist/sdm@1.2.0
- Provide useful error messages when project generation fails. #634
@atomist/sdm@1.2.0
- Add
targets.branch
toCodeTransform
targeting. #636@atomist/sdm@1.2.0
- Add ability to select goal based on push in DSL. #642
@atomist/sdm@1.2.0
- Add command to cancel in process goal set. 04e8484
@atomist/sdm-core@1.2.0
- Add thread_ts to MessageOptions to address threads. 49b9be7
@atomist/automation-client@1.2.0
- Disable graphql-tag fragment warning. #419
@atomist/automation-client@1.2.0
- Allow to print out configuration sources during startup. a255171
@atomist/automation-client@1.2.0
- Add HEAD method to HttpClient. 32fbc96
@atomist/automation-client@1.2.0
- Gracefully queue messages when the WS disconnects. #426
@atomist/automation-client@1.2.0
- Introduce
targets.branch
and fixproject.id
to point to correct project. #434@atomist/automation-client@1.2.0
- Stronger typing for parameters. #437
@atomist/automation-client@1.2.0
- Add login, config command to connect to a workspace. #57
@atomist/cli@1.1.0
Changed
- Introduce LazyProjectLoader and LazyProject interfaces. #625
@atomist/sdm@1.2.0
- Don’t abort code transform on many repos if one repo fails. #626
@atomist/sdm@1.2.0
- Rename enrichInvocation to attachFact. #632
@atomist/sdm@1.2.0
- Stronger typing on actionable(Command|Menu). 1a3e3e2
@atomist/sdm@1.2.0
- Change default code transform branch name to use proper date. 87a5514
@atomist/sdm@1.2.0
- Move rolar log to use HttpClient and factory. #87
@atomist/sdm-core@1.2.0
- Tighten typing on menuForCommand and buttonForCommand. de3b582
@atomist/automation-client@1.2.0
- Update registration timeout to 30s. 65d9ba9
@atomist/automation-client@1.2.0
Deprecated
- Deprecate sdmGoal on GoalInvocation. dbb25d2
@atomist/sdm@1.2.0
Removed
- Remove old Builder interface; moved to sdm-pack-build. 6211aef
@atomist/sdm@1.2.0
Fixed
- Execute startupListeners before scheduling the triggered listeners. #611
@atomist/sdm@1.2.0
- Using
createGoal
with space indisplayName
creates invaliduniqueName
. #623@atomist/sdm@1.2.0
- Fix issues when pushTest is missing on project listener. 7fd6fab
@atomist/sdm@1.2.0
- Update doc on goal execution listener. #639
@atomist/sdm@1.2.0
- Boolean parameter types are not supported. #423
@atomist/automation-client@1.2.0
- Introduce
targets.branch
and fixproject.id
to point to correct project. #434@atomist/automation-client@1.2.0
- Fix defaulting of targetBranch when raising PR. 6c80f10
@atomist/automation-client@1.2.0
- Logging setting can cause startup hangs. #435
@atomist/automation-client@1.2.0
- Don’t disable logging by just depending on sdm-local. cfedbc9
@atomist/sdm-local@1.0.4
Update Path
The 1.2.0 is backwards compatible and can be a dropped into any SDM running SDM 1.0.0 or later. For this release, please run the following commands to update your SDM installation:
$ npm install --save-exact \
@atomist/sdm@1.2.0 \
@atomist/sdm-core@1.2.0 \
@atomist/automation-client@1.2.0
$ npm install --save-exact --save-dev @atomist/sdm-local@1.0.4
Run the following command to update your CLI installation:
$ npm install -g @atomist/cli@1.1.0