mirror of
https://github.com/graphql-hive/console
synced 2026-04-21 14:37:17 +00:00
Use Node 20.8 (#2990)
This commit is contained in:
parent
ee5c2a16f3
commit
d6673b8144
23 changed files with 191 additions and 185 deletions
2
.github/workflows/pr.yaml
vendored
2
.github/workflows/pr.yaml
vendored
|
|
@ -98,7 +98,7 @@ jobs:
|
|||
npmTag: rc
|
||||
restoreDeletedChangesets: true
|
||||
buildScript: build:libraries
|
||||
nodeVersion: 18
|
||||
nodeVersion: 20
|
||||
packageManager: pnpm
|
||||
secrets:
|
||||
githubToken: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
|
|
|||
2
.github/workflows/release-alpha.yaml
vendored
2
.github/workflows/release-alpha.yaml
vendored
|
|
@ -8,7 +8,7 @@ jobs:
|
|||
with:
|
||||
npmTag: alpha
|
||||
buildScript: build:libraries
|
||||
nodeVersion: 18
|
||||
nodeVersion: 20
|
||||
packageManager: pnpm
|
||||
secrets:
|
||||
githubToken: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
18.18
|
||||
20.8
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
"devDependencies": {
|
||||
"@types/js-yaml": "4.0.6",
|
||||
"@types/mime-types": "2.1.1",
|
||||
"@types/node": "18.17.17",
|
||||
"@types/node": "20.8.0",
|
||||
"typescript": "5.2.2"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
FROM node:18.17.1-slim
|
||||
FROM node:20.8.0-slim
|
||||
|
||||
RUN apt-get update && apt-get install -y ca-certificates
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
FROM node:18.17.1-slim
|
||||
FROM node:20.8.0-slim
|
||||
|
||||
RUN apt-get update && apt-get install -y ca-certificates
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
FROM node:18.17.1-slim
|
||||
FROM node:20.8.0-slim
|
||||
|
||||
RUN apt-get update && apt-get install -y ca-certificates
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
FROM node:18.17.1-slim
|
||||
FROM node:20.8.0-slim
|
||||
|
||||
RUN apt-get update && apt-get install -y wget && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
Developing Hive locally requires you to have the following software installed locally:
|
||||
|
||||
- Node.js 18 LTS (or `nvm` or `fnm`)
|
||||
- Node.js 20 (or `nvm` or `fnm`)
|
||||
- pnpm v8
|
||||
- Docker
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ networks:
|
|||
|
||||
services:
|
||||
local_cdn:
|
||||
image: node:18.16.0-alpine3.16
|
||||
image: node:20.8.0-alpine3.17
|
||||
working_dir: /app
|
||||
command: ['node', 'index.js']
|
||||
networks:
|
||||
|
|
@ -38,7 +38,7 @@ services:
|
|||
S3_PUBLIC_URL: 'http://localhost:8083'
|
||||
|
||||
local_broker:
|
||||
image: node:18.16.0-alpine3.16
|
||||
image: node:20.8.0-alpine3.17
|
||||
working_dir: /app
|
||||
command: ['node', 'broker.js']
|
||||
networks:
|
||||
|
|
@ -78,7 +78,7 @@ services:
|
|||
SECRET: '${EXTERNAL_COMPOSITION_SECRET}'
|
||||
|
||||
external_composition:
|
||||
image: node:18.16.0-alpine3.16
|
||||
image: node:20.8.0-alpine3.17
|
||||
working_dir: /app
|
||||
command: ['node', 'example.mjs']
|
||||
networks:
|
||||
|
|
@ -261,10 +261,10 @@ services:
|
|||
|
||||
# It's not part of integration tests
|
||||
app:
|
||||
image: node:18.16.0-alpine3.16
|
||||
image: node:20.8.0-alpine3.17
|
||||
command: ['npx', 'http-server']
|
||||
|
||||
# Redpand is used for integration tests, instead of Kafka. Zookeeper is no longer needed
|
||||
zookeeper:
|
||||
image: node:18.16.0-alpine3.16
|
||||
image: node:20.8.0-alpine3.17
|
||||
command: ['npx', 'http-server']
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
"private": true,
|
||||
"packageManager": "pnpm@8.8.0",
|
||||
"engines": {
|
||||
"node": ">=18",
|
||||
"node": ">=20",
|
||||
"pnpm": ">=8.8.0"
|
||||
},
|
||||
"scripts": {
|
||||
|
|
@ -68,7 +68,7 @@
|
|||
"@swc/core": "1.3.85",
|
||||
"@theguild/eslint-config": "0.11.0",
|
||||
"@theguild/prettier-config": "1.2.0",
|
||||
"@types/node": "18.17.17",
|
||||
"@types/node": "20.8.0",
|
||||
"bob-the-bundler": "7.0.1",
|
||||
"cypress": "13.2.0",
|
||||
"dotenv": "16.3.1",
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ const pkg = JSON.parse(readFileSync(join(__dirname, 'package.json'), 'utf8'));
|
|||
await tsup({
|
||||
entry: [join(__dirname, 'example.mjs')],
|
||||
outDir: join(__dirname, 'dist'),
|
||||
target: 'node18',
|
||||
target: 'node20',
|
||||
format: ['esm'],
|
||||
splitting: false,
|
||||
sourcemap: true,
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
"devDependencies": {
|
||||
"@graphql-hive/core": "workspace:*",
|
||||
"@types/bcryptjs": "2.4.4",
|
||||
"@types/node": "18.17.17",
|
||||
"@types/node": "20.8.0",
|
||||
"@types/pg": "8.10.2",
|
||||
"@whatwg-node/fetch": "0.9.13",
|
||||
"bcryptjs": "2.4.3",
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ import { describe, test } from 'node:test';
|
|||
import { sql } from 'slonik';
|
||||
import { initMigrationTestingEnvironment } from './utils/testkit';
|
||||
|
||||
describe('migration: drop-personal-org', async () => {
|
||||
await describe('migration: drop-personal-org', async () => {
|
||||
await test('should remove all existing personal orgs that does not have projects', async () => {
|
||||
const { db, runTo, complete, done, seed } = await initMigrationTestingEnvironment();
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ import { describe, test } from 'node:test';
|
|||
import { sql } from 'slonik';
|
||||
import { initMigrationTestingEnvironment } from './utils/testkit';
|
||||
|
||||
describe('migration: github-check-with-project-name', async () => {
|
||||
await describe('migration: github-check-with-project-name', async () => {
|
||||
await test('should use FALSE for existing projects and TRUE for new', async () => {
|
||||
const { db, runTo, complete, done, seed } = await initMigrationTestingEnvironment();
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/* eslint-disable import/first */
|
||||
/* eslint-disable import/no-extraneous-dependencies */
|
||||
|
||||
import { dirname, resolve } from 'node:path';
|
||||
import { fileURLToPath } from 'node:url';
|
||||
import { config } from 'dotenv';
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ import { build } from 'esbuild';
|
|||
entryPoints: [`${__dirname}/src/dev.ts`],
|
||||
bundle: true,
|
||||
platform: 'node',
|
||||
target: 'node18',
|
||||
target: 'node20',
|
||||
minify: false,
|
||||
outfile: nodeOutputPath,
|
||||
treeShaking: true,
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ await Promise.all([
|
|||
entryPoints: [`${__dirname}/src/dev.ts`],
|
||||
bundle: true,
|
||||
platform: 'node',
|
||||
target: 'node18',
|
||||
target: 'node20',
|
||||
minify: false,
|
||||
outfile: nodeOutputPath,
|
||||
treeShaking: true,
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
"@sentry/types": "7.69.0",
|
||||
"@tgriesser/schemats": "9.0.1",
|
||||
"@theguild/buddy": "0.1.0",
|
||||
"@types/node": "18.17.17",
|
||||
"@types/node": "20.8.0",
|
||||
"@types/pg": "8.10.2",
|
||||
"dotenv": "16.3.1",
|
||||
"got": "12.6.1",
|
||||
|
|
|
|||
|
|
@ -148,7 +148,9 @@ function Comment({ node }: { node: FragmentType<typeof Comment_SupportTicketComm
|
|||
<TimeAgo date={comment.createdAt} className="text-gray-500" />
|
||||
</TooltipContent>
|
||||
</Tooltip>
|
||||
{isSupport ? <img className="block w-6 h-6" src="/just-logo.svg" /> : null}
|
||||
{isSupport ? (
|
||||
<img className="block w-6 h-6" src="/just-logo.svg" alt="GraphQL Hive logo" />
|
||||
) : null}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -192,13 +192,13 @@ function Feature(props: {
|
|||
}}
|
||||
/>
|
||||
<div
|
||||
className="absolute opacity-[0.15] w-[60vw] h-[255px] -left-[200px] -top-[200px] blur-3xl"
|
||||
className="absolute opacity-[0.15] w-[60vw] h-[255px] left-[-200px] top-[-200px] blur-3xl"
|
||||
style={{
|
||||
backgroundImage: `linear-gradient(180deg, ${end}, ${start})`,
|
||||
}}
|
||||
/>
|
||||
<div
|
||||
className="absolute opacity-[0.15] w-[60vw] h-[255px] -right-[200px] -top-[200px] blur-3xl"
|
||||
className="absolute opacity-[0.15] w-[60vw] h-[255px] right-[-200px] top-[-200px] blur-3xl"
|
||||
style={{
|
||||
backgroundImage: `linear-gradient(180deg, ${start}, ${end})`,
|
||||
}}
|
||||
|
|
@ -399,8 +399,8 @@ export function IndexPage(): ReactElement {
|
|||
<div className={cn(classes.feature, 'relative overflow-hidden')}>
|
||||
<div>
|
||||
<div className="w-full absolute h-[1px] top-0 opacity-25 bg-gradient-to-r from-gray-300 via-gray-500 to-gray-300" />
|
||||
<div className="absolute opacity-[0.15] w-[60vw] h-[255px] -left-[200px] -top-[200px] blur-3xl bg-gradient-to-b from-gray-50 to-gray-300" />
|
||||
<div className="absolute opacity-[0.15] w-[60vw] h-[255px] -right-[200px] -top-[200px] blur-3xl bg-gradient-to-b from-gray-300 to-gray-50" />
|
||||
<div className="absolute opacity-[0.15] w-[60vw] h-[255px] left-[-200px] top-[-200px] blur-3xl bg-gradient-to-b from-gray-50 to-gray-300" />
|
||||
<div className="absolute opacity-[0.15] w-[60vw] h-[255px] right-[-200px] top-[-200px] blur-3xl bg-gradient-to-b from-gray-300 to-gray-50" />
|
||||
</div>
|
||||
<div className="py-24">
|
||||
<h2 className="base:mr-1 ml-1 text-3xl font-semibold leading-normal tracking-tight text-center mb-12 text-black">
|
||||
|
|
@ -535,8 +535,8 @@ export function IndexPage(): ReactElement {
|
|||
<div className={cn(classes.feature, 'relative overflow-hidden')}>
|
||||
<div>
|
||||
<div className="w-full absolute h-[1px] top-0 opacity-25 bg-gradient-to-r from-gray-300 via-gray-500 to-gray-300" />
|
||||
<div className="absolute opacity-[0.15] w-[60vw] h-[255px] -left-[200px] -top-[200px] blur-3xl bg-gradient-to-b from-gray-600 to-gray-900" />
|
||||
<div className="absolute opacity-[0.15] w-[60vw] h-[255px] -right-[200px] -top-[200px] blur-3xl bg-gradient-to-b from-gray-900 to-gray-600" />
|
||||
<div className="absolute opacity-[0.15] w-[60vw] h-[255px] left-[-200px] top-[-200px] blur-3xl bg-gradient-to-b from-gray-600 to-gray-900" />
|
||||
<div className="absolute opacity-[0.15] w-[60vw] h-[255px] right-[-200px] top-[-200px] blur-3xl bg-gradient-to-b from-gray-900 to-gray-600" />
|
||||
</div>
|
||||
<div className="py-24">
|
||||
<h2 className="text-3xl font-semibold leading-normal tracking-tight text-center mb-12 text-black">
|
||||
|
|
@ -576,13 +576,13 @@ export function IndexPage(): ReactElement {
|
|||
}}
|
||||
/>
|
||||
<div
|
||||
className="absolute opacity-[0.15] w-[60vw] h-[255px] -left-[200px] -top-[200px] blur-3xl"
|
||||
className="absolute opacity-[0.15] w-[60vw] h-[255px] left-[-200px] top-[-200px] blur-3xl"
|
||||
style={{
|
||||
backgroundImage: `linear-gradient(180deg, ${gradients[3][0]}, ${gradients[3][1]})`,
|
||||
}}
|
||||
/>
|
||||
<div
|
||||
className="absolute opacity-[0.15] w-[60vw] h-[255px] -right-[200px] -top-[200px] blur-3xl"
|
||||
className="absolute opacity-[0.15] w-[60vw] h-[255px] right-[-200px] top-[-200px] blur-3xl"
|
||||
style={{
|
||||
backgroundImage: `linear-gradient(180deg, ${gradients[3][1]}, ${gradients[3][0]})`,
|
||||
}}
|
||||
|
|
|
|||
304
pnpm-lock.yaml
304
pnpm-lock.yaml
File diff suppressed because it is too large
Load diff
|
|
@ -91,7 +91,7 @@ async function buildWithNext(cwd: string, additionalRequire: string | null) {
|
|||
await tsup({
|
||||
entryPoints: [normalize(join(cwd, additionalRequire))],
|
||||
outDir: normalize(join(cwd, 'dist')),
|
||||
target: 'node18',
|
||||
target: 'node20',
|
||||
format: ['cjs'],
|
||||
splitting: false,
|
||||
skipNodeModulesBundle: true,
|
||||
|
|
@ -130,7 +130,7 @@ async function compile(
|
|||
await tsup({
|
||||
entryPoints: [normalize(join(cwd, entryPoint))],
|
||||
outDir: out,
|
||||
target: 'node18',
|
||||
target: 'node20',
|
||||
format: [useEsm ? 'esm' : 'cjs'],
|
||||
splitting: false,
|
||||
sourcemap: true,
|
||||
|
|
|
|||
Loading…
Reference in a new issue