zg 30.09.2012 03:26:20 +0200 - build 2851
1. слияние с проектом Spring (https://github.com/shmuz/Spring).
в связи с этим вместо встроенного макроязыка используется скриптовый язык Lua 5.1 (http://www.lua.org).
после перехода на Lua: macroapi_manual.ru.chm.
(Мануал весьма лаконичен, вместо описания функции старого макроязыка приведены ссылки на устаревший раздел
8 - невалиндный Idx теперь не отличается от состояния "не выделен"
10 - тут аналогично, плюс ещё вопрос: физический смысл значения кто-то может объяснить?
(в документации number, а по факту boolean, но вероятно так надо)
John Doe wrote: ↑Mon 21 Oct, 2019 08:21
8 - невалиндный Idx теперь не отличается от состояния "не выделен"
Это так, но это был недокументированный артефакт, поддерживать который только для свойства номер 8 (ибо для прочих свойств такой особенности нет) не имело смысла.
John Doe wrote: ↑Mon 21 Oct, 2019 08:21
10 - тут аналогично, плюс ещё вопрос: физический смысл значения кто-то может объяснить?
(в документации number, а по факту boolean, но вероятно так надо)
Уже снова number (билд 5493). То, что раньше было boolean - это моя давнишняя ошибка, вследствие невникания или спешки. Удивительно, что в течение 7 лет это никому не мешало.
John Doe wrote: ↑Mon 21 Oct, 2019 08:51
Код: Выделить всё
22 Var Значение Custom-колонки
Всегда пустая строка, вероятно не адаптировано для текущего апи колонок.
Это на мантис. Сейчас нет времени разбираться.
Last edited by Shmuel on Mon 21 Oct, 2019 10:06, edited 1 time in total.
Shmuel wrote: ↑Mon 21 Oct, 2019 09:56
Это так, но это был недокументированный артефакт, поддерживать который только для свойства номер 8 (ибо для прочих свойств такой особенности нет) не имело смысла.
Т.е. это исправлять не планируется? (Например nil возвращать вместо false)
Shmuel wrote: ↑Mon 21 Oct, 2019 09:56
Уже снова number
А что это за значение? Номер группы?
Shmuel wrote: ↑Mon 21 Oct, 2019 09:56
Это на мантис. Сейчас нет времени разбираться.
При сохранении таблиц будут сохраняться:
- ключи типов: `number`, `string`, `boolean`, `table`
- значения типов: `number`, `string`, `boolean`, `table`, `int64`
Неподдерживаемые ключи/значения игнорируются.
Имхо в большинстве случаев было бы правильнее падать с ошибкой.
И для тех гипотетических случаев, когда действительно допустимо молча игнорировать - можно добавить флажок к аргументам.
Edit:
msave - аналогично.
И мне кажется допустимо несколько упростить документацию, если в статьях msave/mload вместо подробного описания сослаться на serialize/deserialize
John Doe wrote: ↑Mon 21 Oct, 2019 10:07
Т.е. это исправлять не планируется? (Например nil возвращать вместо false)
Невалидный Idx (и другие невалидные ситуации) могут быть для всех значений 3-го параметра. Какой смысл вводить эту фичу только для свойства 8 ?
И кроме того, "политика" такова, что развитием макро-API я не занимаюсь, а только исправлением багов. Хотя из этого правила могут быть исключения.
John Doe wrote: ↑Mon 21 Oct, 2019 10:11
mf.serialize писал(а):
John Doe wrote: ↑Mon 21 Oct, 2019 10:07
А что это за значение? Номер группы?
Это надо у Валентина спрашивать. Я поигрался, там могут быть значения 0,1...,10000,10001 - похоже, что выделено несколько диапазонов. Вы тоже можете поиграться.
Shmuel wrote: ↑Mon 21 Oct, 2019 10:17
Невалидный Idx (и другие невалидные ситуации) могут быть для всех значений 3-го параметра. Какой смысл вводить эту фичу только для свойства 8 ?
Необязательно только для 8.
Можно в таких случах возвращать nil для всех.
Exception: 0xC0000005 - EXCEPTION_ACCESS_VIOLATION
Details: Memory at F05A7F35 could not be read
errno: 0x00000000 - No error
LastError: 0x00000012 - There are no more files.
NTSTATUS: 0x80000006 - {No More Files} No more files were found which match the file specification.
Address: 0x74F0C0A0 - KERNELBASE.dll!WideCharToMultiByte
Source:
Function: OpenW
Module: C:\APPs\Far3\Plugins\LuaMacro\luamacro.dll
Version: 3.0.0.5546 x86 (acb68af)
OS: 10.0.17763.2.0.0.256.1 (version 1809, OS build 17763.973)
0x74F0C0A0 KERNELBASE.dll!WideCharToMultiByte
0x63E12838 luafar3.dll!luaopen_luafar3
0x63E12908 luafar3.dll!luaopen_luafar3
0x63DFA7F4 luafar3.dll!LF_SetFindList
Судя по стеку, да, падает LuaFAR, но он получает от NetBox'а указатель на строку, который указывает на память, не принадлежащую NetBox'у (то есть "мусорный" указатель). LuaFAR проверяет указатель на NULL, но у него нет средств отличить мусорный указатель от валидного.