cordova-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vladimir Kotikov (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CB-11044) files modified by after_prepare hook are reverted when restoring plugins
Date Mon, 11 Apr 2016 13:12:25 GMT

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

Vladimir Kotikov commented on CB-11044:
---------------------------------------

[~nikhilkh], [~jasongin], the root cause of this is an excess prepare after plugin add (triggered
by plugin restore), so this probably will be resolved automatically after CB-11022 will be
merged.

> files modified by after_prepare hook are reverted when restoring plugins
> ------------------------------------------------------------------------
>
>                 Key: CB-11044
>                 URL: https://issues.apache.org/jira/browse/CB-11044
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: CordovaLib
>    Affects Versions: 5.4.0, 6.0.0, 5.4.1, 6.0.1, 6.1.0, 6.1.1
>         Environment: OSX 10.11.4, also happens in Greenhouse CI tool
>            Reporter: Grant Patterson
>            Assignee: Vladimir Kotikov
>              Labels: Android, iOS, triaged
>
> I have a hook that uses the {{fs}} module functions {{readFileSync}} and {{writeFileSync}}
to modify files in the platforms/ directory. I'm using a hook only barely modified from {{020_replace_text.js}}
in these examples, to which the most recent Cordova documentation links: http://devgirl.org/2013/11/12/three-hooks-your-cordovaphonegap-project-needs/
> The CLI command I use is {{cordova run ios}} (also android)
> It all works fine in Cordova 5.3.3, but starting with 5.4.0 the hook *thinks* it wrote
the file properly, and I can re-{{readFileSync}} to confirm this, but the write does not appear
to stick. When the build is over, the file has reverted to its pre-hook state and the built
app does not have the change.
> I have tried wrapping my hook in:
> {{module.exports = function(context) {}}
> as the documentation suggests. I also moved the hook to scripts/ and tried referencing
it in config.xml, since the hooks/ directory is deprecated. None of these seem to make any
difference. It seems that anything in the www/ directory has this issue, as well as platforms/android/AndroidManifest.xml.
>  If I write to a new file in the same directory, the file does not persist, so it must
be the whole directory that's being overwritten. If I raise an exception in the hook, the
build fails and the file remains properly modified. So it's definitely something after this
hook executes that undoes it.
> Interesting development: It's something to do with my plugins; it doesn't happen in a
small sample project. I use {{<plugin>}} entries in config.xml to define which plugins
should be installed. When I delete these entries—without actually removing any of the plugins!—this
issue doesn't happen.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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


Mime
View raw message