Skip to content

Better CI System #181

@black7375

Description

@black7375

Distributed CI execution

It is divided into three parts.

  1. Can be checked without building
    • Package constraints: Immutable, Peer Deps
    • Lint: Lint and formatting
  2. Type Checking: Type checking requires some build. But you don't have to build everything.
    • Build for ESM only using tsc --build
    • Use options like emitDeclarationOnly and incremental
  3. Build
    • For CI, we only test with ESM.
    • After checking if Type creation is not necessary, apply. If Type creation is found to be necessary, tasks 2 and 3 are combined.
    • Run tests based on build results. Not this time, but later we may try test sharding as well.

Caching

Leverage caching more aggressively with ESLint, Typescript, Vite, Turbo, etc.
The goal is to have caching in a single directory.

  • ./.cache/
    • eslint
    • prettier/
    • typescript/
    • vite
    • turbo

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

Backlog

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions