Commit Briefs

c0e7311fea Sergey Bronnikov

datetime: remove unused function datetime_gmtoff (ligurio/gh-xxxx-datetime-codehealth-3.1)

The function `datetime_gmtoff()` has been introduced in commit aec6fbac1f22 ("datetime: implement date.isdst") for a function `datetime_increment_by()`. In commit 6ca072853034 ("datetime: fix interval arithmetic for DST") the function `datetime_increment_by()` has been updated and call of the function `datetime_gmtoff()` was removed. `datetime_gmtoff` is dead code now. The patch removes `datetime_gmtoff()`. NO_CHANGELOG=codehealth NO_DOC=codehealth NO_TEST=codehealth (cherry picked from commit 625afe418151de1015483ed24acaa57e1f85efb3)


2d4b91d3d8 Sergey Bronnikov

datetime: fix typos

The patch fixes a number of typos in datetime source code. NO_CHANGELOG=codehealth NO_DOC=codehealth NO_TEST=codehealth (cherry picked from commit c9c5b9f139ccbf5372d1568827fbb50bec7239bb)


f014669151 Alexander Turenko

lua-yaml: wrap large doubles in quotes (tags/3.1.2-entrypoint)

Since tarantool/luajit@a16313f large exponent double strings are not considered convertible to number. It broke encoding lua objects to YAML because single quotes weren't considered necessary for decoding. This commit adds wrapping of every string containing infinite double values into a single quotes. Closes #10164 NO_DOC=bug fix (cherry picked from commit 7c3f42590240525d2e543305b6c289ddb30054a2)


b65f805092 Sergey Ostanevich

schema: add missing downgrade versions (tags/3.1.1)


6ec797c30b Sergey Ostanevich

Dummy commit.


7e72167dfd Sergey Ostanevich

Generate changelog for 3.1.1

Also, remove unreleased/ entries. NO_DOC=changelog NO_TEST=changelog NO_CHANGELOG=changelog


0ec2457a5c Alexander Turenko

uri: uri.format encapsulate IPv6 address in []

This patch adds encapsulation for IPv6 addresses in brackets when calling uri.format (as per RFC 2732). Closes #9556 NO_DOC=bugfix (cherry picked from commit a49ec23b85edb684744eb525427465dfa4f660e1)


41b13371f8 Alexander Turenko

uri: fix parsing uppercased IPv6 addresses

Before this patch `uri.parse(<uri-string-with-ipv6-addres>)` did not work correctly. In particular, it did not parse an IPv6 address if it contained `A-F`. It is a regression caused by commit 1376aad9b3fd ("Refactor src/uri.rl to support RFC3986 and add Lua bindings"). This patch fixes a bug where characters `A-F` are not supported in IPv6. Part of #9556 NO_DOC=bugfix (cherry picked from commit 2eefc56a3e08a60f0b71e33621be851794131546)


69e06364ea Alexander Turenko

uri: mark the parser source file as generated

The motivation is to exclude the file from diffs on GitHub's web interface [1] and to exclude it from checkpatch checks [2]. [1]: https://docs.github.com/en/repositories/working-with-files/managing-files/customizing-how-changed-files-appear-on-github [2]: https://github.com/tarantool/checkpatch/pull/75 NO_DOC=the patch is about the development process, it doesn't change anything in the shipped product NO_CHANGELOG=see NO_DOC NO_TEST=see NO_DOC (cherry picked from commit fbea9862b087e161a48dc0ac181a1da06cc0ce9d)


561e2d9a51 Serge Petrenko

static-build: bump the OpenSSL library version to 3.2.1

Bump the OpenSSL library version to 3.2.1 and remove OpenSSL patches which are already present in the updated library version. Disable modules in OpenSSL configuration to make sure the OpenSSL 3.0 legacy provider is compiled into the library. Closes #7502 NO_DOC=<dependency bump> NO_TEST=<dependency bump> Co-authored-by: Sergey Bronnikov <sergeyb@tarantool.org> (cherry picked from commit 8de22969aeeed85428aefb4d608a38c86cd3c3ea)


Branches



























































































Tags

Tree

.editorconfigcommits | blame
.gdbinitcommits | blame
.gitattributescommits | blame
.github/
.gitignorecommits | blame
.gitmodulescommits | blame
.luacheckrccommits | blame
.pack.mkcommits | blame
.test.mkcommits | blame
AUTHORScommits | blame
CMakeLists.txtcommits | blame
CONTRIBUTING.mdcommits | blame
Doxyfilecommits | blame
Doxyfile.API.incommits | blame
FreeBSD/
LICENSEcommits | blame
README.FreeBSDcommits | blame
README.MacOSXcommits | blame
README.OpenBSDcommits | blame
README.mdcommits | blame
TODOcommits | blame
apk/
asan/
changelogs/
cmake/
debian/
doc/
docker/
extra/
patches/
perf/
rpm/
rump/
src/
static-build/
test/
test-run$commits | blame
third_party/
tools/

