@rudepython

Страница 598 из 1719
Andrey
01.09.2017
23:33:52
Что по-твоему означает ошибка про рекурсию?

Stanislav
01.09.2017
23:35:24
Видал что бы traceback.print_exc() валился с ошибкой про рекурсию?
А ты уверен что это traceback.print_exc() виноват?

Cykooz
01.09.2017
23:35:25
Код показывать похоже смысла нет - у меня локально не воспроизвелось, только на сервере работает.

Google
Cykooz
01.09.2017
23:39:22
Ну примерно вот так, если в пару слов: try: raise FileNotFound except Exception as e: import traceback traceback.print_exc() # вот тут и валится с ошибкой RecursionError

?

Python 3.6.2

Andrey
01.09.2017
23:48:18
эта ошибка может вывалиться из любого вызова >>> import sys >>> sys.setrecursionlimit(2) >>> def foo(): ... bar = lambda:0 ... bar() ... >>> foo() Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<stdin>", line 3, in foo RuntimeError: maximum recursion depth exceeded

Cykooz
01.09.2017
23:51:35
эта ошибка может вывалиться из любого вызова >>> import sys >>> sys.setrecursionlimit(2) >>> def foo(): ... bar = lambda:0 ... bar() ... >>> foo() Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<stdin>", line 3, in foo RuntimeError: maximum recursion depth exceeded
Конечно, но заметь - в твоём примере трейсбек вывелся нормально и даже подсказал местонахождение рекурсии. А у меня рекурсия случается, как раз в момент вывода трейсбека.

Alexey
02.09.2017
08:04:30
Cykooz
02.09.2017
16:13:08
Нашёл виновника - это оказался psutil.Popen(). У него в "конструкторе" происходит ошибка из-за чего у объекта нет ни одного "свойства", в том и числе self.__subproc. Из-за этого происходит RecursioneError в методе этого класса def __getattribute__(self, name): try: return object.__getattribute__(self, name) except AttributeError: try: return object.__getattribute__(self.__subproc, name) except AttributeError: raise AttributeError("%s instance has no attribute '%s'" % (self.__class__.__name__, name))

Фиксится это просто. Вставить куда нить монки-патч: psutil.Popen._Popen__subproc = None

Alexey
02.09.2017
16:14:48
Самая частая хуета при recursionerror, к слову. ;)

Cykooz
02.09.2017
16:15:59
Ну вот я лично редно использую такие штуки как __getattribute__ и __getattr__ - у меня такого ещё не случалось. Да и исключения в конструкторе я стараюсь не допускать - хреновый это кейс.

Google
Alexey
02.09.2017
16:16:24
Эм.

No comments.

Stanislav
02.09.2017
16:16:39
Самая частая хуета при recursionerror, к слову. ;)
Я не встречал никогда из-за этого

Alexey
02.09.2017
16:17:22
Лол. Это всё объясняет, конечно. Но держи в курсе.

Alex
03.09.2017
13:43:12


Alexey
03.09.2017
13:43:31
Чат для начинающих — в соседней вкладке.

Gleb
03.09.2017
16:18:03
Чат для начинающих — в соседней вкладке.
а есть чат для заканчивающих?

Alexey
03.09.2017
16:18:24
Это здесь.

Gleb
03.09.2017
16:18:30
хорошо

Eugine
03.09.2017
18:38:44
а есть чат для заканчивающих?
Вот только что закончил. Всем спасибо

Alexey
03.09.2017
23:08:32
@zartsoft Deponia Complete Journey — это все-все части в одном, я правильно понимаю?

Gleb
03.09.2017
23:21:17
да

Alexey
03.09.2017
23:21:35
У, угум, не зря купил.

Zart
04.09.2017
05:31:50
# Build paths inside the project like this: os.path.join(BASE_DIR, ...) BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(file))) джангопидоры 8\

Cykooz
04.09.2017
05:36:43
Что именно тебе в этом не нравится?

Zart
04.09.2017
05:38:00
привязка к путям проекта

в шаблоне эта константа используется для генерации пути к скулайт базе и для задания статики обеим сущностям внутри кода делать нехер

Cykooz
04.09.2017
05:41:32
Ну так то да, дефолтный шаблон джанго пректа из разряда "залил на хостинг через ftp и оно заработало"

Zart
04.09.2017
05:41:50
на фтп не очень...

еще эти уроды не умеют в пакаджинг -_-

Google
Cykooz
04.09.2017
05:42:43
Даже setup.py нет в проекте

Zart
04.09.2017
05:42:55
так и я про это

Cykooz
04.09.2017
05:43:42
Пакаджинг вообще какая-то сложная тема, похоже, даже не все питонеры с опытом умеют это

Zart
04.09.2017
05:44:10
ты сейчас процитировал отмазку автора джанги

Cykooz
04.09.2017
05:44:31
Хотя наверное это результат тех вот "самых маленьких" туториалов для фреймворков

Хуйнул 5 строчек в один файл - и у тебя уже веб-приложеник

Zart
04.09.2017
05:46:02
[app:main] use = egg:myapp [server:main] use = egg:waitress

\m/

Max
04.09.2017
05:46:31
стесняюсь спросить, что такое есть " не умеют в пакаджинг ", гугл выдал полную хрень((

Stanislav
04.09.2017
05:46:36
Zart
04.09.2017
05:46:49
Это что?
инишка для деплоя же

стесняюсь спросить, что такое есть " не умеют в пакаджинг ", гугл выдал полную хрень((
это значит что в доках джанги про корректное создание питонопакаджей ни гугу чтобы можно было pip install myfuckingdjangoapp

Cykooz
04.09.2017
05:47:31
Нуу, что бы paste с wsgi осилить - это надо по ночам читать интернеты, а не в доту рубится

Stanislav
04.09.2017
05:47:38
инишка для деплоя же
Для деплоя джанго?

Zart
04.09.2017
05:47:47
хоть джанго, хоть фласк..

Stanislav
04.09.2017
05:48:29
wsgi стека
Ну в ювсги то не так. А других всги контейнеров в жизни не видел

Zart
04.09.2017
05:48:45
uwsgi --paste deploy.ini

Stanislav
04.09.2017
05:48:47
Хотя и в ювсги я не видел нормальных конфигов

Zart
04.09.2017
05:48:50
вот тот самый

Google
Cykooz
04.09.2017
05:49:18
Uwsgi и wsgi - несколько разные понятия

Stanislav
04.09.2017
05:49:28
Zart
04.09.2017
05:59:05
Для деплоя джанго?
(.env) [zart@ene demo]$ cat requirements.txt uwsgi;os.name=='posix' Paste pasteScript PasteDeploy (.env) [zart@ene demo]$ cat demo.ini [app:main] use = egg:Paste#test [server:main] use = egg:Paste#http port = 8000 (.env) [zart@ene demo]$ paster serve demo.ini Starting server in PID 16248. serving on http://127.0.0.1:8000 ^C(.env) [zart@ene demo]$ (.env) [zart@ene demo]$ uwsgi --virtualenv $PWD/.env --paste config:$PWD/demo.ini --socket :8000 *** Starting uWSGI 2.0.15 (64bit) on [Mon Sep 4 10:58:48 2017] *** compiled with version: 6.4.1 20170727 (Red Hat 6.4.1-1) on 04 September 2017 10:53:00 os: Linux-4.12.8-200.fc25.x86_64 #1 SMP Thu Aug 17 15:39:27 UTC 2017 nodename: ene.home.zartsoft.ru machine: x86_64 clock source: unix pcre jit disabled detected number of CPU cores: 4 current working directory: /home/zart/working-on/demo detected binary path: /home/zart/working-on/demo/.env/bin/uwsgi *** WARNING: you are running uWSGI without its master process manager *** your processes number limit is 15596 your memory page size is 4096 bytes detected max file descriptor number: 1024 lock engine: pthread robust mutexes thunder lock: disabled (you can enable it with --thunder-lock) uwsgi socket 0 bound to TCP address :8000 fd 3 Python version: 3.5.3 (default, May 10 2017, 15:05:55) [GCC 6.3.1 20161221 (Red Hat 6.3.1-1)] Set PythonHome to /home/zart/working-on/demo/.env *** Python threads support is disabled. You can enable it with --enable-threads *** Python main interpreter initialized at 0x212ef70 your server socket listen backlog is limited to 100 connections your mercy for graceful operations on workers is 60 seconds mapped 72768 bytes (71 KB) for 1 cores *** Operational MODE: single process *** Loading paste environment: config:/home/zart/working-on/demo/demo.ini WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x212ef70 pid: 16261 (default app) *** uWSGI is running in multiple interpreter mode *** spawned uWSGI worker 1 (and the only) (pid: 16261, cores: 1)

PasteDeploy - либа, которая предоставляет функции чтения инишек, которая ресолвит имена в реальные пакаджи и возвращает всги-стек, собранный из приложений и мидлварей, плюс сервер PasteScript - предоставляет команду paster, которая умеет генерить оные инишки, задавая вопросы и запускать их, включая настройку логгинга Paste - набор всевозможной вебхуйни для комбинирования с другими всги приложениями

http://uwsgi-docs.readthedocs.io/en/latest/Python.html#paste-support

Admin
ERROR: S client not available

Zart
04.09.2017
06:19:45
хрм... дефолтная джангоадминка не умеет в ИЕ

Cykooz
04.09.2017
06:30:33
хрм... дефолтная джангоадминка не умеет в ИЕ
Неправильно ты мыслишь. Это ИЕ не умеет джнагоадминку. ?

Zart
04.09.2017
06:37:14


Vladislav
04.09.2017
06:49:29
Ребят, доброе утро! Какой модуль лучше всего использовать для анализа информации? Я хочу вытягивать специфическую статистику о посетителях сайта и анализировать ее.

Zart
04.09.2017
06:53:05
anal.itix

вообще подобное продают в виде всяких гуглоаналитик и яндексметрик

Belegnar
04.09.2017
06:59:32
Zart
04.09.2017
06:59:54
гдето с 1.2 чтоли

причем после многочисленных просьб трудящихся

Cykooz
04.09.2017
08:22:26
У джанги вообще сильно завышеное ЧСВ. Их текущий шаблон проекта предполагает, что "приложения" будут являться "пакетами" верхнего уровня (доступные через import myapp). А то что имена этих "приложений" могут совпасть (сейчас или в будущем) с какими-то сторонними пакетами - это побоку, т.к. "есть только одна джанга и ничего более не надо".

Zart
04.09.2017
08:26:06
полчаса назад тело в бегиннерсах на пасту кинуло "не могу создать жангоапп, бо имя пакета занято"

Egor
04.09.2017
09:11:57
жиза

Eugine
04.09.2017
10:22:46
> https://github.com/tarantool/tarantool/issues/2739 > While world thinking and talking a lot about blockchain

Google
Eugine
04.09.2017
10:23:17
стук во входную дверь, дверь открывается здравствуйте, мы майнеры и сегодня мы пришли поговорить с вами о блокчейнах. можно пройти?

Agent
04.09.2017
10:24:24
тут такое дело - сижу на дэбиане9 (если дистр тут имеет значение). Написал скрипт который оказался довольно востребованым у знакомых - периодически кто-то просит скинуть. Так как они все на винде и в программировании не шарят то приходится каждому по часу объяснять, следить чтобы они поставили питон, добавили его в пути итд. Уже немного задолбался. Я помню тут подымался этот вопрос когда-то и была критика этого подхода - но все же посоветуйте нормальную либу чтобы запаковать это все в exe файл со всеми либами с отдельно вынесенным файлом конфигурации чтобы я скинул и человек не разбирающийся в компах двумя кликами запустил и пользовался ничего дополнительно не устанавливая. Или может гайд какой-то посоветовать сможете, а то я когда-то задавался этим вопросом но и гайды и проги не очень удовлетворяли запросам. Нужно именно чтобы 1)из-под линуксов можно было виндовый экзешник упаковать 2)чтобы можно было вынести один файл конфигов

Zart
04.09.2017
10:25:56
на винде: 1) поставить питон 2) поставить венв 3) поставить пинсталлер 4) натравить 5) ??? 6) ПРОФИТ!

Eugine
04.09.2017
10:26:09
2е - вообще никак не связано с задачей упаковки exe, связано с тем откуда руки растут.

Zart
04.09.2017
10:26:52
если правильно ставить питон, то венв нужен

чтобы не срать в системный

олсо upx еще не мешает сунуть на путь

Zart
04.09.2017
10:27:38
на линуксе под винду инсталлятор делать - лучше в виртуалке с виндой

варианты с вайном и/или кросскомпиляторами - это очень много хуевого и безрезультатного секса

Agent
04.09.2017
10:28:22
если правильно ставить питон, то венв нужен
ну это я в курсе у меня то вэнв просто людям проще уже поставить через пип на винде так как им питон тот больше не пригодится

Zart
04.09.2017
10:28:39
могу еще вариант предложить

скачать с питон.орг ембеддед версию виндового питона, добавить в неё нужных пакетов, впаять батник и раздавать архивом

Zart
04.09.2017
10:30:27
ну чтоб запускать нужное... впрочем если ставить правильно, то опционально

Agent
04.09.2017
10:33:22
спасибо

Евгений
04.09.2017
10:39:28
а запаковать в докер не вариант?

Agent
04.09.2017
10:39:56

Страница 598 из 1719