tinybird-toolset 2.4.0__tar.gz → 2.4.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. {tinybird_toolset-2.4.0/src/tinybird_toolset.egg-info → tinybird_toolset-2.4.2}/PKG-INFO +1 -1
  2. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/conf.py +23 -10
  3. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/setup.py +1 -1
  4. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2/src/tinybird_toolset.egg-info}/PKG-INFO +1 -1
  5. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/LICENSE +0 -0
  6. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/MANIFEST.in +0 -0
  7. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/README.md +0 -0
  8. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/setup.cfg +0 -0
  9. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/src/chtoolset/__init__.py +0 -0
  10. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/src/chtoolset/query.py +0 -0
  11. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/src/tinybird_toolset.egg-info/SOURCES.txt +0 -0
  12. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/src/tinybird_toolset.egg-info/dependency_links.txt +0 -0
  13. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/src/tinybird_toolset.egg-info/requires.txt +0 -0
  14. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/src/tinybird_toolset.egg-info/top_level.txt +0 -0
  15. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_check_compatible_types.py +0 -0
  16. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_check_write_query.py +0 -0
  17. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_chquery.py +0 -0
  18. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_convert_to_row_binary.py +0 -0
  19. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_explain_ast.py +0 -0
  20. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_get_columns_from_create_query.py +0 -0
  21. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_get_left_table.py +0 -0
  22. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_internal_cache.py +0 -0
  23. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_normalize_query_keep_names.py +0 -0
  24. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_normalize_table_column.py +0 -0
  25. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_parse_create_materialized_view_target_table.py +0 -0
  26. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_replace_tables.py +0 -0
  27. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_replace_tables_backward_compat.py +0 -0
  28. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_rewrite_aggregation_states.py +0 -0
  29. {tinybird_toolset-2.4.0 → tinybird_toolset-2.4.2}/tests/test_tables.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tinybird-toolset
3
- Version: 2.4.0
3
+ Version: 2.4.2
4
4
  Home-page: https://gitlab.com/tinybird/clickhouse-toolset
5
5
  Author: Tinybird.co
6
6
  Author-email: support@tinybird.co
@@ -27,9 +27,10 @@ SIMDJSON_DEBUG = bool(os.environ.get('SIMDJSON_DEBUG', ''))
27
27
 
28
28
  # Sanitizer support
29
29
  ASAN_ENABLED = bool(os.environ.get('ASAN_ENABLED', '')) # AddressSanitizer
30
- UBSAN_ENABLED = bool(os.environ.get('UBSAN_ENABLED', '')) # UndefinedBehaviorSanitizer
30
+ UBSAN_ENABLED = bool(os.environ.get('UBSAN_ENABLED', '')) # UndefinedBehaviorSanitizer
31
31
  MSAN_ENABLED = bool(os.environ.get('MSAN_ENABLED', '')) # MemorySanitizer
32
32
  TSAN_ENABLED = bool(os.environ.get('TSAN_ENABLED', '')) # ThreadSanitizer
33
+ THINLTO_FLAG = '-flto=thin'
33
34
 
34
35
 
35
36
  def apply_patch(patch_path):
@@ -157,8 +158,8 @@ class ClickHouseBuildExt(build_ext):
157
158
  # -fPIC: necessary for building a dynamic library
158
159
  # -fvisibility=hidden: Reduces the size of the final library by allowing the compiler to not export many
159
160
  # symbols from CH (in the final library)
160
- f'-DCMAKE_C_FLAGS=-fPIC -fvisibility=hidden{" -fsanitize=address" if ASAN_ENABLED else ""}{" -fsanitize=undefined" if UBSAN_ENABLED else ""}{" -fsanitize=memory" if MSAN_ENABLED else ""}{" -fsanitize=thread" if TSAN_ENABLED else ""}',
161
- f'-DCMAKE_CXX_FLAGS=-fPIC -fvisibility=hidden{" -fsanitize=address" if ASAN_ENABLED else ""}{" -fsanitize=undefined" if UBSAN_ENABLED else ""}{" -fsanitize=memory" if MSAN_ENABLED else ""}{" -fsanitize=thread" if TSAN_ENABLED else ""}',
161
+ f'-DCMAKE_C_FLAGS=-fPIC -fvisibility=hidden{" -march=x86-64-v3 -mtune=generic" if platform.machine() in ("x86_64", "AMD64") else ""}{" -fsanitize=address" if ASAN_ENABLED else ""}{" -fsanitize=undefined" if UBSAN_ENABLED else ""}{" -fsanitize=memory" if MSAN_ENABLED else ""}{" -fsanitize=thread" if TSAN_ENABLED else ""}',
162
+ f'-DCMAKE_CXX_FLAGS=-fPIC -fvisibility=hidden{" -march=x86-64-v3 -mtune=generic" if platform.machine() in ("x86_64", "AMD64") else ""}{" -fsanitize=address" if ASAN_ENABLED else ""}{" -fsanitize=undefined" if UBSAN_ENABLED else ""}{" -fsanitize=memory" if MSAN_ENABLED else ""}{" -fsanitize=thread" if TSAN_ENABLED else ""}',
162
163
  '-DCMAKE_ASM_FLAGS_INIT=-fPIC -fvisibility=hidden',
163
164
 
164
165
  '-DENABLE_TESTS=FALSE',
@@ -180,14 +181,20 @@ class ClickHouseBuildExt(build_ext):
180
181
  # Unwind with external code leads to crashes
181
182
  '-DUSE_UNWIND=FALSE',
182
183
 
183
- # Size reduction
184
- # x86-specific SIMD flags (not applicable on ARM)
184
+ # x86-specific SIMD: AVX2/BMI2 set the runtime floor to x86-64-v3
185
+ # (Haswell / Zen 1, ~2013+), matching the -march=x86-64-v3 flag above.
186
+ # AVX-512 deliberately not enabled — AMD EPYC Milan in our fleet lacks it.
185
187
  *([
186
- '-DENABLE_SSE42=FALSE',
187
- '-DENABLE_SSSE3=FALSE',
188
- '-DNO_SSE3_OR_HIGHER=TRUE',
188
+ '-DENABLE_SSE42=TRUE',
189
+ '-DENABLE_SSSE3=TRUE',
190
+ '-DENABLE_AVX=TRUE',
191
+ '-DENABLE_AVX2=TRUE',
192
+ '-DENABLE_BMI=TRUE',
193
+ '-DENABLE_BMI2=TRUE',
194
+ '-DNO_SSE3_OR_HIGHER=FALSE',
189
195
  ] if platform.machine() in ('x86_64', 'AMD64') else []),
190
- # ARM: disable ARMv8.1+ requirement for CI runners without those extensions
196
+ # ARM: keep the conservative ARMv8.0+crc profile. CI on ARM fails
197
+ # against ClickHouse's modern ARMv8.2-a profile.
191
198
  *([
192
199
  '-DNO_ARMV81_OR_HIGHER=TRUE',
193
200
  ] if platform.machine() == 'aarch64' else []),
@@ -203,7 +210,7 @@ class ClickHouseBuildExt(build_ext):
203
210
  '-DENABLE_DATASKETCHES=TRUE', # We need it for some agg validations
204
211
 
205
212
  '-DENABLE_CLICKHOUSE_ALL=FALSE',
206
- '-DENABLE_MULTITARGET_CODE=FALSE',
213
+ '-DENABLE_MULTITARGET_CODE=TRUE',
207
214
 
208
215
  # Force Ninja as the generator as we parse its output to build the python module
209
216
  '-G',
@@ -288,6 +295,9 @@ class CustomBuildWithFromCH(build_ext):
288
295
  if TSAN_ENABLED:
289
296
  other_list += ['-fsanitize=thread', '-fno-omit-frame-pointer', '-g']
290
297
 
298
+ if THINLTO_FLAG not in cflags_list:
299
+ other_list += [THINLTO_FLAG]
300
+
291
301
  other_list += ['-DUSE_SIMDJSON=1']
292
302
  other_list += ['-DSIMDJSON_THREADS_ENABLED=1']
293
303
 
@@ -304,6 +314,9 @@ class CustomBuildWithFromCH(build_ext):
304
314
  link_flags.append('-g' if BUILD_FOR_VALGRIND or DEBUG_SYMBOLS else '-s')
305
315
  link_flags.append('-Wl,--whole-archive')
306
316
 
317
+ if THINLTO_FLAG not in link_flags:
318
+ link_flags.append(THINLTO_FLAG)
319
+
307
320
  # Remove some noise from CH link flags:
308
321
  link_flags += ['-Wno-unused-command-line-argument']
309
322
 
@@ -1,7 +1,7 @@
1
1
  from setuptools import setup, Extension
2
2
 
3
3
  NAME = 'tinybird-toolset'
4
- VERSION = '2.4.0'
4
+ VERSION = '2.4.2'
5
5
 
6
6
  try:
7
7
  from conf import *
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tinybird-toolset
3
- Version: 2.4.0
3
+ Version: 2.4.2
4
4
  Home-page: https://gitlab.com/tinybird/clickhouse-toolset
5
5
  Author: Tinybird.co
6
6
  Author-email: support@tinybird.co