Uploaded image for project: 'Apache Cordova'
  1. Apache Cordova
  2. CB-7143

OSX platform cannot be installed as described

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.5.0
    • 4.0.0
    • cordova-osx
    • None
    • OSX 10.9.4

    Description

      Following instructions as per:

      https://github.com/apache/cordova-osx

      "Add the Cordova OSX Platform the a CLI project" [sic]

      does not work.

      I checked out cordova from master, completed all the npm linking as described in the linked instructions and checked cordova version:

      3.5.0-0.2.7-dev

      I then tried to follow this instruction: "patch the 2 projects with the patches provided in the patches directory to enable the osx platform". I expected to be able to download and git apply these patches in the git root for each of the two node modules - cordova-cli and cordova-plugman. However, they are not set up correctly for this, and produced errors:

      error: platforms.js: No such file or directory
      error: src/platform.js: No such file or directory

      Indeed, the path locations in each patch do not seem to be vaild for any given location within either module. I thus ended up finding all files named platform.js and platforms.js (there are many, spread throughout the cordova-lib module within both cordova-cli and cordova-plugman), eyeballing them to see which files matched the patch changes, and copy/pasting the changes manually. (8 files in total, as the 4 "patched" files appear under cordova-lib in each cordova module.)

      When running cordova platform add osx, I then got an error about an invaild location for the ios-parser. I found the incorrect line in the "patched" cordova/platform.js and changed it as follows:

      parser : './metadata/ios_parser',

      Following this I was able to add the osx platform and run the app.

      Needless to say, this is a frustrating developer experience. I don't know why the osx platform information code is not included in cordova by default - it would seem to be fairly well isolated from effects on any other platform - but if it is going to be "upgradable" in this fashion, then the git patches should at least work. If they were designed to work (and ever did work) with a specific version of the cordova modules, or in a different location other than the git root, then that should be stated, instead of instructing the hapless developer to clone cordova from master and providing no further clues.

      Attachments

        Activity

          People

            tripod Tobias Bocanegra
            tstewart Tim Stewart
            Votes:
            1 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: