From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [87.239.111.99] (localhost [127.0.0.1]) by dev.tarantool.org (Postfix) with ESMTP id 4D9516EC40; Wed, 7 Jul 2021 22:10:28 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 4D9516EC40 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1625685028; bh=Us4QVpjQzgHQMejfxE5EJclL+xntphDEUdXGMo2rfHE=; h=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=ht/GBwoclU2J46n1AxMPX7ixhTSXQ99M/M8tL+qDCQER0jV/f31SwPQKlZgVZECeH eGOxI+adZ0hfk2mF2PREPWZlMhdVTlMgUdsbtxTu2pLtdkJTpjD2fVf9HiAcXxWGpV wy7U2Scs2OQcxBVSjOeJ0I6R23PPi7U2x7oE02Xs= Received: from smtp34.i.mail.ru (smtp34.i.mail.ru [94.100.177.94]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id CDD9B6EC40 for ; Wed, 7 Jul 2021 22:10:26 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org CDD9B6EC40 Received: by smtp34.i.mail.ru with esmtpa (envelope-from ) id 1m1CwD-00046L-HZ; Wed, 07 Jul 2021 22:10:26 +0300 Date: Wed, 7 Jul 2021 22:09:59 +0300 To: Vladislav Shpilevoy , Cyrill Gorcunov , Roman Khabibov Message-ID: <20210707190959.jv67vdoxhhsr4nqm@tkn_work_nb> References: <20210707100809.nflftsb47hq66efn@tkn_work_nb> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20210707100809.nflftsb47hq66efn@tkn_work_nb> X-4EC0790: 10 X-7564579A: 646B95376F6C166E X-77F55803: 4F1203BC0FB41BD954DFF1DC42D673FB2F1AA0EB8A504C8721532AB396CDCF09182A05F538085040D4B90EA5112F3CBFA320C110B19997B6613D5E47D65E70F09D1646924595BFA2 X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE774A7370C81A54524EA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F7900637D99F96657F58F1038638F802B75D45FF36EB9D2243A4F8B5A6FCA7DBDB1FC311F39EFFDF887939037866D6147AF826D888E53160E66E80184896DAFE3E48D23E117882F4460429724CE54428C33FAD305F5C1EE8F4F765FCAA867293B0326636D2E47CDBA5A96583BD4B6F7A4D31EC0BC014FD901B82EE079FA2833FD35BB23D27C277FBC8AE2E8B3A703B70628EAD7BA471835C12D1D977C4224003CC836476EB9C4185024447017B076A6E789B0E975F5C1EE8F4F765FC4D6C74817288454A3AA81AA40904B5D9CF19DD082D7633A078D18283394535A93AA81AA40904B5D98AA50765F79006377CB7AFAEBDCCC830D81D268191BDAD3D698AB9A7B718F8C4D1B931868CE1C5781A620F70A64A45A98AA50765F79006372E808ACE2090B5E1725E5C173C3A84C3C5EA940A35A165FF2DBA43225CD8A89FB26E97DCB74E62526D8C47C27EEC5E9FB5C8C57E37DE458BEDA766A37F9254B7 X-C1DE0DAB: 0D63561A33F958A57A3F5D43FAF75A8BDDED7B297C51C8C4883FD63E19FB3C70D59269BC5F550898D99A6476B3ADF6B47008B74DF8BB9EF7333BD3B22AA88B938A852937E12ACA753753CEE10E4ED4A7410CA545F18667F91A7EA1CDA0B5A7A0 X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D3498910055B812BD9C6E7594AF3D1624E505B9877F988C8610D39F266E8253013EF4AB22687E4386F21D7E09C32AA3244C35D60CCF7A55375932B247500CB10AE763871F383B54D9B383B48618A63566E0 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2biojwWhFrYo6Pn0MCJIuzt9ejA== X-Mailru-Sender: FFAA8E4AEE17E37C3731A083A1A85ADE7A1027EBB214A75DC6C55BCD5F2A723AB7EA9FE7735C3DBFC664A44C781FCEA7C77752E0C033A69EDF9F2CE1E9CF805D8CD356D4F938FF726C18EFA0BB12DBB0 X-Mras: Ok Subject: Re: [Tarantool-patches] [PATCH 0/4] RFC: Isolate serializer helpers X-BeenThere: tarantool-patches@dev.tarantool.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Alexander Turenko via Tarantool-patches Reply-To: Alexander Turenko Cc: tarantool-patches@dev.tarantool.org Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" On Wed, Jul 07, 2021 at 01:08:10PM +0300, Alexander Turenko wrote: > On Wed, Jun 23, 2021 at 10:12:38PM +0300, Alexander Turenko wrote: > > Moved the serializer helpers into its own compilation unit, add some > > comments and a basic test: everything is just to simplify diving into > > this code. > > > > Guys, please, look, whether it seems useful enough to include into > > tarantool's mainline? Should we name it serializer.[ch] or > > somehow like serializer_helpers.[ch]? > > > > Part of https://github.com/tarantool/tarantool/issues/3228 > > Branch: Totktonada/gh-3228-extract-serializer-helpers > > > > Alexander Turenko (4): > > lua: move serializer helpers into its own file > > lua: move luaL_newserializer() comment into header > > lua: split serializer functions into sections > > test: add a basic unit test for serializer helpers > > Thanks for reviews! > > Pushed to master, 2.8, 2.7. > > I'll backport it to 1.10 and show you first. > > WBR, Alexander Turenko. Given 4 commits are backported almost trivially to 1.10, I'll not resend them. I added two separate oneliners for 1.10. I'll just place them at bottom of the email. All 6 commits could be found on the Totktonada/gh-3228-extract-serializer-helpers-1.10 branch. I think that it would be convenient for further development to backport this patchset to 1.10. It looks safe enough, because it is mainly just code rearrangement: unlikely it may lead to new subtle bugs (aside of building, which should be verified quite good by CI). Please, share thoughts if you have objections against pushing it to 1.10. CCed Kirill Yu. ---- commit 4a22b90866dfda4252577aac4dd7252e518490ae Author: Alexander Turenko Date: Wed Jul 7 18:28:37 2021 +0300 build/curl: disable ZSTD content encoding support I'm not against ZSTD content encoding. The problem I want to solve is the following. I'll add a unit test in a future commit: | add_executable(serializer.test serializer.c) | target_link_libraries(serializer.test unit box ${LUAJIT_LIBRARIES}) Linking of the test fails if curl's configure script detects ZSTD presence and enables it. It is irrelevant for building of libcurl using CMake (since 2.6.0-196-g2b0760192). ZSTD content encoding support was added in curl-7.72.0, we pull it in 1.10.9-124-ged90a8c22 ('security: update libcurl from 7.71.1 to 7.76.0'). The key problem is that curl's configure script (unlike CMake) performs autodetection of present libraries by default. If we'll want to enable this content encoding, it is better to do so deliberately: with explicit linking against our built-in ZSTD (now the choice depends on presence of the library in the system) and correct dependencies in our CMake scripts (correct CURL_LIBRARIES). Part of #3228 diff --git a/cmake/BuildLibCURL.cmake b/cmake/BuildLibCURL.cmake index 313adfb97..8fe8ff25a 100644 --- a/cmake/BuildLibCURL.cmake +++ b/cmake/BuildLibCURL.cmake @@ -95,6 +95,7 @@ macro(curl_build) --with-ca-fallback --without-brotli + --without-zstd --without-gnutls --without-mbedtls --without-cyassl commit 378a18a0850ad63ceb0bb5ef141eaa34988b01ed Author: Alexander Turenko Date: Wed Jul 7 19:27:38 2021 +0300 build: add uri library as dependency for core evio.cc from libcore.a uses uri_parse() from liburi.a. This dependency is already there on master. In a future commit I'll add a test: | add_executable(serializer.test serializer.c) | target_link_libraries(serializer.test unit box ${LUAJIT_LIBRARIES}) Linking of the test fails if the dependency is not set in CMake scripts. Part of #3228 diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index d8706b9a8..d5a7c6d22 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -120,7 +120,7 @@ endif () add_library(core STATIC ${core_sources}) add_dependencies(core curl) target_link_libraries(core - salad small + salad small uri ${LIBEV_LIBRARIES} ${LIBEIO_LIBRARIES} ${LIBCORO_LIBRARIES}