Організація монорепозиторію

Sych Yaroslav
2026-01-27T16:43:32+02:00

Маю декілька застосунків на UnityBase, які використовують спільні моделі.

Хочу організувати монорепозиторій де кожен застосунок знаходиться в окремій папці але використовує спільний node_modules в корені проекту. Відповідно структура проекту:

myApp/package.json

"dependencies": {
    "@unitybase/ub": "^5.25.63"

myApp/ubConfig.json:

"application": {
    "domain": {
      "models": [
        { "path": "../node_modules/@unitybase/ub" }
      ]
    },

package.json

"dependencies": {
    "@unitybase/ub": "^5.25.63",
  },
  "workspaces": [
    "myApp"
  ]

Очікується що myApp буде підтягувати @unitybase/ub з кореневого/спільного node_modules.

Але в процесі ініціалізації myApp маємо помилку:

20260124 09063230  " srvr       Start application initialization...
20260124 09063232  " EXC        EMetabaseException This version of UB server requires @unitybase/ub model version to be >= 5.4 [] at 01000db608
20260124 09063232  " ERROR      GET init ERROR=500 (This version of UB server requires @unitybase/ub model version to be >= 5.4)
20260124 09063232  ! ERROR Errors inside initialization process
20260124 09063232  ! EXC   EMetabaseException Failed to start - exception during initialization [] at 01001cece9
20260124 09063232  ! EXC   D:\\_SL\\mmis-apps\\node_modules\\@unitybase\\base\\argv.js:156

Хоча, наскільки я зрозумів то версії 5.4 в принципі не існує.

Питання:

1. що мені потрібно написати в секції "application / domain / models / path" щоб @unitybase/ub підтягувався із спільного node_modules?

2. чи можливо в секції "application / domain / models" вказувати назву пакету а не шлях ? (наприклад тут https://git-pub.intecracy.com/unitybase/ubjs/-/blob/82721cd62f46bd4798d48ebb98f2e11f8a39414f/apps/notify-example/ubConfig.json зустрічається ключ "name" для моделі)