cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Shazron <shaz...@gmail.com>
Subject Re: Question about ios non-custom frameworks
Date Fri, 02 Oct 2015 19:04:23 GMT
+1

On Fri, Oct 2, 2015 at 8:14 AM, Vladimir Kotikov (Akvelon)
<v-vlkoti@microsoft.com> wrote:
> The previous email was broken due to Ctrl+Enter, sorry ☹
>
> I’m looking into the tests failures on OS X, caused by PlatformApi refactoring and
it seems they caused by double caching of ios pbxproj files: first time in ios_parser [1]
and second time in PlatformMunger (through ConfigKeeper class) [2], [3]. It seems that at
some time one file get cached twice and then saving one cached instance we’re overwriting
changes, saved from another cache.
>
> So I have a question: What is the idea of dealing with xcode files and, in particular
, with non-custom frameworks in PlatformMunger instead of ios plugin handler, along with custom
frameworks. The one reason I see is that we need to count references to these frameworks,
so if two or more plugins references same frameworks, removal of one of them won’t remove
framework reference from pbxproj file.
>
> However, if this this is the only reason, would it make sense to move non-custom frameworks
related logic  to plugin handler? This will resolve those caching issues and looks more intuitive
and easier to maintain for me.
>
> I’ve made some prototype work on this refactoring and it seems to work fine. See this
commit for details: [4]
>
> -----
> [1] https://github.com/MSOpenTech/cordova-lib/blob/master/cordova-lib/src/plugman/platforms/ios.js#L210
> [2] https://github.com/MSOpenTech/cordova-lib/blob/master/cordova-common/src/ConfigChanges/ConfigChanges.js#L91
> [3] https://github.com/MSOpenTech/cordova-lib/blob/master/cordova-common/src/ConfigChanges/ConfigKeeper.js#L47
>
> [4] https://github.com/MSOpenTech/cordova-lib/commit/699bfe44a917b264815dc99efa0d770b766fa3a9
>
> -
> Best regards, Vladimir
>
> From: Vladimir Kotikov (Akvelon)
> Sent: Friday, October 2, 2015 6:04 PM
> To: dev@cordova.apache.org
> Subject: Question about ios non-custom frameworks
>
> Hi, guys. I’m looking into the tests failures on OS X, caused by PlatformApi refactoring
and it seems they caused by double caching of ios pbxproj files: first time in ios_parser
[1] and second time in PlatformMunger (through ConfigFile class) [2], [3]. It seems that at
some time one file get cached twice and then saving one cached instance we’re overwriting
changes, saved from another cache.
>
> [1] https://github.com/MSOpenTech/cordova-lib/blob/master/cordova-lib/src/plugman/platforms/ios.js#L210

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
For additional commands, e-mail: dev-help@cordova.apache.org


Mime
View raw message