Return-Path: X-Original-To: apmail-cordova-dev-archive@www.apache.org Delivered-To: apmail-cordova-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 131E911AA1 for ; Tue, 22 Apr 2014 16:05:45 +0000 (UTC) Received: (qmail 63374 invoked by uid 500); 22 Apr 2014 16:05:43 -0000 Delivered-To: apmail-cordova-dev-archive@cordova.apache.org Received: (qmail 63335 invoked by uid 500); 22 Apr 2014 16:05:43 -0000 Mailing-List: contact dev-help@cordova.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cordova.apache.org Delivered-To: mailing list dev@cordova.apache.org Received: (qmail 63327 invoked by uid 99); 22 Apr 2014 16:05:43 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 22 Apr 2014 16:05:43 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of agrieve@google.com designates 209.85.219.45 as permitted sender) Received: from [209.85.219.45] (HELO mail-oa0-f45.google.com) (209.85.219.45) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 22 Apr 2014 16:05:38 +0000 Received: by mail-oa0-f45.google.com with SMTP id eb12so5826996oac.4 for ; Tue, 22 Apr 2014 09:05:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:content-type; bh=9wU9knl9EFAd3hrSeRqIwVz1H2nqkwhEzTBD1zNv1TE=; b=XGqPbuViv66WJFz7QPTkf15R0hl9KeRqe942Dm+bEUuP7rFm5OP3Q72SUDuSzasT50 eEehTNbmAIJTwOGrRVW/pUSE8ja28hD4rVzXZnBMLDLqzLfjsvL4M7jYR4rDHFrh7qKP Sdv4Z2xg/Fh3leeQI/uMm49hG4jowfs6HUYER+5znpM3kuc7A+UIFxy1GilsKuRyhrIs URHkLo4C1jaT36VPp4HIjThcVjWFJUKU6NUJmsh9OH6B+ZrWeu3VXGIedmpTC8yHGbb4 PWf63/7ZXuF6+ovW6+joM963pJxBe97BTKDZnxQ3AusdHyp0279NJLRq9R4d3XSYUfqy 65wQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:content-type; bh=9wU9knl9EFAd3hrSeRqIwVz1H2nqkwhEzTBD1zNv1TE=; b=ZfpvUDzlQ4i3suZ6PpCqAoLcxWC0Cm+MGAAW+vFM026dMgZWhzIxorfcqq9lW0JwMZ UuM+ylXz1D7s3aTs+jT98enzhWI0JVGB3L56Xt4NktFmw3Kjzuc4pH3eyzMcVy5Q3iAo +HSN+1oL7BF0xEG/ahjs6/rjUB/yodt1+/UDI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:content-type; bh=9wU9knl9EFAd3hrSeRqIwVz1H2nqkwhEzTBD1zNv1TE=; b=OE9Pi+YfufBMu3TnaL4DWzbW3TE/+2mMHul8ujBWT/rYw5DfAq/ZxlNkqL1/dJoo4P ETlkOZXcSYS8dL/aLuWRcMxVt8TKI0iyNlSwLzJmGd3DbEC9KmTlYtC9VQ6he4et251M /5vZEZA3DsSRaTfkLBGinKgTzuDrdpU338RJY1sCqV4pppbQy/3vADwvDf4u5C8oiayh s1mvs+CIGiRwNpY7b5iScN5/ecY/rHqTjBs8hqK97EgDFauvUYTd3YbbhoqRVck1N47i rBTmmSAfc6aBfNx9K02xiSdwZlHL3/5J5EsbIGcGBpEWcngQ000cXBVBxx6mTqykxW8w vm1A== X-Gm-Message-State: ALoCoQm/WyQzrZz/v3fyFkcOg0pEjPiqGEn63POtDPE9p8tk7ICNkfpUp5o4EplGl6FmeSNDhrkQc7mKawiW0OOqQoBsqScbqXdI56iAu7hMVlR9uVvo8OtM4sWB3mOehBpaq9EwiPBMh7n9pLnT2iXy/fK3vMN57XmxSne/4TfJ5f/WNd4Bi7W4QBfOvAW0AjKuFMCa7fZKQubOQXRIQuLKV6e3NbP5Mg== X-Received: by 10.60.160.173 with SMTP id xl13mr38325119oeb.19.1398182717491; Tue, 22 Apr 2014 09:05:17 -0700 (PDT) MIME-Version: 1.0 Sender: agrieve@google.com Received: by 10.182.135.40 with HTTP; Tue, 22 Apr 2014 09:04:57 -0700 (PDT) In-Reply-To: <0768740a4c274b4c96053445252a0e44@BL2PR03MB417.namprd03.prod.outlook.com> References: <967c98a06b7c4227b93cc932be17f986@BLUPR03MB359.namprd03.prod.outlook.com> <382e88be07544c9a8d3988310f89cb39@BN1PR07MB135.namprd07.prod.outlook.com> <336209849c2043928a22188eef9c3447@BN1PR07MB135.namprd07.prod.outlook.com> <2806162a1ff24783b5d588a8f4800131@BL2PR03MB417.namprd03.prod.outlook.com> <4a00e18c98af4daaa6788f695932327d@BL2PR03MB417.namprd03.prod.outlook.com> <8a9fa4dbe24c4ebe9f8b4e2302d43e2b@DM2PR03MB366.namprd03.prod.outlook.com> <157754a15285493cac3efe11ee9b52ae@DM2PR03MB366.namprd03.prod.outlook.com> <6fb754918e77424c88118529f2ad940e@BL2PR03MB417.namprd03.prod.outlook.com> <0768740a4c274b4c96053445252a0e44@BL2PR03MB417.namprd03.prod.outlook.com> From: Andrew Grieve Date: Tue, 22 Apr 2014 12:04:57 -0400 X-Google-Sender-Auth: _MKSPOagWBkCU8rtdEtEvR6AbZc Message-ID: Subject: Re: Proposal: hooks support for plugins To: dev Content-Type: multipart/alternative; boundary=089e011764e935234504f7a3c8d7 X-Virus-Checked: Checked by ClamAV on apache.org --089e011764e935234504f7a3c8d7 Content-Type: text/plain; charset=UTF-8 There are some *disadvantages* to not sub-shelling out for hooks: - Harder to capture their stdio (certainly do-able though by swapping out system.std* for the duration of the hook) - Harder to handle script failures (e.g. if they throw an uncaught exception, we would like to be able to say "This hook script failed: foo.js") - Maybe this is doable, by storing a global exception-was-thrown callback? - Gives hooks the ability to mess up cordova's environment (although maybe the vm thing addresses this?) Would like to see tests for these things added before we launch this feature. On Tue, Apr 22, 2014 at 10:40 AM, Sergey Grebnov (Akvelon) < v-segreb@microsoft.com> wrote: > +1, I will name it as 'context' > > Thx! > Sergey > -----Original Message----- > From: Jonathan Bond-Caron [mailto:jbondc@gdesolutions.com] > Sent: Tuesday, April 22, 2014 7:34 AM > To: dev@cordova.apache.org > Subject: RE: Proposal: hooks support for plugins > > On Mon Apr 21 03:39 PM, Sergey Grebnov (Akvelon) wrote: > > module.exports = function(platform, projectDir, pluginDir, cmdLine) { > > console.log('hook.js: ' + platform); > > console.log('hook.js: ' + projectDir); > > console.log('hook.js: ' + pluginDir); > > console.log('hook.js: ' + cmdLine); > > > > Personnaly prefer: > > > module.exports = function(hookApi) { > > console.log('hook.js: ' + hookApi.platform); > > console.log('hook.js: ' + hookApi.projectDir); > > console.log('hook.js: ' + hookApi.pluginDir); > > console.log('hook.js: ' + hookApi.cmdLine);} > > Make it easier to pass other stuff in the future & using a sandoxed > hookApi object. > > > --089e011764e935234504f7a3c8d7--