Skip to content

feat(config): let the engine control SystemConfig defaults - #28

Open
adsharma wants to merge 2 commits into
mainfrom
engine-controlled-defaults
Open

adsharma wants to merge 2 commits into
mainfrom
engine-controlled-defaults

Conversation

@adsharma

Copy link
Copy Markdown
Contributor

Instead of pinning a copy of every engine default in this binding, the JS Database constructor now defaults all settings to null, and the native layer starts from SystemConfig() and only applies values that are neither null nor undefined (null guards added for all 9 settings).

Unset settings follow engine-side default changes automatically (e.g. LadybugDB/ladybug#1435 needs no binding change). Explicitly passed values behave exactly as before. Note: this binding never exposed enable_multi_writes/max_num_threads, so those were already engine-controlled.

BREAKING CHANGE: Database() settings parameters changed from concrete defaults to null meaning "engine default".

Stop pinning a copy of every engine default in this binding. The JS
Database constructor now defaults all settings to null, and the native
layer starts from SystemConfig() and only applies values that are
neither null nor undefined.

Unset settings follow engine-side default changes automatically.
Explicitly passed values behave exactly as before.

BREAKING CHANGE: Database() settings parameters changed from concrete
defaults to null meaning "engine default".
Homebrew now also ships openssl@4, which CMake would otherwise prefer,
but the top-level CMakeLists enforces OpenSSL 3 via a version guard.
Mirror ci-workflow.yml: install openssl@3 and export OPENSSL_ROOT_DIR.
@adsharma adsharma changed the title feat!: let the engine control SystemConfig defaults feat(config): let the engine control SystemConfig defaults Oct 27, 2026
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.

1 participant