@@ -140,7 +140,7 @@ export class ChangeAction extends BaseRushAction {
140140
141141 this . _bulkChangeBumpTypeParameter = this . defineChoiceParameter ( {
142142 parameterLongName : BULK_BUMP_TYPE_LONG_NAME ,
143- alternatives : Object . keys ( this . _getBumpOptions ( ) ) ,
143+ alternatives : [ ... Object . keys ( this . _getBumpOptions ( ) ) , ChangeType [ ChangeType . none ] ] ,
144144 description : `The bump type to apply to all changed projects if the ${ BULK_LONG_NAME } flag is provided.`
145145 } ) ;
146146 }
@@ -150,9 +150,12 @@ export class ChangeAction extends BaseRushAction {
150150 this . _projectHostMap = this . _generateHostMap ( ) ;
151151
152152 if ( this . _verifyParameter . value ) {
153- const errors : string [ ] = (
154- [ this . _bulkChangeParameter , this . _bulkChangeMessageParameter , this . _bulkChangeBumpTypeParameter ]
155- ) . map ( ( parameter ) => {
153+ const errors : string [ ] = ( [
154+ this . _bulkChangeParameter ,
155+ this . _bulkChangeMessageParameter ,
156+ this . _bulkChangeBumpTypeParameter ,
157+ this . _overwriteFlagParemter
158+ ] ) . map ( ( parameter ) => {
156159 return parameter . value
157160 ? (
158161 `The {${ this . _bulkChangeParameter . longName } parameter cannot be provided with the ` +
@@ -181,10 +184,18 @@ export class ChangeAction extends BaseRushAction {
181184 let changeFileDataPromise : Promise < Map < string , IChangeFile > > ;
182185 let allowOverwriteHandler : ( filePath : string ) => Promise < boolean > ;
183186 if ( this . _bulkChangeParameter . value ) {
184- if ( ! this . _bulkChangeBumpTypeParameter . value || ! this . _bulkChangeMessageParameter . value ) {
187+ if (
188+ ! this . _bulkChangeBumpTypeParameter . value ||
189+ (
190+ ! this . _bulkChangeMessageParameter . value &&
191+ this . _bulkChangeBumpTypeParameter . value !== ChangeType [ ChangeType . none ]
192+ )
193+ ) {
185194 throw new Error (
186195 `The ${ this . _bulkChangeBumpTypeParameter . longName } and ${ this . _bulkChangeMessageParameter . longName } ` +
187- `parameters must provided if the ${ this . _bulkChangeParameter . longName } flag is provided.`
196+ `parameters must provided if the ${ this . _bulkChangeParameter . longName } flag is provided. If the ` +
197+ `${ this . _bulkChangeBumpTypeParameter . longName } 's value is set to "${ ChangeType [ ChangeType . none ] } ", the ` +
198+ `${ this . _bulkChangeMessageParameter . longName } parameter may be omitted.`
188199 ) ;
189200 }
190201
@@ -198,7 +209,7 @@ export class ChangeAction extends BaseRushAction {
198209
199210 const errors : string [ ] = [ ] ;
200211
201- const comment : string = this . _bulkChangeMessageParameter . value ;
212+ const comment : string = this . _bulkChangeMessageParameter . value || '' ;
202213 const changeType : string = this . _bulkChangeBumpTypeParameter . value ;
203214 const changeFileData : Map < string , IChangeFile > = new Map < string , IChangeFile > ( ) ;
204215 for ( const packageName of sortedProjectList ) {
0 commit comments