LINUX.ORG.RU

Веб-фреймворк Django прошел все тесты Python 3

 , ,


1

4

Разработчики популярного веб-фреймворка Django 19 августа сообщили, что разрабатываемая версия успешно прошла все тесты Python 3.
«В мае этого года Vinay Sajip опубликовал форк, показав таким образом возможность поддержки Python 2 и 3 в рамках единой кодовой базы. Вскоре после этой демонстрации основные разработчики проекта решили использовать six в качестве слоя совместимости. Было решено писать код Python 3, заботясь о совместимости со второй версией, а не наоборот, чтобы избежать возможных проблем в будущем».

Однако не стоит думать, будто Django с этого момента готов для применения с Python 3 на действующих системах. Изменения кода затронули многие части проекта, и хотя были приложены все усилия для исправления ошибок, все равно требуется полномасштабное тестирование кода в реальных условиях. Разработчики просят рассматривать код как «пре-альфа версию» и сообщать не только об ошибках в коде Python 3, но и в регрессиях кода Python 2.

Авторов приложений для Django убедительно просят сделать порт как можно быстрее, подсказки для этого доступны в документации.

>>> Запись в веблоге разработчиков

★★★

Проверено: DoctorSinus ()
Последнее исправление: cetjs2 (всего исправлений: 3)

Ответ на: комментарий от zz

Таки у тебя батхерт от того что ты жрешь питон и при этом еще и нанимать питонистов не можешь?

Да батхёрт не у меня.

Я пытаюсь для себя самого выявить ещё причины «why python?». Зная все недостатки реализации и может быть языка, узнать что же помогает другим будучи программистами вот так закрывать глаза на всё это. Хипстеры что-ли.

Это во многом психологический комплекс, осознание несовершенства инструмента и как следствие снижение «удовольствия» от его использования.

tp_for_my_bunghole
()
Ответ на: комментарий от zz

А альтернативы то какие предлагаются кроме php, напомни?

Для web? По большому счёту никаких.

Хотелось бы что-то где можно обойтись одним языком, а не связкой высокий/низкий уровень.

Смотрел mono, и так оно мне понравилось, думал что весь крик про microsoft паранойя. Потом посмотрел библиотеки, оно как будто специально реализовано так что бы зависимость от microsoft была явной и доказуемой, как будто в техническом задании так написано было.

tp_for_my_bunghole
()
Ответ на: комментарий от tp_for_my_bunghole

Смотрел mono, и так оно мне понравилось.

Ну, с тобой уже все ясно.

SAA ★★★
()
Ответ на: комментарий от tp_for_my_bunghole

Время моно еще придет! (Возможно). Про высокий/низкий уровень не особо понял, если тебе приходится каждый день ходить писать чтото на c/c++ чтобы оно работало быстро(что прямо скажем не общий юзкейз для типовых веб приложений) пиши фреймворк на C++ :)

zz ★★★★
()
Ответ на: комментарий от tp_for_my_bunghole

Чувак, ты жжёшь! Давно такого не видел. Жаль, что скоро тебя забанят.

хехе

Oleaster ★★★
()
Ответ на: комментарий от dismal_faun

Какбы смысл был написать код, одинаково работающий в 2 и 3, в 2 префикса b нету. И видимо six с этой задачей не очень хорошо справляется.

...но при этом использовать синтаксический «стиль» от Python3 (а не Python2)

в python3 можно сделать

s = 'привет медведев' # юникодная строка, эквивалентно -- стилю python2 u'привет медведев'
b = s.encode('utf-8')

но НЕльзя сделать такое:

b = b'привет медведев'
s = b.decode('utf-8')

следовательно такое сделать НЕльзя и в six :-) ...

в 2 префикса b нету

есть он там :) (правда смысл его какойто особо-то не понятный:)):

$ python2
Python 2.7.3 (default, Jul 24 2012, 11:41:40) 
[GCC 4.6.3 20120306 (Red Hat 4.6.3-2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> b = b'привет медведев'
>>> s = b.decode('utf-8')
>>> s
u'\u043f\u0440\u0438\u0432\u0435\u0442 \u043c\u0435\u0434\u0432\u0435\u0434\u0435\u0432'
>>> print s
привет медведев
>>> 

user_id_68054 ★★★★★
()
Ответ на: комментарий от tp_for_my_bunghole

Зачем классы реализовали на основе хэша?

чтобы обеспечить duck-typing и при этом убрать необходимость предварительной компиляции модуля, нееаа?

твой путь решеня каков? как ты обеспечишь duck-typing по другому? :-) :-) интересно узнать :) ..

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

то есть в этом якобы виноваты классы, да? интересно как(?), учитывая что методы классов это всеголишь внешние функции, в аргументы которых (при выполении) попадает в частности и ссылка на сам объект класса.. [впрочем как и в других языках программирования]

переписав программу в функциональном стиле — ты ЛИШЬ будешь вручную посылать все аргументы в функции. вот и вся разница в накладных расходах. +небольшая экономия на спичках.

user_id_68054 ★★★★★
()
Ответ на: комментарий от dismal_faun

Вспомнил, это в 3 нету префикса u.

именно! (что в свою очередь делает бессмысленным префикс «b» в python2 :-D :-D)

user_id_68054 ★★★★★
()
Ответ на: комментарий от baverman

Нужно только nonlocal.

Слабак.

Ты так говоришь «слабак», будто это что-то плохое.

tailgunner ★★★★★
()
Ответ на: комментарий от Vudod

Ясно. Помнится еще синтаксис try-except разнился, в этом направлении ничего не придумали?

dismal_faun ★★
()
Ответ на: комментарий от tp_for_my_bunghole

Никаких хипстеров, моды, «сахара» и прочего...
Надеюсь, что Вы не тролль, а просто не знакомы с питоном, хоть и кодите на нем...
Философию питона здесь цитировать не стану, отмечу лишь значимое для меня с программистской эстетики:
1. питон предсказуем в своей последовательности (пых, привет!)
2. он почти всегда одновариантен (предлагает единственный и самый верный вариант) (Руби, привет!)

...и с практической точки зрения:
Скрипт сделать, фронтенд к чему-либо на PyQt, тот же Web (да, люблю Джанго :) ) - все на нем; 99% нужных мне либов имеют родную питон-поддержку или биндинги к нему. Т.о., еще универсальный

Mouser
()
Ответ на: комментарий от tp_for_my_bunghole

tp_for_my_bunghole, ты человек-огонь, жги еще!

anonymous
()
Ответ на: комментарий от anonymous

Что есть риву и Раечка? На остальном делать типичный веб печалька, по скорости тоже не очень в курсе, хотя окамл наверное для каких то задач где нужна скорость хорошЪ.

zz ★★★★
()

Смотрел когда-то джангу и понял что мне оно не подходит. Там многое прибито намертво гвоздями. Например сделать регистрацию по емеилу, а не по нику можно, но только путём теневого генерирования левых ников (уже даже есть такая реализация), что есть костыль. Переписать сам движок так чтоб он работал не на юзернеймах я пытался, но забил - ну его. В питоне есть и другие фреймворки. А еще есть либы, из которых можно собирать сайт по частям, не позволяя какому-то дяде контролировать Вашу файловую систему и диктовать используемые абстракции. Или хотя-бы фреймворки в которых есть хоть какой-то выбор. Хотя если решение, положенное в основу фреймворка действительно универсальное, или подходит под выполняемую задачу, то можно его и использовать. Вот только нет у меня четкой задачи. Так что ищу универсальность.

q0tw4 ★★★★
()
Ответ на: комментарий от zz

хотя окамл наверное для каких то задач где нужна скорость хорошЪ

Какой еще окамл. Окамл - это недоделанный хаскель. Юзай yesod и будет тебе компилируемый вебсайт, который в девел-режиме сам перекомпиливается при внесении изменений в исходники, и очееень очееень надежный (хрен ошибёшься в урлах). Мне в есоде не хватает только гибкости в роутинге, но чтоб сделать секурный гибкий роутинг, нужен не хаскель, а язык с доказательством правильности программ, такой как agda. Кстати мысль, чем можно заняться на досуге для повышения ЧСВ.

q0tw4 ★★★★
()
Ответ на: комментарий от tp_for_my_bunghole

Для обучения чему? Это не обучение, это дрессировка.

Новичок не способен представить как работает python, что такое reference cycle, почему так а не иначе, и т.д. Есть люди, и их немало, которые инстинктивно просто не будут учить то что требует такой степени абстрагирования без объяснения аксиом от которых можно отталкиваться и строить в воображении уровни абстракции для хорошего запоминания.

С питона хорошо начинать изучение алгоритмов. Простой синтаксис и минимальное количество непонятных требований, вроде «пиши #include» или «добавляй объявления функций» или «ставь точку с запятой в конце каждой строки кроме циклов...» помогает начать реализовывать алгоритмы уже сразу в начале обучения, кроме того сразу же проявлять полученные знания в любых интересующих областях: хоть создании сайтов, хоть написании программ или простеньких игр.

А потом уже, когда ученик столкнется с «а почему у меня программа тормозит», можно плавно переходить к изучению того «как это устроено внутри».

D_Lans
()
Ответ на: комментарий от D_Lans

Простой синтаксис

4.3

и минимальное количество непонятных требований, вроде ... «ставь точку с запятой в конце каждой строки кроме циклов...»

OMFG! Не стыдно? С этим даже похапешники справляются, не встречая ни малейших затруднений.

anonymous
()
Ответ на: комментарий от zz

Время моно еще придет! (Возможно).

невозможно. Современные языки ущербны и заставляют делать программиста много того, чем легко можно было бы загрузить саму машину. Либо тормозные.

Joe_Bishop
()
Ответ на: комментарий от tp_for_my_bunghole

python и php это почти одно и то же

4.2 же. Это два совершенно разных, по-своему уникальных сорта говна.

anonymous
()
Ответ на: комментарий от tailgunner

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

Тут и доказывать нечего — оба говно, очевидно же.

anonymous
()
Ответ на: комментарий от anonymous

OMFG! Не стыдно? С этим даже похапешники справляются, не встречая ни малейших затруднений.

Я не говорю что у меня с этим затруднения, я говорю, что это вызывает лишние проблемы у школьников и студентов, только начинающих изучать программирование.

D_Lans
()
Ответ на: комментарий от D_Lans

О да, помнится на бейсике (который был на бк-0010), не нужно было точки с запятой и даже отступы ставить. Лепота. Думаешь, именно поэтому мне понравилось программирование?

anonymous
()
Ответ на: комментарий от D_Lans

это вызывает лишние проблемы у школьников и студентов, только начинающих изучать программирование

Если это вызывает проблемы, то, очевидно, не стоит изучать программирование.

anonymous
()
Ответ на: комментарий от anonymous

Если это вызывает проблемы, то, очевидно, не стоит изучать программирование.

Пожалуйста, давайте без надменного унижения новичков. В мире и так недостаток хороших программистов, а вы предлагаете отпугивать большую часть потенциальной молодой их смены изучением «расово верных» сишек(?). У школьника/студента гораздо больше шансов полюбить программирование (и в перспективе освоить что угодно), если он начнёт с простого и ясного языка и сразу же сможет претворять свои идеи в жизнь, чем будет трахаться с ненужными условностями синтасиса энтерпрайзного или низкоуровнего языка (с сегфолтами и аксесс виолейшенами) и оттого возненавидит программирование.

D_Lans
()
Ответ на: комментарий от Joe_Bishop

Просто нужен Xamarin подобная компания которая наделает на моне аппсервер с модными реалтайм баззвордами и победа у нас в кармане(см печальнейший Meteor)

zz ★★★★
()

ну вот как, только flask портируют, так и поговорим.

Trieforce
()
Ответ на: комментарий от D_Lans

Отпугивать? О чем вы?

Еще раз: с расстановкой разделителей справляются даже махровые быдлокодеры — похапешники. Что тут такого пугающего? Тем более, для потенциально хорошего программиста?

anonymous
()
Ответ на: комментарий от D_Lans

Пожалуйста, давайте без надменного унижения новичков.

Кстати, да, давайте.

Итак, почему вы считаете новичков глупее себя? Почему проблема разделителей, которая для вас не проблема, по-вашему, должна вызвать у них трудности?

anonymous
()
Ответ на: комментарий от baverman

Убрать encode у байтовых строк

Если это единственная «проблема» третьепитона то я рад.

true_admin ★★★★★
()
Ответ на: комментарий от anonymous

С этим даже похапешники справляются, не встречая ни малейших затруднений.

Пока не забудут точку запятой поставить и не нарвутся на непонятное сообщение об ошибке. Или о 100500 ошибках, это уж где пропустишь.

Да и вообще глупо выбирать ЯП только на основании того как в нём разделяются отдельные стейтменты. ЯП они не этим отличаются. Ты думаешь если в питон добавить скобочки (кстати, элементарно сделать наколеночным препроцессором) то он сразу в C или C++ превратится?

true_admin ★★★★★
()
Ответ на: комментарий от zz

1.5/6 будут pluggable юзер модели сделанные не через задницу :)

Круто, чо.

q0tw4 ★★★★
()
Ответ на: комментарий от true_admin

Пока не забудут точку запятой поставить

Налажать можно даже на горшке сидючи, яп тут роли не влияет. Внезапно, существует сугубо питонячий холивар «табы vs пробелы», осложненный особо сладкой, ни с чем не сравнимой интимной БОЛЬЮ.

Ты думаешь если в питон

Я тут вообще при чем? Это какой-то нуб там, выше, кал срыгивал.

Лично мне на 2Dсинтаксис вообще покласть, хоть я не фант его, питон говно совсем не поэтому.

anonymous
()

Есть pyramid, жанга ненужна

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.