Bug 17991 - Android property 'Internationalization' should be comma-separated when multiple options are selected
Summary: Android property 'Internationalization' should be comma-separated when multip...
Status: CONFIRMED
Alias: None
Product: Android
Classification: Xamarin
Component: MSBuild ()
Version: 4.12.0
Hardware: PC Mac OS
: Normal normal
Target Milestone: ---
Assignee: Jonathan Pryor
URL:
: 18120 ()
Depends on:
Blocks:
 
Reported: 2014-02-25 12:14 UTC by Peter Collins
Modified: 2014-03-03 14:31 UTC (History)
4 users (show)

Tags:
Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.


Please create a new report for Bug 17991 on Developer Community or GitHub if you have new information to add and do not yet see a matching new report.

If the latest results still closely match this report, you can use the original description:

  • Export the original title and description: Developer Community HTML or GitHub Markdown
  • Copy the title and description into the new report. Adjust them to be up-to-date if needed.
  • Add your new information.

In special cases on GitHub you might also want the comments: GitHub Markdown with public comments

Related Links:
Status:
CONFIRMED

Description Peter Collins 2014-02-25 12:14:35 UTC
This property generates a <MandroidI18n> element in the csproj file that is semicolon separated, and it should be comma separated. This semicolon separation occurs on *both* windows and mac, and results in a packaging failure.

Steps to reproduce:
> Create a new Android template
> Open 'Project Options' -> 'Android Build' -> 'Linker'
> Toggle multiple values in the 'Internationalization' area
http://screencast.com/t/VL4acrnYgGXL


Environment:
=== Xamarin Studio ===

Version 4.3.2 (build 2)
Installation UUID: 3e169c17-4a09-4d8a-be87-938005114683
Runtime:
	Mono 3.2.7 ((no/40f92d5)
	GTK+ 2.24.23 (Raleigh theme)

	Package version: 302070000

=== Apple Developer Tools ===

Xcode 5.0.2 (3335.32)
Build 5A3005

=== Xamarin.Mac ===

Xamarin.Mac: 1.6.34

=== Xamarin.iOS ===

Version: 7.0.6.168 (Starter Edition)
Hash: 2ed9bc9
Branch: 
Build date: 2014-21-01 06:33:05-0500

=== Xamarin.Android ===

Version: 4.12.0 (Starter Edition)
Android SDK: /Users/petercollins/Library/Developer/Xamarin/android-sdk-mac_x86
	Supported Android versions:
		1.6   (API level 4)
		2.1   (API level 7)
		2.2   (API level 8)
		2.3   (API level 10)
		3.1   (API level 12)
		3.2   (API level 13)
		4.0   (API level 14)
		4.0.3 (API level 15)
		4.1   (API level 16)
		4.2   (API level 17)
		4.3   (API level 18)
		4.4   (API level 19)
Java SDK: /usr
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

=== Build Information ===

Release ID: 403020002
Git revision: b442e89c84c5d1770cea90b2d69ac5e60907c578
Build date: 2014-01-30 23:06:32+0000
Xamarin addins: d8f15d9aac741cd301f6b14904d68632b0330b71

=== Operating System ===

Mac OS X 10.9.1
Darwin dynamic-027.bos.xamarin.com 13.0.0 Darwin Kernel Version 13.0.0
    Thu Sep 19 22:22:27 PDT 2013
    root:xnu-2422.1.72~6/RELEASE_X86_64 x86_64
Comment 1 Udham Singh 2014-02-27 07:33:06 UTC
I have checked this issue and able to reproduce this on both Windows as well as Mac. To reproduce this issue i have followed the instructions mentioned in bug description.

Refer Screencast:

For windows:  http://screencast.com/t/065sGJcKO
For Mac:  http://screencast.com/t/rGeLn2aLo44h

Environment Info:

For Windows:

=== Xamarin Studio ===

Version 4.2.3 (build 59)
Installation UUID: 312d4e9a-339c-433f-a27b-88ce0777af8f
Runtime:
	Microsoft .NET 4.0.30319.34003
	GTK+ 2.24.22 theme: MS-Windows
	GTK# (2.12.0.0)

=== Xamarin.Android ===

Version: 4.12.0 (Enterprise Edition)
Android SDK: D:\SDK\AndroidSDK
	Supported Android versions:
		2.1   (API level 7)
		2.2   (API level 8)
		2.3   (API level 10)
		3.1   (API level 12)
		3.2   (API level 13)
		4.0   (API level 14)
		4.0.3 (API level 15)
		4.1   (API level 16)
		4.2   (API level 17)
		4.3   (API level 18)
		4.4   (API level 19)
Java SDK: C:\Program Files (x86)\Java\jdk1.6.0_31
java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b05)
Java HotSpot(TM) Client VM (build 20.6-b01, mixed mode, sharing)

