Накопительный пакет зависает при сборке

У меня есть следующая конфигурация накопителя:

// @ts-check
import multiInput from "rollup-plugin-multi-input";
import typeScript from "rollup-plugin-typescript2";

export default [
  {
    input: "packages/**/*.tsx",
    output: {
      format: "esm",
      dir: ".registry/js"
    },
    plugins: [
      multiInput(),
      typeScript({
        tsconfig: "tsconfig.react.json"
      })
    ]
  },
  {
    input: "packages/etech-ui-utils/src/index.ts",
    output: {
      format: "esm",
      dir: "packages/etech-ui-utils/dist"
    },
    plugins: [
      multiInput(),
      typeScript({
        tsconfig: "tsconfig.lib.json"
      })
    ]
  }
];

Когда я запускаю rollup -c, первая конфигурация работает без проблем. Затем команда зависает. Вот соответствующие части моего package.json:

{
    "rollup": "^4.20.0",
    "rollup-plugin-multi-input": "^1.4.2",
    "rollup-plugin-swc3": "^0.11.2",
    "rollup-plugin-typescript2": "^0.36.0",
    "rollup-preserve-directives": "^1.1.1",
    "storybook": "^8.2.5",
    "swc-loader": "0.1.15",
}

Я не получаю ошибок ни в журналах, ни по другим причинам. Я пытался:

  • Обновление зависимостей
  • Использование pnpx для запуска

Вот некоторая системная среда:

Система:

OS: macOS 14.6
CPU: (12) arm64 Apple M2 Max
Memory: 3.57 GB / 32.00 GB
Shell: 5.9 - /bin/zsh

Двоичные файлы:

Node: 22.5.1 - /opt/homebrew/bin/node
npm: 10.8.2 - /opt/homebrew/bin/npm
pnpm: 9.6.0 - /opt/homebrew/bin/pnpm

Менеджеры:

Cargo: 1.78.0 - ~/.cargo/bin/cargo
Homebrew: 4.3.12 - /opt/homebrew/bin/brew
pip3: 24.0 - /opt/homebrew/bin/pip3
RubyGems: 3.0.3.1 - /usr/bin/gem

Утилиты:

Make: 3.81 - /usr/bin/make
GCC: 15.0.0 - /usr/bin/gcc
Git: 2.39.3 - /usr/bin/git
Clang: 15.0.0 - /usr/bin/clang
FFmpeg: 7.0.1 - /opt/homebrew/bin/ffmpeg
Curl: 8.7.1 - /usr/bin/curl
OpenSSL: 3.3.1 - /opt/homebrew/bin/openssl

Серверы:

Apache: 2.4.59 - /usr/sbin/apachectl

Виртуализация: Докер: 27.0.3 — /usr/local/bin/docker Параллели: 19.3.0 — /usr/local/bin/prlctl SDK:

iOS SDK:
  Platforms: DriverKit 23.5, iOS 17.5, macOS 14.5, tvOS 17.5, visionOS 1.2, watchOS 10.5

Иды:

VSCode: 1.92.0 - /usr/local/bin/code
Vim: 9.0 - /usr/bin/vim
Xcode: 15.4/15F31d - /usr/bin/xcodebuild

Языки:

Bash: 3.2.57 - /bin/bash
Java: 21.0.2 - /usr/bin/javac
Perl: 5.34.1 - /usr/bin/perl
Python3: 3.12.4 - /opt/homebrew/bin/python3
Ruby: 2.6.10 - /usr/bin/ruby
Rust: 1.78.0 - /Users/ekrich/.cargo/bin/rustc

Базы данных:

SQLite: 3.43.2 - /usr/bin/sqlite3

Браузеры:

Safari: 17.6

Это ошибка? Что я могу сделать, чтобы это исправить?

После некоторого зависания команды я получаю сообщение об ошибке:

<--- Last few GCs --->

[38081:0x130008000]   426442 ms: Mark-Compact 8086.7 (8238.1) -> 8072.4 (8239.1) MB, pooled: 0 MB, 1576.38 / 0.00 ms  (average mu = 0.086, current mu = 0.054) allocation failure; scavenge might not succeed
[38081:0x130008000]   429408 ms: Mark-Compact 8088.2 (8239.1) -> 8073.7 (8240.1) MB, pooled: 0 MB, 2881.38 / 0.00 ms  (average mu = 0.050, current mu = 0.029) allocation failure; scavenge might not succeed


<--- JS stacktrace --->

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
----- Native stack trace -----

 1: 0x1027fff54 node::OOMErrorHandler(char const*, v8::OOMDetails const&) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
 2: 0x10299e134 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, v8::OOMDetails const&) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
 3: 0x10299e0e8 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, v8::OOMDetails const&) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
 4: 0x102b47094 v8::internal::Heap::CallGCPrologueCallbacks(v8::GCType, v8::GCCallbackFlags, v8::internal::GCTracer::Scope::ScopeId) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
 5: 0x102b48dd0 v8::internal::Heap::DevToolsTraceEventScope::~DevToolsTraceEventScope() [/opt/homebrew/Cellar/node/22.5.1/bin/node]
 6: 0x102b47748 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags)::$_8::operator()() const [/opt/homebrew/Cellar/node/22.5.1/bin/node]
 7: 0x102b473fc void heap::base::Stack::SetMarkerAndCallbackImpl<v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags)::$_8>(heap::base::Stack*, void*, void const*) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
 8: 0x102710028 PushAllRegistersAndIterateStack [/opt/homebrew/Cellar/node/22.5.1/bin/node]
 9: 0x102b45dc4 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
10: 0x102b3c3d8 v8::internal::HeapAllocator::AllocateRawWithLightRetrySlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
11: 0x102b3cb44 v8::internal::HeapAllocator::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
12: 0x102b23f8c v8::internal::Factory::NewFillerObject(int, v8::internal::AllocationAlignment, v8::internal::AllocationType, v8::internal::AllocationOrigin) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
13: 0x102e3d4ec v8::internal::Runtime_AllocateInYoungGeneration(int, unsigned long*, v8::internal::Isolate*) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
14: 0x1025f201c Builtins_WasmCEntry [/opt/homebrew/Cellar/node/22.5.1/bin/node]
15: 0x1025f2464 Builtins_StringAdd_CheckNone [/opt/homebrew/Cellar/node/22.5.1/bin/node]
16: 0x10b74c69c 
17: 0x10b6baca4 
18: 0x10b67a714 
19: 0x10b689440 
20: 0x10255cef0 Builtins_InterpreterEntryTrampoline [/opt/homebrew/Cellar/node/22.5.1/bin/node]
21: 0x10255cef0 Builtins_InterpreterEntryTrampoline [/opt/homebrew/Cellar/node/22.5.1/bin/node]
22: 0x10255cef0 Builtins_InterpreterEntryTrampoline [/opt/homebrew/Cellar/node/22.5.1/bin/node]
23: 0x10255cef0 Builtins_InterpreterEntryTrampoline [/opt/homebrew/Cellar/node/22.5.1/bin/node]
24: 0x10255cef0 Builtins_InterpreterEntryTrampoline [/opt/homebrew/Cellar/node/22.5.1/bin/node]
25: 0x10255cef0 Builtins_InterpreterEntryTrampoline [/opt/homebrew/Cellar/node/22.5.1/bin/node]
26: 0x1026207dc Builtins_ArrayMap [/opt/homebrew/Cellar/node/22.5.1/bin/node]
27: 0x10255cef0 Builtins_InterpreterEntryTrampoline [/opt/homebrew/Cellar/node/22.5.1/bin/node]
28: 0x10255cef0 Builtins_InterpreterEntryTrampoline [/opt/homebrew/Cellar/node/22.5.1/bin/node]
29: 0x10255cef0 Builtins_InterpreterEntryTrampoline [/opt/homebrew/Cellar/node/22.5.1/bin/node]
30: 0x10255cef0 Builtins_InterpreterEntryTrampoline [/opt/homebrew/Cellar/node/22.5.1/bin/node]
31: 0x102599410 Builtins_AsyncFunctionAwaitResolveClosure [/opt/homebrew/Cellar/node/22.5.1/bin/node]
32: 0x102664578 Builtins_PromiseFulfillReactionJob [/opt/homebrew/Cellar/node/22.5.1/bin/node]
33: 0x102589714 Builtins_RunMicrotasks [/opt/homebrew/Cellar/node/22.5.1/bin/node]
34: 0x10255aaf4 Builtins_JSRunMicrotasksEntry [/opt/homebrew/Cellar/node/22.5.1/bin/node]
35: 0x102ab1918 v8::internal::(anonymous namespace)::Invoke(v8::internal::Isolate*, v8::internal::(anonymous namespace)::InvokeParams const&) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
36: 0x102ab2020 v8::internal::(anonymous namespace)::InvokeWithTryCatch(v8::internal::Isolate*, v8::internal::(anonymous namespace)::InvokeParams const&) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
37: 0x102ad5828 v8::internal::MicrotaskQueue::RunMicrotasks(v8::internal::Isolate*) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
38: 0x102ad55b8 v8::internal::MicrotaskQueue::PerformCheckpointInternal(v8::Isolate*) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
39: 0x102710b90 node::InternalCallbackScope::Close() [/opt/homebrew/Cellar/node/22.5.1/bin/node]
40: 0x1028730c4 node::PerIsolatePlatformData::RunForegroundTask(std::__1::unique_ptr<v8::Task, std::__1::default_delete<v8::Task>>) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
41: 0x102872dd8 node::PerIsolatePlatformData::FlushForegroundTasksInternal() [/opt/homebrew/Cellar/node/22.5.1/bin/node]
42: 0x106b9a4a8 uv__async_io [/opt/homebrew/Cellar/libuv/1.48.0/lib/libuv.1.dylib]
43: 0x106baa164 uv__io_poll [/opt/homebrew/Cellar/libuv/1.48.0/lib/libuv.1.dylib]
44: 0x106b9a93c uv_run [/opt/homebrew/Cellar/libuv/1.48.0/lib/libuv.1.dylib]
45: 0x102711990 node::SpinEventLoopInternal(node::Environment*) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
46: 0x10284a08c node::NodeMainInstance::Run(node::ExitCode*, node::Environment*) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
47: 0x102849de0 node::NodeMainInstance::Run() [/opt/homebrew/Cellar/node/22.5.1/bin/node]
48: 0x1027bcce0 node::Start(int, char**) [/opt/homebrew/Cellar/node/22.5.1/bin/node]
49: 0x19fe2f154 start [/usr/lib/dyld]

Редактировать 2: Вот мой package.json:

{
  "name": "@etech-ui/source",
  "version": "0.0.0",
  "license": "MIT",
  "type": "module",
  "scripts": {
    "lint:check": "pnpx eslint .",
    "lint:fix": "pnpx eslint . --fix",
    "format:check": "pnpx prettier . --check",
    "format:fix": "pnpx prettier . --write",
    "language-lint": "pnpm alex",
    "test": "pnpx vitest",
    "storybook:dev": "pnpx nx run next:storybook --port 7009 & pnpx nx run vite-react:storybook --port 7008",
    "storybook:build": "pnpx nx run next:build-storybook & pnpx nx run vite-react:build-storybook",
    "build": "pnpx rollup -c && node build/buildTsx.js && node build/buildJsx.js && node build/cleanup.js",
    "docs:dev": "cd apps/docs && pnpm dev",
    "docs:build": "cd apps/docs && pnpm build",
    "prepare": "pnpx husky && husky install",
    "commitlint": "commitlint --edit"
  },
  "lint-staged": {
    "*.{js,ts,tsx,astro,mjs,cjs,spec.ts,spec.tsx}": "pnpx eslint --cache --fix",
    "*.{js,css,md,ts,tsx,astro,mjs,cjs}": "pnpx prettier --write",
    "*.{md,mdx}": "pnpm run language-lint",
    "*.js": "eslint --cache --fix",
    "*.{js,css,md}": "prettier --write"
  },
  "private": true,
  "devDependencies": {
    "@chromatic-com/storybook": "^1.6.1",
    "@commitlint/cli": "^19.3.0",
    "@commitlint/config-conventional": "^19.2.2",
    "@eslint/js": "^9.7.0",
    "@nx/js": "19.4.1",
    "@nx/rollup": "19.4.1",
    "@nx/storybook": "^19.5.1",
    "@nx/vite": "19.4.1",
    "@nx/web": "19.4.1",
    "@nx/workspace": "19.4.1",
    "@storybook/addon-essentials": "^8.2.4",
    "@storybook/addon-interactions": "^8.2.4",
    "@storybook/core-server": "^8.2.4",
    "@storybook/nextjs": "^8.2.4",
    "@storybook/react": "^8.2.4",
    "@storybook/react-vite": "^8.2.4",
    "@storybook/test": "^8.2.4",
    "@storybook/test-runner": "^0.19.1",
    "@swc-node/register": "~1.9.2",
    "@swc/cli": "~0.3.14",
    "@swc/core": "~1.5.29",
    "@swc/helpers": "~0.5.12",
    "@testing-library/react": "^16.0.0",
    "@types/eslint__js": "^8.42.3",
    "@types/node": "18.16.9",
    "@types/react": "^18.3.3",
    "@types/react-dom": "^18",
    "@vitejs/plugin-react-swc": "^3.7.0",
    "alex": "^11.0.1",
    "eslint": "^9.7.0",
    "happy-dom": "^14.12.3",
    "husky": "^9.1.1",
    "install": "^0.13.0",
    "nx": "19.4.1",
    "postcss": "^8.4.39",
    "prettier": "^2.8.8",
    "rollup": "^4.20.0",
    "rollup-plugin-multi-input": "^1.4.2",
    "rollup-plugin-typescript2": "^0.36.0",
    "storybook": "^8.2.5",
    "swc-loader": "0.1.15",
    "tailwindcss": "^3.4.6",
    "ts-node": "10.9.1",
    "tslib": "^2.6.3",
    "typescript": "~5.4.5",
    "typescript-eslint": "^7.16.1",
    "verdaccio": "^5.31.1",
    "vitest": "^2.0.3"
  },
  "nx": {
    "includedScripts": []
  },
  "dependencies": {
    "@changesets/cli": "^2.27.7",
    "eslint-plugin-react": "^7.34.4",
    "react": "^18.3.1",
    "react-dom": "^18.3.1",
    "tailwind-variants": "^0.2.1",
    "tsx-to-jsx": "^0.0.4",
    "vite": "^5.3.4"
  }
}

Ни в одном из входных каталогов не было обнаружено циклических депов.

Редактировать 3:

Начинаю думать, что это ошибка в Rollup. Я нашел файл оболочки накопителя и проследил ошибку до последней части исполнительного узла рабочего кода "$basedir/../rollup/dist/bin/rollup" "$@". При запуске получаю ошибку Error: Cannot find module '/rollup/dist/bin/rollup'

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
60
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Проблема была в пакете под названиемrollup-plugin-multi-entry. Я провел рефакторинг, чтобы удалить и устранить проблему.

Другие вопросы по теме