Skip to content
Snippets Groups Projects
  1. Oct 21, 2021
    • Georgy Moiseev's avatar
      debian: bump debian/compat to 10 · d3c3031b
      Georgy Moiseev authored
      Bump debian/compat to 10 since 9 is deprecated. Bump minimal required
      debhelper to 10 (except for Ubuntu Trusty and Xenial) since it is the
      recommended practice for compatibility level setup.
      
      Closes #6393
      d3c3031b
  2. Oct 14, 2021
  3. Jun 18, 2021
  4. Apr 15, 2021
    • Alexander Turenko's avatar
      security: update libcurl from 7.71.1 to 7.76.0 · c0e253fe
      Alexander Turenko authored
      The reason of the update is to protect us against possible MITM attack
      from a malicious HTTPS proxy server with trusted certificate when TLS
      1.3 is used (CVE-2021-22890, [1]). libcurl versions prior to 7.76.0 can
      skip a TLS handshake with a target host in this circumstances.
      
      Other vulnerabilities fixed in the (7.71.1; 7.76.0] version range do not
      look relevant to our built-in http client. See [2] for the full list.
      
      The CMake version requirement is updated from 3.1 to 3.2, because curl's
      CMakeLists.txt has the following clause at beginning:
      
       | cmake_minimum_required(VERSION 3.2...3.16 FATAL_ERROR)
      
      (It was there in vanilla curl 7.71.1 too and we had to remove it in
      order to support CMake 2. Now we don't support CMake 2, so it is good
      time to get rid of the extra patch upward vanilla curl repository.)
      
      According to the CMake versions table in
      8a7702b1 ('github-ci: purge Debian
      Jessie from CI'), CMake 3.2+ is available on all supported OSes.
      
      [1]: https://curl.se/docs/CVE-2021-22890.html
      [2]: https://curl.se/docs/vulnerabilities.html
      
      @TarantoolBot document
      Title: Now we require CMake 3.2 to build tarantool
      
      In https://github.com/tarantool/doc/issues/1780 we requested to update
      the CMake minimum version to 3.1. Now it is time for 3.2. See details in
      the linked commit.
      
      Please, update the 'Building from source' manual.
      c0e253fe
  5. Feb 28, 2021
    • Igor Munkin's avatar
      build: adjust LuaJIT build system · 07c83aab
      Igor Munkin authored
      LuaJIT submodule is bumped to introduce the following changes:
      * test: run luacheck static analysis via CMake
      * test: fix warnings found with luacheck in misclib*
      * test: run LuaJIT tests via CMake
      * build: replace GNU Make with CMake
      * build: preserve the original build system
      
      Since LuaJIT build system is ported to CMake in scope of the changeset
      mentioned above, the module building the LuaJIT bundled in Tarantool is
      completely reworked. There is no option to build Tarantool against
      another prebuilt LuaJIT due to a91962c0
      ('Until Bug#962848 is fixed, don't try to compile with external
      LuaJIT'), so all redundant options defining the libluajit to be used in
      Tarantool are dropped with the related auxiliary files.
      
      To run LuaJIT related tests or static analysis for Lua files within
      LuaJIT repository, <LuaJIT-test> and <LuaJIT-luacheck> targets are used
      respectively as a dependency of the corresponding Tarantool targets.
      
      As an additional dependency to run LuaJIT tests, prove[1] utility is
      required, so the necessary binary packages are added to the lists with
      build requirements.
      
      [1]: https://metacpan.org/pod/TAP::Harness#prove
      
      
      
      Closes #4862
      Closes #5470
      Closes #5631
      
      Reviewed-by: default avatarSergey Kaplun <skaplun@tarantool.org>
      Reviewed-by: default avatarTimur Safin <tsafin@tarantool.org>
      Signed-off-by: default avatarIgor Munkin <imun@tarantool.org>
      Unverified
      07c83aab
  6. Jan 27, 2021
  7. Jan 25, 2021
    • Alexander V. Tikhonov's avatar
      build: remove autotools from packages spec · 11dcc9cb
      Alexander V. Tikhonov authored
      After cURL was changed to use cmake in commit
      
        2b076019 ('build: enable cmake in curl build')
      
      there is no need to set dependencies to autotools. So removed it from:
      
        - rpm build spec for packages builds
        - deb build control for packages builds
        - OSX build targets
        - static OSX build target
        - freebsd VBOX VM image setup
      11dcc9cb
  8. Dec 28, 2020
  9. Jun 10, 2020
  10. Oct 23, 2019
  11. Aug 27, 2019
    • Vladislav Shpilevoy's avatar
      rope: make rope library macro template · baa4659c
      Vladislav Shpilevoy authored
      Rope library stores alloc, split and free functions by pointer,
      that is a huge slog at performance, as any other virtual
      function call. There is no reason, why the rope library may not
      become a template, except historical ones.
      
      The patch not only removes virtual functions, but also makes rope
      deletion almost no-op in case if free() function is not defined.
      
      A second motivation point of that patch is that original rope
      structure was too big. Again, because it stored several pointers
      to functions. In forthcoming patches on #1261 multiple ropes can
      be created per each update, so it makes sense to reduce size of
      this structure.
      baa4659c
  12. Aug 21, 2019
    • Mergen Imeev's avatar
      build: link libcurl statically from a submodule · 7e51aebb
      Mergen Imeev authored
      Hold libcurl-7.65.3. This version is not affected by the following
      issues:
      
      * #4180 ('httpc: redirects are broken with libcurl-7.30 and older');
      * #4389 ('libcurl memory leak');
      * #4397 ('HTTPS seem to be unstable').
      
      After this patch libcurl will be statically linked when
      ENABLE_BUNDLED_LIBCURL option is set. This option is set by default.
      
      Closes #4318
      
      @TarantoolBot document
      Title: Tarantool dependency list was changed
      
      * Added build dependencies: autoconf, automake, libtool, zlib-devel
        (zlib1g-dev on Debian).
      * Added runtime dependencies: zlib (zlib1g on Debian).
      * Removed build dependencies: libcurl-devel (libcurl4-openssl-dev on
        Debian).
      * Removed runtime dependencies: curl.
      
      The reason is that now we use compiled-in libcurl: so we don't depend on
      a system libcurl, but inherit its dependencies.
      7e51aebb
  13. Jul 24, 2019
    • Serge Petrenko's avatar
      build: enable bundled libyaml for all systems. · 47b91e90
      Serge Petrenko authored
      After we fixed bundled libyaml to correctly print 4-byte Unicode
      characters, it is no longer compatible with the upstream version, so
      enable building with bundled libyaml for every platform.
      This way the tests will pass.
      
      Follow-up #4090
      47b91e90
  14. Jun 08, 2018
    • Alexander Turenko's avatar
      debian: don't install systemd service file twice · e38d2762
      Alexander Turenko authored
      It fixes the following errors during tarantool installation from
      packages on debian / ubuntu:
      
      ```
      Unpacking tarantool (1.9.1.23.gacbd91c-1) ...
      dpkg: error processing archive /var/cache/apt/archives/tarantool_1.9.1.23.gacbd91c-1_amd64.deb (--unpack):
       trying to overwrite '/lib/systemd/system/tarantool.service', which is also in package tarantool-common 1.9.1.23.gacbd91c-1
      ```
      
      The problem is that tarantool.service file was shipped with
      tarantool-common and tarantool packages both. It is the regression after
      8925b862.
      
      The way to avoid installing / enabling the service file within tarantool
      package is to pass `--name` option to dh_systemd_enable, but do not pass
      the service file name. In that case dh_systemd_enable does not found the
      service file and does not enforce existence of the file.
      
      Hope there is less hacky way to do so, but I don't found one at the
      moment.
      Unverified
      e38d2762
  15. Jun 07, 2018
  16. Oct 06, 2017
  17. Sep 12, 2017
  18. Sep 04, 2017
  19. Jul 28, 2017
  20. Jul 24, 2017
  21. Jul 18, 2017
  22. Jul 14, 2017
    • Roman Tsisyk's avatar
      Add minimal viable package manager based on LuaRocks · 9e7c4217
      Roman Tsisyk authored
      Usage:
      
          tarantoolctl rocks install ROCK - install a rock
          tarantoolctl rocks remove ROCK - remove a rock
          tarantoolctl rocks show ROCK - show information about an installed rock
          tarantoolctl rocks search PATTERN - search repository for rocks
          tarantoolctl rocks list - list all installed rocks
      
      There are no other commands, options, configuration files. Our official
      repository (http://rocks.tarantool.org) works out of the box. All rocks
      are installed to ${PWD}/.rocks directory to support separate rocks trees
      per project, as proposed by #2067. Rockspec can use "tarantool >= 1.7.x"
      inside dependencies = {} block to depend on a specific Tarantool version.
      
      LuaRocks has been slightly hacked to support custom configuration
      via site_config.lua. There are no other changes in the upstream code.
      It is not a fork and it isn't going to be a fork. All formats, layouts
      and rockspecs are 100% compatible with the upstream LuaRocks 2017-07-10.
      
      This feature intentionally doesn't have CMake option to disable it,
      because it should be provided on all available platforms out of the box.
      
      Other changes:
      
       * Add ${PWD}/.rocks to default package.path/package.cpath
       * Hack tarantoolctl to display subcommands in --help.
         Currently command line arguments handling are not perfect, but
         it can be fixed only by a new argparse implementation.
      
      Closes #2067
      9e7c4217
  23. Jul 11, 2017
  24. Jun 16, 2017
    • Ilya's avatar
      Add HTTP client based on libcurl · 7e62ac79
      Ilya authored
      Inpspired by tarantool/curl module by Vasiliy Soshnikov.
      Reviewed and refactored by Roman Tsisyk.
      
      Closes #2083
      7e62ac79
  25. May 25, 2017
  26. May 12, 2017
    • Roman Tsisyk's avatar
      Debian: bump tarantool-common dependency · a89cc747
      Roman Tsisyk authored
      Force tarantool-common upgrade to support systemd notifications.
      
      + Add missing "s" suffix to TimeoutStartSec= option.
      
      See #1923
      a89cc747
    • Kirill Yukhin's avatar
      Introduce SQL maintainer mode. · 38c5400f
      Kirill Yukhin authored
      This patch removes following source files regeneration:
        1. keywordhash.h
        2. opcodes.[hc]
        3. parse.[hc]
        4. sqlite3.h
      adding them to the source tree.
      
      To re-generate them (p.p. 1-3) one must pass
      -DSQL_MAINTAINER_MODE=ON option to cmake. Files will be
      copied to source tree automatically iif actual difference will
      be detected.
      
      As far we don't need such platform variety - remove sqlite3.h
      re-generation at all.
      Remove TCL script responsible for generation and template header
      as well.
      
      Compilation of auxilary SQL tools was also moved under this option:
        1. Lemon parser
        2. mkkeywordhash
      since they redundant in non-maintainer mode.
      
      Finally it removes dependency on TCL from all Tarantool package
      variants.
      
      Remove sqliteConfig.h, we don't use it.
      38c5400f
  27. May 11, 2017
    • Kirill Yukhin's avatar
      sql: Add dependency on TCL shell for linux in Travis · 21c3e29b
      Kirill Yukhin authored
      SQLite uses TCL shell to generate common headers.
      Add dependency in Travis to TCL shell for linux targets.
      OSX comes with TCL pre-installed - no need to add dependency.
      
      	* .travis.mk (deps_linux): Add tcl.
      
      sql: Add dependency to TCL in packages.
      
      As far as SQLite sources depend on TCLsh we need to
      add dependency to TCL in package info.
      
      	* debian/control: Add dependency on TCL.
      	* rpm/tarantool.spec: Ditto.
      	* snapcraft.yaml: Ditto.
      
      sql: Avoid multiline string to satisfy older cmake
      
      RHEL uses some old cmake which doesn't work with long string
      which span over few lines w/ '\' terminator. Make it single line.
      
      	* src/box/CMakeLists.txt (set_source_files_properties): Use
      	single line instead of vreaks w/ '\'.
      21c3e29b
  28. Mar 10, 2017
  29. Dec 16, 2016
  30. Dec 09, 2016
  31. Dec 04, 2016
  32. Nov 29, 2016
  33. Oct 26, 2016
  34. Oct 21, 2016
  35. Oct 11, 2016
  36. Oct 06, 2016
Loading