Socket
Socket
Sign inDemoInstall

@changesets/get-dependents-graph

Package Overview
Dependencies
55
Maintainers
4
Versions
21
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 2.0.0 to 2.1.0

6

CHANGELOG.md
# @changesets/get-dependents-graph
## 2.1.0
### Minor Changes
- [#1370](https://github.com/changesets/changesets/pull/1370) [`5e9d33a`](https://github.com/changesets/changesets/commit/5e9d33a2e659abdcf26f204a76a9465cf4b26d6b) Thanks [@Andarist](https://github.com/Andarist)! - Added a new `ignoreDevDependencies` option
## 2.0.0

@@ -4,0 +10,0 @@

17

dist/changesets-get-dependents-graph.cjs.js

@@ -16,3 +16,3 @@ 'use strict';

const getAllDependencies = config => {
const getAllDependencies = (config, ignoreDevDependencies) => {
const allDependencies = new Map();

@@ -27,3 +27,3 @@

if ((depRange.startsWith("link:") || depRange.startsWith("file:")) && type === "devDependencies") {
if (type === "devDependencies" && (ignoreDevDependencies || depRange.startsWith("link:") || depRange.startsWith("file:"))) {
continue;

@@ -53,3 +53,6 @@ }

function getDependencyGraph(packages, opts) {
function getDependencyGraph(packages, {
ignoreDevDependencies = false,
bumpVersionsWithWorkspaceProtocolOnly = false
} = {}) {
const graph = new Map();

@@ -72,3 +75,3 @@ let valid = true;

const dependencies = [];
const allDependencies = getAllDependencies(pkg.packageJson);
const allDependencies = getAllDependencies(pkg.packageJson, ignoreDevDependencies);

@@ -88,3 +91,3 @@ for (let [depName, depRange] of allDependencies) {

}
} else if ((opts === null || opts === void 0 ? void 0 : opts.bumpVersionsWithWorkspaceProtocolOnly) === true) {
} else if (bumpVersionsWithWorkspaceProtocolOnly) {
continue;

@@ -126,5 +129,3 @@ }

graph: dependencyGraph
} = getDependencyGraph(packages, {
bumpVersionsWithWorkspaceProtocolOnly: (opts === null || opts === void 0 ? void 0 : opts.bumpVersionsWithWorkspaceProtocolOnly) === true
});
} = getDependencyGraph(packages, opts);
const dependentsLookup = {};

@@ -131,0 +132,0 @@ packages.packages.forEach(pkg => {

@@ -7,3 +7,3 @@ import Range from 'semver/classes/range';

const getAllDependencies = config => {
const getAllDependencies = (config, ignoreDevDependencies) => {
const allDependencies = new Map();

@@ -18,3 +18,3 @@

if ((depRange.startsWith("link:") || depRange.startsWith("file:")) && type === "devDependencies") {
if (type === "devDependencies" && (ignoreDevDependencies || depRange.startsWith("link:") || depRange.startsWith("file:"))) {
continue;

@@ -44,3 +44,6 @@ }

function getDependencyGraph(packages, opts) {
function getDependencyGraph(packages, {
ignoreDevDependencies = false,
bumpVersionsWithWorkspaceProtocolOnly = false
} = {}) {
const graph = new Map();

@@ -63,3 +66,3 @@ let valid = true;

const dependencies = [];
const allDependencies = getAllDependencies(pkg.packageJson);
const allDependencies = getAllDependencies(pkg.packageJson, ignoreDevDependencies);

@@ -79,3 +82,3 @@ for (let [depName, depRange] of allDependencies) {

}
} else if ((opts === null || opts === void 0 ? void 0 : opts.bumpVersionsWithWorkspaceProtocolOnly) === true) {
} else if (bumpVersionsWithWorkspaceProtocolOnly) {
continue;

@@ -117,5 +120,3 @@ }

graph: dependencyGraph
} = getDependencyGraph(packages, {
bumpVersionsWithWorkspaceProtocolOnly: (opts === null || opts === void 0 ? void 0 : opts.bumpVersionsWithWorkspaceProtocolOnly) === true
});
} = getDependencyGraph(packages, opts);
const dependentsLookup = {};

@@ -122,0 +123,0 @@ packages.packages.forEach(pkg => {

import { Packages } from "@manypkg/get-packages";
export declare function getDependentsGraph(packages: Packages, opts?: {
ignoreDevDependencies?: boolean;
bumpVersionsWithWorkspaceProtocolOnly?: boolean;
}): Map<string, string[]>;
{
"name": "@changesets/get-dependents-graph",
"version": "2.0.0",
"version": "2.1.0",
"description": "Get the graph of dependents in a monorepo",

@@ -5,0 +5,0 @@ "main": "dist/changesets-get-dependents-graph.cjs.js",

@@ -14,3 +14,6 @@ // This is a modified version of the graph-getting in bolt

const getAllDependencies = (config: PackageJSON) => {
const getAllDependencies = (
config: PackageJSON,
ignoreDevDependencies: boolean
) => {
const allDependencies = new Map<string, string>();

@@ -25,4 +28,6 @@

if (
(depRange.startsWith("link:") || depRange.startsWith("file:")) &&
type === "devDependencies"
type === "devDependencies" &&
(ignoreDevDependencies ||
depRange.startsWith("link:") ||
depRange.startsWith("file:"))
) {

@@ -55,5 +60,9 @@ continue;

packages: Packages,
opts?: {
{
ignoreDevDependencies = false,
bumpVersionsWithWorkspaceProtocolOnly = false,
}: {
ignoreDevDependencies?: boolean;
bumpVersionsWithWorkspaceProtocolOnly?: boolean;
}
} = {}
): {

@@ -83,3 +92,6 @@ graph: Map<string, { pkg: Package; dependencies: Array<string> }>;

const dependencies = [];
const allDependencies = getAllDependencies(pkg.packageJson);
const allDependencies = getAllDependencies(
pkg.packageJson,
ignoreDevDependencies
);

@@ -100,3 +112,3 @@ for (let [depName, depRange] of allDependencies) {

}
} else if (opts?.bumpVersionsWithWorkspaceProtocolOnly === true) {
} else if (bumpVersionsWithWorkspaceProtocolOnly) {
continue;

@@ -103,0 +115,0 @@ }

@@ -6,10 +6,10 @@ import { Packages, Package } from "@manypkg/get-packages";

packages: Packages,
opts?: { bumpVersionsWithWorkspaceProtocolOnly?: boolean }
opts?: {
ignoreDevDependencies?: boolean;
bumpVersionsWithWorkspaceProtocolOnly?: boolean;
}
) {
const graph: Map<string, { pkg: Package; dependents: string[] }> = new Map();
const { graph: dependencyGraph } = getDependencyGraph(packages, {
bumpVersionsWithWorkspaceProtocolOnly:
opts?.bumpVersionsWithWorkspaceProtocolOnly === true,
});
const { graph: dependencyGraph } = getDependencyGraph(packages, opts);

@@ -16,0 +16,0 @@ const dependentsLookup: {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc