Monoreposi, Typescript, tranzitivne ovisnosti i upravitelji paketa (pnpm)

Dakle, upravo sam pokrenuo monorepo koristeći rush (pnpm).

Imam biblioteku pod nazivom web-commons koja ima ovisnosti fastify i druge.

Imam backend aplikaciju pod nazivom my-app.

Želim koristiti određene fastify tipove i module u my-app, ali ih ne mogu uvesti.

Kako mogu napraviti da web-commons ovisnosti budu uključene u my-app ovisnosti tranzitivno?

Znam da je dio problema

Čitaj više →

pnpm privatni paketi radnog prostora napisani u TypeScriptu: izložiti src ili dist?

Imam monorepo koji se uglavnom sastoji od TypeScript koda kojim upravljam pomoću pnpm-a, i imamo mnogo ovisnosti između paketa unutar radnog prostora (npr. za knjižničke pakete). Ti su paketi privatni za ovaj radni prostor i nikada se sami ne objavljuju. Obično definiramo paket na sljedeći način:

{ "name": "my-library", "license": "UNLICENSED", "private": true, "main": "dist/index.js", "types&qu

Čitaj više →

docker - Dockerizirajte Typescript MERN monorepo koji koristi pnpm workspaces

Imam projekt s sljedećom strukturom mapa, to je TypeScript monorepo koji ima dvije aplikacije (client i api) i zajedničku biblioteku (shared), tako da i backend i frontend ovise o zajedničkoj biblioteci. I želim dockerizirati ovaj projekt.

my-monorepo/ |-- api/ | |-- src/ | |-- package.json | |-- tsconfig.json | | |-- client/ | |-- src/ | |-- package.json | |-- tsconfig.json | | |-- shared/ | |-- src/ | |-- package.json | |-- tsconfig.json | |-- package.js

Čitaj više →

material ui - Zašto TypeScript prijavljuje grešku kada koristim pnpm?

Pokušavam migrirati s yarn na pnpm, ali naišao sam na mali problem i nisam siguran kako dalje. Još nisam pokušao mijenjati postavke oko hoistinga (radije ne bih ako je moguće), ali pokušavam shvatiti zašto mi ovo stvara problem.

Imam malu pomoćnu funkciju koja radi dobro kada koristim yarn:

Čitaj više →

typescript - Kako automatski pokrenuti izgradnju paketa prilikom korištenja pnpm install?

Naš projekt koristi pnpm + workspace + typescript u skladu s monorepo standardom. Nakon što kloniramo repozitorij, pokrećemo pnpm install kako bismo instalirali ovisnosti i povezali lokalne pakete međusobno. No, kod unutar svakog paketa i dalje ostaje u izvornom obliku u .ts datotekama. Kako automatski pokrenuti pnpm run build za svaki paket kako bi unutar paketa bio dist folder prilikom prvog korištenja pnpm install.

Čitaj više →

node.js - Korištenje Prisma Sheme u PNPM monorepu s NestJS uzrokovalo ESM probleme

Kreirao sam PNPM monorepo koji ima dvije NestJS aplikacije (apps/api i apps/backend; obje su potpuno iste) i jedan Prisma paket baze podataka (packages/database). Kada pokrenem api pomoću start:dev, dobijem sljedeću pogrešku:

(node:69498) Warning: To load an ES mod

Čitaj više →

Greške pri kompajliranju Typescripta prilikom izgradnje Angulara s SSR + pnpm + preserveSymlinks

Imao sam Angular aplikaciju koja se pravilno gradila. Jedini čudni detalji ove aplikacije su da ima preserveSymlinks: true u angular.json i lokalnu biblioteku instaliranu za razvoj koristeći link: protokol u package.

Čitaj više →

Funkcionalna postavka za pnpm monorepo s typescript, vite i rollup

Gradim monorepo koristeći pnpm workspaces i imam problema da ga natjeram da radi. Koristi typescript, vite na frontendovima, rollup u backend mikroservisima.

Ovdje je postavka:

package.json <== all dependencies reside here tsconfig.json pnpm-workspaces.yaml - commonlib/ package.json, tsconfig.json, rollup.config.js src/ ...interfaces, types etc--- - serverlib/ package.json, tsconfig.json, rollup.config.js src/

Čitaj više →

reactjs - Vite s PNPM-om ne uspijeva zbog analize uvoza na `node_modules/.pnpm` paketu

Korištenje PNPM-a i Vite-a u monorepu rezultira sljedećim problemom, nemam pojma što za vraga ova [email protected]_@[email protected] jesu, vjerojatno neka čudnost PNPM-a. Postoji li način da se onemogući ova provjera biblioteka?

9

Čitaj više →

node.js - Zašto PNPM označava moj paket s "version: link:" nakon naredbe "pnpm install ..."?

Imam paket koji je objavljen na NPM-u. U ovom paketu koristio sam isti paket kao jednu od njegovih ovisnosti, https://github.com/tal-rofe/cz-vinyl

Dakle, kao što možete vidjeti, naziv paketa je cz-vinyl, s najnovijom verzijom 2.5.0. Najvažnije, moja datoteka package.json uključuje: "cz-vinyl": "2.5.0", tako da koristim paket kao ovisnost.

U paketu izvozim neke TypeScript tipove u njegovoj dato

Čitaj više →