Unbundle ICU again due to binary size #464
Merged
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.
So, in duckdb v1.2.1 some functions that used to be part of core DuckDB is now part of the ICU extension. duckdb/duckdb#15994
But since ICU is auto-loadable and almost always bundled in most DuckDB distributions, this isn't really visible to users. However, it is not bundled in duckdb-rs, which causes the tests in the
chronofeature to now auto-load ICU. This means that we can't run the ASAN tests in CI, as we cannot load release binaries that are not built with ASAN (like the icu extension) when the rest of DuckDB is.My solution was to simply add icu to the duckdb bundle and add a new feature flag for it. But as ICU is a pretty large extension, this caused the total size of the duckdb-rs package to exceed 10mb, making it impossible to publish on crates.io which has a max limit of 10mb.
Soooo... I'm now removing the ICU feature flag, excluding it from the bundled sources, and also omitting testing the
chronofeature as part of the ASAN CI check.