Tarantool development patches archive
 help / color / mirror / Atom feed
* [Tarantool-patches] [PATCH 1.10 v4 0/5] module api: extend for external merger Lua module
@ 2020-10-14  0:15 Timur Safin
  2020-10-14  0:15 ` [Tarantool-patches] [PATCH 1.10 v4 1/5] module api: export box_tuple_validate Timur Safin
                   ` (5 more replies)
  0 siblings, 6 replies; 8+ messages in thread
From: Timur Safin @ 2020-10-14  0:15 UTC (permalink / raw)
  To: v.shpilevoy, alexander.turenko; +Cc: tarantool-patches

Ok we are all tired and need to sleep, but let me reiterate it once again:

The current patchset is a 1.10 backport of a 2.X series which was in turn 
continuation of patch series which Alexander Turenko has sent before.

The major difference here - is the way how we export symbols:
- in 1.10 there was no `src/exports.h` existing, and we were using
  old good `extra/exports` instead;
- also we have added 1 extra backport of `luaL_iscallable`.

Enjoy!

Changelog of v2 to v1
---------------------
Please do not be surprised to not seen v2 in your inbox - it was cancelled 
after discussion with Alexander Turenko (see v2.1 below with descriptions)

- Unpublished again `lauT_temp_state`, `luaT_release_temp_state` - they are
  performance wrappers around creation of Lua thread states. Agreed that 
  performance impact not that big, thus created similar compatibility wrappers
  on the module side;
- unpublished `luaT_newthread`, because for module usage `lua_newthread` is 
  enough;
- unpublished `luaL_register_module` & `luaL_register_type` and reworked module
  code with `luaL_register`.

Smallish changelog of v2.1 to v2
--------------------------------
Alexander Turenko has provided valuable feedback to the v2 branch I've shown,
so we have yet more reduced this patchset
- Unpublished `luaL_cdata_iscallable`, it's unnecessary for external module
  which is using now public `luaL_iscallable` module api call, instead 
  of compatibility layer in module;
- Unpublished `luaL_checkconstchar` because it's not yet needed anywhere
  externally;
- Accordingly to thsoe changes above we have reduced code in module_api
  test files.

Changelog for v3
----------------
- Reshuffled patchset to merge tests with their corresponding code;

Changelog v3.1
--------------
- Added ibuf wrapper, the simpler way (only reserve, and rpos, wpos accessors)

Changelog v4
------------
- final polishing of examples
- tests for luaT_toibuf, with ibuf consistency checks
- tests for key_def_dup
- tests for tuple_validate


Alexander Turenko (1):
  module api: add luaL_iscallable with support of cdata metatype

Timur Safin (4):
  module api: export box_tuple_validate
  module api: export box_key_def_dup
  module api: introduced luaT_toibuf instead of luaL_checkibuf
  module api: box_ibuf_* wrappers

 extra/exports                    |   7 ++
 src/CMakeLists.txt               |   1 +
 src/box/CMakeLists.txt           |   1 +
 src/box/ibuf.c                   |  65 ++++++++++++++
 src/box/ibuf.h                   |  67 +++++++++++++++
 src/box/key_def.c                |   6 ++
 src/box/key_def.h                |  10 +++
 src/box/tuple.c                  |   8 ++
 src/box/tuple.h                  |  11 +++
 src/lua/msgpack.c                |   2 +-
 src/lua/utils.c                  |  45 +++++++++-
 src/lua/utils.h                  |  32 +++++--
 test/app-tap/module_api.c        | 140 +++++++++++++++++++++++++++++++
 test/app-tap/module_api.test.lua | 131 ++++++++++++++++++++++++++++-
 14 files changed, 517 insertions(+), 9 deletions(-)
 create mode 100644 src/box/ibuf.c
 create mode 100644 src/box/ibuf.h

-- 
2.20.1

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-10-15 22:30 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-14  0:15 [Tarantool-patches] [PATCH 1.10 v4 0/5] module api: extend for external merger Lua module Timur Safin
2020-10-14  0:15 ` [Tarantool-patches] [PATCH 1.10 v4 1/5] module api: export box_tuple_validate Timur Safin
2020-10-14  0:15 ` [Tarantool-patches] [PATCH 1.10 v4 2/5] module api: export box_key_def_dup Timur Safin
2020-10-15 22:30   ` Alexander Turenko
2020-10-14  0:15 ` [Tarantool-patches] [PATCH 1.10 v4 3/5] module api: introduced luaT_toibuf instead of luaL_checkibuf Timur Safin
2020-10-14  0:15 ` [Tarantool-patches] [PATCH 1.10 v4 4/5] module api: box_ibuf_* wrappers Timur Safin
2020-10-14  0:15 ` [Tarantool-patches] [PATCH 1.10 v4 5/5] module api: add luaL_iscallable with support of cdata metatype Timur Safin
2020-10-14  0:18 ` [Tarantool-patches] [PATCH 1.10 v4 0/5] module api: extend for external merger Lua module Timur Safin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox