I'm +1 for reducing it to a warning and letting infrastructure
companies build, adapt and extend it to their needs in userland.

Daniel Shaw
@dshaw


On Wed, Jun 27, 2012 at 10:45 AM, Isaac Schlueter <[email protected]> wrote:
> Thanks for the feedback, everyone.
>
> It seems like we can achieve the optimum balance like this:
>
> 1. add an "engines-strict" config, default false
>
> 3. if "engines-strict" == false, then it's a warning
>
> Then Heroku and Azure and the like can set the flag in their envs if
> they want to (or just look at the engines value and do whatever they
> want with it), and users will be alerted about the need to upgrade
> (but without being forced to, or as is more often the case, forced NOT
> to.)
>
> Adding checking for "or higher" would seem to be too subtle a change
> to me.  Ie, if your package says `"engines":"0.4.x"`, and I have node
> 0.8, do you *really* mean >=0.6.0?  Or do you mean that you rely on
> listenFD, which is gone in 0.6, and reimplemented in 0.8, but somewhat
> differently?
>
> It seems like the better option is just to warn you that it might
> break, and then let it break.
>
> Another option might be to let authors add an "enginesStrict" boolean
> flag in their package.json which would say, "No, seriously, this WILL
> NOT WORK except with the specified versions, so don't even try to use
> it."
>
> What we're seeing in practice is just weird and broken behavior,
> usually because an old version of something (say, a package from 2
> years ago, which doesn't work on modern node) might have no engines
> specified, but a newer version of the same package (which works fine
> on 0.8) has "engines":{"node":"0.6.x"} specified.  So, npm tries to
> find the most recent version that it thinks will work, and it gets
> 0.1.2 (which is broken and old) instead of 4.8.12 (which is new, and
> works).  That's the opposite of the intent.  A nag would be more
> appropriate in that case, I think.
>
>
>
> On Wed, Jun 27, 2012 at 8:50 AM, Glenn Block <[email protected]> wrote:
>> We were just about to take a dependency on it for Azure. Is there an
>> alternative recommended approach? I believe Heroku uses this as well.
>>
>> Sent from my Windows Phone
>> ________________________________
>> From: Bradley Meck
>> Sent: 6/26/2012 10:09 PM
>> To: [email protected]
>> Subject: [nodejs] Re: remove "engines" from package.json?
>>
>> At least some PaaS use it. I think it it were tied to tests in some way it
>> would be more meaningful for the average user, but for now it most commonly
>> used for PaaS deploys.
>>
>> On Wednesday, June 27, 2012 12:06:52 AM UTC-5, Isaac Schlueter wrote:
>>>
>>> Do people actually rely on the "engines" hash being respected in npm
>>> installs any more?  It was super essential in the early days when the
>>> API was changing constantly, but now, it seems like it just makes it
>>> unnecessarily difficult to upgrade stuff.
>>>
>>> If no one is relying on this right now, I'm going to reduce it to a
>>> warning.  If in time, people start complaining that the warning is to
>>> warny, we can remove it, and just let "engines" be a thing of the
>>> past.  (Note that `npm init` already doesn't bother with it, and for a
>>> while has just defaulted to {"node":"*"}.)
>>>
>>> Please let me know what you think.  Thanks :)
>>
>> --
>> Job Board: http://jobs.nodejs.org/
>> Posting guidelines:
>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>> You received this message because you are subscribed to the Google
>> Groups "nodejs" group.
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/nodejs?hl=en?hl=en
>>
>> --
>> Job Board: http://jobs.nodejs.org/
>> Posting guidelines:
>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>> You received this message because you are subscribed to the Google
>> Groups "nodejs" group.
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/nodejs?hl=en?hl=en
>
> --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines: 
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Reply via email to