-
Notifications
You must be signed in to change notification settings - Fork 387
Inappropriate dependency in deb package #5429
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
Comments
The idea of In short: the weak dependency is right, but the minimal dependency should be bumped when given tarantoolctl version is not compatible with given tarantool version anymore. |
The problem per se (reported by a user via @rosik to us):
So, we should depend on |
Maybe better change shipment unit of luarocks module and move it to tarantoolctl package (common)? |
I would also add that |
Seems good on the first glance. NB: If we'll do, we should correctly set which packages blocks each others to avoid conflicting by files. |
The same issue just affected @Errora The reason is the old tarantool-common 1.9, |
The situation occurs on Debian Bullseye (where tarantool-2.6 is in the base repositories), when we enable our repository for tarantool-1.10. The installer.sh script pins tarantool package from our repository. But we should pin tarantool-dev package too, otherwise apt-get will unable to install it: | $ apt-get install -y tarantool-dev | <...> | The following packages have unmet dependencies: | tarantool-dev : Depends: tarantool (= 2.6.0-1) but | 1.10.11.0.gf0b0e7ecf-1 is to be installed | E: Unable to correct problems, you have held broken pack We should also pin tarantool-common, otherwise apt-get will install incorrect version of the package: | $ apt-get install -y tarantool | <...> | $ dpkg -l | grep tarantool | ii tarantool 1.10.11.0.gf0b0e7ecf-1 amd64 <...> | ii tarantool-common 2.6.0-1 all <...> | ii tarantool-dev 1.10.11.0.gf0b0e7ecf-1 amd64 <...> `tarantoolctl rocks` will not work with those tarantool and tarantool-common versions, see tarantool/tarantool#5429. Fixes #10
AFAIK, current deb packages skips restart so this weak dependency is not required anymore Line 27 in 60f1681
|
Seems so. #6400 is about that. We want to resolve current problems first, provide updates to Debian's repositories (simple update will not require much attention from Debian developers) and only after this rearrange the packages and propose the new packages structure to review into Debian. |
Current weak dependency permits using old luarocks with new Tarantool. Closes #5429
Issue reproducerTest containerdocker run --name debian_bash --rm -i -t debian:buster bash Installapt-get update
apt-get install -y curl
curl -L https://tarantool.io/OtKysgx/release/2.8/installer.sh | bash
apt-get install -y tarantool-common=1.9.1.26.g63eb81e3c-1.1
apt-get install -y tarantool=2.8.2.0.gfc96d10f5-1
tarantool is already the newest version (2.8.2.0.gfc96d10f5-1). Infotarantool Tarantool 2.8.2-0-gfc96d10f5
type 'help' for interactive help apt-cache policy tarantool tarantool:
Installed: 2.8.2.0.gfc96d10f5-1
Candidate: 2.8.2.0.gfc96d10f5-1
Version table:
*** 2.8.2.0.gfc96d10f5-1 1001
500 https://download.tarantool.org/OtKysgx/tarantool/release/2.8/debian buster/main amd64 Packages
100 /var/lib/dpkg/status
2.8.1.0.ge2a1ec0c2-1 1001
500 https://download.tarantool.org/OtKysgx/tarantool/release/2.8/debian buster/main amd64 Packages
2.8.0.0.gefc30ccf8-1 1001
500 https://download.tarantool.org/OtKysgx/tarantool/release/2.8/debian buster/main amd64 Packages
1.9.1.26.g63eb81e3c-1.1 500
500 http://deb.debian.org/debian buster/main amd64 Packages apt-cache policy tarantool-common tarantool-common:
Installed: 1.9.1.26.g63eb81e3c-1.1
Candidate: 2.8.2.0.gfc96d10f5-1
Version table:
2.8.2.0.gfc96d10f5-1 500
500 https://download.tarantool.org/OtKysgx/tarantool/release/2.8/debian buster/main amd64 Packages
2.8.1.0.ge2a1ec0c2-1 500
500 https://download.tarantool.org/OtKysgx/tarantool/release/2.8/debian buster/main amd64 Packages
*** 1.9.1.26.g63eb81e3c-1.1 500
500 http://deb.debian.org/debian buster/main amd64 Packages
100 /var/lib/dpkg/status How to broke
LuajitError: /usr/bin/tarantoolctl:863: module 'luarocks.cfg' not found:
no field package.preload['luarocks.cfg']
no file '/luarocks/cfg.lua'
no file '/luarocks/cfg/init.lua'
no file '/luarocks/cfg.so'
no file '/.rocks/share/tarantool/luarocks/cfg.lua'
no file '/.rocks/share/tarantool/luarocks/cfg/init.lua'
no file '/.rocks/lib/tarantool/luarocks/cfg.so'
no file '/root/.luarocks/share/lua/5.1/luarocks/cfg.lua'
no file '/root/.luarocks/share/lua/5.1/luarocks/cfg/init.lua'
no file '/root/.luarocks/share/lua/lua
fatal error, exiting the event loop |
Current weak dependency permits using old luarocks with new Tarantool. Closes #5429
Promote @Totktonada to be a new maintainer for debian package. Closes #5429
Bump tarantool-common dependency to use luarocks 3. Current weak dependency permits using old luarocks with new Tarantool, which causes rocks install to fail. Closes #5429
Bump tarantool-common dependency to use luarocks 3. Prior to this patch, it was permitted to have new tarantool package (version >= 2.2.1) installed with pre-luarocks 3 tarantool-common package (version << 2.2.1). It caused rocks install to fail. Closes #5429
Promote @Totktonada to be a new maintainer for debian packages. Closes #5429
Bump tarantool-common dependency to use luarocks 3. Prior to this patch, it was permitted to have new tarantool package (version >= 2.2.1) installed with pre-luarocks 3 tarantool-common package (version << 2.2.1). It caused rocks install to fail. Closes #5429
Bump tarantool-common dependency to use luarocks 3. Prior to this patch, it was permitted to have new tarantool package (version >= 2.2.1) installed with pre-luarocks 3 tarantool-common package (version << 2.2.1). It caused rocks install to fail. Closes #5429
Bump tarantool-common dependency to use luarocks 3. Prior to this patch, it was permitted to have new tarantool package (version >= 2.2.1) installed with pre-luarocks 3 tarantool-common package (version << 2.2.1). It caused rocks install to fail. Closes #5429
The situation occurs on Debian Bullseye (where tarantool-2.6 is in the base repositories), when we enable our repository for tarantool-1.10. The installer.sh script pins tarantool package from our repository. But we should pin tarantool-dev package too, otherwise apt-get will unable to install it: | $ apt-get install -y tarantool-dev | <...> | The following packages have unmet dependencies: | tarantool-dev : Depends: tarantool (= 2.6.0-1) but | 1.10.11.0.gf0b0e7ecf-1 is to be installed | E: Unable to correct problems, you have held broken pack We should also pin tarantool-common, otherwise apt-get will install incorrect version of the package: | $ apt-get install -y tarantool | <...> | $ dpkg -l | grep tarantool | ii tarantool 1.10.11.0.gf0b0e7ecf-1 amd64 <...> | ii tarantool-common 2.6.0-1 all <...> | ii tarantool-dev 1.10.11.0.gf0b0e7ecf-1 amd64 <...> `tarantoolctl rocks` will not work with those tarantool and tarantool-common versions, see tarantool/tarantool#5429. Fixes #10
This problem was fixed in tarantool 2.10.0.
That's correct: Let's look on latest 1.10 release:
It hits users on Debian Bullseye (11) and Ubuntu Jammy (22.04), because it contains Our However I don't know, to be honest, whether the fix would actually make users more happy. I guess that without pinning of the (In assumption that pinning of the origin will likely solve all the problems transparently for a user, I filed tarantool/doc#3252.) It is one more confirmation of #6400's point: the separate tarantool-common is error prone. Footnotes
|
The problem is that on Ubuntu 22.04 luarocks v3 from the `tarantool-common` package is installed, but tarantoolctl from tarantool 1.10 uses luarocks v2. See [1] for more details. [1] tarantool/tarantool#5429 (comment)
The problem is that on Ubuntu 22.04 luarocks v3 from the `tarantool-common` package is installed, but tarantoolctl from tarantool 1.10 uses luarocks v2. See [1] for more details. [1] tarantool/tarantool#5429 (comment)
The problem is that on Ubuntu 22.04 luarocks v3 from the `tarantool-common` package is installed, but tarantoolctl from tarantool 1.10 uses luarocks v2. See [1] for more details. [1] tarantool/tarantool#5429 (comment)
The problem is that on Ubuntu 22.04 luarocks v3 from the `tarantool-common` package is installed, but tarantoolctl from tarantool 1.10 uses luarocks v2. See [1] for more details. [1] tarantool/tarantool#5429 (comment)
The problem is that on Ubuntu 22.04 luarocks v3 from the `tarantool-common` package is installed, but tarantoolctl from tarantool 1.10 uses luarocks v2. See [1] for more details. [1] tarantool/tarantool#5429 (comment)
The problem is that on Ubuntu 22.04 luarocks v3 from the `tarantool-common` package is installed, but tarantoolctl from tarantool 1.10 uses luarocks v2. See [1] for more details. [1] tarantool/tarantool#5429 (comment)
Tarantool version: 2.4.2
Tarantool dependency on
tarantool-common
from is specified as>= 1.7.5
, while it should be== 2.4.2....
The tarantoolctl binary belongs to the
tarantool-common
package, but all luarocks modules - to thetarantool
. Version inconsistency causes problems.The text was updated successfully, but these errors were encountered: