Diesel Pascal

Проектирование и разработка идеального средства программирования.

Модератор: Модераторы

Re: Diesel Pascal

Сообщение *Rik* » 28.09.2020 16:59:35

v-t-l писал(а):Добрые сутки, Rik!
Zeos опять глючит в последних сборках.
SQL Error: SSL error: decryption failed or bad record mac
SQL Error: SSL SYSCALL error: Выполнено
SQL Error: no connection to the server
SQL Error: connection not open

и так в разных комбинациях. Просто прокручиваю произвольно таблицу Postgresql 12 со связками мастер-дитейл.
В версии 1.14.24 работает нормально, в 1.15.2 и позже - нет.


Версия 1.14.24 собрана на Lazarus 1.8.*, последующие сборки собирались c помощью Lazarus 2.0 и ZEOS тоже вроде был обновлен, теперь надо понять кто виноват. Могу попробовать со старым ZEOS собрать последнюю версию, посмотреть что получится, может будет понятно из-за чего не работает.

Добавлено спустя 18 часов 19 минут 55 секунд:
v-t-l, я сделаю сборку со старой версией ZEOS, чтобы Вы могли попробовать, Вам под какую систему удобнее (ОС, разрядность)?
ps:
Судя по ошибкам, проблема в SSL, возможно для новой версии ZEOS, нужны библиотеки SSL посвежее.
Аватара пользователя
*Rik*
постоялец
 
Сообщения: 426
Зарегистрирован: 19.04.2011 12:18:51
Откуда: Урал

Re: Diesel Pascal

Сообщение v-t-l » 29.09.2020 12:19:33

Спасибо!
v-t-l
энтузиаст
 
Сообщения: 727
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: Diesel Pascal

Сообщение *Rik* » 30.09.2020 08:13:19

v-t-l писал(а):Спасибо!

Скажите, я не понял, проблема решилась?
Аватара пользователя
*Rik*
постоялец
 
Сообщения: 426
Зарегистрирован: 19.04.2011 12:18:51
Откуда: Урал

Re: Diesel Pascal

Сообщение v-t-l » 02.10.2020 21:33:05

Нет проблема мной пока не решалась. А сборки желательны под все возможные платформы :-)
Проблема наблюдалась как в win7 x64, так и в Xubuntu 18.04 x64.
v-t-l
энтузиаст
 
Сообщения: 727
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: Diesel Pascal

Сообщение *Rik* » 06.10.2020 09:25:43

v-t-l писал(а):Нет проблема мной пока не решалась. А сборки желательны под все возможные платформы :-)
Проблема наблюдалась как в win7 x64, так и в Xubuntu 18.04 x64.


Linux x64: http://visual-t.ru/files/exelinux64-2.tar.gz
Win32: http://visual-t.ru/files/exewindows-2.7z
Win64: http://visual-t.ru/files/exewindows64-2.7z

Собрал с ZEOS 7.1. Попробуйте, поможет или нет...

ps:
Это вторая версия движка, она ещё в самом зачатке, начал возвращать русский язык в скрипт. Русский язык регистрочувствительный пока.
Пример приложения: http://visual-t.ru/files/RuTranscriptTest.lm9
В первой версии компилятор работал исключительно с однобайтовой кодировкой, приходилось для разбора перегонять скрипт в cp1251, сейчас компилятор юникодный, работает с UTF-8, но на пользу это не пошло разбор стал медленней как и редактор тоже замедлился.

RuTranscript.png
Аватара пользователя
*Rik*
постоялец
 
Сообщения: 426
Зарегистрирован: 19.04.2011 12:18:51
Откуда: Урал

Re: Diesel Pascal

Сообщение v-t-l » 08.10.2020 10:31:21

Один раз было сообщение "Access violation." без доп.сведений и с кнопкой "Ок". Но, в общем, подтормаживает, но работает.
v-t-l
энтузиаст
 
Сообщения: 727
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: Diesel Pascal

Сообщение *Rik* » 08.10.2020 13:09:11

v-t-l писал(а):Один раз было сообщение "Access violation." без доп.сведений и с кнопкой "Ок". Но, в общем, подтормаживает, но работает.

А раньше не подтормаживало?

В анонсе ZEOS 7.2:
New parameters, so PostgreSQL can connect using SSL (sslmode, requiressl,
sslcompression, sslcert, sslkey, sslrootcert, sslcrl). Take a look
at the PostgreSQL documentation on how to use these parameters.

Посмотрите, может что-то настроить надо, чтобы Postgres совместно с Zeos 7.2 работал?
Аватара пользователя
*Rik*
постоялец
 
Сообщения: 426
Зарегистрирован: 19.04.2011 12:18:51
Откуда: Урал

Re: Diesel Pascal

Сообщение v-t-l » 24.02.2021 15:05:58

Проблема в TZPgEventAlerter. Он нарушает обмен по SSL-соединению с сервером Postgresql. По крайней мере, в той версии Zeos, что в DieselPascal 2.0.11. Если его не активировать, то описанные выше проблемы не возникают. В версии Zeos 7.2.8 и 7.2.10. с Lazarus 2.0.10/FPC 3.2.0 (xubuntu 20.04 x86_64) просто создание экземпляра TZPgEventAlerter вызывает
Код: Выделить всё
[Уведомление об исключении отладчика]

Проект project1 вызвал класс исключения 'ESyncObjectException' с сообщением:
Failed to create OS basic event with name ""

По адресу 6D5EB5


[Игнорировать этот тип исключений]

[Остановить] [Продолжить]
на TSimpleEvent.Create из /usr/share/fpcsrc/3.2.0/packages/fcl-base/src/syncobjs.pp
v-t-l
энтузиаст
 
Сообщения: 727
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: Diesel Pascal

Сообщение *Rik* » 24.02.2021 19:01:29

v-t-l писал(а):Проблема в TZPgEventAlerter. Он нарушает обмен по SSL-соединению с сервером Postgresql. По крайней мере, в той версии Zeos, что в DieselPascal 2.0.11. Если его не активировать, то описанные выше проблемы не возникают. В версии Zeos 7.2.8 и 7.2.10. с Lazarus 2.0.10/FPC 3.2.0 (xubuntu 20.04 x86_64) просто создание экземпляра TZPgEventAlerter вызывает
Код: Выделить всё
[Уведомление об исключении отладчика]

Проект project1 вызвал класс исключения 'ESyncObjectException' с сообщением:
Failed to create OS basic event with name ""

По адресу 6D5EB5


[Игнорировать этот тип исключений]

[Остановить] [Продолжить]
на TSimpleEvent.Create из /usr/share/fpcsrc/3.2.0/packages/fcl-base/src/syncobjs.pp

