-
Notifications
You must be signed in to change notification settings - Fork 88
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unicode conversion rework #278
Merged
Merged
Changes from 63 commits
Commits
Show all changes
64 commits
Select commit
Hold shift + click to select a range
db9a97c
Move AmortizedIStreamReader to driver/utils/amortized_istream_reader.h
traceon 31484c9
WIP: detect and use system ICU
traceon 0b25b4b
Move unicode_conv.h to unicode_conv_std.hpp
traceon 459d9d8
Add unicode_conv_icu.cpp stub
traceon bbf54cd
Smoother ICU integration into the build system
traceon ef8a32b
Disable CH_ODBC_PREFER_BUNDLED_ICU by default
traceon 9e3e339
ICU Unicode conversion drop-in implementation
traceon c95cfb2
Use fixed NTSBufferLength()
traceon 3371522
Remove unused stuff
traceon 2582b10
Fix naming
traceon bffba43
Use ICU
traceon 10b4ed2
Add proper dispatching according to the expected character sizes
traceon ea861e0
Compilation fix
traceon 4cdc3e1
Fix bug
traceon b3443dc
Naming changes
traceon 9562c0e
Code cleanup
traceon aee8fac
Choose default wide-char encoding according to platform specs
traceon 89e4495
Change to typedefed char type
traceon dbc16b8
WIP: debugging mac builds
traceon 2ced750
WIP: debugging mac builds
traceon 3acf4fa
WIP: debugging mac builds
traceon f840b69
Move common code to parent header
traceon a5f88bc
Always set ICU root path for macOS builds
traceon 60af4c9
Fixed macOS builds
traceon 2b9cc1e
Delete folly
traceon 2617708
Add internal folly fork
traceon 8adf049
wip
traceon 181fb76
wip
traceon ef4746e
Add internal folly fork
traceon 4590fc6
Bump submodule
traceon 71e479f
Bump submodule
traceon c8c8827
Enable folly::resizeWithoutInitialization everywhere
traceon 1852c82
Fix TODOs: use resize_without_initialization() everywhere
traceon d54c92d
Fix size checks for BOM cases
traceon a331ff4
Accomodate the test for variable character encodings
traceon d033303
Bump folly
traceon 6bb1a3b
Implement signature/BOM detection and truncation on edges
traceon 3058fb3
Typo fixes
traceon 1c9e6de
Typo fix - missing argument
traceon b7d7174
Remove unnecessary (and invalid) mismatching char size workaround sup…
traceon 39bcb88
Remove irrelevant cases
traceon f6a41b6
Avoid incorrect instantiations
traceon 87e2ab3
Fix buffer size increment calculations
traceon a8cb060
WIP: refactoring of the unicode conversion code
traceon dba3acc
WIP: refactoring of the unicode conversion code
traceon 882262a
Implement signature prepending
traceon 33d0813
GCC compilation fix
traceon 3ad37c8
Windows compilation fix
traceon e32793e
Add icu requirements
traceon 24eba04
Fix signature detection
traceon b4a9f02
Fix typo
traceon ea291fc
Fix typo
traceon 32ec45a
Fix typo
traceon 1395df5
Fix duplicate BOM filtering
traceon 1243651
Move convertEncoding to unicode_converter.h
traceon 691ddee
WIP prepare for WORKAROUND_ICU_USE_EXPLICIT_PIVOTING
traceon 79df886
Fix compilation
traceon 7b85aec
Adjust folly temporary branch
traceon ed24f4b
Add comments
traceon 009ffdf
Move code from original places to:
traceon c80519d
Windows compilation fix
traceon eed69f8
Switch to official folly repo
traceon 1eaf95c
Tabs to spaces
traceon bf4f2ba
Delete UnicodeConverter copy c-rot and assignment operator
traceon File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,20 +1,20 @@ | ||
[submodule "contrib/poco"] | ||
path = contrib/poco | ||
url = https://github.com/pocoproject/poco.git | ||
branch = master | ||
path = contrib/poco | ||
url = https://github.com/pocoproject/poco.git | ||
branch = master | ||
[submodule "contrib/ssl"] | ||
path = contrib/ssl | ||
url = https://github.com/ClickHouse-Extras/ssl.git | ||
branch = master | ||
path = contrib/ssl | ||
url = https://github.com/ClickHouse-Extras/ssl.git | ||
branch = master | ||
[submodule "contrib/nanodbc"] | ||
path = contrib/nanodbc | ||
url = https://github.com/nanodbc/nanodbc.git | ||
branch = master | ||
path = contrib/nanodbc | ||
url = https://github.com/nanodbc/nanodbc.git | ||
branch = master | ||
[submodule "contrib/googletest"] | ||
path = contrib/googletest | ||
url = https://github.com/google/googletest.git | ||
branch = master | ||
path = contrib/googletest | ||
url = https://github.com/google/googletest.git | ||
branch = master | ||
[submodule "contrib/folly"] | ||
path = contrib/folly | ||
url = https://github.com/facebook/folly.git | ||
branch = master | ||
path = contrib/folly | ||
url = https://github.com/facebook/folly.git | ||
branch = master |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For some reason,
cmake
wasn't able to findicu
installed via homebrew on my mac. Is there any workaround/fix for that?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You need to specify the path manually, its a known issue of
FindICU
+ homebrew.Use this command (as per
README.md
):