1.0.1 • Published 4 months ago

inno-dependency-resolver v1.0.1

Weekly downloads
-
License
MIT
Repository
-
Last release
4 months ago

Overview

This package provides a set of utilities for analyzing and managing dependencies in a Node.js project. It includes functions for analyzing the dependency tree, detecting circular dependencies and conflicts, suggesting resolutions, implementing resolutions, and checking for unused dependencies.

Installation

To use this package, you need to install it via npm:

npm install --save package-name

Usage

  • analyzeDependencyTree
const packageName = require('package-name');

packageName.analyzeDependencyTree()
    .then((tree) => {
        // Use the dependency tree as needed
    })
    .catch((error) => {
        console.error(error);
    });
  • suggestResolutions
const packageName = require('package-name');

const resolutions = packageName.suggestResolutions(tree);
// Use resolutions object as needed
  • implementResolutions

const packageName = require('package-name'); const resolutions = { /* your resolutions object */ }; packageName.implementResolutions(resolutions);

  • checkUnusedDependencies const packageName = require('package-name'); packageName.checkUnusedDependencies();

Tests

Tests for this package are included in the tests directory. To run the tests, use the following command:

npm test

How it Works

This package utilizes the read-package-tree, semver, and depcheck libraries to perform various analyses on the project's dependencies. It can detect circular dependencies, conflicts, and suggest resolutions to ensure package versions are compatible. Additionally, it checks for unused dependencies.

Real-World Problems Solved

  • Dependency Management: Helps in managing and resolving conflicts in project dependencies.
  • Circular Dependency Detection: Identifies circular dependencies, allowing for early detection and resolution.
  • Unused Dependency Detection: Flags unused dependencies, aiding in reducing the project's footprint.
  • Automated Resolution Implementation: Provides a mechanism to automatically implement suggested resolutions.

Tests

To run the tests mocha test/index.test.js