чтобы не было ошибки при создании TZPgEventAlerter в Lazarus, нужно в вашем тестовом проекте раскомментировать многопоточность в главном модуле проекта (где program):
Вот этот код для Linux
Код: Выделить всё
{$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
{$ENDIF}{$ENDIF}

Заменить на:
Код: Выделить всё
{$IFDEF UNIX}
  cthreads,
{$ENDIF}
(или UseCThreads задефайнить можно, как Вам удобнее)


Я могу попробовать последнюю версию ZEOS в Дизель-Паскаль засунуть... Я сейчас Postgres не использую, поэтому сложно сказать будет ли польза. Завтра соберу с последним ZEOS, вдруг поможет...

Добавлено спустя 14 часов 34 минуты 22 секунды:
Я выложил версию 2.0.13 с ZEOS 7.2.10.
Аватара пользователя
*Rik*
постоялец
 
Сообщения: 426
Зарегистрирован: 19.04.2011 12:18:51
Откуда: Урал

Re: Diesel Pascal

Сообщение Aleks69 » 26.02.2021 01:18:59

Приветствую!
Скажите пожалуйста, а уважаемый автор или кто-то еще не пробовал собрать Diesel Pascal под Android? Мне кажется, очень интересная штука должна получится. Прямо таки - прорывная. Не секрет, что "классическая" разработка под Android требует чаще всего монструозных инструментов, трудной их настройки (в 2015 далеко не сразу настроил весь путь от Lazarus до получения APK) да и много чего еще. А тут - очень интересная и, по сути, уникальная "виртуальная машина" Pascal (Lazarus). Это могло бы поставить с головы на ноги разработку приложений под Андроид для многих задач и тысячами энтузиастов. Желательно, вероятно, иметь на первое время стандартные визуальные компонеты, работу с TCP/IP (когда пробовал в 2015, под Android Indy валил приложение, Synapse работал, может сейчас уже что изменилось). Базы данных, я думаю, пока вторично. Указанный перечень уже позволит людям делать приложения для телефона по прямому управлению устройствами "Умного" дома например да и много что еще.
Aleks69
новенький
 
Сообщения: 35
Зарегистрирован: 29.03.2009 14:25:01

Re: Diesel Pascal

Сообщение *Rik* » 26.02.2021 07:20:48

Aleks69 писал(а):Приветствую!
Скажите пожалуйста, а уважаемый автор или кто-то еще не пробовал собрать Diesel Pascal под Android? Мне кажется, очень интересная штука должна получится. Прямо таки - прорывная. Не секрет, что "классическая" разработка под Android требует чаще всего монструозных инструментов, трудной их настройки (в 2015 далеко не сразу настроил весь путь от Lazarus до получения APK) да и много чего еще. А тут - очень интересная и, по сути, уникальная "виртуальная машина" Pascal (Lazarus). Это могло бы поставить с головы на ноги разработку приложений под Андроид для многих задач и тысячами энтузиастов. Желательно, вероятно, иметь на первое время стандартные визуальные компонеты, работу с TCP/IP (когда пробовал в 2015, под Android Indy валил приложение, Synapse работал, может сейчас уже что изменилось). Базы данных, я думаю, пока вторично. Указанный перечень уже позволит людям делать приложения для телефона по прямому управлению устройствами "Умного" дома например да и много что еще.

Нет, пока не пробовал, но предложения такие были.
Аватара пользователя
*Rik*
постоялец
 
Сообщения: 426
Зарегистрирован: 19.04.2011 12:18:51
Откуда: Урал

Re: Diesel Pascal

Сообщение v-t-l » 26.02.2021 09:38:28

Про {$DEFINE UseCThreads} я потом сообразил. :)
*Rik* писал(а):Я выложил версию 2.0.13 с ZEOS 7.2.10.
К сожалению, не помогло, ошибки всё те же. :(
v-t-l
энтузиаст
 
Сообщения: 727
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: Diesel Pascal

Сообщение Aleks69 » 26.02.2021 10:45:35

Возвращаясь к вопросу с Android. Попробую дополнительно пояснить свою позицию. Diesel Pascal под Android не потребуется поддержка 99% возможностей платформы Android. Кому это нужно, пусть создают свое (1000000+1 на рынке) приложение в Android Studio или подобном, отлаживают через тамошние костыли и тормоза, юзают APK, магазины и прочее. Здесь же нужна легкость распространения, а из интерфейса - кнопки, радиокнопки, чек-боксы, поля ввода, регулятор-движок, указатель уровня (прогресса) организация окон со вкладками. И обязательно TCP, UDP. В перспективе был бы полезен грид+БД (запрос с мобильного устройства к базе данных, на складе например). Потом - возможно если только камера, для считывания штрих-кодов например. Т.е. в конечном итоге речь идет о приложениях Android, которые служба ИТ или даже отдельные пользователи способны разработать и поддерживать именно под свои нужды - квартира, склад, магазин и прочее.
Aleks69
новенький
 
Сообщения: 35
Зарегистрирован: 29.03.2009 14:25:01

Re: Diesel Pascal

Сообщение *Rik* » 26.02.2021 11:16:31

v-t-l писал(а):Про {$DEFINE UseCThreads} я потом сообразил. :)
*Rik* писал(а):Я выложил версию 2.0.13 с ZEOS 7.2.10.
К сожалению, не помогло, ошибки всё те же. :(

А если в Lazarus приложение с TZPgEventAlerter сделать, ошибка воспроизводится?

Добавлено спустя 5 минут 22 секунды:
Aleks69 писал(а):Возвращаясь к вопросу с Android...

Тут ещё непонятно с какой вообще стороны к Андройд подходить, сам процесс развертывания инструментария сложен, во всяком случае много лет назад пробовал, в результате забросил. Возможно сейчас что-то изменилось, надо будет посмотреть.
Аватара пользователя
*Rik*
постоялец
 
Сообщения: 426
Зарегистрирован: 19.04.2011 12:18:51
Откуда: Урал

Re: Diesel Pascal

Сообщение Aleks69 » 26.02.2021 11:54:53

> Тут ещё непонятно с какой вообще стороны к Андройд подходить, сам процесс развертывания инструментария сложен
Это есть, да. Но в принципе по инструкции автора все заработало. В 2015 работал с этим релизом: https://sourceforge.net/projects/laz4android/
Тогда он правда лежал где-то в другом месте. Через несколько дней, возможно, смогу опять попробовать настроить.
Когда-то даже создавал тему и выкладывал настроенный архив, жалко потерял пароль от того диска... viewtopic.php?f=5&t=19285

Кстати, тут еще интересный момент - многих пользователей, если речь идет про управление обрудованием, думаю устроят приложения без локального хранилища, в том числе, чтоб не связыватся с сохранением файлов локально в Android (хотя в laz4android это помнится и работало, но была зависимость от конкретного устройства в смысле путей). Хотя это не главное, конечно. Но все же, приложение на Diesel Pascal легко изменить, например, вбить в него новые IP-адреса для оборудования или еще что. Без сохранения настроек вне приложения.

Вообще, пофантазируем. Пускай первый вариант - stateless приложение на Diesel Pascal и Android. При старте оно быстро опрашивает датчики по IP и потом работает с учетом их состояния.

Второй вариант, более продвинутый - с центральным WEB сервером и (или) СУБД сервером. Этот сервер - он же и контроллер умного дома или чего-то еще. Под этот сервер можно писать нативно, и для работы с оборудованием, и логику, например на том же lazarus. Обмен между сервером и приложением Diesel Pascal на Android через HTTP или даже вообще через СУБД. Скажем, логи показаний датчиков превратить в графики на мобильном устройстве или работать с не-stateless логикой, которой занимается постоянно работающий сервер-контроллер оборудования. Думаю, для многих это проще сделать в программе на Diesel Pascal, чем верстать HTML страницы. Уходим от чехарды технологий, скриптов и прочего. Все на Pascal и в знакомой среде. А если еще учесть, что и программы Diesel Pascal могут с сайта подгружаться, как некие модули управления, то это вообще здорово.
Последний раз редактировалось Aleks69 26.02.2021 14:47:29, всего редактировалось 1 раз.
Aleks69
новенький
 
Сообщения: 35
Зарегистрирован: 29.03.2009 14:25:01

Пред.След.

Вернуться в Компилятор / язык программирования

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7

Рейтинг@Mail.ru