Описание package.json для Apache Superset
Введение в package.json
package.json в проекте Apache Superset представляет собой файл конфигурации для управления зависимостями и сценариями сборки и разработки.
- name: Указывает имя пакета (проекта) – «superset».
- version: Определяет версию пакета – «0.0.0-dev».
- description: Содержит краткое описание проекта – «Superset is a data exploration platform designed to be visual, intuitive, and interactive.»
- keywords: Перечисляет ключевые слова, связанные с проектом.
- homepage: Ссылка на домашнюю страницу проекта.
- bugs: Содержит информацию о местоположении баг-трекера проекта.
- repository: Содержит информацию о репозитории проекта, включая тип и URL.
- license: Указывает лицензию, согласно которой распространяется проект – «Apache-2.0».
- scripts: Определяет пользовательские команды для сборки, тестирования и других задач разработки.
- dependencies: Содержит зависимости, необходимые для запуска проекта.
- devDependencies: Здесь перечислены зависимости, необходимые только для разработки и тестирования.
- engines: Указывает требуемые версии Node.js и npm для корректной работы проекта.
- overrides: В этом разделе можно указать, какие зависимости имеют отличные версии для разных частей проекта.
- scarfSettings: Содержит настройки инструмента Scarf, используемого для анализа использования пакетов в проекте.
- _id: Внутренний идентификатор пакета.
package.json в Apache Superset важен для управления зависимостями, сборкой, тестированием и другими аспектами разработки UI.
Описание раздела scripts в файле package.json
Этот раздел scripts в файле package.json определяет пользовательские команды, которые можно запустить с помощью npm run в вашем проекте. Вот описание каждой строки:
- _lint: Этот скрипт использует ESLint для проверки синтаксиса и стиля кода в файлах JavaScript и TypeScript, исключая файлы, указанные в .eslintignore.
- _prettier: Этот скрипт использует Prettier для форматирования файлов в соответствии с правилами стиля. Он форматирует файлы с расширениями .js, .jsx, .ts, .tsx, .css, .less, .scss, .sass, и также файл package.json.
- build: Этот скрипт используется для сборки проекта в режиме production с использованием Webpack. Он устанавливает некоторые переменные окружения, чтобы оптимизировать производительность сборки.
- build-dev: Этот скрипт используется для сборки проекта в режиме development с использованием Webpack.
- build-instrumented: Этот скрипт также используется для сборки проекта в режиме production, но с активированным инструментированием для сборки.
- build-storybook: Этот скрипт запускает сборку проекта Storybook.
- check-translation: Этот скрипт использует Prettier для проверки форматирования файлов перевода в проекте.
- chromatic: Этот скрипт запускает инструмент Chromatic для тестирования компонентов и их визуализации. Он пропускает изменения в зависимостях, начинающихся с ‘dependabot/’.
- clean-translation: Этот скрипт использует Prettier для форматирования файлов перевода в проекте.
- core:cover: Этот скрипт запускает Jest в режиме покрытия кода тестами, с применением заданных порогов покрытия.
- cover: Этот скрипт также запускает Jest для измерения покрытия кода тестами, но без указания порогов.
- dev: Этот скрипт запускает Webpack в режиме development с возможностью наблюдения за изменениями файлов.
- dev-server: Этот скрипт используется для запуска Webpack Dev Server в режиме development.
- format: Этот скрипт использует Prettier для форматирования файлов и автоматического исправления стилей кода.
- lint: Этот скрипт объединяет _lint и type, выполняя проверку синтаксиса кода и проверку типов TypeScript.
- lint-fix: Этот скрипт также объединяет _lint и type, но также исправляет обнаруженные проблемы.
- plugins:build: Этот скрипт выполняет сборку плагинов с помощью собственного скрипта build.js.
- plugins:build-assets: Этот скрипт копирует активы для плагинов с использованием скрипта copyAssets.js.
- plugins:build-storybook: Этот скрипт используется для сборки Storybook внутри плагина superset-ui-demo.
- plugins:chromatic: Этот скрипт используется для запуска Chromatic внутри плагина superset-ui-demo.
- plugins:create-conventional-version: Этот скрипт используется для создания новой версии плагинов на основе конвенций и выпуска на GitHub.
- plugins:create-minor-version: Этот скрипт используется для создания новой минорной версии плагинов.
- plugins:create-patch-version: Этот скрипт используется для создания новой версии плагинов с исправлениями.
- plugins:release-conventional: Этот скрипт используется для выпуска плагинов на основе конвенций с публикацией на GitHub.
- plugins:release-from-tag: Этот скрипт используется для выпуска плагинов из уже существующего тега.
- plugins:storybook: Этот скрипт запускает Storybook внутри плагина superset-ui-demo.
- prettier: Этот скрипт используется для форматирования файлов и автоматического исправления стилей кода.
- prettier-check: Этот скрипт использует Prettier для проверки форматирования файлов, но не вносит изменений.
- prod: Этот скрипт выполняет сборку проекта в режиме production.
- prune: Этот скрипт удаляет некоторые файлы и директории, связанные с плагинами.
- storybook: Этот скрипт запускает Storybook в режиме development.
- tdd: Этот скрипт запускает Jest в режиме наблюдения за изменениями и автоматического запуска тестов.
- test: Этот скрипт запускает Jest для выполнения тестов.
- type: Этот скрипт используется для проверки типов с использованием TypeScript.
Источник: Блог superset-bi




