LINUX.ORG.RU

Python


392

21

Всего сообщений: 355

Принят PEP #466 о переносе некоторых сетевых возможностей Python 3 в Python 2.7.7

Группа Open Source

19 апреля было одобрено предложение об усовершенствовании Python (PEP) #466.

Одно из основных изменений, содержащихся в PEP 466 — почти полная синхронизация возможностей модуля ssl с модулем, использующимся в Python 3. Единственное, что не будет бэкпортировано — функции доступа к RNG библиотеки OpenSSL ssl.RAND_*.

Данные изменения позволят приложениям, написанным на Python 2.7 и не поддерживающим Python 3 (например, Mercurial), использовать Server Name Indication (SNI). До этого из-за отсутствия поддержки этого расширения в модуле ssl приходилось либо использовать другие средства, либо отказываться от SNI, полагаясь на конфигурацию веб-сервера.

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

 

Kiborg
()

Релиз Pexpect 3.2

Группа Open Source

Pexpect — модуль Python для запуска и контроля порождённых приложений.

Pexpect может быть использован для автоматизации интерактивных приложений, таких как ssh, ftp, passwd и telnet. В отличии от других Expect-подобных модулей, Pexpect не требует TCL и для его компиляции не требуются расширения C. Для его работы достаточно стандартного Python и модуля pty. Интерфейс Pexpect был разработан чтобы быть лёгким в использовании.

Список изменений в версии 3.2

  • Исправлена обработка исключений в select.select() в Python 2.
  • Удалена поддержка TIOCSWINSZ на очень старых системах.
  • Исправлена ошибка и улучшена документации в pxssh.

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

 

Cloud_Strife2020
()

Релиз Pyro 4.25

Группа Open Source

Pyro (Python Remote Objects) — библиотека, которая позволяет создавать приложения, объекты которых могут взаимодействовать между собой по сети, с минимальными программными затратами. Вы можете использовать обычные вызовы Python — Pyro позаботится о нахождении местоположения машины и выполнении метода. Pyro был разработан не только для того, чтобы быть очень лёгким в использовании — с его помощью вы сможете создавать приложения быстро и эффективно. Pyro полностью написан на Python и работает на большинстве его версий, включая Python 2.x, Python 3.x, IronPython, Jython 2.7+ и Pypy.

Изменения в версии 4.25

  • Требуется serpent 1.5.
  • Поддержка сокета AF_UNIX.
  • Добавлен новый метод register_dict_to_class в SerializerBase.
  • Добавлен пример ser_custom example.

Сайт проекта

Скачать

>>> Полный список изменений

 

Cloud_Strife2020
()

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

Группа Open Source

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

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

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

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

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

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

 

Akamanah
()

Второй PyCon Russia: Екатеринбург, 2-3 июня

Группа Конференции и встречи

PyCon Russia 2014 — это конференция для python-разработчиков, которая проходит в выездном формате и длится два дня. Во второй раз python-разработчики со всей России и ближнего зарубежья соберутся, чтобы послушать выступления мировых экспертов, научиться новому и пообщаться с коллегами. В этом году мы ожидаем более 300 участников.

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

Программа активно формируется. Мы ищем докладчиков с интересным опытом работы на Python. Если вы один из них, до 15 апреля заполните на сайте http://pycon.ru/2014/ заявку на доклад.

Там же уже открыта регистрация для участников. Присоединяйтесь!

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

 , ,

anonymous
()

Dropbox анонсировал выпуск открытой реализации Python

Группа Open Source

Dropbox, поставщик облачных систем хранения данных, анонсировал Pyston — JIT-компилятор для Python собственной разработки с открытым исходным кодом. Большой упор в разработке Pyston делается на увеличение производительности.

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

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

 , , ,

amazpyel
()

Язык программирования Delight

Группа Open Source

Сегодня стало известно о возрождении языка программирования Delight. Delight представляет собой новый объектно-ориентированный язык, сочетающий в себе элементы синтаксиса языков Python, D, Haskell и Ada. Новая версия полностью переписана на D2.

В отличие от Python Delight является строго типизированным языком, однако допускает автоматическое определение типа с использованием ключевого слова auto. Так же как Python Delight использует ключевые слова как in, less than, and, equal to вместо математических операторов. Как и D Delight поддерживает юнит-тесты, а так же механизм assert'ов.

Пример кода:

procedure main:

    auto array = [ "a": 1, "b": 2, "c": 3 ]
    for key, element in array:

        if element in [ 0, 2, 4 ]:
            print key ~ "'s in!"

        else if element equal to 3:
            print add( element, 2 )

        else:
            print key ~ "'s out!"

    print { i * 2 for i in 0 .. 5 where i ^ 2 less than 5 }
    # prints [0, 2, 4]
Интересной возможностью является возможность использования исходного кода на D без модификации. Для этой цели применяется директива Passthrough.

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

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

 , delight,

Xroft
()

Релиз IPython 2.0.0

Группа Open Source

IPython — интерактивная оболочка для языка программирования Python, которая предоставляет расширенную интроспекцию, дополнительный командный синтаксис, подсветку кода и автоматическое дополнение. Является компонентом пакета программ SciPy.
IPython позволяет осуществлять неблокирующее взаимодействие с Tkinter, GTK, Qt и WX. Стандартная оболочка Python позволяет взаимодействие только с Tkinter. IPython может интерактивно управлять параллельными кластерами, используя асинхронные статусы обратных вызовов и/или MPI. IPython может использоваться как замена стандартной командной оболочки операционной системы, особенно на платформе Windows, возможности оболочки которой ограничены. Поведение по умолчанию похоже на поведение оболочек UNIX-подобных систем, но тот факт, что работа происходит в окружении Python, позволяет добиваться большей настраиваемости и гибкости.

Главные изменения версии 2.0:

  • Интерактивные виджеты для Notebook.
  • Навигация через директории на панеле инструментов в Notebook.
  • Постоянные URLs для Notebook.
  • Новый модальный интерфейс пользователя в Notebook.
  • Модель безопасности для Notebook.

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

 ,

Cloud_Strife2020
()

Вышел релиз языка программирования truthon

Группа Open Source

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

1. Самое главное: оно поддерживает три типа комментариев и новые способы легко добавить!

# shell
// кресты
/* си */

2. Синтаксис слегка пришибленый (пришлось подпилить под нужды парсера), но какой уж есть. Вот небольшой пример стандартной программы «привет, Ад»:

main = (argv, argc) ->  # объявили лямбда-функцию и сохранили её в main
  name = "Hell"
  the_string = p "Hello, {name}"   # оператор p печатает на экран
                                   # и возвращает значение своего аргумента
  # fancy string interpolation
  num = 1
  string_with_number = "num = {num}"
  
  # shell invocation
  ret = `echo -e 'Bye!\nrm -rf ~'`
  p "script terminated with {ret}"

  # built-in repexp matching
  p "Hello" =~ /(H.*)/

  # branching
  1 if 1+1 == 2 else 3
  
  # expression-oriented!
  score = match
    name =~ "true_(.*)"  => 666
    name == "tailgunner" => 7
    _                    => -1

  # Higher-order functions: a(b(c()) is ...
  a . b . c  
  c $ b $ a  # pipe-line style

Итд итп. Самое главное что он expression-oriented и со статической типизацией**.

В ближайших планах переписать этот ЯП на нём же самом.

Ведутся активные переговоры с Леннартом Поттерингом по включению этого ЯП в состав systemd как средства написания юнитов.

Фичи и плюши: строгая типизация, expression-oriented, компилируемый*, есть примитивный вывод типов**. Некоторые операторы (в данный момент только print) полиморфны. Вскоре: замыкания, pattern matching, ADT, ООП с public/private/close, генерация llvm bitcode и многое другое. Циклов ещё нет, поэтому используйте рекурсию. На данный момент поддерживается только работа с целыми числами (произвольной длины) и строками. Поддержка других типов будет хорошим упражнением для пытливого читателя.

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

PS Про nanopass читал

PPS Формочку заполнил

*Эта функция не работает

**Есть, но оочень глючит.

Лицензия BDSM-like

Changelog

>>> Исходники

 , ,

true_admin
()

Python 3.4

Группа Open Source

Релиз состоялся 16 марта. Версия 3.4 включает сотни мелких улучшений и багфиксов.

Основные изменения:

  • PEP 428: новый модуль «pathlib», обеспечивающий объектно-ориентированный интерфейс доступа к файловой системе;
  • PEP 435: стандартизирован модуль «enum»;
  • PEP 436: улучшена система сборки, добавлена возможность генерации информации самоанализа для встроенных компонентов;
  • PEP 442: улучшена семантика для финализации объектов;
  • PEP 443: добавлены общие функции одиночной диспетчеризации в стандартную библиотеку;
  • PEP 445: новый C API для создания собственных методов распределения памяти;
  • PEP 446: по умолчанию дочерние подпроцессы более не наследуют файловые дескрипторы;
  • PEP 450: новый модуль «statistics», добавляющий функции математической статистики;
  • PEP 451: стандартизирован тип «ModuleSpec», предоставляющий метаданный системе импорта модулей;
  • PEP 453: в дистрибутив добавлен установщик менеджера пакетов pip;
  • PEP 454: добавлен модуль «tracemalloc», обеспечивающий трассировку распределения памяти;
  • PEP 456: добавлен новый алгоритм хеширования для строковых и двоичных данных;
  • PEP 3154: реализован новый улучшенный протокол Pickle version 4 для модуля «pickle»;
  • PEP 3156: добавлен модуль «asyncio», представляющий из себя фреймворк для асинхронного ввода/вывода.

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

 

anonymous
()

gPodder 4.0.0 «Iffy Kiffy Izzy Oh»

Группа Open Source

Сегодня вышла новая версия gPodder — свободного подкаст-агрегатора. Это первый релиз четвёртой ветки и подготовлен он, в первую очередь, для мобильных устройств Sailfish OS и Blackberry 10.

Основные изменения:

  • Модульная архитектура — парсер (podcastparser), ядро (gpodder-core) и модули интерфейсов (в данный момент доступны только gpodder-ui-qml и gpodder-sailfish ).
  • Переход с Python 2 на Python 3 (требуется версия >= 3.2).
  • Переход на Qt5 и QML (поддержка через PyOtherSide).
  • Добавлены новые команды для консольного интерфейса (gpo).

Пользователям десктопной версии рекомендуется оставаться на предыдущей ветке, так как многие возможности ещё не перенесены в 4.*.* (графический интерфейс, поддержка плагинов, интеграция с gpodder.net и т.д.). Исключение составляют те, кто пользуется консольным интерфейсом — он находится в модуле gpodder-core.

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

 , , , ,

aidan
()

Ren'Py 6.17 «In This Decade...»

Группа Игры

20 февраля состоялся релиз новой версии Ren'Py — свободного движка для создания визуальных романов, которому в этом году исполнилось 10 лет. На нем написаны такие игры как Katawa Shoujo, Juniper’s Knot, Digital: A Love Story, RE: Alistair++, Long Live The Queen, Analogue: A Hate Story, Бесконечное Лето и многие другие.

Основные изменения:

  • Переработан код для определения стилей текста:
    • ускорена их генерация;
    • упрощен синтаксис их задания (старый вариант по-прежнему поддерживается);
    • переписан инспектор стилей (Style Inspector).
  • Различные изменения в синтаксисе, добавляющие новые опции.
  • Добавлены русский и французский переводы.
  • Система для сборки пакетов под Android (RAPT — the Ren'Py Android Packaging Tool) теперь интегрирована в SDK и автоматически скачивается и обновляется при запуске сборки.
  • Исправленные баги для Android-версии:
    • Исправлен баг с невозможностью сохранения локальных данных при закрытии приложения;
    • Устранена регрессия, нарушавшая совместимость с некоторыми системами Android 2.3.
  • В функцию Preferences() добавлены новые настройки:
    • «auto-forward after click» — возможность остановки по клику в режиме автовоспроизведения;
    • «show empty window» — определяет, будет ли показано пустое окно при вызове «window show» или «window auto».
  • Многочисленные мелкие доработки и исправления.

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

 , , ,

aidan
()

PyPy 2.2

Группа Open Source

Вышла очередная версия PyPy — интерпретатора языка программирования Python, который написан на Python и может компилировать сам себя. PyPy 2.2 реализует поддержку языка Python версии 2.7.3. Основным нововведением является новый инкрементальный сборщик мусора, разработка которого была проспонсирована Raspberry Pi Foundation.

Основные изменения:

  • инкрементальный GC, избавляющий от большинства долгих пауз, возникавших в ходе сборки мусора;
  • изменен механизм работы счетчиков JIT (JIT counters);
  • NumPy разделен: PyPy содержит только core-модуль _numpypy. Модуль numpy перемещен в https://bitbucket.org/pypy/numpy, numpypy удален. Установка numpy производится отдельно;
  • уменьшен оверхед для non-inlined вызовов;
  • добавлена JIT-компиляция для кода, использующего sys.set_trace;
  • увеличена скорость работы JSON decoding;
  • увеличена скорость работы различных операций копирования буферов (например list-of-ints to int[] при работе с cffi);
  • полностью реализованы все отсутствующие методы os.xxx(), включая os.startfile() на Windows и небольшое количество редко используемых функций на Posix;
  • в numpy добавлено C API, которое взаимодействует с cpyext.

Скачать PyPy

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

 ,

encyrtid
()

Выпуск версии Django 1.6

Группа Open Source

Рады сообщить о выходе новой версии веб-фреймворка для языка Python — Django 1.6

В этой версии:

  • Улучшенная работа транзакций. Автокоммит на уровне базы данных включен по умолчанию.
  • Постоянные соединения с базой данных. По умолчанию отключено (соединения закрываются по окончанию запроса, как в более ранних версиях). Для включения параметру CONN_MAX_AGE нужно присвоить значение None.
  • Определение тестов в любом модуле, а не только в models.py и tests.py
  • Агрегация дат с учетом часового пояса.
  • Поддержка точек сохранения (savepoints) в Sqlite.
  • Бинарное поле для моделей, позволяющее хранить в базе двоичные данные.
  • Изменения в алгоритме метода save() для моделей, что позволило уменьшить количество запросов к базе данных во время сохранения модели.

Также было произведено множество мелких изменений и исправлений ошибок.

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

 , ,

vurdalak
()

В PyPy появилась поддержка STM

Группа Open Source

Спустя два года после начала работы в PyPy была добавлена начальная поддержка Software Transactional Memory (STM). STM позволяет избавить многопоточные приложения от блокировок.

Первые результаты показали очень хорошее масштабирование: выполнение кода в 8 потоков на неназванном четырёхъядерном процессоре увеличило скорость в 4.6 раза (процессор был с hyper-threading).

К сожалению, пока поддержка STM далека от оптимальной. Она создаёт значительные накладные расходы и на однопоточных приложениях скорость PyPy-STM не сильно отличается от CPython. Разработчики обещают в будущем исправить эту досадную проблему.

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

 ,

true_admin
()

Релиз Sage 5.12

Группа Open Source

Sage — это open-source система компьютерной математики, объединяющая множество существующих open-source пакетов единообразным интерфейсом при помощи Python. Она включает много областей математики, включая алгебру, комбинаторику, вычислительную математику и матанализ, и ставит своей целью создание жизнеспособной альтернативы таким пакетам как Magma, Maple, Mathematica и Matlab.

В данном стабилизационном релизе выполнено 234 задачи, включающие:

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

 , , ,

omegatype
()

Выпущена opensource редакция PyCharm 3 — IDE для Python

Группа Open Source

Компания Jetbrains, известная целой серией IDE для различных языков программирования, объявила о выходе opensource редакции IDE для Python: PyCharm Community Edition.

Opensource версия включает:

  • редактор с функциями автодополнения, подсветки синтаксиса и ошибок;
  • автоматизицию рефакторинга кода и широкие возможности навигации по исходным текстам;
  • встроенный отладчик и поддержку unit-тестов;
  • работу с системами контроля версий;
  • широкие возможности по настройке, в том числе режим эмуляции VIM.

Коммерческая редакция IDE также включает поддержку фреймворков для веб-разработчиков; работу с javascript/css и некоторыми другими смежными технологиями; отладку на удаленных хостах; работу с базами данных из IDE.

Opensource версия доступна под лицензией Apache 2.

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

 , , , ,

maxcom
()

Codimension Python IDE 2.1.1

Группа Open Source

Экспериментальная среда разработки для языка Python обновилась до версии 2.1.1.

Основные изменения по сравнению с предыдущими версиями:

  • Добавлен интерфейс расширений (plugins).
  • Добавлено расширение для сборки мусора.
  • Подготовлено руководство разработчика расширений.
  • Обновлена утилита pyflakes до версии 0.7.3.
  • Исправлены несколько ошибок.
  • Улучшена работа автоматической справки по аргументам функций (calltips).
  • Улучшена поддержка подсказки для импортируемых имен для относительных import и многое другое.

Полный список изменений

Сайт проекта

Проект на google code

Руководство разработчика расширений

Пакеты для Ubuntu на launchpad

 ,

SergeySatskiy
()

Релиз PyQt 5.0

Группа Open Source

После долгого ожидания и многочисленных бета-версий вышла популярная привязка языка Python к библиотеке Qt.
PyQt5 не сохранила обратную совместимость с PyQt4, но принесла поддержку новых возможностей Qt5.

Краткий список изменений и отличий от предыдущей версии:

  • Поддержка Qt5. Теперь вы можете писать программы на python под новую версию Qt, используя все её возможности.
  • Поддерживается только Python 2.6 и выше (вплоть до 3.3).
  • PyQt5 не поддерживает никаких функций API, помеченных как устаревшие в Qt5.
  • GIL теперь освобождается только тогда, когда это необходимо.
  • Убран код вызова SIGNAL() и SLOT(). Возможно использование только API v2.
  • QtDeclarative удалён. На его замену предлагается использование QtQuick.
  • QtScript и QtScriptTools более не поддерживаются. На их замену предлагается QtQml.
  • QtXML не поддерживается, предлагается использование QXMLStreamReader / QXMLStreamWriter или встроенные средства питона.
  • Реализация QtOpenGL поддерживается только посредством трёх классов: QGLContext, QGLFormat и QGLWidget.

Подробный список изменений

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

 , ,

anonymoos
()

Codimension Python IDE 2.0.1

Группа Open Source

Экспериментальная среда проектирования для языка Python обновилась до версии 2.0.1, а быстрый и детальный парсер питона, разработанный в рамках проекта, обновился до версии 1.6.1.

Основные изменения по сравнению с предыдущими версиями:

  • Реализован отладчик;
  • Реализована интеграция с pyflakes;
  • Множество исправлений ошибок;
  • Общее улучшение производительности.

Сайт проекта

Проект на google code

Сравнение codimension python parser и стандартного модуля pyclbr

Пакеты для Ubuntu на launchpad

 ,

SergeySatskiy
()