=== Build Information ===

Release ID: 402030059
828c2a91b515daaac7e57bc69fcfda6178d4ec01
Build date: 2014-02-17 14:52:00Z
Xamarin addins: 3bdcc713bdc4b0c04973f3a31b6d47ad3e205962

=== Operating System ===

Windows 6.2.9200.0 (64-bit)
-------------------------------------------------------------------------
For Mac:

=== Xamarin Studio ===

Version 4.2.3 (build 59)
Installation UUID: 011d70a5-dede-428b-ab04-ef451c2e539d
Runtime:
 Mono 3.2.7 ((no/40f92d5)
 GTK+ 2.24.23 theme: Raleigh
 GTK# (2.12.0.0)
 Package version: 302070000

=== Apple Developer Tools ===

Xcode 4.6.2 (2067.2)
Build 4H1003

=== Xamarin.iOS ===

Version: 7.0.5.2 (Trial Edition)
Hash: 9c42159
Branch: 
Build date: 2013-02-12 20:04:08-0500

=== Xamarin.Mac ===

Xamarin.Mac: Not Installed

=== Xamarin.Android ===

Version: 4.12.0 (Trial Edition)
Android SDK: /Users/MM/Desktop/android-sdk-macosx
 Supported Android versions:
  2.1   (API level 7)
  2.2   (API level 8)
  2.3   (API level 10)
  3.1   (API level 12)
  3.2   (API level 13)
  4.0   (API level 14)
  4.0.3 (API level 15)
  4.1   (API level 16)
  4.2   (API level 17)
  4.3   (API level 18)
  4.4   (API level 19)
Java SDK: /usr
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)

=== Build Information ===

Release ID: 402030059
Git revision: 828c2a91b515daaac7e57bc69fcfda6178d4ec01
Build date: 2014-02-18 18:05:23+0000
Xamarin addins: 3bdcc713bdc4b0c04973f3a31b6d47ad3e205962

=== Operating System ===

Mac OS X 10.7.5
Darwin MacMini.local 11.4.2 Darwin Kernel Version 11.4.2
    Thu Aug 23 16:25:48 PDT 2012
    root:xnu-1699.32.7~1/RELEASE_X86_64 x86_64
Comment 2 Mikayla Hutchinson [MSFT] 2014-02-27 16:19:19 UTC
MSBuild convention is to separate multiple values with semicolons, so this is a bug in the Android build targets.
Comment 3 Mikayla Hutchinson [MSFT] 2014-02-27 16:23:18 UTC
Though I shouldn't have made the XS change without more thoroughly testing against XA, it's been shipping since XS 4.2, so IMO it makes more sense to fix XA instead of reverting XS.
Comment 4 Mikayla Hutchinson [MSFT] 2014-02-27 16:29:16 UTC
Note also that XS will only change the separators to semicolons when changing project options, so it's possible to work around this by editing the project file.
Comment 5 Jonathan Pryor 2014-02-27 16:53:02 UTC
XA got support for both ','-separated and ';'-separated values in monodroid/d4a4602b.

Unfortunately, that probably won't see any 4.12.x release; it'll probably be 4.14.x. Even if it did hit a 4.12.x release, we're still likely looking at weeks before it's released.

Meanwhile, XA has been shipping with the comma-separated scheme since pre-1.0, in 2011. XS 4.2, meanwhile, has been shipping a handful of weeks, and has thus made itself incompatible with every current and previously shipping version of Mono for Android and Xamarin.Android, ever.

So, our choices are:

1. Revert the XS change, and re-enable support for everything; or
2. Keep the XS change, and wait for XA 4.14 (weeks-months away); requiring we tell our customers to hand edit their .csproj to fix the havoc inflicted upon them by our own tooling; or
3. Tell our customers to use Visual Studio instead, which actually does this correctly.

I'm not entirely sure why you're enamored with (2). I'd lobby for (1), myself.

I suppose (3) is always an option...
Comment 6 Mikayla Hutchinson [MSFT] 2014-03-03 14:31:06 UTC
*** Bug 18120 has been marked as a duplicate of this bug. ***