@@ -1016,24 +1016,35 @@ impl RustAppSettings {
1016
1016
. workspace
1017
1017
. and_then ( |v| v. package ) ;
1018
1018
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
+
1019
1041
let package_settings = PackageSettings {
1020
1042
product_name : config
1021
1043
. product_name
1022
1044
. clone ( )
1023
1045
. 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 ( ) ) ,
1037
1048
description : cargo_package_settings
1038
1049
. description
1039
1050
. clone ( )
0 commit comments