-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix (peer) dependencies #2528
Fix (peer) dependencies #2528
Conversation
* Declare `prop-types` as a dependency of `@nivo/core` (as recommended in their README) * Declare `react` as a peer dependency of `@nivo/tooltip` * Update lockfile Fixes #2401 Signed-off-by: Marvin A. Ruder <[email protected]>
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
For more details on the To validate that all peer dependencies within the // Place this .mjs file in the `packages` folder
import fs from 'fs'
import path, { dirname } from 'path'
import { fileURLToPath } from 'url'
const __filename = fileURLToPath(import.meta.url)
const __dirname = dirname(__filename)
const folders = fs.readdirSync(__dirname).filter(f => {
return fs.statSync(path.join(__dirname, f)).isDirectory()
})
for await (const folder of folders) {
const packageJson = JSON.parse(
fs.readFileSync(path.join(__dirname, folder, 'package.json'), 'utf8')
)
const dependencies = Object.keys(packageJson.dependencies ?? {})
const peerDependencies = Object.keys(packageJson.peerDependencies ?? {})
const nivoDependencies = Object.keys(packageJson.dependencies ?? {}).filter(dep =>
dep.startsWith('@nivo/')
)
for await (const dep of nivoDependencies) {
const depPackageJson = JSON.parse(
fs.readFileSync(
path.join(__dirname, dep.replace(/^@nivo\//, ''), 'package.json'),
'utf8'
)
)
const depPeerDependencies = Object.keys(depPackageJson.peerDependencies ?? {})
depPeerDependencies.forEach(peerDep => {
if (!peerDependencies.includes(peerDep) && !dependencies.includes(peerDep)) {
throw new Error(
`@nivo/${folder} has a dependency on ${dep}, which declares ${peerDep} as its peer dependency. ` +
`However, @nivo/${folder} does not declare ${peerDep} as its dependency or peer dependency. Fix it.`
)
}
})
}
} |
Signed-off-by: Marvin A. Ruder <[email protected]>
This pull request is automatically built and testable in CodeSandbox. To see build info of the built libraries, click here or the icon next to each commit SHA. Latest deployment of this branch, based on commit eca9bac:
|
Just imported the packages PS: Did the same with https://github.com/ollwenjones/nivo-0830-test, and I can confirm this also fixes the issue with |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thank you for investigating and solving the issue.
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@nivo/axes](https://togithub.com/plouc/nivo) ([source](https://togithub.com/plouc/nivo/tree/HEAD/packages/axes)) | [`0.84.0` -> `0.85.1`](https://renovatebot.com/diffs/npm/@nivo%2faxes/0.84.0/0.85.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nivo%2faxes/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nivo%2faxes/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nivo%2faxes/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nivo%2faxes/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@nivo/bar](https://togithub.com/plouc/nivo) ([source](https://togithub.com/plouc/nivo/tree/HEAD/packages/bar)) | [`0.84.0` -> `0.85.1`](https://renovatebot.com/diffs/npm/@nivo%2fbar/0.84.0/0.85.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nivo%2fbar/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nivo%2fbar/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nivo%2fbar/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nivo%2fbar/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@nivo/core](https://togithub.com/plouc/nivo) ([source](https://togithub.com/plouc/nivo/tree/HEAD/packages/core)) | [`0.84.0` -> `0.85.1`](https://renovatebot.com/diffs/npm/@nivo%2fcore/0.84.0/0.85.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nivo%2fcore/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nivo%2fcore/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nivo%2fcore/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nivo%2fcore/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@nivo/line](https://togithub.com/plouc/nivo) ([source](https://togithub.com/plouc/nivo/tree/HEAD/packages/line)) | [`0.84.0` -> `0.85.1`](https://renovatebot.com/diffs/npm/@nivo%2fline/0.84.0/0.85.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nivo%2fline/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nivo%2fline/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nivo%2fline/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nivo%2fline/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@nivo/pie](https://togithub.com/plouc/nivo) ([source](https://togithub.com/plouc/nivo/tree/HEAD/packages/pie)) | [`0.84.0` -> `0.85.1`](https://renovatebot.com/diffs/npm/@nivo%2fpie/0.84.0/0.85.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nivo%2fpie/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nivo%2fpie/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nivo%2fpie/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nivo%2fpie/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@nivo/scatterplot](https://togithub.com/plouc/nivo) ([source](https://togithub.com/plouc/nivo/tree/HEAD/packages/scatterplot)) | [`^0.84.0` -> `^0.85.0`](https://renovatebot.com/diffs/npm/@nivo%2fscatterplot/0.84.0/0.85.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nivo%2fscatterplot/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nivo%2fscatterplot/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nivo%2fscatterplot/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nivo%2fscatterplot/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@nivo/swarmplot](https://togithub.com/plouc/nivo) ([source](https://togithub.com/plouc/nivo/tree/HEAD/packages/swarmplot)) | [`^0.84.0` -> `^0.85.0`](https://renovatebot.com/diffs/npm/@nivo%2fswarmplot/0.84.0/0.85.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nivo%2fswarmplot/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nivo%2fswarmplot/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nivo%2fswarmplot/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nivo%2fswarmplot/0.84.0/0.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>plouc/nivo (@​nivo/axes)</summary> ### [`v0.85.1`](https://togithub.com/plouc/nivo/releases/tag/v0.85.1) [Compare Source](https://togithub.com/plouc/nivo/compare/v0.85.0...v0.85.1) #### What's Changed - Tooltip: avoid a flash effect and weird initial transition by [@​DimaAmega](https://togithub.com/DimaAmega) in [https://github.com/plouc/nivo/pull/2480](https://togithub.com/plouc/nivo/pull/2480) - feat(deps): upgrade d3-scale due to vulnerability by [@​plouc](https://togithub.com/plouc) in [https://github.com/plouc/nivo/pull/2531](https://togithub.com/plouc/nivo/pull/2531) #### New Contributors - [@​DimaAmega](https://togithub.com/DimaAmega) made their first contribution in [https://github.com/plouc/nivo/pull/2480](https://togithub.com/plouc/nivo/pull/2480) **Full Changelog**: plouc/nivo@v0.85.0...v0.85.1 ### [`v0.85.0`](https://togithub.com/plouc/nivo/releases/tag/v0.85.0) [Compare Source](https://togithub.com/plouc/nivo/compare/v0.84.0...v0.85.0) #### What's Changed - refactor default props to fix error message by [@​andre19980](https://togithub.com/andre19980) in [https://github.com/plouc/nivo/pull/2452](https://togithub.com/plouc/nivo/pull/2452) - fix(sankey): update onClick types in sankey chart to respect generics by [@​stas-demydiuk](https://togithub.com/stas-demydiuk) in [https://github.com/plouc/nivo/pull/2509](https://togithub.com/plouc/nivo/pull/2509) - chore: upgrade d3-color and d3-scale-chromatic by [@​icco](https://togithub.com/icco) in [https://github.com/plouc/nivo/pull/2466](https://togithub.com/plouc/nivo/pull/2466) - Fix: add initial property for truncateTickAt by [@​scalabw](https://togithub.com/scalabw) in [https://github.com/plouc/nivo/pull/2504](https://togithub.com/plouc/nivo/pull/2504) - fix tooltip default color by [@​scalabw](https://togithub.com/scalabw) in [https://github.com/plouc/nivo/pull/2521](https://togithub.com/plouc/nivo/pull/2521) - Touch crosshair for line graphs by [@​WilliamABradley](https://togithub.com/WilliamABradley) in [https://github.com/plouc/nivo/pull/2524](https://togithub.com/plouc/nivo/pull/2524) - fix(marimekko): use readonly arrays for props as the library does not modify them by [@​pcorpet](https://togithub.com/pcorpet) in [https://github.com/plouc/nivo/pull/2493](https://togithub.com/plouc/nivo/pull/2493) - fix(line): use readonly arrays for props as the library does not modify them by [@​pcorpet](https://togithub.com/pcorpet) in [https://github.com/plouc/nivo/pull/2494](https://togithub.com/plouc/nivo/pull/2494) - Fix (peer) dependencies by [@​marvinruder](https://togithub.com/marvinruder) in [https://github.com/plouc/nivo/pull/2528](https://togithub.com/plouc/nivo/pull/2528) #### New Contributors - [@​andre19980](https://togithub.com/andre19980) made their first contribution in [https://github.com/plouc/nivo/pull/2452](https://togithub.com/plouc/nivo/pull/2452) - [@​stas-demydiuk](https://togithub.com/stas-demydiuk) made their first contribution in [https://github.com/plouc/nivo/pull/2509](https://togithub.com/plouc/nivo/pull/2509) - [@​icco](https://togithub.com/icco) made their first contribution in [https://github.com/plouc/nivo/pull/2466](https://togithub.com/plouc/nivo/pull/2466) - [@​scalabw](https://togithub.com/scalabw) made their first contribution in [https://github.com/plouc/nivo/pull/2504](https://togithub.com/plouc/nivo/pull/2504) - [@​WilliamABradley](https://togithub.com/WilliamABradley) made their first contribution in [https://github.com/plouc/nivo/pull/2524](https://togithub.com/plouc/nivo/pull/2524) - [@​marvinruder](https://togithub.com/marvinruder) made their first contribution in [https://github.com/plouc/nivo/pull/2528](https://togithub.com/plouc/nivo/pull/2528) **Full Changelog**: plouc/nivo@v0.84.0...v0.85.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 4am on the first day of the month" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/sebald/pattern-analyzer). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMzAuMCIsInVwZGF0ZWRJblZlciI6IjM3LjIzMC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
prop-types
as a dependency of@nivo/core
(as recommended in their README)react
as a peer dependency of@nivo/tooltip
pnpm
Fixes #2401