Milligram: Удалите свойство двигателей из package.json

Созданный на 10 июн. 2020  ·  10Комментарии  ·  Источник: milligram/milligram

Имеет ли значение версия узла?

awaiting reply

Самый полезный комментарий

@davidroeca @westtrade ,

Я знаю, что у нас есть 2 отличных примера, и, как я понимаю, в первом примере используется версия до LTS, а во втором примере используется версия после LTS, и оба примера затронуты.

Во-первых, я хотел бы знать, происходит ли такое же поведение при использовании Yarn и Npm.

Кроме того, такое же поведение происходит при использовании или установке Milligram v1.4.0 и v1.3.0 (последние версии)?

В моем случае он просто не устанавливается, и NPM выдает ошибку, которую я написал в заголовке. У вас замечательный фреймворк, но странно, что для стилевого фреймворка требуется версия интерпретатора сервера. Разве стили браузера не работали бы без интерпретатора сервера?

Все 10 Комментарий

@westtrade Milligram был обновлен до LTS-версии Node.js, поскольку настоятельно рекомендуется поддерживать все зависимости в актуальном состоянии.

Объясните, пожалуйста, зачем Миллиграмме Node.js v11?

Просто наткнулся на этот вопрос сам. В настоящее время на узле 14, на переднем крае, и с использованием svelte , который также находится на переднем крае. Как пользователю немного странно, что фреймворк только для css сообщает мне, на каком движке узла я должен работать. Я предполагаю, что этот флаг движка более полезен для разработчиков самого milligram ?

Простой способ решения этой проблемы в yarn - yarn add --ignore-engines milligram , и сообщить всем, кто клонирует ваше репо в yarn install --frozen-lockfile --ignore-engines а не только в yarn install --frozen-lockfile . Однако это не идеально, учитывая, что все, что я импортирую, - это css.

@davidroeca Да. Версия Node.js определена, потому что она требуется для среды разработки Milligram. Кроме того, настоятельно рекомендуется поддерживать все зависимости в актуальном состоянии. В этом случае Milligram использует LTS-версию (v12) Node.js.

Итак, позвольте мне лучше понять, что происходит, и, возможно, мы сможем помочь улучшить это.

@cjpatoilo Я согласен, что лучше держать пакеты в актуальном состоянии. Я на самом деле более актуален, чем v12. Моя проблема немного отличается от проблемы @westtrade , потому что мою можно решить, переключив требование каретки двигателя на >= чтобы также разрешить будущие версии узлов:

  "engines": {
-    "node": "^12.17.0",
+    "node": ">=12.17.0",
    "npm": "^6.14.5"
  },

Аналогичное обсуждение имело место в репозитории начальной загрузки . Они решили полностью удалить поле двигателей, потому что эти конкретные механизмы необходимы только для создания папки dist/ которую используют пользователи. Это происходит на этапе сборки, поэтому мне на самом деле не нужно ничего, связанного с JS, для загрузки этих файлов.

С точки зрения разработки в этом репо, достаточно ли в этом отношении примечания в README, в котором указывается поддерживаемая версия узла + среда CI с закрепленной версией узла?

@westtrade @davidroeca сейчас я удалю engine из package.json

@davidroeca @westtrade ,

Я знаю, что у нас есть 2 отличных примера, и, как я понимаю, в первом примере используется версия до LTS, а во втором примере используется версия после LTS, и оба примера затронуты.

Во-первых, я хотел бы знать, происходит ли такое же поведение при использовании Yarn и Npm.

Кроме того, такое же поведение происходит при использовании или установке Milligram v1.4.0 и v1.3.0 (последние версии)?

С npm я получаю следующие предупреждения:

❯ node --version
v14.4.0
❯ npm --version
6.14.5
❯ npm install --save milligram
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN notsup Unsupported engine for [email protected]: wanted: {"node":"^12.17.0","npm":"^6.14.5"} (current: {"node":"14.4.0","npm":"6.14.5"})
npm WARN notsup Not compatible with your version of node/npm: [email protected]
+ [email protected]
added 2 packages from 1 contributor and audited 2 packages in 1.581s
found 0 vulnerabilities

С пряжей это ошибка:

❯ node --version
v14.4.0
❯ yarn --version
1.22.4
❯ yarn add milligram
yarn add v1.22.4
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
error [email protected]: The engine "node" is incompatible with this module. Expected version "^12.17.0". Got "14.4.0"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.

Спускаемся к 12.8.0

❯ node --version
v12.18.0
❯ npm --version
6.14.5
❯ npm install --save milligram
npm notice created a lockfile as package-lock.json. You should commit this file.
+ [email protected]
added 2 packages from 1 contributor and audited 2 packages in 0.876s
found 0 vulnerabilities

Пряжа:

❯ yarn --version
1.22.4
❯ yarn add milligram
yarn add v1.22.4
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Saved lockfile.
success Saved 2 new dependencies.
info Direct dependencies
└─ [email protected]
info All dependencies
├─ [email protected]
└─ [email protected]
Done in 0.34s.

С milligram@~1.3.0 я могу без проблем использовать последнюю версию nodejs:

❯ node --version
v14.4.0
❯ yarn add milligram@~1.3.0
yarn add v1.22.4
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Saved lockfile.
success Saved 2 new dependencies.
info Direct dependencies
└─ [email protected]
info All dependencies
├─ [email protected]
└─ [email protected]
Done in 1.47s.

@davidroeca @westtrade ,

Я знаю, что у нас есть 2 отличных примера, и, как я понимаю, в первом примере используется версия до LTS, а во втором примере используется версия после LTS, и оба примера затронуты.

Во-первых, я хотел бы знать, происходит ли такое же поведение при использовании Yarn и Npm.

Кроме того, такое же поведение происходит при использовании или установке Milligram v1.4.0 и v1.3.0 (последние версии)?

В моем случае он просто не устанавливается, и NPM выдает ошибку, которую я написал в заголовке. У вас замечательный фреймворк, но странно, что для стилевого фреймворка требуется версия интерпретатора сервера. Разве стили браузера не работали бы без интерпретатора сервера?

@davidroeca @westtrade спасибо, что объяснили мне.
Я буду отслеживать эту проблему и, возможно, найду лучший подход.

А пока я закрою этот выпуск и объединю PR # 253.
Пожалуйста, не стесняйтесь открывать этот выпуск повторно или открывать новый.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

garretwilson picture garretwilson  ·  18Комментарии

fooksupachai picture fooksupachai  ·  5Комментарии

luisaceituno picture luisaceituno  ·  6Комментарии

neronmoon picture neronmoon  ·  4Комментарии

roryprimrose picture roryprimrose  ·  7Комментарии