[
https://issues.apache.org/jira/browse/CB-11261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15287210#comment-15287210
]
ASF GitHub Bot commented on CB-11261:
-------------------------------------
Github user nikhilkh commented on a diff in the pull request:
https://github.com/apache/cordova-lib/pull/440#discussion_r63577980
--- Diff: cordova-lib/src/plugman/install.js ---
@@ -134,15 +134,15 @@ function checkEngines(engines) {
var engine = engines[i];
// This is a hack to allow plugins with <engine> tag to be
installed with
- // engine with '-dev' suffix. It is required due to new semver
range logic,
+ // engine with '-dev' or '-nightly' suffixes. It is required due
to new semver range logic,
// introduced in [email protected]. For more details see
https://github.com/npm/node-semver#prerelease-tags.
//
// This may lead to false-positive checks, when engine version
with dropped
// suffix is equal to one of range bounds, for example: 5.1.0-dev
>= 5.1.0.
// However this shouldn't be a problem, because this only should
happen in dev workflow.
- engine.currentVersion = engine.currentVersion &&
engine.currentVersion.replace(/-dev$/, '');
- if ( semver.satisfies(engine.currentVersion, engine.minVersion) ||
engine.currentVersion === null ) {
- // engine ok!
+ engine.currentVersion = engine.currentVersion &&
engine.currentVersion.replace(/-dev|-nightly.*$/, '');
+ if ( semver.satisfies(engine.currentVersion, engine.minVersion,
/*loose=*/true) || engine.currentVersion === null ) {
--- End diff --
Ah I see - makes sense.
> Cordova@nightly fails to install any plugin with <engine name="cordova">
> ------------------------------------------------------------------------
>
> Key: CB-11261
> URL: https://issues.apache.org/jira/browse/CB-11261
> Project: Apache Cordova
> Issue Type: Bug
> Components: CordovaLib
> Affects Versions: 6.2.0
> Reporter: Vladimir Kotikov
> Assignee: Vladimir Kotikov
> Labels: reproduced, semver, triaged
> Fix For: 6.2.0
>
>
> This happens due to semver@>4.x which assumes that any version with
> prerelease identifier (such as "-dev" or "-nightly") is not allowed to
> satisfy the range that does not contain version with prerelease identifier.
> For example {{6.2.0-nightly.2016.11.05}} does not satisfy the range
> {{>=4.0.0}} even though {{6.2.0-nightly.2016.11.05}} is techically greater
> than {{4.0.0}}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]