lite: standalone?

This commit is contained in:
alex 2023-04-21 17:06:21 +01:00
parent 29ed921c67
commit 4066d06f93
8 changed files with 201 additions and 37 deletions

13
.github/pull_request_template.md vendored Normal file
View file

@ -0,0 +1,13 @@
Describe what your pull request does. Link to any relevant linear issues. If appropriate, add GIFs or images showing the before and after.
### Test Plan
1. Add a step-by-step description of how to test your PR here.
2.
- [ ] Unit Tests
- [ ] Webdriver tests
### Release Note
- Add a brief release note for your PR here.

61
.github/workflows/checks.yml vendored Normal file
View file

@ -0,0 +1,61 @@
name: Checks
on:
pull_request:
merge_group:
push:
branches: [main, lite]
env:
CI: 1
PRINT_GITHUB_ANNOTATIONS: 1
jobs:
build:
name: 'Build and run checks'
timeout-minutes: 15
runs-on: ubuntu-latest-16-cores # TODO: this should probably run on multiple OSes
steps:
- name: Check out code
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Setup Node.js environment
uses: actions/setup-node@v3
with:
node-version: 18
cache: 'yarn'
- name: Enable corepack
run: corepack enable
- name: Install dependencies
run: yarn
- name: Typecheck
run: yarn build:types
- name: Check scripts
run: yarn check-scripts
- name: Lint
run: yarn lint
- name: Check API declarations and docs work as intended
run: yarn api:check
- name: Pack public packages
run: yarn lazy pack-tarball
- name: Build all projects
# the sed pipe makes sure that github annotations come through without
# turbo's prefix
run: "yarn build | sed -E 's/^@[a-zA-Z-]+\\/[a-z-]+:[a-z-]+: ::/::/'"
- name: Test
run: yarn test
- name: Check translations
run: yarn check-translations

36
.github/workflows/publish-canary.yml vendored Normal file
View file

@ -0,0 +1,36 @@
name: Publish Canary Packages
on:
push:
branches: [main]
jobs:
deploy:
name: 'Publish Canary Packages'
environment: npm deploy
timeout-minutes: 15
runs-on: ubuntu-latest-16-cores
steps:
- name: Check out code
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Setup Node.js environment
uses: actions/setup-node@v3
with:
node-version: 18
cache: 'yarn'
- name: Enable corepack
run: corepack enable
- name: Install dependencies
run: yarn
- name: Publish Canary Packages
run: yarn tsx ./scripts/publish-canary.ts
env:
GH_TOKEN: ${{ secrets.GH_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}

35
.github/workflows/publish-manual.yml vendored Normal file
View file

@ -0,0 +1,35 @@
name: (Re)Publish public packages manually
# This only attempts to publish the public packages to npm.
# It does not bump the version, it does not update the changelogs, it does not create a github release.
# Package publishing is manually triggered on github actions dashboard
on: workflow_dispatch
jobs:
deploy:
name: '(Re)Publish public packages manually'
environment: npm deploy
timeout-minutes: 15
runs-on: ubuntu-latest-16-cores
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Setup Node.js environment
uses: actions/setup-node@v3
with:
node-version: 18
cache: 'yarn'
- name: Enable corepack
run: corepack enable
- name: Install dependencies
run: yarn
- name: Publish
run: yarn tsx ./scripts/publish-manual.ts
env:
GH_TOKEN: ${{ secrets.GH_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}

43
.github/workflows/publish-new.yml vendored Normal file
View file

@ -0,0 +1,43 @@
name: Publish new version of public packages
# This bumps the version, updates the changelogs, publishes a GitHub release, and publishes the packages to npm.
# Package publishing is manually triggered on github actions dashboard
on: workflow_dispatch
env:
YARN_RC_FILENAME: .yarnrc-private.yml
jobs:
deploy:
name: 'Publish new version of public packages'
environment: npm deploy
timeout-minutes: 15
runs-on: ubuntu-latest-16-cores
steps:
- name: Check out code
uses: actions/checkout@v3
with:
token: ${{ secrets.GH_TOKEN }}
- name: Prepare repository
# Fetch full git history and tags for auto
run: git fetch --unshallow --tags
- name: Setup Node.js environment
uses: actions/setup-node@v3
with:
node-version: 18
cache: 'yarn'
- name: Enable corepack
run: corepack enable
- name: Install dependencies
run: yarn
- name: Publish
run: yarn tsx ./scripts/publish-new.ts
env:
GH_TOKEN: ${{ secrets.GH_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}

4
.husky/post-checkout Executable file
View file

@ -0,0 +1,4 @@
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"
rm -rf *.tsbuildinfo */*.tsbuildinfo */*/*.tsbuildinfo */*/*/*.tsbuildinfo */*/*/*/*.tsbuildinfo

6
.husky/pre-commit Executable file
View file

@ -0,0 +1,6 @@
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"
yarn lazy run build:api
git add packages/*/api-report.md
yarn lint-staged

View file

@ -4277,7 +4277,7 @@ __metadata:
"@swc/core": ^1.2.204 "@swc/core": ^1.2.204
"@swc/jest": ^0.2.21 "@swc/jest": ^0.2.21
"@tldraw/utils": "workspace:*" "@tldraw/utils": "workspace:*"
lazyrepo: 0.0.0-alpha.17 lazyrepo: 0.0.0-alpha.20
ts-node-dev: ^1.1.8 ts-node-dev: ^1.1.8
languageName: unknown languageName: unknown
linkType: soft linkType: soft
@ -5093,15 +5093,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@types/node-forge@npm:^1.3.1":
version: 1.3.2
resolution: "@types/node-forge@npm:1.3.2"
dependencies:
"@types/node": "*"
checksum: f532326a616e946e5f6733d1461e7b8d31911bbdfbc480a6337c422053d79c1e22a0776d114a325439e26ae382a640f939d0abf156e24a3c3ca5079d04aa73f6
languageName: node
linkType: hard
"@types/node@npm:*, @types/node@npm:^18.13.0": "@types/node@npm:*, @types/node@npm:^18.13.0":
version: 18.15.12 version: 18.15.12
resolution: "@types/node@npm:18.15.12" resolution: "@types/node@npm:18.15.12"
@ -9444,8 +9435,8 @@ __metadata:
concurrently: ^7.4.0 concurrently: ^7.4.0
esbuild: ^0.16.7 esbuild: ^0.16.7
ip: ^1.1.8 ip: ^1.1.8
kleur: ^4.1.5 lazyrepo: 0.0.0-alpha.20
lazyrepo: 0.0.0-alpha.12 node-forge: ^1.3.1
react: ^18.2.0 react: ^18.2.0
react-dom: ^18.2.0 react-dom: ^18.2.0
react-router-dom: ^6.9.0 react-router-dom: ^6.9.0
@ -12473,31 +12464,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"lazyrepo@npm:0.0.0-alpha.17":
version: 0.0.0-alpha.17
resolution: "lazyrepo@npm:0.0.0-alpha.17"
dependencies:
"@sindresorhus/slugify": ^2.2.0
cac: ^6.7.14
cross-spawn: ^7.0.3
esbuild: ^0.17.15
fast-glob: ^3.2.12
fast-json-stable-stringify: ^2.1.0
micromatch: ^4.0.5
picocolors: ^1.0.0
slice-ansi: ^6.0.0
source-map-support: ^0.5.21
strip-ansi: ^7.0.1
ts-dedent: ^2.2.0
yaml: ^2.2.1
zod: ^3.21.4
zod-validation-error: ^1.3.0
bin:
lazy: bin.js
checksum: c900bd0e9f0c1b59ce55fc7a5d90c8ea6be19e1ea77b7bb0c35faf3258074617d0c26bec5ff688cd7b54f4bc1de9c46927524d5d34ece0b57ab292f965547add
languageName: node
linkType: hard
"lazyrepo@npm:0.0.0-alpha.20": "lazyrepo@npm:0.0.0-alpha.20":
version: 0.0.0-alpha.20 version: 0.0.0-alpha.20
resolution: "lazyrepo@npm:0.0.0-alpha.20" resolution: "lazyrepo@npm:0.0.0-alpha.20"