
Andrey
23.11.2016
10:07:35
я просто оставлю это здесь https://learnpythonthehardway.org/book/nopython3.html

GNU/Docker
23.11.2016
10:10:06
ASDF + Quicklisp =)
ой ой

Zart
23.11.2016
10:10:44
дядя зед жжот как обычно. достал из жопы цифру и манипулирует ей

Google

GNU/Docker
23.11.2016
10:11:18
Я с подозрением и заранее нелюбовью отношусь к книгам, название которых начинаются на learn и заканчиваются на the hard way.

Zart
23.11.2016
10:11:37

GNU/Docker
23.11.2016
10:11:48
А
ну тогда всё понятно.
Python 3 Is Not Turing Complete

Zart
23.11.2016
10:12:22
ты еще не знаешь кто такой Zed Shaw? 8)

Andrey
23.11.2016
10:12:32

Zart
23.11.2016
10:13:19
nix
на который дрочат полтора инвалида

Eugene
23.11.2016
10:13:25
nix
Все эти пакетные менеджеры с разными форматами?

GNU/Docker
23.11.2016
10:14:25
Все эти языки программирования с разными синтаксисами.

Eugene
23.11.2016
10:15:34
Нет, я серьёзно. У каждого дистрибутива куча майнтейнеров, которые поддерживают каждый свою свалку. Тратят на это свою жизнь день за днём

Zart
23.11.2016
10:15:58
и эта модель не масштабируется никак

Andrey
23.11.2016
10:16:24
'эта' это какая?

Google

Zart
23.11.2016
10:16:44

GNU/Docker
23.11.2016
10:17:25
А как ещё?
Самая универсальная штука это порты и портаж.

Zart
23.11.2016
10:17:53
это ровно такое же говнище

Andrey
23.11.2016
10:17:53
а мейнтейнеры nix и теперь guix еще и поддерживают ту свалку которую поддерживают мейнтейнеры дистрибутивов. куда катится жизнь

Zart
23.11.2016
10:19:49
на данный момент у нас есть три базовых модели
дистрибутивы - когда пачки мейнтейнеров вручную или полуавтоматом собирают чужой софт и патчат/фильтруют его
селфхостинг - когда проекты собирают свой код сами и раздают с собственных страниц
магазины - типичная модель в мобайле на данный момент, как пример

Serge
23.11.2016
10:45:16

GNU/Docker
23.11.2016
10:50:03
А можно поподробнее?)
типа что не так

Serge
23.11.2016
10:50:13

Andrey
23.11.2016
10:50:16
все там не так

GNU/Docker
23.11.2016
10:50:28
и почему нельзя было сделать компилятор второго питона в байткод третьего
или что-нибудь
факты факты плиз.

Serge
23.11.2016
10:50:50

Andrey
23.11.2016
10:52:58
и на этот пункт автор яростно баттхертит, почему-то забывая всю боль с юникодом во втором питоне

GNU/Docker
23.11.2016
10:55:31
упоминает её в третьем.

Google

Andrey
23.11.2016
10:56:36
но в третьем то как раз с юникодом норм
про тьюриг полноту там вообще лютый фейспалм

GNU/Docker
23.11.2016
10:58:00
Ну это шуточка.
И обидка
в сторону того что нет компилятора из 2 в 3

Andrey
23.11.2016
10:58:43
нет, там какая-то абсолютная чушь написана

GNU/Docker
23.11.2016
10:58:43
я тоже сначала воспринял серьёзно.

Andrey
23.11.2016
10:58:52
так вся статья такая

Zart
23.11.2016
10:58:54

GNU/Docker
23.11.2016
10:59:01
ой
спорить об этом я не собираюсь
и фанатично принимать стороны.

Zart
23.11.2016
10:59:23
кое-то там сильно сломали этой поголовной юникодизацией

Andrey
23.11.2016
10:59:33
ты согласишься, что явно лучше, чем во втором?

Zart
23.11.2016
10:59:44
неа
по мне примерно поровну

Jonh
23.11.2016
11:00:46

Zart
23.11.2016
11:00:55
в любом случае для корректной работы с юникодом надо чётко понимать границы где байты, а где начинается юникод
а какой тип у строки по дефолту при этом - монопенисуально
с переходом на юникод по дефолту, многое стало лучше, да

Eugene
23.11.2016
11:01:33
Может это просто стёб? Тонкий или толстый, не знаю уж, но слишком плохо, чтобы быть серьёзным.

Google

Andrey
23.11.2016
11:01:49

Zart
23.11.2016
11:03:06

Eugene
23.11.2016
11:05:10
Они же сначала выпилили формат для байтов, а затем снова добавили. Правильно сделали

Zart
23.11.2016
11:05:11
а давайте еще урлы вспомним, где схема должна быть аскии, хостнейм в IDN, путь в процентном квотинге, а параметры запроса могут быть вообще чем попало 8)

Eugene
23.11.2016
11:08:33
Вообще радикализация чего-либо происходит из-за узости и зашоренности тех, кто это пропагандирует. Все эти радикалы в чем угодно сродни тупым фанатикам. Они раздражают, но лучше их игнорировать

Serge
23.11.2016
11:08:37

Zart
23.11.2016
11:09:29
это автор легендарного easy_uninstall'а

Aleksander
23.11.2016
11:34:29
вопрос - как лучше сделать mock для внешних API во время e2e тестирования на SPA с бэкендом на джанге ? просто поднимать сервер замоканный ?

Roman
23.11.2016
12:38:39
блин, пост позора: я втаскиваю к себе в код конвертер xml => json на плюсах

Admin
ERROR: S client not available

Andrey
23.11.2016
13:10:34
хорошо еще что на плюсах
хотя нет. лучше бы на си было

Dmitry
23.11.2016
13:28:53

Andrey
23.11.2016
13:29:38

Dmitry
23.11.2016
13:30:38
я её даже юзал. А про скорость не помню. Она критична?

Andrey
23.11.2016
13:32:13
кому-то может и нет. но это странные люди. впрочем допускаю, что на небольших xml оно еще сносно работает, я с ней сильно напоролся на довольно больших объемах
и если я правильно помню, там основная проблема была в том, что она на порядок больше диктов создает в процессе, чем было нужно

Roman
23.11.2016
13:45:29
мне хочется вроде бы простого: взять centos7-primary.xml и распотрошить из неё список пакетов.
я взял https://github.com/Cheedoong/xml2json/blob/master/xml2json.cpp

Google

Roman
23.11.2016
13:47:03
то что xmltodict у меня жуёт 13 секунд тут за доли секунды обрабатывается

Eugene
23.11.2016
13:49:07

Zart
23.11.2016
13:54:06
там сарказм был
зед шоу изначально был упоротым рубероидом, запилил монгрел, потом подался в питоны, нарисовал книжку про хард вей

Eugene
23.11.2016
14:04:43
А на счёт дистутилов и всех этих сетаптулсов, в последний раз я отложил кучу кирпичей, когда в Py35 к модулям расширения начал добавляться суффикс с именем платформы. И об этом нигде не написано (ну может я плохо искал), но реально в доке не написано.
Пришлось лезть в исходники дистутилов, оказывается за суффикс модулей расширения отвечает параметр из sysconfig "EXT_SUFFIX". И самая жесть в том, что
python -m sysconfig
показывает неправильно этот самый суффикс, он отображает только расширение, но не всю эту ботву типа ".cp35-win_amd64". И это никак не отключается кроме как перегрузкой класса build_ext и переопределением метода get_ext_filename. И нигде в документации об этом не написано. Что там написано про build_ext? НИЧЕГО! https://docs.python.org/3.6/distutils/apiref.html#module-distutils.command.build_ext

Zart
23.11.2016
14:13:12
https://www.python.org/dev/peps/pep-0425/
документация вон там


Eugene
23.11.2016
14:13:24
Или вот ещё пример уже из сетаптулсов. Есть у меня проектик, который должен паковаться в бинарный wheel, зависящий от платформы. Модули расширения там не создаются, но колесо должно быть обязательно платформозависимым, так как туда кладутся shared libs. И вот как сделать Binary Distribution?
Ну, наверное, так:
from setuptools.dist import Distribution
class BinaryDistribution(Distribution):
def is_pure(self):
return False
Да, так и было и работало, но потом внезапно сломалось и перестало работать. И где об этом написано в документации? Нигде. Методом проб выяснилось, что надо вот так:
from setuptools.dist import Distribution
class BinaryDistribution(Distribution):
def is_pure(self):
return False
def has_ext_modules(self):
return True
И нигде в доке сетаптулсов это не написано, ни про первый вариант ни про второй. Первый вариант я из статьи Армина Ронахера узнал, когда он ещё работал.

Zart
23.11.2016
14:14:24
а зачем такая странная херь?

Eugene
23.11.2016
14:15:31

Zart
23.11.2016
14:16:30
гммм

Eugene
23.11.2016
14:17:13
Трудно объяснить, короче надо :)
Просто удивляет, что про такие вещи не написано в доке вообще ничего.

Zart
23.11.2016
14:17:34
элементарно
доку к сетаптулзам писал изначально тот кто их пилил
а сейчас пилят все кому не лень, но на доку похоже их уже не хватает

Eugene
23.11.2016
14:30:59
документация вон там
Так вот тут ничего не написано про PEP 425
https://docs.python.org/3/whatsnew/3.5.html
И это же из distutils ползёт, этот ABI Tag для модулей расширения (колёса давно его используют).
То есть они его молча включили, получается.
А у нас из-за этого всё сломалось, потому что наша система интеграции с питоном про ABI Tag ничего не знала. Пришлось сначала вставлять костыль, потом исправлять.


Karter
23.11.2016
15:37:37
Прочитал как "Выпуск python 6.0". )
Выпуск Pyston 0.6, реализации языка Python с JIT-компилятором
Увидел свет релиз проекта Pyston 0.6, в рамках которого компанией Dropbox, в которой работает Гвидо ван Россум, развивается высокопроизводительная реализация языка Python, созданная с использованием наработок проекта LLVM. Реализация примечательна применением современных технологий JIT-компиляции и нацелена на достижение высокой производительности, близкой к производительности традиционных системных языков, таких как C++. Код Pyston написан на языке C++ и распространяется под лицензией Apache.
http://www.opennet.ru/opennews/art.shtml?num=45547

Serge
23.11.2016
15:47:01
правильная ссылка https://blog.pyston.org/2016/11/11/pyston-0-6-released/

Karter
23.11.2016
15:47:57
?