superset/superset-frontend/temporary_superset_ui/superset-ui/CONTRIBUTING.md
Krist Wongsuphasawat 97f18e686b build: migrate build tool to nimbus (#281)
* build: migrate to nimbus

* build: update gitignore

* build: update package.json

* build: update travis config

* build: lower engine requirements

* build: adjust typescript config

* fix: errors

* fix: change yarn run to yarn

* fix: lint

(cherry picked from commit 22328c349c9b987eecc5e46fb306e459b6a9cadc)

* fix: eslint rules

* fix: lint

* fix: setup file

* fix: more lint

* fix: lint - pass build and lint

* fix: test setup and babel transform runtime

(cherry picked from commit dd55fd88ced045a8f83ca771705721bf2f930ff0)

* fix: timeout issues

* fix: some broken test due to jest.setTimeout

* fix: computeMaxFontSize tests

* fix: createLoadableRenderer test

* fix: loadble and broken tests due to warnings

* fix: test coverage

* fix: coverage of generator tests

* fix: all unit tests pass

* fix: remove yeutech-lab/react-loadable
2021-11-26 11:45:00 +08:00

1.8 KiB

Contributing guidelines

Setup local development

  1. clone this repo
  2. have yarn install package dependencies and manage the symlinking between packages for you
git clone ...superset-ui && cd superset-ui
yarn install
yarn build

File organization

lerna and yarn are used to manage versions and dependencies between packages in this monorepo.

superset-ui/
  lerna.json
  package.json
  ...
  packages/
    package1/
      package.json
      ...
      src/
      test/  # unit tests
      types/ # typescript type declarations
      ...
      lib/   # commonjs output
      esm/   # es module output
      ...
    ...

Builds, linting, and testing

Each package defines its own build config, linting, and testing. You can have lerna run commands across all packages using the syntax yarn run test (or yarn run test:watch for watch mode) from the root @superset-ui directory.

Committing

This repository follows conventional commits guideline for commit messages and has a commitlint hook which will require you to have the valid commit message before committing. You can use npm run commit to help you create a commit message.

Publishing

Prerequisite: You'll need an npmjs.com account that is part of the superset-ui organization.

  1. Make sure you're logged in to NPM from your shell. Run npm login if necessary.
  2. To make the release, run yarn run release and follow the prompts.