[ 
https://issues.apache.org/jira/browse/CB-274?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13272771#comment-13272771
 ] 

Shazron Abdullah commented on CB-274:
-------------------------------------

D'oh - we can't have dual support of course, since this is compile time and we 
ship a built binary for the framework. We'll have to turn it on, and require 
ARC. The problem is, all the plugins will need to upgrade as well. 

This then becomes a communication issue that we will need to send to devs ahead 
of time. We can push this to 2.0 but we must have an extended RC period to iron 
out the bugs, but we can start blogging about this change now.

If are to push it to now (1.8.0) my suggestion is to *exclude* ARC for 
CDVPlugin, and instruct users how to exclude ARC for their plugin files: 
http://stackoverflow.com/questions/6448874/disable-automatic-reference-counting-for-some-files
 - this way there is a transition. We can also print out warnings in the 
console.log about the migration to ARC.
                
> iOS Cordova Template Project is not compilable with default Apple's ARC 
> compiler 3.0
> ------------------------------------------------------------------------------------
>
>                 Key: CB-274
>                 URL: https://issues.apache.org/jira/browse/CB-274
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 1.4.0
>         Environment: Mac OSX 10.7 XCode 4.2
>            Reporter: Oleg Gryb
>            Assignee: Shazron Abdullah
>             Fix For: 1.8.0
>
>
> The default and recommended compiler on Mac is Apple's LLVM 3.0 and this is 
> the only one that supports ARC, however PhoneGap uses GCC LVM 4.2 and when I 
> tried to change the compiler to Apple's, I got syntax errors. I've changed 
> the PhoneGap code as described below, but I'm not sure if it will affect 
> anything:
> AppDelegate.m
> //    self.window = [[[UIWindow alloc] initWithFrame:screenBounds] 
> autorelease];
>     self.window = [[UIWindow alloc] initWithFrame:screenBounds];
> ...
> //    self.viewController = [[[MainViewController alloc] init] autorelease];
>     self.viewController = [[MainViewController alloc] init];
> ...
> - (void) dealloc
> {
> //    [super dealloc];
> }
> main.m
> //    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
>     int retVal = UIApplicationMain(argc, argv, nil, @"AppDelegate");
> //    [pool release];

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to