Lua Policy: различия между версиями

Материал из ALT Linux Wiki
м (→‎О версиях Lua и их модулях: форматирование)
Строка 27: Строка 27:
=== О версиях Lua и их модулях ===
=== О версиях Lua и их модулях ===


Давным-давно в ALTLinux была одна только Lua 5.0 . С тех пор у нас стандартными путями для модулей были %_datadir/lua5 и %_libdir/lua5 . Потом вышла Lua 5.1 и версию 5.0 выкинули.
Давным-давно в ALTLinux была одна только Lua 5.0 . С тех пор у нас стандартными путями для модулей были ''%_datadir/lua5'' и ''%_libdir/lua5'' . Потом вышла Lua 5.1 и версию 5.0 выкинули.
Сейчас у нас 3 интерпретатора (см. выше), реализующих две версии: 5.3 и 5.1 . Самый главный тут вопрос - вопрос актуальности.
Сейчас у нас 3 интерпретатора (см. выше), реализующих две версии: 5.3 и 5.1 . Самый главный тут вопрос - вопрос актуальности.
# Понятно, что каждый из интерпретаторов актуален для тех пакетов, которые от них зависят, как какой-нибудь ''love'' работает на libluajit.so, поэтому в его зависимостях это прописано
# Понятно, что каждый из интерпретаторов актуален для тех пакетов, которые от них зависят, как какой-нибудь ''love'' работает на ''libluajit.so'', поэтому в его зависимостях это прописано
# Для модульных систем у нас есть зависимости модулей друг от друга и от версии Lua (пример?). Вопрос актуальности версий Lua тут открывается очень простым. На самом деле в 95% случаев подходит ''Lua >= 5.1''. Это позволяет принять версию 5.3 главной в вопросе поддержки модулей и их упаковки.
# Для модульных систем у нас есть зависимости модулей друг от друга и от версии Lua (пример?). Вопрос актуальности версий Lua тут открывается очень простым. На самом деле в 95% случаев подходит ''Lua >= 5.1''. Это позволяет принять версию 5.3 главной в вопросе поддержки модулей и их упаковки.



Версия от 09:39, 19 сентября 2017

Stub.png
Черновик политики Sisyphus
Автор(ы) — ildar@
[... Обсуждение в devel@]
Обсуждается с 20.09.2017


Правила упаковки модулей и программ на языке Lua.

Список интерпретаторов Lua в ALTLinux

  1. Lua 5.1
  2. Lua 5.3
  3. LuaJIT 2.1

Общие соображения

Программы Lua могут исполняться в двух режимах:

  1. Программа, которая содержит в себе интерпретатор Lua (например, в виде библиотеки liblua.so.*), запускает Lua-часть средствами этого интерпретатора
  2. Скрипт Lua запускается с помощью интерпретатора, например /usr/bin/lua

Следовательно, всё-таки стоит отойти от практики явной линковки модулей с liblua.so и воспринимать эту библиотеку не как библиотеку, а как интерпретатор.

Модули и Lua-библиотеки следует паковать через LuaRocks. Это позволяет полуавтоматически отслеживать зависимости между модулями и в крайнем случае доустанавливать модули пользователям в локальном режиме.

О версиях Lua и их модулях

Давным-давно в ALTLinux была одна только Lua 5.0 . С тех пор у нас стандартными путями для модулей были %_datadir/lua5 и %_libdir/lua5 . Потом вышла Lua 5.1 и версию 5.0 выкинули. Сейчас у нас 3 интерпретатора (см. выше), реализующих две версии: 5.3 и 5.1 . Самый главный тут вопрос - вопрос актуальности.

  1. Понятно, что каждый из интерпретаторов актуален для тех пакетов, которые от них зависят, как какой-нибудь love работает на libluajit.so, поэтому в его зависимостях это прописано
  2. Для модульных систем у нас есть зависимости модулей друг от друга и от версии Lua (пример?). Вопрос актуальности версий Lua тут открывается очень простым. На самом деле в 95% случаев подходит Lua >= 5.1. Это позволяет принять версию 5.3 главной в вопросе поддержки модулей и их упаковки.

Основные термины

Нерешенные проблемы

Ссылки