feat: generate jsonrpc headers at build time (#8350)

Discussion in https://github.com/chatmail/yerpc/issues/77. The necessary
yerpc changes for this PR are in
https://github.com/chatmail/yerpc/pull/78

This is also a preparation for #8330
This commit is contained in:
d2weber
2026-09-09 16:09:00 +02:00
committed by GitHub
parent 4bf42c0af9
commit 187c5f4949
26 changed files with 51 additions and 17 deletions

View File

@@ -31,15 +31,15 @@ jobs:
package-manager-cache: false # never use caching in release builds
- name: Install dependencies without running scripts
working-directory: deltachat-jsonrpc/typescript
working-directory: deltachat-jsonrpc-bindings/typescript
run: npm install --ignore-scripts
- name: Package
working-directory: deltachat-jsonrpc/typescript
working-directory: deltachat-jsonrpc-bindings/typescript
run: |
npm run build
npm pack .
- name: Publish
working-directory: deltachat-jsonrpc/typescript
working-directory: deltachat-jsonrpc-bindings/typescript
run: npm publish --provenance deltachat-jsonrpc-client-* --access public

View File

@@ -30,16 +30,16 @@ jobs:
save-if: ${{ github.ref == 'refs/heads/main' }}
cache-bin: false
- name: npm install
working-directory: deltachat-jsonrpc/typescript
working-directory: deltachat-jsonrpc-bindings/typescript
run: npm install
- name: Build TypeScript, run Rust tests, generate bindings
working-directory: deltachat-jsonrpc/typescript
working-directory: deltachat-jsonrpc-bindings/typescript
run: npm run build
- name: Run integration tests
working-directory: deltachat-jsonrpc/typescript
working-directory: deltachat-jsonrpc-bindings/typescript
run: npm run test
env:
CHATMAIL_DOMAIN: ${{ vars.CHATMAIL_DOMAIN }}
- name: Run linter
working-directory: deltachat-jsonrpc/typescript
working-directory: deltachat-jsonrpc-bindings/typescript
run: npm run prettier:check

View File

@@ -81,7 +81,7 @@ jobs:
defaults:
run:
working-directory: ./deltachat-jsonrpc/typescript
working-directory: ./deltachat-jsonrpc-bindings/typescript
steps:
- uses: actions/checkout@v7
@@ -104,7 +104,7 @@ jobs:
mkdir -p "$HOME/.ssh"
echo "${{ secrets.JS_JSONRPC_DOCS_SSH_KEY }}" > "$HOME/.ssh/key"
chmod 600 "$HOME/.ssh/key"
rsync -avzh --delete -e "ssh -i $HOME/.ssh/key -o StrictHostKeyChecking=no" $GITHUB_WORKSPACE/deltachat-jsonrpc/typescript/docs/ "${{ secrets.JS_JSONRPC_DOCS_SSH_USER }}@js.jsonrpc.delta.chat:"
rsync -avzh --delete -e "ssh -i $HOME/.ssh/key -o StrictHostKeyChecking=no" $GITHUB_WORKSPACE/deltachat-jsonrpc-bindings/typescript/docs/ "${{ secrets.JS_JSONRPC_DOCS_SSH_USER }}@js.jsonrpc.delta.chat:"
build-cffi:
runs-on: ubuntu-latest