Open kgertsenberger opened 2 years ago
How OS and which version of pip used (pip --version
)?
Does direct start work python main_cli.py
and python main_gui.py
?
Hi. OS: Ubuntu 21.10, pip 22.0.2. Yes, direct start works well. Можно в принципе на русский здесь перейти, если нет возражений. У нас же здесь нет иностранцев)
Возможно кстати был pip и более старой версии, так как смотрел немного раньше, а сейчас на 22.04 обновился с этим pip.
Я не много погуглил, люди жалуются на баги в pip 22.0.2, возможно из-за этого не сгненерировались скрипты для запуска.
Смотрю сейчас GUI, есть следующие предложения/замечания.
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/soul/tmp/jinr-database-tools/jinrdatabaseloader/ui/backend.py", line 67, in load_to_database
load_result = self.database.load_data(description, item.path)
File "/home/soul/tmp/jinr-database-tools/jinrdatabaseloader/database.py", line 130, in load_data
errors = self.check_description(description)
File "/home/soul/tmp/jinr-database-tools/jinrdatabaseloader/database.py", line 93, in check_description
if base_table not in self.engine.table_names():
File "
Буду дополнять пост по мере проб.
Давайте не использовать публичный треккер как чат (и светить контакты). Для этого есть Youtrack и Telegram.
Принято, связались с Михаилом в телеграм.
.local
, и новые политики безопасности убунты запрещают открывать html файлы оттуда, вероятно это кнопку можно просто убрать, так как этот html нужен только при использовании консольного интерфейса. (альтернатива открывать файл из домашней директории)Предложения по переименованию и размещению в GUI:
Переименования help в CLI и предложения/замечания:
Что-то у меня тоже не работает загрузка в БД и в GUI и CLI, пробовал detector_.csv Traceback (most recent call last): File "/home/soul/tmp/jinr-database-tools/jinrdatabaseloader/ui/backend.py", line 67, in load_to_database load_result = self.database.load_data(description, item.path) File "/home/soul/tmp/jinr-database-tools/jinrdatabaseloader/database.py", line 130, in load_data errors = self.check_description(description) File "/home/soul/tmp/jinr-database-tools/jinrdatabaseloader/database.py", line 99, in check_description metadata = MetaData(bind=conn, reflect=True) TypeError: MetaData.init() got an unexpected keyword argument 'reflect'
И кстати, когда просто открываю-закрываю GUI: python main_gui.py Segmentation fault (core dumped)
Исправления по GUI Исправлено 1, 2, 6, 7, 8 Не понял какие кнопки в пунтке 5
Исправления по CLI: Исправлены: 1, 3, 4, 5, 6, 8, 11, 13
2 "positional arguments:" -> "commands" это зашито в парсер аргументов, так просто исправить не получится.
7 Сделал обработку ошибки, если конфиг не сущетсвует.
10 Добавил файл в корень проекта, добавил обработку различных ошибок
12 Заменил на вывод конкретного ответа от database API
Ошибка с подключение к базе данных связана с потерей совместимости между SqlAlchemy 1.3 и 1.4. Сейчас я сделал поддержку обоих версий, но надо решить что мы делаем: прибиваем гвоздями версию sqlalchemy (и заодно других библиотек) в setup.py (но тогда если другим приложения нужна будет другая версия, то их придется разносить по разным виртуальным окружениям) --- так обычно делают на веб-сервисах, либо надо будет отслеживать возможную потерю совместимости при обновлении библиотек.
Остальные пункты пока не разбирал, сделаю следующим обновлением.
Добрый день. Спасибо за информацию.
Кнопки из пункта 5 - это там 2 маленькие иконки - похоже на unpin (открепить) и close в виде крестика (закрыть).
"positional arguments:" - не принципиально, можно и так оставить
Отсуствие совместимости при переходе на следующую версию - это очень странная вещь, не думал, что в нормальных библиотеках такое возможно. Я бы не фиксировал конкретную версию, уж лучше отслеживать потерю совместимости. (лично для меня такие случаи скорее экстраординарные). Все-таки это не полноценный веб-сервис, а инструмент внутри нашего фреймворка.
Steps: ~/tmp$ git clone https://github.com/mipt-npm/jinr-database-tools.git Cloning into 'jinr-database-tools'... remote: Enumerating objects: 131, done. remote: Counting objects: 100% (131/131), done. remote: Compressing objects: 100% (103/103), done. remote: Total 131 (delta 42), reused 111 (delta 25), pack-reused 0 Receiving objects: 100% (131/131), 1.57 MiB | 5.27 MiB/s, done. Resolving deltas: 100% (42/42), done.
~/tmp$ cd jinr-database-tools
~/tmp/jinr-database-tools$ pip install -e . Defaulting to user installation because normal site-packages is not writeable Obtaining file:///home/soul/tmp/jinr-database-tools Preparing metadata (setup.py) ... done Requirement already satisfied: PySide2 in /home/soul/.local/lib/python3.10/site-packages (from jinrdatabaseloader==0.0.1) (5.15.2.1) Requirement already satisfied: SQLAlchemy in /home/soul/.local/lib/python3.10/site-packages (from jinrdatabaseloader==0.0.1) (1.4.36) ... Successfully installed jinrdatabaseloader
~/tmp/jinr-database-tools$ jinr-database-loader-gui jinr-database-loader-gui: command not found
~/tmp/jinr-database-tools$ jinr-database-loader jinr-database-loader: command not found