@ru_python

Страница 6930 из 9768
Tishka17
02.11.2018
17:38:17
И сам бинарь пропал

?? Eugene
02.11.2018
17:38:27
))

?? Eugene
02.11.2018
17:39:08
Обратная совместимость у питона, не сломается твой проект

Google
?? Eugene
02.11.2018
17:39:24
Главное - версии внешних зависимостей запинить

Никита
02.11.2018
17:39:45
если бы я достаточно хорошо знал архитектуру linux, все бы работало)

тем временем у меня переустановился линукс

Tishka17
02.11.2018
17:42:39
Перестань переставлять Линукс. Начни юзать докер

Ты все равно же хотел

Никита
02.11.2018
17:43:12
ну хочется мне)

докер вроде же для масштабирования, а мне мастабировать то нечего

Tishka17
02.11.2018
17:44:03
Нет. Он для изоляции

Для масштабирования kubernetes

Никита
02.11.2018
17:44:43
ок

последний разочек

запустил сборку питона из исходного кода

Tishka17
02.11.2018
17:45:12
Короче, пересоздать контейнер быстрее чем переставить лсь

Google
Tishka17
02.11.2018
17:46:34
И да, по хорошему в проде у тебя не должно быть того хлама что ты ставил для компиляции

А соответственно, результатом сборки у тебя должен стать пакет

Никита
02.11.2018
17:47:26
ага...

их потом можно удалить?

Tishka17
02.11.2018
17:47:57
Не не. Собирать на продакшн машине - это странно

Никита
02.11.2018
17:49:09
ну собрать, удалить, выкатить докер

Tishka17
02.11.2018
17:49:25
Я бы рекомендовал сделать так: 1. Скрипты сборки и Спек файлы в Гите 2. Отельный сервер для сборки 3. Отельный сервер - твой yum репозиторий 4. В прод ставится пакет из твоего репозитория

Если из стандартного не нравится пакет

Никита
02.11.2018
17:49:55
ОООООО

класс

Tishka17
02.11.2018
17:50:16
Но так как это совершенно не целесообразно для твоей задачи, то нафиг

Никита
02.11.2018
17:50:48
да не, мне нравится

отдельный сервер для сборки -аааа, это великолепно

Tishka17
02.11.2018
17:52:02
Не забываем, что 1. пакеты надо регулярно обновлять, так как ошибки и уязвимости. А значит пересобирать. 2. при обновлении надо тестировать. А так как это вообще твоя сборка - тестировать больше

отдельный сервер для сборки -аааа, это великолепно
Ну а как ещё. Cintinuous integration, все дела. Изоляция окружений

Никита
02.11.2018
17:53:26
зато смогу всегда откатиться

если что-то сломается

Tishka17
02.11.2018
17:53:41
Будешь ли?

Вероятность что сломается питон в репозитории который юзают тысячи людей - меньше, чем ошибка в твоём коде

На порядки

Google
Tishka17
02.11.2018
17:55:09
А ещё есть питоновские модули сторонние. Они тоже ломаются

Tishka17
02.11.2018
17:56:06
Ну вот. Версия питона - меньшая проблема

Ещё будут проблемы с настройкой системы

Никита
02.11.2018
17:57:18
ну все таки) систему я переустановил, питон тоже...решение того трабла есть?

Tishka17
02.11.2018
17:57:26
И судя по проблемам со сборкой не факт, что ты сможешь корректно диагностировать

Никита
02.11.2018
17:57:56
ладно, спасибо

Tishka17
02.11.2018
17:58:26
Никита
02.11.2018
17:59:47
ничего не делал

?? Eugene
02.11.2018
18:00:07
ну давай, ключ на старт

Никита
02.11.2018
18:01:18


Tishka17
02.11.2018
18:01:52
ничего не делал
make install сделал?

Никита
02.11.2018
18:02:03
make altinstall

?? Eugene
02.11.2018
18:06:36
ты указал куда устанавливать-то?

—prefix=/usr

./configure --prefix=/usr --enable-optimizations

ivan
02.11.2018
18:11:28
актуально?
Ну, попробуй Вообще это не совсем то, что я хотел Я решил эту таску создав асинхроннную джобу, которая отслеживает изменения после вызова method_a и вызывает method_b на эти изменения

Google
Никита
02.11.2018
18:11:57
нет, не указал

ivan
02.11.2018
18:12:23
Вероятно, я плохо объяснил суть задачи

ivan
02.11.2018
18:14:43
то есть method_a по должен вызываться последним
Ну да, так и работает Неправильно расписал

It'sMe
02.11.2018
18:14:44
и это подразумевает наличие костылей

и я придумал один

Admin
ERROR: S client not available

ivan
02.11.2018
18:15:17
Я просто проблему не до конца расписал по идее

It'sMe
02.11.2018
18:15:22
Ну да, так и работает Неправильно расписал
def decorate(method): def wrapper(*args, **kwargs): method(args[0]) args[1].methodb() return wrapper class Class1: @decorate def methoda(self): print("in a") class Class2: def __init__(self): self.class1 = Class1() def methodb(self): print("in b") if __name__ == "__main__": a = Class2() a.class1.methoda(a)

Я просто проблему не до конца расписал по идее
там тебе прийдется передавать вручную ссылку на инстанс класса2

ivan
02.11.2018
18:18:37
там тебе прийдется передавать вручную ссылку на инстанс класса2
Вот, говорю же Не до конца расписал У меня нету в коде этого вызова : a.class1.methoda() Секунду, допишу гист

Думаю, так будет понятней

Егор
02.11.2018
18:24:14
всем привет! У меня приложуха с бэком на фласке, решил запилить в нее вебсокеты, чтобы реализовать на фронте уведомления и сообщения

обнаружил огромную зияющую дырень в гугле по этому направлению

хотел было flask-asyncio но не ворк, статей и уроков толком нет, много протухшего материала

Google
Zi
02.11.2018
18:25:18
https://flask-socketio.readthedocs.io/en/latest/

ivan
02.11.2018
18:25:25
Sanic оч похож на flask, так что переход безболезненный

Егор
02.11.2018
18:26:03
я с этой темой раньше не сталкивался, ломаю шаблон. Подскажите пару вещей плз

выходит что нужно запускать вебсокет-сервак отдельной приложухой?

Alex
02.11.2018
18:27:21
make altinstall
Возможно это уже обсуждали, но я все же спрошу. Нахрен ты ставишь питон из исходников?

Егор
02.11.2018
18:27:35
Фласк не дружит с вебсокетами
вообще с gunicorn или uwsgi по идее жизнь на этой улице должна быть, поверх eventlet и gevent

Никита
02.11.2018
18:27:45
чтобы версия с годами не менялась и мог откатиться

ivan
02.11.2018
18:28:36
вообще с gunicorn или uwsgi по идее жизнь на этой улице должна быть, поверх eventlet и gevent
Попробуй Но лучший выход мне кажется юзать что-то, где это уже из коробки есть

It'sMe
02.11.2018
18:28:41
https://gist.github.com/ivanpashnev/7d9d84580c8198bbd4d3b65c4a973c88
т.е. a = Class2() потом вызывается a.class1.method_c() который вызывает self.class1.method_a(), который в свою очередь должен вызвать a.method_b?

Alex
02.11.2018
18:28:57
чтобы версия с годами не менялась и мог откатиться
Бред, собирай докер контейнер если хочешь воспроизводимое окружение

It'sMe
02.11.2018
18:29:07
я правилно понимаю?

Никита
02.11.2018
18:29:20
а в докере можно конкретный питон поставить?

типа 3.6.5

Егор
02.11.2018
18:29:52
а в докере можно конкретный питон поставить?
можно и не только в докере, какая разница

Alex
02.11.2018
18:29:58
а в докере можно конкретный питон поставить?
Можно взять контейнер python нужной версии

Егор
02.11.2018
18:30:06
ubuntu репозиторий deadsnakes, найдется все

тут думаю даже дкер особо не нужен

Страница 6930 из 9768