Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
61b60bd
windows build testing
pk8189 Dec 3, 2025
c22ac82
allow dirty for tests
pk8189 Dec 3, 2025
5725466
windows system dependency downgrade for build
pk8189 Dec 3, 2025
5ba7c98
install nasm in action
pk8189 Dec 3, 2025
5cebbc9
pdb bug fix
pk8189 Dec 3, 2025
099dcd6
pdb bug fix in build not just dist
pk8189 Dec 4, 2025
c8cf681
pdb more toml space save attempts
pk8189 Dec 4, 2025
01d7cb0
pdb more toml space save attempts
pk8189 Dec 4, 2025
8058254
windows build overrides
pk8189 Dec 4, 2025
df376e2
windows build overrides
pk8189 Dec 4, 2025
7f9be62
try flagging debug home for windows
pk8189 Dec 4, 2025
ee373a0
try flagging debug home for windows
pk8189 Dec 4, 2025
6050acf
text updates
pk8189 Dec 4, 2025
4015945
language updates
pk8189 Dec 4, 2025
31f5eb4
language updates
pk8189 Dec 4, 2025
b859e1e
now debug ci to fix build caused by the windows related changes
pk8189 Dec 5, 2025
21381db
now debug ci to fix build caused by the windows related changes
pk8189 Dec 5, 2025
372b6bf
remove debugging changes to fix both builds
pk8189 Dec 5, 2025
786afd9
try windows sys update
pk8189 Dec 5, 2025
0d33559
try no windows sys dep
pk8189 Dec 5, 2025
f4bbf6c
try one crate with windows dep
pk8189 Dec 5, 2025
2c0b499
typo in 1 windows dep
pk8189 Dec 5, 2025
db98680
try clang system-dep in pctx cargo.toml:dist
pk8189 Dec 5, 2025
878091d
system deps change and windows mimalloc dep
pk8189 Dec 5, 2025
80803d1
system deps change for ci
pk8189 Dec 5, 2025
682366d
try bundled rusqlite
pk8189 Dec 5, 2025
cb5414f
older rusqlite
pk8189 Dec 5, 2025
6653ed4
update ci yaml
pk8189 Dec 5, 2025
1e1c3f0
restore dist
pk8189 Dec 5, 2025
b13765b
remove extra file
pk8189 Dec 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 15 additions & 3 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -1,8 +1,20 @@
# Windows-specific linker configuration to avoid PDB errors
[target.x86_64-pc-windows-msvc]
# Use /DEBUG:NONE to completely disable PDB generation in debug builds
# This avoids LNK1318 errors when too many PDBs are generated in parallel
rustflags = ["-C", "link-args=/DEBUG:NONE"]
# Use lld-link instead of link.exe to avoid PDB size limits (LNK1318)
# lld-link is LLVM's linker and doesn't have the same PDB limitations as MSVC's link.exe
linker = "rust-lld"
# Disable incremental compilation and debug info to avoid LNK1318 PDB size limits
# Use /DEBUG:NONE to completely disable PDB generation
# /NODEFAULTLIB:libcmt to suppress LNK4098 warning
rustflags = [
"-C", "incremental=off",
"-C", "debuginfo=0",
"-C", "codegen-units=256",
"-C", "link-arg=/DEBUG:NONE",
"-C", "link-arg=/NODEFAULTLIB:libcmt",
"-C", "link-arg=/INCREMENTAL:NO",
"-C", "link-arg=/OPT:NOREF",
]

[alias]
pctx = "run -p pctx --"
8 changes: 8 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,14 @@ jobs:
with:
# Clean up old cache entries to save space
cache-on-failure: false

# Install build dependencies for libsqlite3-sys bindgen
- name: Install build dependencies (Linux)
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libclang-dev libc6-dev

# - name: Set Windows build jobs
# if: matrix.os == 'windows-latest'
# run: echo "CARGO_BUILD_JOBS=1" >> $GITHUB_ENV
Expand Down
6 changes: 3 additions & 3 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 9 additions & 5 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ repository = "https://github.com/portofcontext/pctx"
tracing = "0.1.41"
thiserror = "2.0"


[workspace.lints.rust]
unreachable_pub = "warn"

Expand All @@ -31,15 +30,20 @@ too_many_lines = "allow"

[profile.release]
opt-level = 3
lto = "fat"
codegen-units = 1
strip = true
# Use thin LTO to reduce PDB size on Windows (fat LTO creates massive PDB files)
lto = "thin"
# Increase codegen units to reduce per-unit size and avoid Windows PDB limits
codegen-units = 16
strip = "debuginfo"
# Completely disable debug info to avoid Windows PDB size limits (LNK1318 error)
debug = 0

# The profile that 'dist' will build with
[profile.dist]
inherits = "release"
lto = "thin"

# Reduce debug info to avoid Windows PDB size limits (LNK1318 error)
debug = 0

# [profile.dev.package."*"]
# opt-level = 3
Expand Down
4 changes: 3 additions & 1 deletion crates/deno_executor/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,9 @@ tracing = { workspace = true }
futures = "0.3"

[target.'cfg(windows)'.dependencies]
windows-sys = { version = "0.61.2", features = [
# Need version 0.59 to match deno_subprocess_windows transitive dependency
# and ensure the feature is enabled for it as well
windows-sys = { version = "0.59", features = [
"Win32_System_SystemInformation",
] }

Expand Down
8 changes: 8 additions & 0 deletions crates/pctx/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -108,3 +108,11 @@ workspace = true

[package.metadata.dist]
dist = true

# System dependencies for cargo-dist to install
[package.metadata.dist.dependencies.apt]
libclang-dev = "*"
libc6-dev = "*"

[package.metadata.dist.dependencies.chocolatey]
nasm = "*"
7 changes: 6 additions & 1 deletion dist-workspace.toml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,12 @@ pr-run-mode = "plan"
# Whether CI should include auto-generated code to build local artifacts
build-local-artifacts = true
# Target platforms to build apps for (Rust target-triple syntax)
targets = ["aarch64-apple-darwin", "aarch64-unknown-linux-gnu", "x86_64-unknown-linux-gnu"]
targets = [
"aarch64-apple-darwin",
"aarch64-unknown-linux-gnu",
"x86_64-unknown-linux-gnu",
"x86_64-pc-windows-msvc",
]
# Where to host releases
hosting = "github"
# Whether to install an updater program
Expand Down