Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

pnpm-sync-dependencies-meta-injected

Package Overview
Dependencies
Maintainers
1
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

pnpm-sync-dependencies-meta-injected

  • 0.0.14
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
3.3K
decreased by-6.82%
Maintainers
1
Weekly downloads
 
Created
Source

pnpm-sync-dependencies-meta-injected

  • Do you use dependenciesMeta.*.injected = true?
  • Are you tired of the fight against the balance between ergonomics and "dependencies being correct"?

This package will solve all your problems!

Setup

  1. Install the dependency.

    pnpm i pnpm-sync-dependencies-meta-injected -D
    
  2. In each of your projects that declare a dependenciesMeta.*.injected = true, add a _syncPnpm script in your package.json:

    "_syncPnpm": "pnpm sync-dependencies-meta-injected"
    
  3. In each of your projects that includes _syncPnpm, re-configure your project's start command to run _syncPnpm in watch mode so that you can continually work on your injected dependencies and have updates automatically re-synced as they are built.

    "start": "concurrently 'ember serve' 'pnpm _syncPnpm --watch' --names 'tests serve,tests sync deps'",
    

    By using concurrently, we can run our dev server as well as the _syncPnpm task in watch mode in parallel.

If you use turborepo

When using turborepo, we can automatically sync the injected dependencies for all tasks defined in turbo.json

  1. In your turbo.json, configure a _syncPnpm task:

    "_syncPnpm": {
      "dependsOn": ["^build"],
      "cache": false
    },
    

    It must not have a cache, because we need to modify the .pnpm directory in the top-level node_modules folder.

  2. In your turbo.json, configure each task that relies on ^build to also rely on _syncPnpm (no ^) -- this, combined with the above will sync the hard links that pnpm uses for dependenciesMeta.*.injected after the dependencies are built.

      "test": {
        "outputs": [],
    -   "dependsOn": ["^build"]
    +   "dependsOn": ["_syncPnpm"]
      },
    
      "build": {
        "outputs": ["dist/**"],
    -   "dependsOn": ["^build"]
    +   "dependsOn": ["_syncPnpm"]
      },
    // etc
    

Debug

Add

DEBUG=sync-pnpm

before the invocation.

Example of adding to the package.json#scripts

"_syncPnpm": "DEBUG=sync-pnpm pnpm sync-dependencies-meta-injected"

Or on-the-fly:

DEBUG=sync-pnpm pnpm _syncPnpm

FAQs

Package last updated on 06 May 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

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

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc