Skip to content

module api: new region, ibuf, key_def, tuple, Lua/C APIs #1611

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

Open
Tracked by #2051
Totktonada opened this issue Oct 19, 2020 · 3 comments
Open
Tracked by #2051

module api: new region, ibuf, key_def, tuple, Lua/C APIs #1611

Totktonada opened this issue Oct 19, 2020 · 3 comments
Labels
c api [Area] Related to the Tarantool C API reference dev To be updated by the developers. Includes developer guidelines and many API elements. doc pipelines [area] related to CI/CD builds ecosystem [area] Task relates to Tarantool's ecosystem (connector, module, other non-server functionality) reference [location] Tarantool manual, Reference part

Comments

@Totktonada
Copy link
Member

We have added the bunch of new APIs in order to implement the new tuple-keydef and tuple-merger external modules. It would be good to document the new C structures and functions.

The relevant descriptions may be found in API comments in the header files, see the patchset. It was land to master (future 2.6.1), 2.5 (future 2.5.2), 2.4 (future 2.4.3) and 1.10 (future 1.10.8). Aside of the linked changes luaL_iscallable() was backported to 1.10.

The work was done in the scope of the following issues:

tarantool/tarantool#5273
tarantool/tarantool#5384

BTW, is not it worth to generate the C API documentation from the Doxygen comments in the generated src/module.h? However first we should investigate the difference in the current state of the Doxygen comments and the RST docs.

@NickVolynkin
Copy link
Contributor

NickVolynkin commented Jan 29, 2021

BTW, is not it worth to generate the C API documentation from the Doxygen comments in the generated src/module.h?

Yes. We should autogenerate this documentation.

  • Research how to generate documentation from source code
  • Update source code comments with human-written texts
  • Add autogeneration to documentation build pipeline
  • Set up a process for actualizing source code comments

@NickVolynkin NickVolynkin removed their assignment Feb 12, 2021
@NickVolynkin NickVolynkin added the raw idea [special status] Not ready for size estimation label Feb 12, 2021
@Totktonada
Copy link
Member Author

Yes. We should autogenerate this documentation.

Is there a related issue?

Totktonada added a commit to tarantool/tarantool that referenced this issue Feb 24, 2022
Technically the box region always was fiber local. However we had an
idea to make it global in a future, so we left a room in the guarantees
stated by the documentation.

Now I think that we should make it officially fiber local. If it is
global, one can't use it across fiber yields (say, to collect something
from a network).

Also I don't like so vague guarantees. Just hard to use an object, which
is either global or fiber local. Need to interpret a code in the head
twice.

Follows up commit c611790 ('module api:
expose box region').

NO_DOC=I will add it to tarantool/doc#1611
NO_CHANGELOG=no behaviour changes

Follows up #5273
kyukhin pushed a commit to tarantool/tarantool that referenced this issue Feb 28, 2022
Technically the box region always was fiber local. However we had an
idea to make it global in a future, so we left a room in the guarantees
stated by the documentation.

Now I think that we should make it officially fiber local. If it is
global, one can't use it across fiber yields (say, to collect something
from a network).

Also I don't like so vague guarantees. Just hard to use an object, which
is either global or fiber local. Need to interpret a code in the head
twice.

Follows up commit c611790 ('module api:
expose box region').

NO_DOC=I will add it to tarantool/doc#1611
NO_CHANGELOG=no behaviour changes

Follows up #5273
@Totktonada
Copy link
Member Author

The box region is officially fiber local: tarantool/tarantool#6874.

@patiencedaur patiencedaur added ecosystem [area] Task relates to Tarantool's ecosystem (connector, module, other non-server functionality) doc pipelines [area] related to CI/CD builds and removed raw idea [special status] Not ready for size estimation labels Apr 18, 2022
@patiencedaur patiencedaur added the dev To be updated by the developers. Includes developer guidelines and many API elements. label May 20, 2022
@veod32 veod32 added the reference [location] Tarantool manual, Reference part label Mar 1, 2023
@andreyaksenov andreyaksenov added the c api [Area] Related to the Tarantool C API reference label Aug 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c api [Area] Related to the Tarantool C API reference dev To be updated by the developers. Includes developer guidelines and many API elements. doc pipelines [area] related to CI/CD builds ecosystem [area] Task relates to Tarantool's ecosystem (connector, module, other non-server functionality) reference [location] Tarantool manual, Reference part
Projects
None yet
Development

No branches or pull requests

6 participants