Reputation: 221
I'm playing around with a centralized build setup which is hosted on github: https://github.com/skybrud/sky-build-setup/tree/master
In the npm module this repo is used, I have the following package.json:
{
"name": "sky-crop",
"version": "1.0.5",
"description": "Vue component for cropping images",
"main": "dist/skycrop.js",
"scripts": {
"vanilla": "rimraf ./node_modules && yarn run dist",
"build": "rimraf ./dist && webpack --config ./webpack.config.js",
"dist": "yarn install && yarn run build"
},
"build": "module",
"author": "Skybrud.dk",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/skybrud/sky-crop.git"
},
"dependencies": {
"sky-window": "^1.0.4"
},
"devDependencies": {
"sky-build-setup": "https://github.com/skybrud/sky-build-setup.git#semver:^1.0.0"
}
}
Here's my issue. When running yarn upgrade-interactive
I always get the following:
For some reason the to
part always refers to exotic
in stead of being up to date.
Can someone point me in the right direction about what is going on?
And what does exotic
exactly mean? I haven't been able to locate the description anywhere.
Upvotes: 1
Views: 1428
Reputation: 763
Yarn can't manage dependencies versions for dependencies not belonging to the npm packages repository.
In your case, the devDependency sky-build-setup
is resolved using a github url, where yarn doesn't have a way of knowing if there is a new version of the dependency nor how to update it. The dependencies not belonging to npm (i.e. the ones resolved via urls or file:
) are marked as exotic
in the interactive-upgrade
process.
On the other hand, the dependency sky-window
comes from npm and yarn can assess if you are using the latest version and eventually update it for you.
Upvotes: 3