LINUX.ORG.RU

Поддержка Python ветки 2.7 продлена до 2020 года

 


0

3

Вчера Гвидо ван Россум, лидер проекта Python, внес изменения в документ, определяющий сроки поддержки Python 2.7, продлив их с 5 до 10 лет. Таким образом, выпуск обновлений для ветки Python 2.7 продлен до 2020 года.

Данный шаг был обусловлен желанием угодить пользователям, которые пока не могут перевести свои проекты на Python 3. Постоянный выпуск обновлений не гарантируется, но продление поддержки открывает возможности для концентрации усилий по обеспечению длительной поддержки вендорами, а также для исправления существующих ошибок и недочетов.

Плановые выпуски будут выходить в соответствии с известным расписанием:

  • 2.7.7 - Май 2014
  • 2.7.8 - Ноябрь 2014
  • 2.7.9 - Май 2015

Пока график выхода релизов, обусловленных продленной поддержкой, не уточняется.

>>> Подробности

★★★★★

Проверено: fallout4all ()
Последнее исправление: fallout4all (всего исправлений: 1)

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

Чтобы запустить ее на RHEL 6 (или более ранних).

А зачем мне ставить RHEL 6

«Тебе - незачем» (ц) аноним

Но ты мог бы сразу озвучить свои степени свободы - ну там «работа на машине, которую я полностью контролирую».

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

Затем, что RHEL-а много у платежеспособного народу. Ты вообще понимаешь, почему у бизнеса до сих пор дискетки вполне живы?

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

Reportlab работает на тройке https://pypi.python.org/pypi/reportlab Вместо PIL все давно юзают Pillow. Для работы с firebird есть https://pypi.python.org/pypi/firebirdsql/ Я сам с Excel пока не работаю, но для тройки есть https://pypi.python.org/pypi/XlsxWriter/0.5.3 Как я и говорил, осмотрись. Возможно уже давно не осталось причин сидеть на второй ветке.

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

Надо две ветки питона пошагово уравнять в возможностях и получившееся назвать Python 3. Тогда и мигрируют.

+inf

Но никто такого даже не предлагает.

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

Каким образом ты собрался в делении 3/2 пошагово результат менять с 1 до 1,5?

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

С такого, что под RHEL или 12.04LTS никто не будет собирать и поддерживать третий питон тем более ставить его рядом со вторым, а с ppa админы тебя пошлют в пешее эротическое путешествие.

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

А почему, собственно, невозможно? Что именно мешает? Есть печальный опыт. Я сам давно все новые проекты делаю на тройке. Проекты, которые надо поддерживать, а переписывать никто не будет так и остаются на двойке. Если вдруг(бывает очень редко) надо перетащить какую либо свою либу на старый проект все проблемы по совместимости решает six. Никакого гемороя.

northicewind
()
Ответ на: комментарий от alozovskoy
print('Hello, World!')

Будет работать и на 2й и на 3й ветке.

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

Но никто такого даже не предлагает.

А Армин Ронахер разве совсем пустое место?

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

Какие админы? Ты что мелишь? Такое ощущение , что ты имел дело с питоном никогда. Можно установить в виртуальном окружении любую версию питона - pythonbrew.

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

Но ты мог бы сразу озвучить свои степени свободы - ну там «работа на машине, которую я полностью контролирую».

Я вообще, так-то, свободен от какого-либо продакшена.

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

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

А вы будете утверждать, что это хорошо и правильно?

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

В 12.04 нет третьего питона? Не верю.

тем более ставить его рядом со вторым

Как будто это так сложно.

Axon ★★★★★
()
Последнее исправление: Axon (всего исправлений: 1)
Ответ на: комментарий от northicewind

все проблемы по совместимости решает six. Никакого гемороя.

Пока, внезапно, не приходится жонглировать байтовыми потоками и рассматривать их как строки с текстом (сетевые протоколы, то-се).

Из Python 3 это выкинули совсем: наверное, лавры третьегнома покоя не давали.

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

А почему, собственно, невозможно? Что именно мешает?

Странный вопрос. Мешает то, что нужно некоторое время поддерживать и Python 2.x

Если вдруг(бывает очень редко) надо перетащить какую либо свою либу на старый проект все проблемы по совместимости решает six

Код после six становится говном. Для «перетащить» - наверное, подходит, но поддерживать в работоспособном состоянии - это и есть геморрой. Который _не может оправдываться_ новыми возможностями Python 3, потому что эти возможности не всегда можно использовать в том, что должно работать в 2 и 3.

Так что очень хочется постепенной миграции 2.x в сторону 3.x

Никакого гемороя.

Если у тебя ситуация Axon-а - прекрасно, но не у всех она такая.

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 2)
Ответ на: комментарий от Axon

Клиенты. Или ты пишешь джаст фо фан? Тогда вопросов особых нет.

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

А может тут как раз проблема в подходе? Если понять, что массив байт - это не обязательно строка, то все сразу становится на свои места. В третей ветке никто не мешает декодировать массив в строку и работать как со строкой. Даже если в следующем релизе сделают обещанную поддержку строкового форматирования для байтовых все равно стоит отличать с чем конкретно сейчас приходится работать.

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

Ололо троечка-то никому не нужна выходит

лучше так: среди тех кроме троечка оказалась не нужна — выходит что троечка оказалась не нужна

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

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

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

Согласен, ситуации разные бывают.

Так что очень хочется постепенной миграции 2.x в сторону 3.x

Это был бы идеальный вариант. Посмотрим, изменит ли что-нибудь введение строкового форматирования для байтовых массивов в 3.5 или нет.

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

А может тут как раз проблема в подходе? Если понять, что массив байт - это не обязательно строка, то все сразу становится на свои места.

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

В третей ветке никто не мешает декодировать массив в строку и работать как со строкой.

А ничего, что далеко не всюду эта чехарда сколько-нибудь оправдана?
И пишется «в третьей».

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

Посмотрим, изменит ли что-нибудь введение строкового форматирования для байтовых массивов в 3.5 или нет.

Python 2.x тоже должен двигаться в сторону 3.x, а этого нет в планах.

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

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

Массив байт - это массив байт. Не строка, не число, не класс. Что в этом массиве лежит уже решит сам разработчик. Если у тебя текстовый протокол, то и приводи байты к строке. В чем проблема?

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

И пишется «в третьей».

Ok. Fixed.

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

че ?

Сейчас уже админы подстраиваются под программеров. И окружение собирают под апликуху а не так как это было в 90-х.

crono
()
Ответ на: че ? от crono

Спокуха, это Reset. Всем оставаться на местах.

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

Не умерли. В прошлом году лично видел 720 килобайтные дискетки. Другие станок отказывался жрать. В том же прошлом году заказчик искал плату с 4-мя ISA-слотами и дровами для 95-й винды. Лет 10 назад видел PDP-11, которая управляла агрегатом.

И это только железо.

cab ★★★★
()

Пацаны, а чем так плох третий Путон, если им никто не пользуется? Это как с Windows XP и Windows Vista? И почему до сих пор никто не додумался до следующего изящного решения проблемы: надо просто Python 2 переименовать в Python 3, а Python 3 — в Python 2. Тогда все будут счастливы.

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

Потому, что приемлемые цены на товары удается держать только если растянуть расходы на оборудование лет на 10 минимум + определенный процент от стоимости на текущие нужды.

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

Я вообще, так-то, свободен от какого-либо продакшена.

О тебе и твоих поделках речь вообще не идёт. У крутых чуваков, которые отсыпают бабло Python Foundation, есть дохрена кода на python 2, и под python 3 этот код не работает. Переписывать этот код выйдет намного дороже, чем просто отсыпать ещё бабла за продление поддержки второй ветки. Ещё вопросы?

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

Он неприемлемо медленный.

Да, он на чистом питоне, может тормозить. Но официальный драйвер юзает ctypes, так что должен быть быстрее и работает на тройке. https://pypi.python.org/pypi/fdb/

несовместимое АРI

Но ведь это не причина не начинать на нем новый проект? Различия в API раскуриваются очень быстро. Кроме того, это единственная библиотека, которую я пока ковырял. Наверняка есть еще. Например https://github.com/kz26/PyExcelerate

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

Кстати, тут еще одна засада есть. Тройка со строками работает процентов на 5-10 медленнее, чем двойка. Хоть с байтовыми, хоть с юникодными. И далеко не всегда есть возможность это перекрыть железом.

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

Поломанной обратной совместимостью.

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

Потому, что приемлемые цены на товары удается держать только если растянуть расходы на оборудование лет на 10 минимум + определенный процент от стоимости на текущие нужды.

Да что вы говорите. Где вы в последний раз рабочую десятилетнюю офисную машину видели? Сильная от этого экономия? Дискетки в бизнесе живы потому что отчётность в налоговой на них принимают. Потому что болото и «легаси» во главе угла.

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

Переписывать этот код выйдет намного дороже, чем просто отсыпать ещё бабла за продление поддержки второй ветки. Ещё вопросы?

Я свой вопрос уже задал. На всякий случай повторю: зачем писать новый код на python2?

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

А где можно про это прочитать? Гугл по запросу python 3 string operations performance ничего внятного не выдает. Я знаю, что конкатенация не особо шустрая. Но на каждом углу вместо нее советуют использовать join. Фо форматированию особо разницы не замечаю.

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

Да, он на чистом питоне, может тормозить.

Раз в 10-20.

Различия в API раскуриваются очень быстро.

А код переписывается и тестируется тоже быстро? А если его почти 500 килобайт в одном только проекте?

Но ведь это не причина не начинать на нем новый проект?

Если ты не программист на, то подбор инструмента очень творческий процесс :-).

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

Выбрать можно только одно.

Юникодные строки в двойке уже дропнули?

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

Я свой вопрос уже задал. На всякий случай повторю: зачем писать новый код на python2?

А зачем писать его на python3, если под вторую ветку уже готова вся инфраструктура и выгода от перехода крайне сомнительна?

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

OpenERP запусти, да. С русскими модулями.

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

«Ънтырпрайз-админы не осиливают набрать apt-get install python3» - это не ответ.

Ты просто не понимаешь, что тебе говорят. Ну и ладно.

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