Skip to content

ci(release)!: v2#11

Draft
dargmuesli wants to merge 15 commits intomainfrom
beta
Draft

ci(release)!: v2#11
dargmuesli wants to merge 15 commits intomainfrom
beta

Conversation

@dargmuesli
Copy link
Member

dargmuesli and others added 4 commits February 20, 2026 05:00
feat(postgraphile)!: upgrade to v5
## [2.0.0-beta.1](1.0.19...2.0.0-beta.1) (2026-02-20)

### ⚠ BREAKING CHANGES

* **postgraphile:** upgrade to v5

### Features

* **postgraphile:** upgrade to v5 ([892c80b](892c80b))
@dargmuesli dargmuesli changed the title ci(release): v10 ci(release)!: v10 Feb 20, 2026
@dargmuesli dargmuesli changed the title ci(release)!: v10 ci(release)!: v2 Feb 20, 2026
dargmuesli and others added 2 commits February 20, 2026 08:37
## [2.0.0-beta.2](2.0.0-beta.1...2.0.0-beta.2) (2026-02-20)

### Bug Fixes

* **postgres:** readd connection string ([f3f7d82](f3f7d82))
@maevsi-bot
Copy link

🎉 This PR is included in version 2.0.0-beta.2 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

dargmuesli and others added 2 commits February 24, 2026 03:45
## [2.0.0-beta.3](2.0.0-beta.2...2.0.0-beta.3) (2026-02-24)

### Bug Fixes

* **postgis:** update plugin with geojson/srid fix ([59bf0c5](59bf0c5))
@maevsi-bot
Copy link

🎉 This PR is included in version 2.0.0-beta.3 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

dargmuesli and others added 2 commits February 24, 2026 10:50
## [2.0.0-beta.4](2.0.0-beta.3...2.0.0-beta.4) (2026-02-26)

### Bug Fixes

* **grafast:** correct context claim value encoding ([369cfe9](369cfe9))
@maevsi-bot
Copy link

🎉 This PR is included in version 2.0.0-beta.4 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR modernizes the container/image setup around PostGraphile v5 by introducing a TypeScript-based Graphile preset, JWT-aware request context, and updated tooling (pnpm, ESLint/Prettier, TS config) to support a v2 release line.

Changes:

  • Add Graphile v5 preset/config with JWT verification and masked error shaping.
  • Introduce TypeScript + ESLint/Prettier configuration and pnpm-based dependency management.
  • Rework Dockerfile into a multi-stage build with separate lint/build/production stages and a runtime entrypoint.

Reviewed changes

Copilot reviewed 13 out of 17 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
Dockerfile New multi-stage build for dev/lint/build/prod PostGraphile image.
docker-entrypoint.sh Loads env vars from /run/environment-variables and installs deps in non-prod.
src/graphile.config.ts Defines the PostGraphile v5 preset (services, JWT signing options, dev flags).
src/graphile.ts Implements Grafast context JWT verification + Grafserv error masking.
src/environment.ts Adds helper to validate required environment variables.
eslint.config.ts Adds ESLint flat config integrating TS + JSON + Prettier.
tsconfig.json Adds strict TypeScript compiler options for the project.
package.json Defines deps/scripts/tooling for pnpm/TypeScript/ESLint-based workflow.
pnpm-lock.yaml Locks dependency graph for pnpm.
graphile-postgis-v0.2.0.tgz Bundles a local @graphile/postgis plugin tarball dependency.
.prettierrc.json Enables Prettier config (single quotes, no semicolons).
.gitignore / .dockerignore Ignores node_modules and .eslintcache.
.vscode/* Updates editor defaults and recommended extensions.
.renovaterc.json Tweaks Renovate config inheritance.
CHANGELOG.md Updates changelog entries for 2.0.0-beta.* releases.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

ENV NODE_ENV=production

USER node
ENTRYPOINT ["docker-entrypoint.sh"]
Copy link

Copilot AI Mar 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the production stage, ENTRYPOINT ["docker-entrypoint.sh"] likely won’t resolve because the script is copied into the WORKDIR and the WORKDIR isn’t on PATH. Use an absolute path (e.g. /srv/app/docker-entrypoint.sh) or a relative path that includes ./ so the container can start reliably.

Suggested change
ENTRYPOINT ["docker-entrypoint.sh"]
ENTRYPOINT ["/srv/app/docker-entrypoint.sh"]

Copilot uses AI. Check for mistakes.
Comment on lines +37 to +38
USER node
ENTRYPOINT ["/srv/app/docker-entrypoint.sh"]
Copy link

Copilot AI Mar 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The development stage sets ENTRYPOINT ["/srv/app/docker-entrypoint.sh"] but the image never copies docker-entrypoint.sh into /srv/app (and /srv/app is declared as a VOLUME, so it will be empty by default). Unless callers always bind-mount the repository into /srv/app, the container will fail to start. Consider copying the entrypoint script into a non-volume path (or at least into /srv/app before declaring the volume).

Suggested change
USER node
ENTRYPOINT ["/srv/app/docker-entrypoint.sh"]
COPY ./docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh
USER node
ENTRYPOINT ["docker-entrypoint.sh"]

Copilot uses AI. Check for mistakes.
plugins: { js },
extends: ['js/recommended'],
},
tseslint.configs.recommended,
Copy link

Copilot AI Mar 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tseslint.configs.recommended is typically a config array; placing it as a single element inside defineConfig([ ... ]) can produce a nested array and cause ESLint to ignore the config or error while loading. Prefer spreading it (e.g. ...tseslint.configs.recommended) or switching to tseslint.config(...) to compose configs.

Suggested change
tseslint.configs.recommended,
...tseslint.configs.recommended,

Copilot uses AI. Check for mistakes.
Comment on lines +39 to +41
"type": "module",
"version": "1.0.14"
}
Copy link

Copilot AI Mar 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The PR title/changelog indicate a v2 (2.0.0-beta.*) release line, but package.json still declares version 1.0.14. If this package is versioned/published (or referenced by tooling), this mismatch can confuse release automation and consumers; consider updating the version to match the intended release series or documenting that semantic-release tags are authoritative.

Copilot uses AI. Check for mistakes.
@maevsi-bot
Copy link

🎉 This PR is included in version 2.0.0-beta.5 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

dargmuesli and others added 2 commits March 14, 2026 07:05
## [2.0.0-beta.6](2.0.0-beta.5...2.0.0-beta.6) (2026-03-14)

### ⚠ BREAKING CHANGES

* **jwt:** use ecdsa key

### Features

* **jwt:** use ecdsa key ([65b70d1](65b70d1))
@maevsi-bot
Copy link

🎉 This PR is included in version 2.0.0-beta.6 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants