Skip to content
Open
Show file tree
Hide file tree
Changes from 14 commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
58eb89a
Use correct LLVM version
gohryt Jul 30, 2025
4e02d47
Fix linting
gohryt Sep 17, 2025
b3d7129
Add zed settings
gohryt Oct 4, 2025
6ad42f7
Add COPY support
gohryt Oct 7, 2025
1d53572
Fix ASAN leak
gohryt Oct 7, 2025
65890e1
Replace local configuration with path relative to project root
gohryt Oct 7, 2025
f8d5139
Update sql.d.ts to follow implementation changes
gohryt Oct 7, 2025
f6e9fde
Update sql.d.ts to follow implementation changes
gohryt Oct 7, 2025
3165a59
Fix schema-qualified table quoting in copyTo
gohryt Oct 7, 2025
3af329b
Prevent double-free and leaks when reusing CopyInResponse
gohryt Oct 7, 2025
841a5bf
Avoid logging at ts code
gohryt Oct 7, 2025
6694a41
Migrate tests from local repo
gohryt Oct 8, 2025
f9d720d
Fix text/CSV COPY rows bypass maxBytes & progress tracking
gohryt Oct 8, 2025
d136c61
Fix don’t coerce copy limits with | 0.
gohryt Oct 8, 2025
d943356
I hate it
gohryt Oct 8, 2025
39ee964
Fix await addToBatch for raw string chunks in sync iterable loop.
gohryt Oct 9, 2025
87995d1
Fixes related to AI audit
gohryt Oct 9, 2025
68c2995
Fixes related to AI audit
gohryt Oct 9, 2025
0756879
Fixes related to AI audit
gohryt Oct 9, 2025
36155b6
Fixes related to AI audit
gohryt Oct 9, 2025
66c0421
Fixes related to AI audit
gohryt Oct 11, 2025
504ef38
Fixes related to AI audit
gohryt Oct 11, 2025
d9798bf
Fixes related to AI audit
gohryt Oct 12, 2025
ed06c16
Merge branch 'main' into gohryt-1
gohryt Oct 15, 2025
50f34c7
Fixes related to AI audit
gohryt Oct 16, 2025
f1c0184
Fixes related to AI audit
gohryt Oct 16, 2025
c1c84cf
Merge branch 'main' into gohryt-1
gohryt Oct 29, 2025
54455f6
Merge branch 'main' into gohryt-1
gohryt Nov 13, 2025
1acc43b
Merge branch 'main' into gohryt-1
gohryt Nov 14, 2025
06c1665
Revert "Use correct LLVM version"
gohryt Nov 14, 2025
11bfab3
Make it work with zig 0.15.2, fixes related to ai audit
gohryt Nov 15, 2025
549f56f
Replace direct zig and zls path with direnv
gohryt Jan 9, 2026
a38eae8
Merge branch 'main' into gohryt-1
gohryt Jan 9, 2026
8899ef7
Cleanup tests
gohryt Jan 9, 2026
b65be62
Merge branch 'main' into gohryt-1
gohryt Jan 18, 2026
53dfd5b
Fix tests for updated main
gohryt Jan 18, 2026
d3743ec
Cleanup for duplicating code, rework errors, handle large inputs
gohryt Jan 18, 2026
7dce80c
Fixes related to AI audit
gohryt Jan 18, 2026
2ad3b3c
Fixes related to AI audit
gohryt Jan 18, 2026
aa91385
Fixes related to AI audit
gohryt Jan 18, 2026
4b6cc5f
Fixes related to AI audit
gohryt Jan 18, 2026
70a1871
Fixes related to AI audit
gohryt Jan 18, 2026
9d51e90
Avoid typing to any
gohryt Jan 18, 2026
ba95f44
Fixes related to AI audit
gohryt Jan 18, 2026
951dfd9
Fixes related to AI audit
gohryt Jan 18, 2026
9ffce71
Fix typing on ts side
gohryt Jan 18, 2026
2f7f0f0
Fixes related to AI audit
gohryt Jan 18, 2026
efdfb54
Fixes related to AI audit
gohryt Jan 18, 2026
b528a2e
Fixes related to AI audit
gohryt Jan 18, 2026
59674c1
Fixes related to AI audit
gohryt Jan 19, 2026
9fe79fd
Fixes related to AI audit
gohryt Jan 19, 2026
01f88f8
Fixes related to AI audit
gohryt Jan 19, 2026
6f84feb
Fixes related to AI audit
gohryt Jan 19, 2026
6b5a71f
Fixes related to AI audit
gohryt Jan 19, 2026
dc5b996
Fixes related to AI audit
gohryt Jan 19, 2026
533f607
Fixes related to AI audit
gohryt Jan 19, 2026
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
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
.vscode/clang*
.vscode/cpp*
.zig-cache
.ccls-cache
.bake-debug
*.a
*.bc
Expand Down
14 changes: 14 additions & 0 deletions .zed/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"lsp": {
"zls": {
"binary": {
"path": "/home/gohryt/Documents/github.com/gohryt/bun/vendor/zig/zls"
},
"settings": {
"zig_exe_path": "/home/gohryt/Documents/github.com/gohryt/bun/vendor/zig/zig",
"zig_lib_path": "/home/gohryt/Documents/github.com/gohryt/bun/vendor/zig/lib",
"build_on_save_args": ["-Dgenerated-code=./build/debug/codegen", "--watch", "-fincremental"]
}
}
}
}
Comment thread
gohryt marked this conversation as resolved.
96 changes: 48 additions & 48 deletions cmake/tools/SetupLLVM.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -3,121 +3,121 @@ set(DEFAULT_ENABLE_LLVM ON)

# if target is bun-zig, set ENABLE_LLVM to OFF
if(TARGET bun-zig)
set(DEFAULT_ENABLE_LLVM OFF)
set(DEFAULT_ENABLE_LLVM OFF)
endif()

optionx(ENABLE_LLVM BOOL "If LLVM should be used for compilation" DEFAULT ${DEFAULT_ENABLE_LLVM})

if(NOT ENABLE_LLVM)
return()
return()
endif()

set(DEFAULT_LLVM_VERSION "19.1.7")
set(DEFAULT_LLVM_VERSION "20.1.8")

optionx(LLVM_VERSION STRING "The version of LLVM to use" DEFAULT ${DEFAULT_LLVM_VERSION})

string(REGEX MATCH "([0-9]+)\\.([0-9]+)\\.([0-9]+)" USE_LLVM_VERSION ${LLVM_VERSION})
if(USE_LLVM_VERSION)
set(LLVM_VERSION_MAJOR ${CMAKE_MATCH_1})
set(LLVM_VERSION_MINOR ${CMAKE_MATCH_2})
set(LLVM_VERSION_PATCH ${CMAKE_MATCH_3})
set(LLVM_VERSION_MAJOR ${CMAKE_MATCH_1})
set(LLVM_VERSION_MINOR ${CMAKE_MATCH_2})
set(LLVM_VERSION_PATCH ${CMAKE_MATCH_3})
endif()

set(LLVM_PATHS)

if(APPLE)
execute_process(
execute_process(
COMMAND brew --prefix
OUTPUT_VARIABLE HOMEBREW_PREFIX
OUTPUT_STRIP_TRAILING_WHITESPACE
ERROR_QUIET
)

if(NOT HOMEBREW_PREFIX)
if(CMAKE_SYSTEM_PROCESSOR MATCHES "arm64|ARM64|aarch64|AARCH64")
set(HOMEBREW_PREFIX /opt/homebrew)
else()
set(HOMEBREW_PREFIX /usr/local)
if(NOT HOMEBREW_PREFIX)
if(CMAKE_SYSTEM_PROCESSOR MATCHES "arm64|ARM64|aarch64|AARCH64")
set(HOMEBREW_PREFIX /opt/homebrew)
else()
set(HOMEBREW_PREFIX /usr/local)
endif()
endif()
endif()

if(USE_LLVM_VERSION)
list(APPEND LLVM_PATHS ${HOMEBREW_PREFIX}/opt/llvm@${LLVM_VERSION_MAJOR}/bin)
endif()
if(USE_LLVM_VERSION)
list(APPEND LLVM_PATHS ${HOMEBREW_PREFIX}/opt/llvm@${LLVM_VERSION_MAJOR}/bin)
endif()

list(APPEND LLVM_PATHS ${HOMEBREW_PREFIX}/opt/llvm/bin)
list(APPEND LLVM_PATHS ${HOMEBREW_PREFIX}/opt/llvm/bin)
endif()

if(UNIX)
list(APPEND LLVM_PATHS /usr/lib/llvm/bin)
list(APPEND LLVM_PATHS /usr/lib/llvm/bin)

if(USE_LLVM_VERSION)
list(APPEND LLVM_PATHS
if(USE_LLVM_VERSION)
list(APPEND LLVM_PATHS
/usr/lib/llvm-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/bin
/usr/lib/llvm-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}/bin
/usr/lib/llvm-${LLVM_VERSION_MAJOR}/bin
/usr/lib/llvm${LLVM_VERSION_MAJOR}/bin
)
endif()
endif()
endif()

macro(find_llvm_command variable command)
set(commands ${command})
set(commands ${command})

if(USE_LLVM_VERSION)
list(APPEND commands
if(USE_LLVM_VERSION)
list(APPEND commands
${command}-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}
${command}-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}
${command}-${LLVM_VERSION_MAJOR}
)
endif()
endif()

math(EXPR LLVM_VERSION_NEXT_MAJOR "${LLVM_VERSION_MAJOR} + 1")
math(EXPR LLVM_VERSION_NEXT_MAJOR "${LLVM_VERSION_MAJOR} + 1")

find_command(
find_command(
VARIABLE ${variable}
VERSION_VARIABLE LLVM_VERSION
COMMAND ${commands}
PATHS ${LLVM_PATHS}
VERSION ">=${LLVM_VERSION_MAJOR}.1.0 <${LLVM_VERSION_NEXT_MAJOR}.0.0"
)
list(APPEND CMAKE_ARGS -D${variable}=${${variable}})
list(APPEND CMAKE_ARGS -D${variable}=${${variable}})
endmacro()

macro(find_llvm_command_no_version variable command)
set(commands ${command})
set(commands ${command})

if(USE_LLVM_VERSION)
list(APPEND commands
if(USE_LLVM_VERSION)
list(APPEND commands
${command}-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}
${command}-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}
${command}-${LLVM_VERSION_MAJOR}
)
endif()
endif()

find_command(
find_command(
VARIABLE ${variable}
VERSION_VARIABLE LLVM_VERSION
COMMAND ${commands}
PATHS ${LLVM_PATHS}
)
list(APPEND CMAKE_ARGS -D${variable}=${${variable}})
list(APPEND CMAKE_ARGS -D${variable}=${${variable}})
endmacro()

if(WIN32)
find_llvm_command(CMAKE_C_COMPILER clang-cl)
find_llvm_command(CMAKE_CXX_COMPILER clang-cl)
find_llvm_command_no_version(CMAKE_LINKER lld-link)
find_llvm_command_no_version(CMAKE_AR llvm-lib)
find_llvm_command_no_version(CMAKE_STRIP llvm-strip)
find_llvm_command(CMAKE_C_COMPILER clang-cl)
find_llvm_command(CMAKE_CXX_COMPILER clang-cl)
find_llvm_command_no_version(CMAKE_LINKER lld-link)
find_llvm_command_no_version(CMAKE_AR llvm-lib)
find_llvm_command_no_version(CMAKE_STRIP llvm-strip)
else()
find_llvm_command(CMAKE_C_COMPILER clang)
find_llvm_command(CMAKE_CXX_COMPILER clang++)
find_llvm_command(CMAKE_LINKER llvm-link)
find_llvm_command(CMAKE_AR llvm-ar)
if (LINUX)
# On Linux, strip ends up being more useful for us.
find_command(
find_llvm_command(CMAKE_C_COMPILER clang)
find_llvm_command(CMAKE_CXX_COMPILER clang++)
find_llvm_command(CMAKE_LINKER llvm-link)
find_llvm_command(CMAKE_AR llvm-ar)
if (LINUX)
# On Linux, strip ends up being more useful for us.
find_command(
VARIABLE
CMAKE_STRIP
COMMAND
Expand All @@ -141,6 +141,6 @@ else()
endif()

if(ENABLE_ANALYSIS)
find_llvm_command(CLANG_FORMAT_PROGRAM clang-format)
find_llvm_command(CLANG_TIDY_PROGRAM clang-tidy)
find_llvm_command(CLANG_FORMAT_PROGRAM clang-format)
find_llvm_command(CLANG_TIDY_PROGRAM clang-tidy)
endif()
Loading