@@ -1016,24 +1016,35 @@ impl RustAppSettings {
10161016 . workspace
10171017 . and_then ( |v| v. package ) ;
10181018
1019+ let version = config. version . clone ( ) . unwrap_or_else ( || {
1020+ cargo_package_settings
1021+ . version
1022+ . clone ( )
1023+ . expect ( "Cargo manifest must have the `package.version` field" )
1024+ . resolve ( "version" , || {
1025+ ws_package_settings
1026+ . as_ref ( )
1027+ . and_then ( |p| p. version . clone ( ) )
1028+ . ok_or_else ( || anyhow:: anyhow!( "Couldn't inherit value for `version` from workspace" ) )
1029+ } )
1030+ . expect ( "Cargo project does not have a version" )
1031+ } ) ;
1032+
1033+ let bundle_version = if cfg ! ( target_os = "ios" ) {
1034+ config. bundle . ios . bundle_version . clone ( )
1035+ } else if cfg ! ( target_os = "macos" ) {
1036+ config. bundle . macos . bundle_version . clone ( )
1037+ } else {
1038+ None
1039+ } ;
1040+
10191041 let package_settings = PackageSettings {
10201042 product_name : config
10211043 . product_name
10221044 . clone ( )
10231045 . unwrap_or_else ( || cargo_package_settings. name . clone ( ) ) ,
1024- version : config. version . clone ( ) . unwrap_or_else ( || {
1025- cargo_package_settings
1026- . version
1027- . clone ( )
1028- . expect ( "Cargo manifest must have the `package.version` field" )
1029- . resolve ( "version" , || {
1030- ws_package_settings
1031- . as_ref ( )
1032- . and_then ( |p| p. version . clone ( ) )
1033- . ok_or_else ( || anyhow:: anyhow!( "Couldn't inherit value for `version` from workspace" ) )
1034- } )
1035- . expect ( "Cargo project does not have a version" )
1036- } ) ,
1046+ version : version. clone ( ) ,
1047+ bundle_version : bundle_version. unwrap_or_else ( || version. clone ( ) ) ,
10371048 description : cargo_package_settings
10381049 . description
10391050 . clone ( )
0 commit comments