Use pnpm instead of yarn (#477)

Co-authored-by: enisdenjo <badurinadenis@gmail.com>
Co-authored-by: Denis Badurina <denis@domonda.com>
This commit is contained in:
Dimitri POSTOLOV 2022-11-01 01:11:53 +01:00 committed by GitHub
parent c3573812da
commit 12ceda69dc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
54 changed files with 25535 additions and 23529 deletions

View file

@ -125,6 +125,7 @@ module.exports = {
'react/prop-types': 'off',
'react/no-unescaped-entities': 'off',
'react/jsx-curly-brace-presence': 'error',
'react/no-unknown-property': 'off',
'jsx-a11y/anchor-is-valid': ['off', { components: ['Link', 'NextLink'] }],
'jsx-a11y/alt-text': ['warn', { elements: ['img'], img: ['Image', 'NextImage'] }],
'@typescript-eslint/consistent-type-imports': ['error', { prefer: 'no-type-imports' }],

View file

@ -24,18 +24,25 @@ jobs:
with:
fetch-depth: 0
- uses: actions/setup-node@v2
- name: Install pnpm
uses: pnpm/action-setup@v2.2.2
with:
version: 7
- name: Install Node
uses: actions/setup-node@v3
with:
node-version-file: .node-version
cache: pnpm
- name: Install Dependencies
run: yarn --frozen-lockfile
- name: Install deps
run: pnpm i --frozen-lockfile
- name: Generate GraphQL Types
run: yarn graphql:generate
run: pnpm graphql:generate
- name: Build
run: yarn build:libraries
run: pnpm build:libraries
- name: Schema Publish
run: ./packages/libraries/cli/bin/dev schema:publish "packages/services/api/src/modules/*/module.graphql.ts" --force --github
@ -51,7 +58,7 @@ jobs:
id: changesets
uses: changesets/action@v1.3.0
with:
publish: yarn release
publish: pnpm release
commit: 'chore(release): update monorepo packages versions'
title: 'Upcoming Release Changes'
env:
@ -69,19 +76,19 @@ jobs:
- name: Pack tarballs
if: steps.cli.outputs.publish == 'true'
working-directory: packages/libraries/cli
run: yarn oclif pack tarballs --no-xz
run: pnpm oclif pack tarballs --no-xz
- name: Upload tarballs
if: steps.cli.outputs.publish == 'true'
working-directory: packages/libraries/cli
run: yarn oclif upload tarballs --no-xz
run: pnpm oclif upload tarballs --no-xz
- name: Promote tarballs
if: steps.cli.outputs.publish == 'true'
working-directory: packages/libraries/cli
env:
VERSION: ${{ steps.cli.outputs.version }}
run: yarn oclif promote --no-xz --sha ${GITHUB_SHA:0:7} --version $VERSION || yarn oclif promote --no-xz --sha ${GITHUB_SHA:0:8} --version $VERSION
run: pnpm oclif promote --no-xz --sha ${GITHUB_SHA:0:7} --version $VERSION || pnpm oclif promote --no-xz --sha ${GITHUB_SHA:0:8} --version $VERSION
publish_rust:
name: Publish Rust
@ -223,9 +230,15 @@ jobs:
- name: Checkout
uses: actions/checkout@v3
- name: Install Node
uses: actions/setup-node@v2
- uses: pnpm/action-setup@v2.2.2
with:
version: 7
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'
node-version-file: .node-version
- name: Install Rust
@ -286,11 +299,6 @@ jobs:
- name: Checkout
uses: actions/checkout@v3
- name: Install Node
uses: actions/setup-node@v2
with:
node-version-file: .node-version
- name: Install Rust
run: |
curl https://sh.rustup.rs -sSf | sh -s -- -y
@ -375,18 +383,25 @@ jobs:
with:
fetch-depth: 5
- name: Install pnpm
uses: pnpm/action-setup@v2.2.2
with:
version: 7
- name: Install Node
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version-file: .node-version
cache: pnpm
- run: yarn --frozen-lockfile
- name: Install deps
run: pnpm i --frozen-lockfile
- name: Generate Types
run: yarn graphql:generate
run: pnpm graphql:generate
- name: Build
run: yarn build
run: pnpm build
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View file

@ -43,25 +43,31 @@ jobs:
with:
fetch-depth: 1
- name: Install pnpm
uses: pnpm/action-setup@v2.2.4
with:
version: 7
- name: Install Node
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version-file: .node-version
cache: pnpm
- name: Install Dependencies
run: yarn --frozen-lockfile
- name: Install dependencies
run: pnpm i --frozen-lockfile
- name: Create Database
working-directory: packages/services/storage
run: yarn db:create
run: pnpm db:create
- name: Migrate Database
working-directory: packages/services/storage
run: yarn db:migrator up
run: pnpm db:migrator up
- name: Generate Database Types
working-directory: packages/services/storage
run: yarn db:generate
run: pnpm db:generate
- name: Check if DB types were modified
run: git diff --exit-code ./packages/services/storage/src/db/types.ts
@ -97,8 +103,13 @@ jobs:
with:
fetch-depth: 5
- name: Install pnpm
uses: pnpm/action-setup@v2.2.4
with:
version: 7
- name: Install Node
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version-file: .node-version
@ -109,7 +120,7 @@ jobs:
key: ${{ github.sha }}
- name: Generate Types
run: yarn graphql:generate
run: pnpm graphql:generate
- name: Check PR label
if: contains(github.event.pull_request.labels.*.name, 'non-breaking')
@ -137,8 +148,13 @@ jobs:
with:
fetch-depth: 1
- name: Install pnpm
uses: pnpm/action-setup@v2.2.4
with:
version: 7
- name: Install Node
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version-file: .node-version
@ -149,16 +165,16 @@ jobs:
key: ${{ github.sha }}
- name: Generate Types
run: yarn graphql:generate
run: pnpm graphql:generate
- name: Test
run: yarn test
run: pnpm test
build:
name: Build
runs-on: ubuntu-latest
needs: setup
timeout-minutes: 10
timeout-minutes: 15
env:
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
@ -172,8 +188,13 @@ jobs:
with:
fetch-depth: 5
- name: Install pnpm
uses: pnpm/action-setup@v2.2.4
with:
version: 7
- name: Install Node
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version-file: .node-version
@ -187,10 +208,13 @@ jobs:
run: node ./scripts/turborepo-setup.js
- name: Generate Types
run: yarn graphql:generate
run: pnpm graphql:generate
- name: Build
run: yarn build
run: pnpm build
- name: Archive @hive/app
run: zip -r packages/web/app/dist.zip packages/web/app/dist
- uses: actions/upload-artifact@v3
name: Upload Docker Build Artifacts
@ -212,7 +236,7 @@ jobs:
packages/services/usage-ingestor/dist
packages/services/usage/dist
packages/services/webhooks/dist
packages/web/app/dist
packages/web/app/dist.zip
rust:
name: Build Rust
@ -225,10 +249,19 @@ jobs:
with:
fetch-depth: 2
- name: Install pnpm
uses: pnpm/action-setup@v2.2.4
with:
version: 7
- name: Install Node
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version-file: .node-version
cache: pnpm
- name: Install dependencies
run: pnpm i --frozen-lockfile
- name: Install Rust
run: |
@ -273,7 +306,13 @@ jobs:
with:
fetch-depth: 5
- uses: actions/setup-node@v2
- name: Install pnpm
uses: pnpm/action-setup@v2.2.4
with:
version: 7
- name: Install Node
uses: actions/setup-node@v3
with:
node-version-file: .node-version
@ -287,7 +326,7 @@ jobs:
uses: actions/cache@v2
with:
path: '.eslintcache'
key: ${{ runner.os }}-eslint-${{ hashFiles('yarn.lock') }}
key: ${{ runner.os }}-eslint-${{ hashFiles('pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-eslint
@ -295,16 +334,16 @@ jobs:
run: node ./scripts/turborepo-setup.js
- name: Generate Types
run: yarn graphql:generate
run: pnpm graphql:generate
- name: Type Check
run: yarn typecheck
run: pnpm typecheck
- name: Lint ESLint
run: yarn lint
run: pnpm lint
- name: Lint Prettier
run: yarn lint:prettier
run: pnpm lint:prettier
docker-build-push:
needs: build
@ -326,6 +365,9 @@ jobs:
name: docker-build-sources
path: ./
- name: Unarchive @hive/app
run: unzip packages/web/app/dist.zip
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
with:
@ -367,8 +409,7 @@ jobs:
integration-tests:
name: Integration Tests
runs-on: ubuntu-latest
needs:
- setup
needs: setup
timeout-minutes: 25
env:
@ -385,8 +426,13 @@ jobs:
with:
fetch-depth: 5
- name: Install pnpm
uses: pnpm/action-setup@v2.2.4
with:
version: 7
- name: Install Node
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version-file: .node-version
@ -400,10 +446,10 @@ jobs:
run: node ./scripts/turborepo-setup.js
- name: Build
run: yarn workspace integration-tests run build-and-pack
run: pnpm --filter integration-tests build-and-pack
- name: Build
run: yarn build
run: pnpm build
- name: Pull images
run: |
@ -432,7 +478,7 @@ jobs:
--load
- name: Integration Tests
run: yarn workspace integration-tests run dockest
run: pnpm --filter integration-tests dockest
timeout-minutes: 15
env:
STRIPE_PUBLIC_KEY: ${{ secrets.TEST_STRIPE_PUBLIC_KEY }}
@ -445,33 +491,10 @@ jobs:
if: always()
run: cat integration-tests/*.log
pulumi-typecheck:
name: Pulumi Typecheck
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 1
- name: Install Node
uses: actions/setup-node@v2
with:
node-version-file: .node-version
- name: Install Dependencies
run: yarn --frozen-lockfile
working-directory: deployment
- name: Typecheck
run: yarn typecheck
working-directory: deployment
integration-tests-ff:
name: Integration Tests (with Feature Flags enabled)
runs-on: ubuntu-latest
needs:
- setup
needs: setup
timeout-minutes: 25
env:
@ -499,9 +522,15 @@ jobs:
with:
fetch-depth: 5
- name: Install pnpm
if: steps.feature_flags.outputs.detected == 'true'
uses: pnpm/action-setup@v2.2.4
with:
version: 7
- name: Install Node
if: steps.feature_flags.outputs.detected == 'true'
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version-file: .node-version
@ -518,11 +547,11 @@ jobs:
- name: Build
if: steps.feature_flags.outputs.detected == 'true'
run: yarn workspace integration-tests run build-and-pack
run: pnpm --filter integration-tests build-and-pack
- name: Build
if: steps.feature_flags.outputs.detected == 'true'
run: yarn build
run: pnpm build
- name: Pull images
if: steps.feature_flags.outputs.detected == 'true'
@ -553,7 +582,7 @@ jobs:
- name: Integration Tests
if: steps.feature_flags.outputs.detected == 'true'
run: yarn workspace integration-tests run dockest
run: pnpm --filter integration-tests dockest
timeout-minutes: 15
env:
STRIPE_PUBLIC_KEY: ${{ secrets.TEST_STRIPE_PUBLIC_KEY }}

8
.gitignore vendored
View file

@ -2,8 +2,6 @@
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
# Diagnostic reports (https://nodejs.org/api/report.html)
@ -59,9 +57,6 @@ typings/
# Output of 'npm pack'
*.tgz
# Yarn Integrity file
.yarn-integrity
# dotenv environment variables file
.env
.env.test
@ -115,3 +110,6 @@ integration-tests/testkit/gql/
# Rust
/target
# bob
.bob

View file

@ -1,4 +1,4 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
yarn pre-commit
pnpm pre-commit

1
.npmrc Normal file
View file

@ -0,0 +1 @@
enable-pre-post-scripts=true

View file

@ -17,3 +17,5 @@ __generated__/
integration-tests/fixtures/init-invalid-schema.graphql
/target
tmp
pnpm-lock.yaml

View file

@ -14,70 +14,70 @@
"focus": true,
"open": true,
"cwd": "packages/services/server",
"command": "yarn dev"
"command": "pnpm dev"
},
{
"name": "app:dev",
"description": "Run application",
"open": true,
"cwd": "packages/web/app",
"command": "yarn dev"
"command": "pnpm dev"
},
{
"name": "tokens:dev",
"description": "Run tokens service",
"open": true,
"cwd": "packages/services/tokens",
"command": "yarn dev"
"command": "pnpm dev"
},
{
"name": "schema:dev",
"description": "Run schema service",
"open": true,
"cwd": "packages/services/schema",
"command": "yarn dev"
"command": "pnpm dev"
},
{
"name": "usage-estimator:dev",
"description": "Run Usage Estimator Service",
"open": true,
"cwd": "packages/services/usage-estimator",
"command": "yarn dev"
"command": "pnpm dev"
},
{
"name": "rate-limit:dev",
"description": "Run Rate Limiter Service",
"open": true,
"cwd": "packages/services/rate-limit",
"command": "yarn dev"
"command": "pnpm dev"
},
{
"name": "cdn:dev",
"description": "Run Local CDN",
"open": true,
"cwd": "packages/services/cdn-worker",
"command": "yarn dev"
"command": "pnpm dev"
},
{
"name": "emails:dev",
"description": "Run Emails serivce",
"description": "Run Emails Service",
"open": true,
"cwd": "packages/services/emails",
"command": "yarn dev"
"command": "pnpm dev"
},
{
"name": "usage:dev",
"description": "Run Usage Service",
"open": true,
"cwd": "packages/services/usage",
"command": "yarn dev"
"command": "pnpm dev"
},
{
"name": "usage-ingestor:dev",
"description": "Run Usage Ingestor",
"open": true,
"cwd": "packages/services/usage-ingestor",
"command": "yarn dev"
"command": "pnpm dev"
}
]
}

View file

@ -1,22 +1,10 @@
FROM node:16-slim as install
WORKDIR /usr/src/app
COPY package.json /usr/src/app/
FROM node:16-slim
ENV NODE_ENV production
# DANGER: there is no lockfile :)
# in the future this should be improved...
RUN npm install --legacy-peer-deps
FROM node:16-slim as app
WORKDIR /usr/src/app
COPY --from=install /usr/src/app/ /usr/src/app/
# context packages/web/app/dist
COPY . /usr/src/app/
LABEL org.opencontainers.image.title=$IMAGE_TITLE

View file

@ -1,4 +1,5 @@
schema: ./packages/services/api/src/modules/*/module.graphql.ts
emitLegacyCommonJSImports: true
generates:
# API
./packages/services/api/src/modules:
@ -131,5 +132,5 @@ generates:
# Integration tests
./integration-tests/testkit/gql:
documents: ./integration-tests/**/*.ts
documents: ./integration-tests/(testkit|tests)/**/*.ts
preset: gql-tag-operations-preset

View file

@ -5,8 +5,7 @@
},
"devDependencies": {
"@types/mime-types": "2.1.1",
"@types/node": "18.11.5",
"typescript": "4.8.4"
"@types/node": "18.11.5"
},
"dependencies": {
"@manypkg/get-packages": "1.1.3",

File diff suppressed because it is too large Load diff

View file

@ -5,7 +5,7 @@
Developing Hive locally requires you to have the following software installed locally:
- Node.js 16 LTS (or `nvm` or `fnm`)
- yarn v1
- pnpm v7
- docker
- docker-compose
@ -14,10 +14,10 @@ Developing Hive locally requires you to have the following software installed lo
- Clone the repository locally
- Make sure to install the recommended VSCode extensions (defined in `.vscode/extensions.json`)
- In the root of the repo, run `nvm use` to use the same version of node as mentioned
- Run `yarn` at the root to install all the dependencies and run the hooks
- Run `yarn setup` to create and apply migrations on the PostgreSQL database
- Run `yarn generate` to generate the typings from the graphql files (use `yarn graphql:generate` if you only need to run GraphQL Codegen)
- Run `yarn build` to build all services
- Run `pnpm i` at the root to install all the dependencies and run the hooks
- Run `pnpm setup` to create and apply migrations on the PostgreSQL database
- Run `pnpm generate` to generate the typings from the graphql files (use `pnpm graphql:generate` if you only need to run GraphQL Codegen)
- Run `pnpm build` to build all services
- Click on `Start Hive` in the bottom bar of VSCode
- If you are not added to the list of guest users, request access from The Guild maintainers
- Alternatively, [configure hive to use your own Auth0 Application](#setting-up-auth0-app-for-developing)
@ -30,9 +30,9 @@ Developing Hive locally requires you to have the following software installed lo
We have a script to feed your local instance of Hive.
1. Use `Start Hive` to run your local Hive instance
2. Make sure `usage` and `usage-ingestor` are running as well (with `yarn dev`)
2. Make sure `usage` and `usage-ingestor` are running as well (with `pnpm dev`)
3. Open Hive app, create a project and a target, then create a token
4. Run the seed script: `TOKEN="MY_TOKEN_HERE" yarn seed`
4. Run the seed script: `TOKEN="MY_TOKEN_HERE" pnpm seed`
5. This should report a dummy schema and some dummy usage data to your local instance of Hive, allowing you to test features e2e
> Note: You can set `STAGING=1` in order to target staging env and seed a target there.
@ -44,8 +44,8 @@ We have a script to feed your local instance of Hive.
1. Start Hive locally
2. Create a project and a target
3. Create a token from that target
4. Go to `packages/libraries/cli` and run `yarn build`
5. Inside `packages/libraries/cli`, run: `yarn start schema:publish --token "YOUR_TOKEN_HERE" --registry "http://localhost:4000/graphql" examples/single.graphql`
4. Go to `packages/libraries/cli` and run `pnpm build`
5. Inside `packages/libraries/cli`, run: `pnpm start schema:publish --token "YOUR_TOKEN_HERE" --registry "http://localhost:4000/graphql" examples/single.graphql`
### Setting up Slack App for developing

View file

@ -2,7 +2,7 @@
## Unit tests
We are using Jest. Simply run `yarn test` to run all the tests.
We are using Jest. Simply run `pnpm test` to run all the tests.
## Integration Tests
@ -16,8 +16,8 @@ We are using Dockest to test the following concerns:
To run integration tests locally, follow:
1. Make sure you have Docker installed. If you are having issues, try to run `docker system prune` to clean the Docker caches.
2. Install all deps: `yarn install`
3. Generate types: `yarn graphql:generate`
4. Build and pack all services: `yarn workspace integration-tests run build-and-pack`
2. Install all deps: `pnpm i`
3. Generate types: `pnpm graphql:generate`
4. Build and pack all services: `pnpm --filter integration-tests build-and-pack`
5. Pull the images: `docker-compose -f integration-tests/docker-compose.yml pull`
6. Run the tests: `yarn workspace integration-tests run dockest`
6. Run the tests: `pnpm --filter integration-tests dockest`

View file

@ -4,10 +4,10 @@ import dotenv from 'dotenv';
/**
* Run only the tests that were specified with a pattern or filename:
* $ yarn dockest filenameOrPattern
* $ pnpm dockest filenameOrPattern
*
* Run all tests:
* $ yarn dockest
* $ pnpm dockest
*/
const [, , testFile] = process.argv;

View file

@ -5,6 +5,7 @@
"version": "0.0.0",
"dependencies": {
"@app/gql": "link:./testkit/gql",
"@graphql-hive/core": "0.2.2",
"@graphql-typed-document-node/core": "3.1.1",
"auth0": "2.36.2",
"axios": "0.27.2",
@ -12,6 +13,7 @@
"date-fns": "2.25.0",
"dependency-graph": "0.11.0",
"@n1ru4l/dockest": "2.1.0-rc.6",
"ioredis": "4.28.3",
"rxjs": "^6.5.4",
"slonik": "30.1.2",
"tsup": "5.12.7",
@ -21,11 +23,13 @@
"@trpc/client": "9.23.2"
},
"devDependencies": {
"@hive/server": "*"
"@hive/server": "*",
"@types/ioredis": "4.28.7",
"tslib": "2.4.0"
},
"scripts": {
"build-and-pack": "(cd ../ && yarn build:services && yarn build:libraries && yarn build:local) && node ./scripts/pack.mjs",
"build:local": "yarn build-and-pack && (cd ../ && yarn docker:build)",
"build-and-pack": "(cd ../ && pnpm build:services && pnpm build:libraries && pnpm build:local) && node ./scripts/pack.mjs",
"build:local": "pnpm build-and-pack && (cd ../ && pnpm docker:build)",
"dockest": "tsup-node dockest.ts --format esm --target node16 && PWD=$PWD/.. node dist/dockest.js"
}
}

View file

@ -14,68 +14,69 @@
"license": "MIT",
"scripts": {
"seed": "node scripts/seed-local-env.js",
"postinstall": "husky install && patch-package && node ./scripts/patch-manifests.js && node ./scripts/sync-env-files.js && node ./scripts/turborepo-cleanup.js && node ./scripts/turborepo-setup.js",
"postinstall": "husky install && node ./scripts/patch-manifests.js && node ./scripts/sync-env-files.js && node ./scripts/turborepo-cleanup.js && node ./scripts/turborepo-setup.js",
"pre-commit": "lint-staged",
"prerelease": "yarn build:libraries",
"prerelease": "pnpm build:libraries",
"release": "changeset publish",
"upload-sourcemaps": "./scripts/upload-sourcemaps.sh",
"test": "jest",
"lint": "eslint --cache --ignore-path .gitignore \"packages/**/*.{ts,tsx}\"",
"prettier": "prettier --cache --write --list-different .",
"lint:prettier": "prettier --cache --check .",
"setup": "yarn workspace @hive/storage run setup",
"generate": "yarn workspace @hive/storage run db:generate && yarn graphql:generate",
"setup": "pnpm --filter @hive/storage setup",
"generate": "pnpm --filter @hive/storage db:generate && pnpm graphql:generate",
"graphql:generate": "graphql-codegen",
"typecheck": "yarn turbo typecheck --color",
"build": "yarn graphql:generate && yarn turbo build --color",
"build:libraries": "yarn graphql:generate && yarn turbo build --filter=./packages/libraries/* --color",
"build:web": "yarn graphql:generate && yarn turbo build --filter=./packages/web/* --color",
"build:services": "yarn graphql:generate && yarn turbo build --filter=./packages/services/* --color",
"build:local": "yarn graphql:generate && yarn turbo build-local --color",
"typecheck": "pnpm turbo typecheck --color",
"build": "pnpm graphql:generate && pnpm turbo build --color",
"build:libraries": "pnpm graphql:generate && pnpm turbo build --filter=./packages/libraries/* --color",
"build:web": "pnpm graphql:generate && pnpm turbo build --filter=./packages/web/* --color",
"build:services": "pnpm graphql:generate && pnpm turbo build --filter=./packages/services/* --color",
"build:local": "pnpm graphql:generate && pnpm turbo build-local --color",
"env:sync": "node ./scripts/sync-env-files.js",
"turbo": "env-cmd --silent turbo run",
"docker:build": "docker buildx bake -f docker.hcl --load build"
},
"devDependencies": {
"@babel/core": "7.19.1",
"@babel/plugin-proposal-class-properties": "7.18.6",
"@babel/plugin-proposal-decorators": "7.19.1",
"@babel/preset-env": "7.19.1",
"@babel/preset-typescript": "7.18.6",
"@babel/plugin-proposal-decorators": "7.19.1",
"@babel/plugin-proposal-class-properties": "7.18.6",
"@changesets/cli": "2.24.3",
"@changesets/changelog-github": "0.4.6",
"@graphql-codegen/add": "3.2.0",
"@graphql-codegen/cli": "2.8.0",
"@graphql-codegen/gql-tag-operations-preset": "1.5.2-alpha-8565e86c3.0",
"@graphql-codegen/graphql-modules-preset": "2.4.1",
"@graphql-codegen/typed-document-node": "2.3.1",
"@graphql-codegen/typescript": "2.7.1",
"@graphql-codegen/typescript-graphql-request": "4.5.1",
"@graphql-codegen/typescript-operations": "2.5.1",
"@graphql-codegen/typescript-resolvers": "2.7.1",
"@changesets/cli": "2.24.3",
"@graphql-codegen/add": "3.2.1",
"@graphql-codegen/cli": "2.13.7",
"@graphql-codegen/gql-tag-operations-preset": "1.7.0",
"@graphql-codegen/graphql-modules-preset": "2.5.4",
"@graphql-codegen/typed-document-node": "2.3.5",
"@graphql-codegen/typescript": "2.8.0",
"@graphql-codegen/typescript-graphql-request": "4.5.7",
"@graphql-codegen/typescript-operations": "2.5.5",
"@graphql-codegen/typescript-resolvers": "2.7.5",
"@sentry/cli": "2.2.0",
"@swc/core": "1.2.185",
"@theguild/prettier-config": "0.1.1",
"@types/jest": "29.2.0",
"@types/lru-cache": "7.6.1",
"@types/node": "16.11.22",
"@typescript-eslint/eslint-plugin": "5.28.0",
"@typescript-eslint/parser": "5.28.0",
"@typescript-eslint/eslint-plugin": "5.41.0",
"@typescript-eslint/parser": "5.41.0",
"babel-jest": "29.0.3",
"babel-plugin-parameter-decorator": "1.0.16",
"babel-plugin-transform-typescript-metadata": "0.3.2",
"bob-the-bundler": "1.7.3",
"bob-the-bundler": "4.0.0",
"dotenv": "16.0.3",
"env-cmd": "10.1.0",
"eslint": "8.18.0",
"eslint": "8.26.0",
"eslint-plugin-hive": "file:./rules",
"eslint-plugin-import": "2.26.0",
"eslint-plugin-simple-import-sort": "7.0.0",
"eslint-plugin-simple-import-sort": "8.0.0",
"fs-extra": "10.1.0",
"graphql": "16.5.0",
"glob": "8.0.3",
"husky": "7.0.4",
"jest": "29.2.2",
"lint-staged": "11.2.6",
"patch-package": "6.4.7",
"prettier": "2.7.1",
"prettier-plugin-tailwindcss": "0.1.11",
"pretty-quick": "3.1.3",
@ -83,21 +84,12 @@
"ts-jest": "29.0.3",
"tsup": "5.12.7",
"turbo": "1.5.6",
"typescript": "4.7.4"
},
"workspaces": {
"packages": [
"packages/services/*",
"packages/web/*",
"packages/libraries/*",
"integration-tests/"
]
"typescript": "4.8.4"
},
"resolutions": {
"@types/react": "17.0.45",
"@urql/core": "2.3.6",
"graphql": "16.5.0",
"typescript": "4.7.4",
"ts-node": "10.9.1"
},
"husky": {
@ -114,8 +106,20 @@
]
},
"engines": {
"node": ">=16"
"node": ">=16",
"pnpm": ">=7"
},
"packageManager": "pnpm@7.13.14",
"pnpm": {
"patchedDependencies": {
"@n1ru4l/dockest@2.1.0-rc.6": "patches/@n1ru4l__dockest@2.1.0-rc.6.patch",
"@tgriesser/schemats@7.0.0": "patches/@tgriesser__schemats@7.0.0.patch",
"@theguild/buddy@0.1.0": "patches/@theguild__buddy@0.1.0.patch",
"atomic-sleep@1.0.0": "patches/atomic-sleep@1.0.0.patch",
"bullmq@1.81.4": "patches/bullmq@1.81.4.patch",
"mjml-core@4.13.0": "patches/mjml-core@4.13.0.patch",
"slonik@30.1.2": "patches/slonik@30.1.2.patch"
}
},
"packageManager": "yarn@1.22.18",
"version": "0.0.0"
}

View file

@ -32,10 +32,10 @@
"postpack": "rm -f oclif.manifest.json",
"prepack": "rimraf lib && tsc -b && oclif manifest && oclif readme",
"version": "oclif readme && git add README.md",
"schema:check:single": "yarn start schema:check examples/single.graphql",
"schema:check:stitching": "yarn start schema:check examples/stitching.graphql --service posts",
"schema:check:federation": "yarn start schema:check examples/federation.graphql --service reviews",
"schema:publish:federation": "yarn start schema:publish --service reviews examples/federation.reviews.graphql"
"schema:check:single": "pnpm start schema:check examples/single.graphql",
"schema:check:stitching": "pnpm start schema:check examples/stitching.graphql --service posts",
"schema:check:federation": "pnpm start schema:check examples/federation.graphql --service reviews",
"schema:publish:federation": "pnpm start schema:publish --service reviews examples/federation.reviews.graphql"
},
"dependencies": {
"@graphql-hive/core": "0.2.2",
@ -57,7 +57,7 @@
"graphql-tag": "2.12.6",
"log-symbols": "4.1.0",
"mkdirp": "1.0.4",
"tslib": "2.3.1",
"tslib": "2.4.0",
"ts-node": "10.9.1"
},
"devDependencies": {

View file

@ -14,24 +14,44 @@
},
"homepage": "https://graphql-hive.com",
"license": "MIT",
"main": "dist/index.js",
"module": "dist/index.mjs",
"typings": "dist/index.d.ts",
"main": "dist/cjs/index.js",
"module": "dist/esm/index.js",
"typings": "dist/typings/index.d.ts",
"typescript": {
"definition": "dist/index.d.ts"
"definition": "dist/typings/index.d.ts"
},
"exports": {
".": {
"require": "./dist/index.js",
"import": "./dist/index.mjs"
"require": {
"types": "./dist/typings/index.d.cts",
"default": "./dist/cjs/index.js"
},
"import": {
"types": "./dist/typings/index.d.ts",
"default": "./dist/esm/index.js"
},
"default": {
"types": "./dist/typings/index.d.ts",
"default": "./dist/esm/index.js"
}
},
"./*": {
"require": "./dist/*.js",
"import": "./dist/*.mjs"
"require": {
"types": "./dist/typings/*.d.cts",
"default": "./dist/cjs/*.js"
},
"import": {
"types": "./dist/typings/*.d.ts",
"default": "./dist/esm/*.js"
},
"default": {
"types": "./dist/typings/*.d.ts",
"default": "./dist/esm/*.js"
}
}
},
"scripts": {
"build": "node scripts/update-version.mjs && bob build --single"
"build": "node scripts/update-version.mjs && bob build"
},
"peerDependencies": {
"graphql": "^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0"
@ -47,7 +67,7 @@
"@apollo/federation": "0.36.1",
"@envelop/types": "3.0.0",
"graphql-yoga": "3.0.0-next.5",
"@types/async-retry": "1.4.3",
"@types/async-retry": "1.4.5",
"apollo-server-core": "3.7.0",
"apollo-server-plugin-base": "3.5.3",
"nock": "13.2.4"

View file

@ -13,20 +13,40 @@
},
"homepage": "https://graphql-hive.com",
"license": "MIT",
"main": "dist/index.js",
"module": "dist/index.mjs",
"typings": "dist/index.d.ts",
"main": "dist/cjs/index.js",
"module": "dist/esm/index.js",
"typings": "dist/typings/index.d.ts",
"typescript": {
"definition": "dist/index.d.ts"
"definition": "dist/typings/index.d.ts"
},
"exports": {
".": {
"require": "./dist/index.js",
"import": "./dist/index.mjs"
"require": {
"types": "./dist/typings/index.d.cts",
"default": "./dist/cjs/index.js"
},
"import": {
"types": "./dist/typings/index.d.ts",
"default": "./dist/esm/index.js"
},
"default": {
"types": "./dist/typings/index.d.ts",
"default": "./dist/esm/index.js"
}
},
"./*": {
"require": "./dist/*.js",
"import": "./dist/*.mjs"
"require": {
"types": "./dist/typings/*.d.cts",
"default": "./dist/cjs/*.js"
},
"import": {
"types": "./dist/typings/*.d.ts",
"default": "./dist/esm/*.js"
},
"default": {
"types": "./dist/typings/*.d.ts",
"default": "./dist/esm/*.js"
}
}
},
"publishConfig": {
@ -35,7 +55,7 @@
"directory": "dist"
},
"scripts": {
"build": "bob build --single"
"build": "bob build"
},
"peerDependencies": {
"graphql": "^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0"
@ -44,6 +64,7 @@
"lodash.sortby": "4.7.0"
},
"devDependencies": {
"@types/lodash.sortby": "4.7.7"
"@types/lodash.sortby": "4.7.7",
"tslib": "2.4.0"
}
}

View file

@ -14,25 +14,45 @@
},
"homepage": "https://graphql-hive.com",
"license": "MIT",
"main": "dist/index.js",
"module": "dist/index.mjs",
"typings": "dist/index.d.ts",
"main": "dist/cjs/index.js",
"module": "dist/esm/index.js",
"typings": "dist/typings/index.d.ts",
"typescript": {
"definition": "dist/index.d.ts"
"definition": "dist/typings/index.d.ts"
},
"exports": {
".": {
"require": "./dist/index.js",
"import": "./dist/index.mjs"
"require": {
"types": "./dist/typings/index.d.cts",
"default": "./dist/cjs/index.js"
},
"import": {
"types": "./dist/typings/index.d.ts",
"default": "./dist/esm/index.js"
},
"default": {
"types": "./dist/typings/index.d.ts",
"default": "./dist/esm/index.js"
}
},
"./*": {
"require": "./dist/*.js",
"import": "./dist/*.mjs"
"require": {
"types": "./dist/typings/*.d.cts",
"default": "./dist/cjs/*.js"
},
"import": {
"types": "./dist/typings/*.d.ts",
"default": "./dist/esm/*.js"
},
"default": {
"types": "./dist/typings/*.d.ts",
"default": "./dist/esm/*.js"
}
}
},
"scripts": {
"build": "bob build --single",
"build-local": "yarn build && node build-example.mjs"
"build": "bob build",
"build-local": "pnpm build && node build-example.mjs"
},
"peerDependencies": {
"graphql": "^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0"
@ -40,7 +60,8 @@
"devDependencies": {
"@apollo/federation": "0.36.1",
"graphql": "16.5.0",
"esbuild": "0.14.39"
"esbuild": "0.14.39",
"fastify": "3.29.3"
},
"publishConfig": {
"registry": "https://registry.npmjs.org",

View file

@ -54,7 +54,8 @@
"@types/ms": "0.7.31",
"@types/ioredis-mock": "5.6.0",
"@types/uuid": "8.3.4",
"ioredis-mock": "7.4.0"
"ioredis-mock": "7.4.0",
"tslib": "2.4.0"
},
"engines": {
"node": ">=12"

View file

@ -4,7 +4,7 @@ Hive comes with a CDN worker (deployed to CF Workers), along with KV cache to st
### Standalone Development
To run Hive CDN locally, you can use the following command: `yarn dev`.
To run Hive CDN locally, you can use the following command: `pnpm dev`.
> Note: during dev, KV is mocked using JS `Map`, so it's ephermal and will be deleted with any change in code.

View file

@ -8,7 +8,7 @@
"dev": "tsup-node src/dev.ts --format esm --target node16 --watch --onSuccess 'node dist/dev.js' | pino-pretty --translateTime HH:MM:ss TT --ignore pid,hostname",
"build": "bob runify --single",
"typecheck": "tsc --noEmit",
"postbuild": "copyfiles -f \"../../../node_modules/bullmq/dist/esm/commands/*.lua\" dist && copyfiles -f \"../../../node_modules/bullmq/dist/esm/commands/includes/*.lua\" dist/includes"
"postbuild": "copyfiles -f \"node_modules/bullmq/dist/esm/commands/*.lua\" dist && copyfiles -f \"node_modules/bullmq/dist/esm/commands/includes/*.lua\" dist/includes"
},
"dependencies": {
"zod": "3.15.1",
@ -27,9 +27,11 @@
"@types/mjml": "4.7.0",
"@types/nodemailer": "6.4.6",
"@types/sendmail": "1.4.4",
"@types/ioredis": "4.28.10",
"@hive/service-common": "0.0.0",
"copyfiles": "2.4.1",
"pino-pretty": "6.0.0"
"pino-pretty": "6.0.0",
"tslib": "2.4.0"
},
"buildOptions": {
"runify": true,

View file

@ -26,7 +26,8 @@
"@hive/emails": "0.0.0",
"@hive/service-common": "0.0.0",
"@hive/storage": "0.0.0",
"pino-pretty": "6.0.0"
"pino-pretty": "6.0.0",
"tslib": "2.4.0"
},
"buildOptions": {
"runify": true,

View file

@ -25,9 +25,10 @@
},
"devDependencies": {
"@hive/service-common": "0.0.0",
"@types/async-retry": "1.4.3",
"@types/async-retry": "1.4.5",
"@types/ioredis": "4.28.7",
"pino-pretty": "6.0.0"
"pino-pretty": "6.0.0",
"fastify": "3.29.3"
},
"buildOptions": {
"runify": true,

View file

@ -35,7 +35,9 @@
"@hive/service-common": "0.0.0",
"@hive/storage": "0.0.0",
"pino-pretty": "6.0.0",
"@swc/core": "1.2.185"
"@swc/core": "1.2.185",
"fastify": "3.29.3",
"tslib": "2.4.0"
},
"buildOptions": {
"runify": true,

View file

@ -15,5 +15,11 @@
"@sentry/node": "^7.0.0",
"@sentry/tracing": "^7.0.0",
"@sentry/utils": "^7.0.0"
},
"devDependencies": {
"@sentry/node": "7.12.1",
"@sentry/tracing": "7.12.1",
"@sentry/types": "7.12.1",
"@sentry/utils": "7.12.1"
}
}

View file

@ -5,17 +5,17 @@
"version": "0.0.0",
"license": "MIT",
"scripts": {
"setup": "yarn db:start && yarn db",
"db": "yarn db:create && yarn migration:run",
"setup": "pnpm db:start && pnpm db",
"db": "pnpm db:create && pnpm migration:run",
"db:create": "node tools/create-db.mjs",
"db:migrator": "node --experimental-specifier-resolution=node --loader ts-node/esm migrations/index.ts",
"migration:create": "yarn db:migrator create",
"migration:run": "yarn db:migrator up",
"migration:rollback": "yarn db:migrator down",
"migration:create": "pnpm db:migrator create",
"migration:run": "pnpm db:migrator up",
"migration:rollback": "pnpm db:migrator down",
"db:generate": "schemats generate --config schemats.cjs -o src/db/types.ts",
"db:start": "docker-compose up -d --remove-orphans",
"db:dev": "docker compose up --remove-orphans --abort-on-container-exit",
"dev": "yarn db:dev",
"dev": "pnpm db:dev",
"build": "bob runify --single",
"postbuild": "copyfiles -f \"migrations/actions/*.sql\" dist/actions && copyfiles -f \"migrations/actions/down/*.sql\" dist/actions/down"
},
@ -32,10 +32,13 @@
"zod": "3.15.1"
},
"devDependencies": {
"@sentry/types": "7.12.1",
"@tgriesser/schemats": "7.0.0",
"@types/pg": "8.6.5",
"copyfiles": "2.4.1",
"pg-promise": "10.11.1",
"ts-node": "10.9.1"
"ts-node": "10.9.1",
"tslib": "2.4.0"
},
"engines": {
"node": ">=12"

View file

@ -24,7 +24,9 @@
"@hive/service-common": "0.0.0",
"@hive/storage": "0.0.0",
"@types/ms": "0.7.31",
"pino-pretty": "6.0.0"
"pino-pretty": "6.0.0",
"fastify": "3.29.3",
"tslib": "2.4.0"
},
"buildOptions": {
"runify": true,

View file

@ -23,7 +23,8 @@
"devDependencies": {
"@hive/api": "0.0.1",
"@hive/service-common": "0.0.0",
"pino-pretty": "6.0.0"
"pino-pretty": "6.0.0",
"tslib": "2.4.0"
},
"buildOptions": {
"runify": true,

View file

@ -25,7 +25,8 @@
"@graphql-hive/core": "0.2.2",
"@hive/service-common": "0.0.0",
"@hive/usage-common": "0.0.0",
"pino-pretty": "6.0.0"
"pino-pretty": "6.0.0",
"tslib": "2.4.0"
},
"buildOptions": {
"runify": true,

View file

@ -7,7 +7,7 @@
"scripts": {
"dev": "tsup-node src/dev.ts --format esm --target node16 --watch --onSuccess 'node dist/dev.js' | pino-pretty --translateTime HH:MM:ss TT --ignore pid,hostname",
"build": "bob runify --single",
"postbuild": "copyfiles -f \"../../../node_modules/bullmq/dist/esm/commands/*.lua\" dist && copyfiles -f \"../../../node_modules/bullmq/dist/esm/commands/includes/*.lua\" dist/includes",
"postbuild": "copyfiles -f \"node_modules/bullmq/dist/esm/commands/*.lua\" dist && copyfiles -f \"node_modules/bullmq/dist/esm/commands/includes/*.lua\" dist/includes",
"typecheck": "tsc --noEmit"
},
"dependencies": {
@ -22,9 +22,11 @@
"p-timeout": "5.0.2"
},
"devDependencies": {
"@types/ioredis": "4.28.10",
"@hive/service-common": "0.0.0",
"copyfiles": "2.4.1",
"pino-pretty": "6.0.0"
"pino-pretty": "6.0.0",
"tslib": "2.4.0"
},
"buildOptions": {
"runify": true,

View file

@ -21,8 +21,6 @@
# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# local env files
.env.development.local

View file

@ -59,7 +59,7 @@ If you are not self-hosting GraphQL Hive, you can ignore this section. It is onl
### Building the Docker Image
**Prerequisites:** Make sure you built the mono-repository using `yarn build`.
**Prerequisites:** Make sure you built the mono-repository using `pnpm build`.
```bash
docker build . --build-arg RELEASE=stable-main -t graphql-hive/app

View file

@ -11,6 +11,11 @@ export default {
eslint: {
ignoreDuringBuilds: true,
},
typescript: {
// next doesn't need to check because typecheck command will
// also next reports false positives (try it...)
ignoreBuildErrors: true,
},
redirects: () => [
// Redirect organization routes
{

View file

@ -4,9 +4,10 @@
"version": "0.0.0",
"scripts": {
"build:config": "tsup --out-dir . --loader \".mts=ts\" --format esm --target node16 next.config.mts",
"dev": "yarn build:config && next dev",
"dev": "pnpm build:config && next dev",
"start": "node dist/index.js",
"build": "yarn build:config && BUILD=1 bob runify --single",
"build": "pnpm build:config && BUILD=1 bob runify --single",
"postbuild": "pnpm --filter @hive/app deploy dist/deploy && rimraf dist/node_modules && mv dist/deploy/node_modules dist && rimraf dist/deploy",
"typecheck": "tsc"
},
"dependencies": {
@ -34,6 +35,7 @@
"@sentry/node": "7.12.1",
"@sentry/react": "7.12.1",
"@sentry/tracing": "7.12.1",
"@sentry/types": "7.12.1",
"@stripe/react-stripe-js": "1.7.2",
"@stripe/stripe-js": "1.29.0",
"@tanstack/react-table": "8.0.0-beta.8",
@ -70,7 +72,7 @@
"regenerator-runtime": "0.13.9",
"snarkdown": "2.0.0",
"tailwindcss": "2.2.19",
"tslib": "2.3.1",
"tslib": "2.4.0",
"twin.macro": "2.8.2",
"urql": "2.0.5",
"use-debounce": "6.0.1",
@ -86,22 +88,27 @@
"@trpc/client": "9.23.2"
},
"devDependencies": {
"@next/eslint-plugin-next": "12.1.6",
"@graphql-codegen/gql-tag-operations-preset": "1.7.0",
"@graphql-typed-document-node/core": "3.1.1",
"@next/eslint-plugin-next": "13.0.0",
"@tailwindcss/line-clamp": "0.3.1",
"@types/cookies": "0.7.7",
"@types/dompurify": "2.3.3",
"@types/express": "4.17.14",
"@types/react": "17.0.45",
"@types/react-date-range": "1.1.8",
"@types/react-dom": "17.0.17",
"@types/react-virtualized-auto-sizer": "1.0.1",
"@types/react-window": "1.8.5",
"@types/js-cookie": "3.0.2",
"@welldone-software/why-did-you-render": "7.0.1",
"autoprefixer": "10.4.7",
"eslint-plugin-jsx-a11y": "6.5.1",
"eslint-plugin-react": "7.30.0",
"eslint-plugin-jsx-a11y": "6.6.1",
"eslint-plugin-react": "7.31.10",
"eslint-plugin-react-hooks": "4.6.0",
"eslint-plugin-tailwindcss": "3.5.2",
"eslint-plugin-tailwindcss": "3.6.2",
"postcss": "8.4.13",
"rimraf": "3.0.2",
"tailwindcss": "2.2.19",
"tailwindcss-radix": "2.2.0",
"@hive/emails": "*",

View file

@ -21,8 +21,6 @@
# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# local env files
.env.development.local

View file

@ -3,7 +3,7 @@
"private": true,
"version": "0.0.0",
"scripts": {
"dev": "next dev",
"dev": "next",
"start": "next start",
"build": "bob runify --single"
},
@ -16,7 +16,7 @@
"react-icons": "4.3.1"
},
"devDependencies": {
"@types/react": "17.0.45",
"@types/react": "17.0.50",
"@types/react-dom": "17.0.17"
},
"buildOptions": {

View file

@ -21,8 +21,6 @@
# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# local env files
.env.development.local

View file

@ -1,7 +1,7 @@
diff --git a/node_modules/@n1ru4l/dockest/dist/run/bootstrap/getParsedComposeFile.js b/node_modules/@n1ru4l/dockest/dist/run/bootstrap/getParsedComposeFile.js
diff --git a/dist/run/bootstrap/getParsedComposeFile.js b/dist/run/bootstrap/getParsedComposeFile.js
index 9734743..ae3c5c8 100644
--- a/node_modules/@n1ru4l/dockest/dist/run/bootstrap/getParsedComposeFile.js
+++ b/node_modules/@n1ru4l/dockest/dist/run/bootstrap/getParsedComposeFile.js
--- a/dist/run/bootstrap/getParsedComposeFile.js
+++ b/dist/run/bootstrap/getParsedComposeFile.js
@@ -18,6 +18,22 @@ const PortBinding = io.type({
published: io.number,
target: io.number,

View file

@ -1,7 +1,7 @@
diff --git a/node_modules/@tgriesser/schemats/bin/schemats.js b/node_modules/@tgriesser/schemats/bin/schemats.js
diff --git a/bin/schemats.js b/bin/schemats.js
index f467148..c2e2059 100755
--- a/node_modules/@tgriesser/schemats/bin/schemats.js
+++ b/node_modules/@tgriesser/schemats/bin/schemats.js
--- a/bin/schemats.js
+++ b/bin/schemats.js
@@ -41,6 +41,7 @@ let argv = yargs
.describe('o', 'output file name')
.describe('sqlite3', 'For sqlite3 dbs')
@ -20,10 +20,10 @@ index f467148..c2e2059 100755
});
fs.writeFileSync(argv.output, formattedOutput);
}
diff --git a/node_modules/@tgriesser/schemats/src/index.js b/node_modules/@tgriesser/schemats/src/index.js
diff --git a/src/index.js b/src/index.js
index 27a7b2e..9f47d6e 100644
--- a/node_modules/@tgriesser/schemats/src/index.js
+++ b/node_modules/@tgriesser/schemats/src/index.js
--- a/src/index.js
+++ b/src/index.js
@@ -40,10 +40,9 @@ function buildHeader(db, tables, schema, options) {
}
return `

View file

@ -1,17 +1,17 @@
diff --git a/node_modules/@theguild/buddy/index.mjs b/node_modules/@theguild/buddy/index.mjs
diff --git a/index.mjs b/index.mjs
index 7db160e..a94f537 100644
--- a/node_modules/@theguild/buddy/index.mjs
+++ b/node_modules/@theguild/buddy/index.mjs
--- a/index.mjs
+++ b/index.mjs
@@ -61,10 +61,11 @@ function sharePromise(setter) {
return sharedPromise;
};
}
-const cacheSymbol = Symbol.for("@cache");
function cacheResult(cacheKeyFn) {
return (_target, _propertyKey, descriptor) => {
const originalMethod = descriptor.value;
+ const cacheSymbol = Symbol('@cache');
+
function ensureCache(obj) {
if (!obj[cacheSymbol]) {
obj[cacheSymbol] = new Map();
return sharedPromise;
};
}
-const cacheSymbol = Symbol.for("@cache");
function cacheResult(cacheKeyFn) {
return (_target, _propertyKey, descriptor) => {
const originalMethod = descriptor.value;
+ const cacheSymbol = Symbol('@cache');
+
function ensureCache(obj) {
if (!obj[cacheSymbol]) {
obj[cacheSymbol] = new Map();

View file

@ -1,7 +1,7 @@
diff --git a/node_modules/atomic-sleep/index.js b/node_modules/atomic-sleep/index.js
diff --git a/index.js b/index.js
index fbfc8b2..6169638 100644
--- a/node_modules/atomic-sleep/index.js
+++ b/node_modules/atomic-sleep/index.js
--- a/index.js
+++ b/index.js
@@ -5,7 +5,7 @@
if (typeof SharedArrayBuffer !== 'undefined' && typeof Atomics !== 'undefined') {
const nil = new Int32Array(new SharedArrayBuffer(4))

View file

@ -1,59 +0,0 @@
diff --git a/node_modules/bob-the-bundler/dist/commands/runify.js b/node_modules/bob-the-bundler/dist/commands/runify.js
index a44025b..e03c087 100644
--- a/node_modules/bob-the-bundler/dist/commands/runify.js
+++ b/node_modules/bob-the-bundler/dist/commands/runify.js
@@ -83,7 +83,8 @@ async function runify(packagePath, _config, reporter) {
return;
}
if (isNext(pkg)) {
- await buildNext(cwd);
+ const additionalRequire = pkg?.buildOptions?.runify?.next?.header ?? null
+ await buildNext(cwd, additionalRequire);
await rewritePackageJson(pkg, cwd, (newPkg) => ({
...newPkg,
dependencies: pkg.dependencies,
@@ -137,7 +138,7 @@ function isNext(pkg) {
var _a, _b;
return ((_a = pkg === null || pkg === void 0 ? void 0 : pkg.dependencies) === null || _a === void 0 ? void 0 : _a.next) || ((_b = pkg === null || pkg === void 0 ? void 0 : pkg.devDependencies) === null || _b === void 0 ? void 0 : _b.next);
}
-async function buildNext(cwd) {
+async function buildNext(cwd, additionalRequire) {
await new Promise((resolve, reject) => {
const child = child_process_1.spawn("next", ["build"], {
stdio: "inherit",
@@ -146,7 +147,20 @@ async function buildNext(cwd) {
child.on("exit", (code) => (code ? reject(code) : resolve(code)));
child.on("error", reject);
});
+
await fs_extra_1.default.mkdirp(path_1.join(cwd, "dist"));
+
+ if (additionalRequire) {
+ await tsup_1.build({
+ entryPoints: [path_1.join(cwd, additionalRequire)],
+ outDir: path_1.join(cwd, "dist"),
+ target: "node16",
+ format: ["cjs"],
+ splitting: false,
+ skipNodeModulesBundle: true,
+ });
+ }
+
await Promise.all([
fs_extra_1.default.copy(path_1.join(cwd, ".next"), path_1.join(cwd, "dist/.next"), {
filter(src) {
@@ -159,11 +173,13 @@ async function buildNext(cwd) {
`#!/usr/bin/env node`,
`process.on('SIGTERM', () => process.exit(0))`,
`process.on('SIGINT', () => process.exit(0))`,
+ additionalRequire ? `require('${additionalRequire.replace(".ts", '')}')` : ``,
`
require('next/dist/server/lib/start-server').startServer({
dir: __dirname,
hostname: '0.0.0.0',
- port: parseInt(process.env.PORT)
+ port: parseInt(process.env.PORT),
+ conf: {},
}).then(async (app)=>{
const appUrl = 'http://' + app.hostname + ':' + app.port;
console.log('started server on '+ app.hostname + ':' + app.port + ', url: ' + appUrl);

View file

@ -1,7 +1,7 @@
diff --git a/node_modules/bullmq/dist/esm/classes/redis-connection.js b/node_modules/bullmq/dist/esm/classes/redis-connection.js
diff --git a/dist/esm/classes/redis-connection.js b/dist/esm/classes/redis-connection.js
index 7843e65..3807efe 100644
--- a/node_modules/bullmq/dist/esm/classes/redis-connection.js
+++ b/node_modules/bullmq/dist/esm/classes/redis-connection.js
--- a/dist/esm/classes/redis-connection.js
+++ b/dist/esm/classes/redis-connection.js
@@ -105,7 +105,7 @@ export class RedisConnection extends EventEmitter {
}
loadCommands() {
@ -11,10 +11,10 @@ index 7843e65..3807efe 100644
}
async init() {
if (!this._client) {
diff --git a/node_modules/bullmq/dist/esm/commands/script-loader.js b/node_modules/bullmq/dist/esm/commands/script-loader.js
diff --git a/dist/esm/commands/script-loader.js b/dist/esm/commands/script-loader.js
index 3ed1c00..79e455a 100644
--- a/node_modules/bullmq/dist/esm/commands/script-loader.js
+++ b/node_modules/bullmq/dist/esm/commands/script-loader.js
--- a/dist/esm/commands/script-loader.js
+++ b/dist/esm/commands/script-loader.js
@@ -2,6 +2,7 @@ import { createHash } from 'crypto';
import { glob, hasMagic } from 'glob';
import * as path from 'path';

View file

@ -1,7 +1,7 @@
diff --git a/node_modules/mjml-core/lib/index.js b/node_modules/mjml-core/lib/index.js
diff --git a/lib/index.js b/lib/index.js
index 597502e..0c686f3 100644
--- a/node_modules/mjml-core/lib/index.js
+++ b/node_modules/mjml-core/lib/index.js
--- a/lib/index.js
+++ b/lib/index.js
@@ -97,8 +97,6 @@ var _juice = _interopRequireDefault(require("juice"));
var _jsBeautify = require("js-beautify");

View file

@ -1,7 +1,7 @@
diff --git a/node_modules/slonik/dist/src/routines/executeQuery.js b/node_modules/slonik/dist/src/routines/executeQuery.js
diff --git a/dist/src/routines/executeQuery.js b/dist/src/routines/executeQuery.js
index 007d169..61441f8 100644
--- a/node_modules/slonik/dist/src/routines/executeQuery.js
+++ b/node_modules/slonik/dist/src/routines/executeQuery.js
--- a/dist/src/routines/executeQuery.js
+++ b/dist/src/routines/executeQuery.js
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
};
Object.defineProperty(exports, "__esModule", { value: true });

25109
pnpm-lock.yaml Normal file

File diff suppressed because it is too large Load diff

6
pnpm-workspace.yaml Normal file
View file

@ -0,0 +1,6 @@
packages:
- packages/services/*
- packages/web/*
- packages/libraries/*
- integration-tests
- deployment

View file

@ -10,7 +10,9 @@ import { createRequire } from 'module';
function patchPackage(name, patchFn) {
const require = createRequire(import.meta.url);
const indexFile = require.resolve(name);
const indexFile = require.resolve(name, {
paths: [path.join(process.cwd(), 'node_modules', '.pnpm', 'node_modules')],
});
const nameParts = name.split('/');
const packagePath = findPackageJson(path.dirname(indexFile), nameParts[nameParts.length - 1]);

View file

@ -2,10 +2,10 @@
for dir in packages/services/*/dist; do
name=$(echo $dir | awk -F / '{print $3}')
yarn sentry-cli releases files $SENTRY_RELEASE upload-sourcemaps $dir --no-rewrite --no-sourcemap-reference --url-prefix /app/node_modules/\@hive/$name \;
pnpm sentry-cli releases files $SENTRY_RELEASE upload-sourcemaps $dir --no-rewrite --no-sourcemap-reference --url-prefix /app/node_modules/\@hive/$name \;
done
for dir in packages/web/*/dist; do
name=$(echo $dir | awk -F / '{print $3}')
yarn sentry-cli releases files $SENTRY_RELEASE upload-sourcemaps $dir --no-rewrite --no-sourcemap-reference --url-prefix /app/node_modules/\@hive/$name \;
pnpm sentry-cli releases files $SENTRY_RELEASE upload-sourcemaps $dir --no-rewrite --no-sourcemap-reference --url-prefix /app/node_modules/\@hive/$name \;
done

View file

@ -1,9 +1,10 @@
{
"$schema": "https://turborepo.org/schema.json",
"baseBranch": "origin/main",
"globalDependencies": [
"package.json",
"codegen.yml",
"yarn.lock",
"pnpm-lock.yaml",
"jest.config.js",
"tsconfig.json",
"scripts/patch-manifests.js",

20970
yarn.lock

File diff suppressed because it is too large Load diff