diff --git a/packages/melos/lib/src/command_runner/version.dart b/packages/melos/lib/src/command_runner/version.dart index 2c14fe2f..b02680ea 100644 --- a/packages/melos/lib/src/command_runner/version.dart +++ b/packages/melos/lib/src/command_runner/version.dart @@ -24,6 +24,7 @@ import 'package:glob/glob.dart'; import 'package:pub_semver/pub_semver.dart'; import '../commands/runner.dart'; +import '../common/utils.dart'; import '../common/versioning.dart'; import '../package.dart'; import '../workspace_configs.dart'; @@ -240,8 +241,9 @@ class VersionCommand extends MelosCommand { return ManualVersionChange.incrementBuildNumber(); } - final semverReleaseType = SemverReleaseType.values - .firstWhereOrNull((releaseType) => releaseType.name == argument); + final semverReleaseType = SemverReleaseType.values.firstWhereOrNull( + (releaseType) => describeEnum(releaseType) == argument, + ); if (semverReleaseType != null) { return ManualVersionChange.incrementBySemverReleaseType( semverReleaseType, diff --git a/packages/melos/lib/src/common/utils.dart b/packages/melos/lib/src/common/utils.dart index d45aaf4e..1157702f 100644 --- a/packages/melos/lib/src/common/utils.dart +++ b/packages/melos/lib/src/common/utils.dart @@ -54,6 +54,8 @@ extension Let on T? { } } +String describeEnum(Object value) => value.toString().split('.').last; + // MELOS_PACKAGES environment variable is a comma delimited list of // package names - used instead of filters if it is present. // This can be user defined or can come from package selection in `melos run`.