LINUX.ORG.RU

Python 3.14

 

Python 3.14

1

5

Вышел Python 3.14.

Из новшеств:

  • официальная поддержка свободной многопоточности (free-threading, PEP 779);
  • новый модуль compression.zstd для сжатия согласно Zstandard (PEP 784);
  • выражения except и except* теперь могут записываться без скобок (PEP 758);
  • многое другое.

Обзор на YouTube о производительности свежих версий Python.

Обзор изменений в диагностике ошибок на Хабре.

>>> Подробности на pythoninsider.blogspot.com

★☆

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 7)
Ответ на: комментарий от rtxtxtrx

Такие фреймворки пережиток. Раньше всё View было на сервере, и фреймворки построены по сути вокруг этого. Сейчас это никому не нужно. А вдобавок там (что в джанге, что в рельсах) какой-то ORM стремный, от которого трудно отвязаться, при том, что есть реализации намного лучше. И всё остальное такое же прибитое гвоздями.

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

P.S. Monday, September 22, 2025 Rails Version 8.0.3 has been released! Насколько я знаю сейчас в раилс сразу затисканы что то типа ноды, там фигачут сразу и бакенд и фронтенд.

Это называется Hotwire https://hotwired.dev/

Суть в том, что и сервера и Ruby сильно ускорились и теперь рендерят в десятки раз быстрее, чем в 2010. А в браузеры завезли веб-сокеты, которые держат соединение, вместо обычного stateless http REST.

Старый «дубовый» SSR (сервер-сайд рендеринг) умер, потому что всем стала нужна реактивность на фронте, динамические интерфейсы и SPA, а не перезагрузка страницы на каждый клик.

Поэтому Rails в середине «десятых» переместился в сферу API-бэкенда, где фронт был на React, Vue.js или на чём угодно. И начал там чахнуть, потому что для чистого бэка преимуществ было по прежнему много, но и у конкурентов было много других своих преимуществ.

Плюс фактически обе части фронта и бэка стали независимыми кодовыми базами на разных языках.

А потом в 2021-2022 выстрелил Hotwire. Теперь ты прямо на бэке рендеришь нужные html-фрагменты (да, просто итоговый старый-добрый html, не мегабайты json), а тонкий JS-клиент (Turbo + Stimulus) в браузере тебе по веб-сокетам всё это in place незаметно и бесшовно заменяет по нужным колбэкам и событиям, в нужном месте DOM. И фрагменты меньше по размеру, чем вся страница, как было ранее, да и интернеты стали быстрее и стабильнее. И без какого-либо жирнющего фронта в браузере клиента в десятки мегабайт. И это опять выстрелило.

Типа произошёл возврат к SSR только в другом, современном виде, где это не противоречит SPA. И тоже можно оборачивать в мобильные приложения по аналогии с React Native.

И у тебя опять общая кодовая база, где всё рулится одними конвенциями одного фреймворка. И бизнес опять потянулся, отсюда и конференции эти с забитыми залами в последние два года.

В Django вроде тоже пытаются скопировать и прикрутить рельсовый hotwire, но не знаю как там с этим сейчас обстоят дела. Но Django всегда был догоняющим в этом плане.

OSBuster ★★
()
Последнее исправление: OSBuster (всего исправлений: 7)
Ответ на: комментарий от bread

От него вообще нельзя отвязаться. Там еще модели формам прибиты, ну это отчасти оправдывается наличием джанга-админки. Фреймворки следующих поколений после джанги типа фласка того же фастапи или аиохттп не имеют встроенной ORM. У Алхимии после того как в нее добавили асинхронность конкурентов нет… Ну и всратого шаблонизатора там нет. Сейчас сайт можно склепать на любом прогрессивном вротенд-фреймворке с SSR или забить на последние потому как все эти сайтики практики современные там в основном личные кабинеты где индексация вообще не нужна

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

Там еще модели формам прибиты

Что это значит? В Django модели отдельно, формы отдельно. Можно использовать ModelForm для автоматического создания форм по модели, но не обязательно. К тому же, это реально гибкий инструмент, можно кастомизировать даже такую форму как угодно.

У Алхимии после того как в нее добавили асинхронность конкурентов нет

Кроме Django ORM и Алхимии, есть ещё несколько ORM. Алхимия хороша, но она очень медленная. Прям очень. Впрочем, не везде это критично.

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

А может раби сдох потому что рельсам альтернатив в нём не было. Там все как в шарпе тоже один единственный фреймворк по сути и одна единственная орм энтити

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

Про скорость-то какую-то не знаю она не нужна в языке который по определению тормознутый. Все эти хайлоады который пилят эффективные додики какие-то они никогда не взлетят никогда там даже тысячу запросов в секунду не будет от силы запросов 100-150 там даже одним полудохлым сервером можно обойтись

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

Альтернативы всегда были - Sinatra, Hanami. API-only решений вообще пруд пруди.

Т.е. точно уж не меньше, чем в Питоне.

За последние два года появились:

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

Три атрибута: blank, editable, help_text. Которые можно не использовать вообще.

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

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

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

highload на Python есть. Я уже приводит примеры в этой и других темах. Не хочу повторяться. Достаточно посмотреть на HH.ru, какие компании и в какие проекты ищут Python разработчиков.

Там тормознутость SQLAlchemy может уже сильно ролять.

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

одна единственная орм энтити

Одна единственная она только если кому-то в нулевых на голову упал двухтомник Лутца по Питону и с тех пор он ослеп, оглох и ничем больше не интересуется.

Кроме ActiveRecord есть популярные и зрелые Sequel, ROM и ещё пачка NoSQL решений для всяких MongoDB и прочего.

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

Зачем ты мне эту маргинальщину кидаешь? Нет это неинтересно я знаю что это такие мягко сказать непопулярные решения на уровне статической погрешности погоды они не делают. А а лутц хороший человек в отличие от тебя

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

А я не тебе лично её кидаю, а в топик, чтобы другим читающим топик людям чушью не замыливали глаза и не формировали искажённое мнение «эксперты» и специалисты по всему вроде тебя.

Sequel это самое популярное в Ruby-экосистеме решение для микросервисов, у которого десятки релизов в год, начиная с 2007.

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

ты пришёл доказывать что заведомо худший язык лучше прекрасного питона? В в твоём раби до сих пор нету асинхронщины… Когда даже async/await в C++ появился

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

То есть а то что питон развивался пока руби-смузихлебы почевали на лаврах это как-то ты пропускаешь?

Причём тут Питон? Чем конкретно ты оскорбился? Я не высказал ни одной претензии к Питону в этом топике. Ты в очередной раз что-то додумал и прогазифицировал лужу. Я вообще хорошо отношусь к Питону. Это у тебя какая-то ущербность бессознательная полезна на ровном месте.

Sequel (https://sequel.jeremyevans.net) это прямой конкурент ActiveRecord в Ruby-экосистеме и вторая по популярности ORM c кучей расширений и десятком адаптеров для разных БД.

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

Альтернативы ActiveRecord есть, никакой монополии тоже. Она только в твоей голове, потому что ты ничего про это не знаешь, а что-то где-то краем ухом слышал, как одна бабка в трамвае сказала.

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

ты пришёл доказывать что заведомо худший язык лучше прекрасного питона? В в твоём раби до сих пор нету асинхронщины… Когда даже async/await в C++ появился

Давно всё есть и активно используется, даже веб-серверы https://socketry.github.io/falcon/ такие же, как aiohttp.

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

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

Вот тебе статья трёхлетней(!) давности, про россиский продукт, дле люди используют и асинхронщину и Sequel вместо ActiveRecord и всё это на более или менее хайлоаде по российским меркам.

https://habr.com/en/companies/ecom_tech/articles/705510/

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

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

Увидел пуму вспомнил что у меня на сервере стоит gitlab который написан на рабби выжирает гигабайт 6 оперативной памяти

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

вспомнил что у меня на сервере стоит gitlab

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

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

Да мне как-то похер. Просто пример твоей раби-дрисни как она быстро работает и мало памяти жрёт

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

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

https://flask-admin.readthedocs.io/en/stable/

https://fastapi-admin-docs.long2ice.io/

https://github.com/aio-libs/aiohttp-admin

Админка это зло. Если бабе менегеру к ней доступ дать она обязательно все сломает… Хорошо что у меня на сервере Btrfs. Я про джанга-админку, которая позволяет ломать базу… У меня есть клиент у которого админка вообще phpmyadmin, он выучил простые запросы и пользуется ей + нейронкой, чтобы она ему статистику выводила разную (это ему аутоотсосеры сделали такую систему нипель)

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

Конкретно табуляцию удобнее жать, чем выстукивать begin … end или раскорячивать мизинцы ради фигурных скобочек. Примеры вкусовщины: «Я люблю свободу форматирования» и «Да кому эти скобочки вообще мешали?!»

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

htmx хикъ
Карсон Гросс - Hypermedia-разработка. Htmx и Hyperview

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

удобнее

Ага. :)

Только вот у каждого очень своё «удобнее»... А ещё есть «привычнее», и с ним тоже приходится считаться... ;))

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

Судя по моему работодателю, Jira проще в эксплуатации и покрывает все потребности, ради которых его внедряли.

А разве Jira opensource и free?

https://www.atlassian.com/try/cloud/signup?bundle=jira-software&edition=free

Following the Russian invasion of Ukraine, we are pausing the sale of new software in Russia and Belarus.
mx__ ★★★★★
()
Ответ на: комментарий от OSBuster

А потом в 2021-2022 выстрелил Hotwire. Теперь ты прямо на бэке рендеришь нужные html-фрагменты (да, просто итоговый старый-добрый html, не мегабайты json), а тонкий JS-клиент (Turbo + Stimulus) в браузере тебе по веб-сокетам всё это in place незаметно и бесшовно заменяет по нужным колбэкам и событиям, в нужном месте DOM.

Выглядит как полная шляпа. Вся эволюция веба направлена на то, чтобы не рендерить на бэке и разделить наконец ответственность: представлением занимается клиент, обработкой данных – сервер. Но рельсовики не сдаются!

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

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

Для меня удивительно, что у одной из разновидностей софта совершенно нет никаких аналогов, хотя на первый взгляд, оно не выглядит прям rocket science.

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

Выглядит как полная шляпа. Вся эволюция веба направлена на то, чтобы не рендерить на бэке и разделить наконец ответственность: представлением занимается клиент, обработкой данных – сервер. Но рельсовики не сдаются!

Никуда она не направлена.

Это как с повальной модой на микросервисы ВСЕГО в середине десятых, когда спустя время поедания кактуса и борьбы с накладными расходами произошло некоторое переосмысление и осознание, что это не серебрянная пуля, и снова откат в сторону монолитов уже с новым модным определением «гибридные».

Никто никому ничего не должен. Всё что должен делать клиент это рендерить DOM, а как туда данные попадают это особенности реализации. А если это экономит и трафик и вычислительные ресурсы клиента, то конечному пользователю ещё и батарейка на ноуте скажет спасибо. Плюс снимаются некоторые извечные вопросы с сериалиазацией и авторизацией.

Все эти React Redux, React Router и хуки с многочисленным перерендерингом всего и вся до финального варианта, загружая ваш CPU, тоже не от хорошей жизни взялись, а компромисс на компромиссе, не какое-то эволюционное и единственное направление.

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

Если аббревиатуру составлять из всех слов, то получится не IDLE, а PIDaLE. Что, вероятно, как-то характеризует сущность сабжа.

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

