@@ -700,7 +700,7 @@ namespace :rb do
700
700
text = File . read ( file ) . gsub ( old_version , new_version )
701
701
File . open ( file , "w" ) { |f | f . puts text }
702
702
703
- Rake ::Task [ 'rb:changelog' ] . invoke unless old_version . include? ( 'nightly' )
703
+ Rake ::Task [ 'rb:changelog' ] . invoke unless new_version . include? ( 'nightly' )
704
704
end
705
705
end
706
706
@@ -901,16 +901,22 @@ namespace :rust do
901
901
902
902
desc 'Update Rust version'
903
903
task :version , [ :version ] do |_task , arguments |
904
- old_version = arguments [ :version ] ? arguments [ :version ] : rust_version . split ( '.' ) . tap ( &:shift ) . append ( '0' ) . join ( '.' )
905
- new_version = updated_version ( old_version , arguments [ :version ] )
906
- new_version = new_version . split ( '.' ) . tap ( &:pop ) . join ( '.' )
904
+ old_version = rust_version . dup
905
+ equivalent_version = if old_version . include? ( 'nightly' )
906
+ old_version . split ( '.' ) [ 0 ...-1 ] . tap ( &:shift ) . append ( '0' ) . append ( 'nightly' ) . join ( '.' )
907
+ else
908
+ old_version . split ( '.' ) . tap ( &:shift ) . append ( '0' ) . join ( '.' )
909
+ end
910
+ converted_version = updated_version ( equivalent_version , arguments [ :version ] )
911
+ new_version = converted_version . split ( '.' ) . unshift ( "0" ) . tap ( &:pop ) . join ( '.' )
912
+ new_version += '.nightly' unless old_version . include? ( 'nightly' )
907
913
908
914
[ 'rust/Cargo.toml' , 'rust/BUILD.bazel' ] . each do |file |
909
915
text = File . read ( file ) . gsub ( old_version , new_version )
910
916
File . open ( file , "w" ) { |f | f . puts text }
911
917
end
912
918
913
- Rake ::Task [ 'rust:changelog' ] . invoke
919
+ Rake ::Task [ 'rust:changelog' ] . invoke unless new_version . include? ( 'nightly' )
914
920
end
915
921
end
916
922
@@ -983,6 +989,7 @@ namespace :all do
983
989
if version == 'nightly'
984
990
Rake ::Task [ 'java:version' ] . invoke
985
991
Rake ::Task [ 'rb:version' ] . invoke
992
+ Rake ::Task [ 'rust:version' ] . invoke
986
993
else
987
994
Rake ::Task [ 'java:version' ] . invoke ( version )
988
995
Rake ::Task [ 'rb:version' ] . invoke ( version )
@@ -1034,8 +1041,10 @@ end
1034
1041
def updated_version ( current , desired = nil )
1035
1042
version = desired ? desired . split ( '.' ) : current . split ( /\. |-/ )
1036
1043
if desired
1044
+ # Allows user to pass in only major/minor versions
1037
1045
version << "0" while version . size < 3
1038
1046
elsif version . size > 3
1047
+ # Assumes a pre-release version which means removing the pre-release portion
1039
1048
version . pop while version . size > 3
1040
1049
else
1041
1050
version [ 1 ] = ( version [ 1 ] . to_i + 1 ) . to_s
0 commit comments