README.md

# Tarantool

[![Actions Status][actions-badge]][actions-url]
[![Code Coverage][coverage-badge]][coverage-url]
[![OSS Fuzz][oss-fuzz-badge]][oss-fuzz-url]
[![Telegram][telegram-badge]][telegram-url]
[![GitHub Discussions][discussions-badge]][discussions-url]
[![Stack Overflow][stackoverflow-badge]][stackoverflow-url]

[Tarantool][tarantool-url] is an in-memory computing platform consisting of a
database and an application server.

It is distributed under [BSD 2-Clause][license] terms.

Key features of the application server:

* Heavily optimized Lua interpreter with incredibly fast tracing JIT compiler,
  based on LuaJIT 2.1.
* Cooperative multitasking, non-blocking IO.
* [Persistent queues][queue].
* [Sharding][vshard].
* [Cluster and application management framework][cartridge].
* Access to external databases such as [MySQL][mysql] and [PostgreSQL][pg].
* A rich set of built-in and standalone [modules][modules].

Key features of the database:

* MessagePack data format and MessagePack based client-server protocol.
* Two data engines: 100% in-memory with complete WAL-based persistence and an
  own implementation of LSM-tree, to use with large data sets.
* Multiple index types: HASH, TREE, RTREE, BITSET.
* Document oriented JSON path indexes.
* Asynchronous master-master replication.
* Synchronous quorum-based replication.
* RAFT-based automatic leader election for the single-leader configuration.
* Authentication and access control.
* ANSI SQL, including views, joins, referential and check constraints.
* [Connectors][connectors] for many programming languages.
* The database is a C extension of the application server and can be turned
  off.

Supported platforms are Linux (x86_64, aarch64), Mac OS X (x86_64, M1), FreeBSD
(x86_64).

Tarantool is ideal for data-enriched components of scalable Web architecture:
queue servers, caches, stateful Web applications.

To download and install Tarantool as a binary package for your OS or using
Docker, please see the [download instructions][download].

To build Tarantool from source, see detailed [instructions][building] in the
Tarantool documentation.

To find modules, connectors and tools for Tarantool, check out our [Awesome
Tarantool][awesome-list] list.

Please report bugs to our [issue tracker][issue-tracker]. We also warmly
welcome your feedback on the [discussions][discussions-url] page and questions
on [Stack Overflow][stackoverflow-url].

We accept contributions via pull requests. Check out our [contributing
guide][contributing].

Thank you for your interest in Tarantool!

[actions-badge]: https://github.com/tarantool/tarantool/workflows/release/badge.svg
[actions-url]: https://github.com/tarantool/tarantool/actions
[coverage-badge]: https://coveralls.io/repos/github/tarantool/tarantool/badge.svg?branch=master
[coverage-url]: https://coveralls.io/github/tarantool/tarantool?branch=master
[telegram-badge]: https://img.shields.io/badge/Telegram-join%20chat-blue.svg
[telegram-url]: http://telegram.me/tarantool
[discussions-badge]: https://img.shields.io/github/discussions/tarantool/tarantool
[discussions-url]: https://github.com/tarantool/tarantool/discussions
[stackoverflow-badge]: https://img.shields.io/badge/stackoverflow-tarantool-orange.svg
[stackoverflow-url]: https://stackoverflow.com/questions/tagged/tarantool
[oss-fuzz-badge]: https://oss-fuzz-build-logs.storage.googleapis.com/badges/tarantool.svg
[oss-fuzz-url]: https://oss-fuzz.com/coverage-report/job/libfuzzer_asan_tarantool/latest
[tarantool-url]: https://www.tarantool.io/en/
[license]: LICENSE
[modules]: https://www.tarantool.io/en/download/rocks
[queue]: https://github.com/tarantool/queue
[vshard]: https://github.com/tarantool/vshard
[cartridge]: https://github.com/tarantool/cartridge
[mysql]: https://github.com/tarantool/mysql
[pg]: https://github.com/tarantool/pg
[connectors]: https://www.tarantool.io/en/download/connectors
[download]: https://www.tarantool.io/en/download/
[building]: https://www.tarantool.io/en/doc/latest/dev_guide/building_from_source/
[issue-tracker]: https://github.com/tarantool/tarantool/issues
[contributing]: CONTRIBUTING.md
[awesome-list]: https://github.com/tarantool/awesome-tarantool/