А если код «не отформатирован», то в случае Python он невалиден (код).

Это,
кстати, хороший
способ привить уважение
к
типографике
на
ранних этапах.

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

PIDaLE

Педали))

Бывает улыбка без кота и кот без улыбки.

А бывает велосипед без педалей и педали без велосипеда))

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

Всё что должен делать клиент это рендерить DOM, а как туда данные попадают это особенности реализации.

Прикол в том, что на стороне клиента сейчас гораздо более мощное и высокопроизводительное ПО, чем те же рельсы. Оно всяко лучше справится с представлением. Когда-то все решалось агрессивным кешированием, сейчас трудно представить как все свистоперделки закешировать. И еще я вижу фундаментальную проблему у подхода SSR – клиенту может потребоваться нечто более интересное, чем просто заменить фрагмент в DOM. Ему нужны данные, а не только кусок разметки, значит вы будете решать проблему их передачи параллельно с разметкой. Итого, логика представления расползается между клиентом и сервером. Разработка и взаимодействие разных команд усложняется. Только недавно ушли от этого, и снова по кругу.

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

Выглядит как полная шляпа. Вся эволюция веба направлена на то, чтобы не рендерить на бэке и разделить наконец ответственность: представлением занимается клиент, обработкой данных – сервер. Но рельсовики не сдаются!

Вы про что? Не очень вас понял.

https://guides.rubyonrails.org/working_with_javascript_in_rails.html

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

Для меня удивительно, что у одной из разновидностей софта совершенно нет никаких аналогов,

А чем redmine не аналог?

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

Нету тут никакого прикола, рендеринг небольших html из erb шаблона в JIT-оптимизированной VM моментален. Веб-сокеты позволяют это моментально доставлять.

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

Плюс JS сейчас нужными частями поставляется через новомодные importmaps, а не бандлится минутами в огромные блобы.

Тут нет никакого ИЛИ. Почитайте документацию или посмотрите туториалы, там всё просто.

Ну и опять же никто не запрещает пилить по старинке фронт совершенно отдельно, если есть такая необходимость и/или кодовая база.

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

Кому нужна эта дрисня, прости господи, в современном вебе.

А что нужно в современном вебе?

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

Плюс JS сейчас нужными частями поставляется через новомодные importmaps, а не бандлится минутами в огромные блобы.

Я вот старый но мне почему все время кажется что притаскивание js на сторону сервера (в бакенд) это какое это извращение. Тот же electron в конце концов …

Мне это напоминает проект: php-GTK типа делать настольные гуевые приложения на php.

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

Я вот старый но мне почему все время кажется что притаскивание js на сторону сервера (в бакенд) это какое это извращение. Тот же electron в конце концов …

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

Словно всё то, что наворотили за последние 15 лет это не фундаментальная проблема и не требует пересмотра.

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

Только у интринсицистов, которые придают значение техническим решениям как таковым, независимо от контекста и последствий, и субъективистов, которые придают значение только голосу большинства. У нормальных людей форматирование в Питоне не вызывает никаких скверных чувств.

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

может просто взять Lua и писать на нём вообще не ломая себе голову…

…пока не понадобился тернарный оператор.

P.S. Выдаём клиентам LUA-песочницы для задания своих выражений при расчетах показателей. LUA выбирался в свое время, году в 14ом, именно за возможность организовать песочницу с приемлемой производительностью и относительно простую и безопасную.

Но говорить, что синтаксис прямо удобный…

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

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

Например, тот, который в CMake? :)

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

А чем redmine не аналог?

Чем-то не устраивают руководство везде. Не знаю, чем. Мне от системы управления задачами нужен только воркфлоу из 4-5 пунктов, да возможность привязывать MR’ы к задачам.

Но менеджмент ни одной компании не готов уходить с Jira почему-то.

Chiffchaff
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.