fix: construct open
options with defined properties only
#638
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
Closes #635
This PR resolves an issue where
@powersync/op-sqlite
would consistently override the default database location behaviour of the upstreamop-sqlite
package. This broke features like iOS App Groups, which depend on the upstream package reading externally defined values (in the Info.plist) to determine the correct database path.Changes
To fix this, the openDatabase method has been updated to conditionally add the location property to the open() options only when a custom dbLocation is provided. When it is not provided, the property is omitted, allowing op-sqlite's default location logic to run as intended.
Removed the getDbLocation helper method as well because its logic was a duplication of the default platform-specific path resolution already handled by the upstream
op-sqlite
package and is no longer needed when@powersync/op-sqlite
does not handle determining the default database path