Skip to content

feat: generate jsonrpc headers at build time - #8350

Merged
d2weber merged 2 commits into
mainfrom
d2weber/buildtime_jsonrpc
Sep 9, 2026
Merged

d2weber merged 2 commits into
mainfrom
d2weber/buildtime_jsonrpc

Conversation

@d2weber

@d2weber d2weber commented Jun 19, 2026

Copy link
Copy Markdown
Collaborator

Discussion in chatmail/yerpc#77. The necessary yerpc changes for this PR are in chatmail/yerpc#78

This is also a preparation for #8330

@d2weber
d2weber force-pushed the d2weber/buildtime_jsonrpc branch from 28091ad to b1e55eb Compare September 3, 2026 09:41
@d2weber
d2weber marked this pull request as ready for review September 3, 2026 11:35
@Simon-Laux

Copy link
Copy Markdown
Member

Once yerpc is updated to new release and this PR is merged, we can finally remove unused web socket dependencies as well #7723

link2xt
link2xt previously approved these changes Sep 8, 2026

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This needs to be fixed, otherwise releasing will fail

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Good catch!

@link2xt
link2xt dismissed their stale review September 8, 2026 19:10

Working directory in CI still needs update

@d2weber
d2weber merged commit 187c5f4 into main Sep 9, 2026
92 of 93 checks passed
@d2weber
d2weber deleted the d2weber/buildtime_jsonrpc branch September 9, 2026 14:09
hpk42 added a commit that referenced this pull request Oct 6, 2026
Since #8350 (2026-09-09) deltachat-jsonrpc-bindings build-depends
on deltachat-jsonrpc, so clippy, nextest and the doctests,
which select the whole workspace, compiled core
and its whole dependency tree a second time for the host.
The lint job also checked every dependency twice, once per panic strategy,
and repeated clippy's checks in a separate all-features `cargo check`.

With a warm cache on 4 CPUs on my machine, the lint job drops
from 150 to 60 seconds and the tests build
from 100 to 75 seconds.
Peak memory falls for lint from
5.1 to 3.5 GiB and for tests
7.5 to 5.4 GiB.
hpk42 added a commit that referenced this pull request Oct 6, 2026
Since #8350 (2026-09-09) deltachat-jsonrpc-bindings build-depends
on deltachat-jsonrpc, so clippy, nextest and the doctests,
which select the whole workspace, compiled core
and its whole dependency tree a second time for the host.
The lint job also checked every dependency twice, once per panic strategy,
and repeated clippy's checks in a separate all-features `cargo check`.

With a warm cache on 4 CPUs on my machine, the lint job drops
from 150 to 60 seconds and the tests build
from 100 to 75 seconds.
Peak memory falls for lint from
5.1 to 3.5 GiB and for tests
7.5 to 5.4 GiB.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants