Description
crud
uses tuple-merger
for select. Built-in merger is provided for the following versions
Lines 589 to 599 in 2d3d479
and external merger can be provided for the following versions
Lines 607 to 620 in 2d3d479
There is a separate select implementation without merger for older versions without internal merger support (<= 1.10.7
, == 2.5.0
, >= 2.4.0, <= 2.4.1
, >= 2, <= 2.3.2
) and without internal merger if external not provided (< 2.0.0
): select_old
.
All versions that require select_old
are out of support for a long time: it covers <= 1.10.7
and >=2, <= 2.5.2
releases. There is also the >= 1.10.8,
<= 1.10.15version range with
select_old` support.
Supporting two select implementation is really bothersome. A lot of time spent to update a code which doesn't seems relevant anymore. I propose to remove this code.
The course of action is as follows.
- Ensure that it is fine to drop support of Tarantool releases
<= 1.10.7
>=2, <= 2.5.2
. - Ensure that it is fine to require all users of Tarantool releases
>= 1.10.8,
<= 1.10.15to install
tuple-merger` as well. (We already seem to do that in CMake:Lines 105 to 107 in 2d3d479
- Migrate
tuple-merger
dependency from CMake to rockspec, as well astuple-keydef
one. - Remove
select_old
code and compatibility layers in code. Remove related tests and CI presets. Rework "if there is a merger" condition to strict assertion. - Tag a new module major version.
- File a ticket related to removing
tuple-merger
dependency in the future: after Tarantool releases>= 1.10.8,
<= 1.10.15` support drop there won't be any need for external merger in supported versions.