Security updates for Monday

Post Syndicated from jzb original https://lwn.net/Articles/1078922/

Security updates have been issued by AlmaLinux (389-ds:1.4, kernel, and kernel-rt), Debian (gst-libav1.0, gst-plugins-good1.0, imagemagick, kernel, libconfig-inifiles-perl, libgd-perl, libhttp-daemon-perl, mediawiki, pillow, and squid), Fedora (389-ds-base, alertmanager, ansible-core, buildah, chromium, erlang-cowboy, erlang-cowlib, erlang-gun, freerdp, kubernetes1.33, kubernetes1.34, kubernetes1.35, mingw-SDL2_image, ongres-scram, ongres-stringprep, openssl, perl-Config-IniFiles, perl-Crypt-PBKDF2, podman, postgresql-jdbc, python3.13, strongswan, webkitgtk, xdg-desktop-portal, and yt-dlp), Red Hat (osbuild-composer), SUSE (alloy, amazon-ssm-agent, ansible-core, apache-sshd, jpgpj, azure-storage-azcopy, chromedriver, containerized-data-importer, firefox, glibc, graphite2, inspektor-gadget, kubevirt, lemon, openvswitch, python-starlette, python311, python311-joserfc, python313, and tinyproxy), and Ubuntu (netatalk).

Professional Athletes and Wearables

Post Syndicated from Bruce Schneier original https://www.schneier.com/blog/archives/2026/06/professional-athletes-and-wearables.html

I haven’t thought about the privacy issues surrounding professional athletes and wearables.

Wearables present serious privacy issues for “Average Joe” consumers, who are entrusting tech companies to safely store and protect their biometric data. Imagine the stakes for a professional athlete, whose entire livelihood could be affected by a single biometric data point. To give one of many realistic hypotheticals: a basketball player has a terrible game, and the coach wonders if they showed up to the gym hungover. The coach has access to the player’s wearable data, and checks to see when they went to sleep, as well as what their heart rate looked like during the night. Should the player have been out partying before a game? No. Should the coach be able to surveil them? Definitely not.

It will not surprise you to learn that there’s an emergent gambling angle here: sports leagues would love to commercialize players’ biometric data, and sharp bettors would love access to data about, say, a hungover player. “We’re going to get to a spot where people are betting not just on the velocity of the puck that was shot by a player in the NHL playoffs, but on what the heart rate of a certain player is going to be running down the field,” said Helen “Nellie” Drew, the director of the University of Buffalo’s Center for the Advancement of Sport, and a professor of practice in sports law.

There are other practical considerations, too. What if wearable data reveals that a player isn’t as speedy as they were before, and a team uses that data against the player during contract negotiations? What if a wearable reveals a player is favoring their leg, or is at greater risk of injury? This information is potentially beneficial to a training staff and an athlete, so long as it’s disclosed and used in a responsible manner—­a critical, mostly unresolved caveat. “Aging and injured players are the most at-risk” of wearable data being used against them, said Michael LeRoy, who researches sports labor laws and AI, and is a professor at the University of Illinois’s School of Labor and Employment Relations.

The bit about gamblers is particularly scary.

I have often said that surveillance tech is generally deployed first against people with diminished rights: children, prisoners, military personnel, the mentally impaired. This is another early use case with different dynamics. The surveilled are wealthy and powerful, and—in many cases—unionized.

Местни данъци в помощ на семействата, а не на инвеститорите

Post Syndicated from Боян Юруков original https://yurukov.net/blog/2026/mestni-danaci-2/

На 18-ти юни премиерът Радев споделил, че се обмисля прогресивен данък сгради. Това мимолетно изказване се разви в следващите дни с протестни становища на анализатори, строителни инвеститори и финансисти. Беше допълнено от хора в кабинета му с това, че не е ясно как точно ще стане, но се обсъжда актуализирането на данъчните оценки. Преглед както всъщност каза и какво е състоянието в момента може да прочетете от Цветелина Соколова в Медиапул и Таня Петрова в Сега.

Опипване със задни помисли

По същността си, това е политически ход. Никой няма съмнение, че е опит за ухажване на кметове и общински съветници като подготовка за изборите догодина. Години преди да подаде оставка водеше активна кампания за събиране на метни кандидати на постове. С това, както и кадруването в съдебната система се опитваше да следва моделът на идване на власт на Орбан. Не се получи, но сега отново има нужда от тях, за да оцелее това, което ще е не само ефективно втори вот на доверие към кабинета в края на 2027-ма, но и следващата голяма битка за страната с Борисов и Пеевски. Повече доходи за общините значи повече средства за преразпределяне от общинските съвети на фона на все по-трудни за крадене еврофондове.

Това изказване също е и опипване на почвата. Колко ще се приеме, какви идеи ще има, каква политическа цена ще трябва да плати. Аналогичното видяхме при идеите му за въвеждане на прогресивен подоходен данък. Там се опита да внуши, че ще се прави заради задължение от Европейския съюз прехвърляйки негативите върху лошия Брюксел. Доколкото има препоръчки за такава стъпка от международни наблюдатели като МВФ и Световната банка, същото има и за имотните данъци. Не му се получи особено и почти универсално беше отхвърлено от икономистите. Тук препоръчвам да прочетете коментара на Лъчезар Богданов по темата.

Моето мнение за подоходните данъци е, че наистина не е честна сегашната система и следва да са прогресивни. Против съм въвеждането им обаче заради негативните ефекти от самата промяна. Понякога се взираме твърде много в желаният резултат от промените в регулации и данъци – било то намаление или увеличение. Не се разбира и внимава обаче как точно се правят тези промени и дали пътят до този желан резултат не носи повече краткосрочни и дългосрочни щети. В случая – при липса на добър контрол над събираемостта, лесно пране на пари и укриване на доходи, анемични вътрешни инвестиции и лесна мобилност на капитали ще видим намаление на данъчните приходи при отлив на работни места с висока добавена стойност или регистрирането им под друга форма.

При имотните данъци обаче съм на мнение, че е отдавна закъсняла мярка и може да се направи повече, за да не се повишат наемите и цените на имотите. Дори обратното – има шанс да се намалят.

Данъчната оценка като политическа дъвка

Последната реална актуализация в данъчната оценка на имотите в България е през 2007 г. – преди почти 20 години. За този период пазарните цени в цяла България са скочили няколкократно. Когато се върнах в България през 2020-та, купих апартамента си на цена три пъти и половина по-висока от данъчната оценка. Шест години по-късно разликата е вече пет пъти и половина. Актуализацията на тези оценки към пазарни цени е предлагана в парламента многократно, но отпада по политически причини. От една страна никой не иска да изглежда, че вдига данъците, но от друга – строителното лоби работи активно срещу такава мярка, защото ефективно им бърка в джоба.

В момента има хиляди сгради в страната, които стоят на груб строеж или са готови и в тях се живее, но нямат акт 16. Последното понякога е заради бюрокрация в общините, но по-често е заради нарушения при строежа, фалит на строителя или нарочно нежелание да се довърши процеса. В миналото това беше начин да се избягват данъци, но тази дупка беше затворена и след две години на акт 14 вече се дължи местен данък. Това е особен проблем за строителите, които са взели парите на купувачи и са зарязали строежите си. Наскоро получих справка, която показва, че само в София има поне 2500 сгради – предимно жилищни блокове – които са на акт 14 повече от две години, но не са пуснати в експлоатация. Дали са изоставени или се живее в тях не може да знаем – чакам още данни, за да разбера.

Актуализирането на данъчната оценка обаче не е нещо спорно. Винаги се е знаело, че се блокира нарочно. Въпросът е единствено дали някой ще има смелостта и гласовете в парламента, както и дали ще се направи формула за автоматично актуализиране, за да е предвидимо за купувачите и бизнеса, а не зависимо от политически прищявки.

Данък сгради като социален инструмент

Вторият компонент тук е данъчната ставка. В момента законът позволява общините да го слагат между 0.1 и 4.5 на 1000 като за основно жилище има намаление от 50%. София, например, слагат данък сгради на 1.875 на 1000. Не е ясна каква е дефиницията на „основно жилище“ и съществува проблем с декларирането на такова в различни общини. Това означава, че ако сте купили апартамент за 100 хиляди евро преди 10 години, за да живеете в него, то данъчната му оценка ще е не по-малко от 50 хиляди и данъка на година ще е около 45 евро на година. Ако сте купили още няколко такива апартамента като инвестиция, годишният данък ще е по-малко от вечеря в ресторант в София със семейството ви. Това важи както за семейства с деца, така и за инвеститори купуващи десетки апартаменти и цели комплекси.

Смятам, че това е не е редно и трябва да се промени. Предложението ми цели запазване на данъчната тежест при първо жилище и на жилища на частни лица отдадени законно под наем, но драстичен скок при едрите инвеститори, схемите с жилища и това, което аз наричам криптобетон. Има три компонента:

  • Драстично вдигане на границата на ставката не в промили, а в проценти – от 0.3% до 1.5% от данъчната оценка
  • Намалението за основно жилище скача на 90%.
  • Местният данък платен за жилище отдадено под наем се зачита като данъчно облекчение към данъците на физическите лица, но не повече от 75% от дължимите данъци за приходите от наем

С първата точка се вдига между два и три пъти ставката. С втората точка не само се запазва сегашната ефективна ставка за основно жилище, но и в някои случаи се намаля. Например, в момента София е избрала 1.875 на 1000 или 0.1875%. Дори да реши да вдигне ставката пет пъти на .9375%, при новото облекчение няма да има промяна в платения данък за това семейство.

Третата точка позволява да не се вдигне данъка на физическите лица, които отдават апартаменти под наем. При тях ставката ще остане висока, тъй като не е основно жилище, но ще могат да я приспаднат от данъците си. Разбира се, тук доста ще посочат, че мнозинството от хазаите не плащат данъци и няма от какво да приспадат. Тази мярка ще помогне да се изсветли сектора, което е също в полза на наемателите. Не следва да се прави данъчна политика, която пази или по някакъв начин се опитва да не засегне сивата икономика и укриването на доходи.

Ще забележите, че говоря само за собственици физически лица. Тази мярка цели неколкопластов ефект. Първо, много често се пишат имоти на фирми независимо, че се използват изцяло за лични цели, с цел избягване на данъци и изписване на фактури за тях. Второ, много жилища са необитавани – между 25 и 40 по различни оценки – с цел паркиране на капитали. Трето, вече настъпват едри капитали, които строят или изкупуват жилища с цел отдаване под наем. В доста страни в Европа бизнес моделът на последните е довел до пагубни последствия за имотния пазар.

Всичко това води до концентрация на жилища в малък кръг от лица и влошава значително възможността на млади семейства да се сдобият с жилище. Последното води до отлив на свободен финансов ресурс за друга дейност като образование и пътуване. По-важното обаче е че доказано липсата на достъп до по-голяма жилищна площ и добри условия влияе негативно на демографската обстановка. Семействата се решават по-трудно на деца като не могат да си позволят наем или жилище.

Тези мерки правят неизгодно да се държат жилища на мазилка или да се концентрират такива за наем в големи конгломерати диктуващи пазара. В същото време физически лица наемодатели, каквито са огромното мнозинство в България, няма да видят особена промяна в данъчната ставка. Тази мярка ще създаде стимул многото празни апартаменти да бъдат пуснати на пазара, което би качило предлагането и свалило цената на наемите. Основна пречка пред това е недостигът на майстори, които да преведат тези жилища във вид за живеене. Това и сега е проблем покрай бума на пуснатите в експлоатация жилища. Затова някои жилища ще бъдат пуснати в продажба, което ако не да свали, то ще забави и дори спре ръста на цените на имотите.

Отдавна чуваме от архитекти, строители и инвеститори, че цените на имотите били високи, защото не се строяло достатъчно. Настояват, че в градовете ни имало предостатъчно междублокови пространства и градинки, където нямало проблем да се уплътнява повече. В същото време броят на жилищата пуснати в експлоатация надвишава не само населението, но и броят на домакинствата. В този контекст и предвид броят на започналите строеж жилища виждаме не само цените, но и наемите да скачат с бързи темпове. Проблемът тук не е, че няма достатъчно жилища на пазара, а че последният не се ръководни от пазарни принципи. Пратено на пари, липсата на защита на инвестициите и като цяло лошата бизнес среда в България, както и прилива на спекулативни капитали изкривяват пазара до степен, в която създава трудност за семейства да намерят адекватно жилище.

Това създава социален проблем и следва да се разглежда данъчното облагане като инструмент за влияние върху тази социална функция. Виждаме, че свободния пазар, свободията в строителството, неефективността на регулаторите и липсата съдебен контрол над нарушителите довежда до огромни проблеми в градската среда. Предложената горе промяна не цели и не може да адресира това. Инвеститори и спекуланти обаче в немалка степен се радват на същите привилегии замислени като социални, както младо семейство очакващо първото си дете. Това не следва да е така и ако декларираната сега воля не е просто политическа пиратка, имат шанс да се случи.

Разбира се, говорейки за спекула и пране на пари следва да се осъждат с лека ръка всички, които са намерили за добре да инвестират спестяванията си във втори или трети апартамент. Точно обратното – присъдата тук е за държавата, която не е осигурила предвидимост, сигурност на инвестициите, намалена бюрокрация и корупционен риск. В такава среда и липса на прозрачност за рисковете в имотния пазар, подобен избор си е логичен. Не следва обаче подобни инвестиции, дори когато става дума за физически лица, да се приравняват към жилище за обитаване. В единия случай говорим за рискова капиталова инвестиция, а в другия – критичен за съществуването актив. Инвестициите следва да се третират като такива данъчно и ефектът им върху градската среда е достатъчно значителен, за да обоснове предложените мерки.

Възможни ефекти и мерки

Всяка такава промяна – дори само актуализация на данъчните ефекти – могат да имат неочаквани ефекти. Всяка намеса в пазара на строителството, наемите и имотите може да има нежелани ефекти. Дори с по-голяма сила важи същото, когато не се прави нищо. Виждаме го в момента. Нямам съмнение, че дори така въведени мерки ще бъдат намерени начини за заобикаляне на закона, укриване на данъци и други схеми. Такива има и в момента.

В изказванията на хора от кабинета стана ясно, че виждат техническа трудност в липсата на свързаност в местните данъци на общините. Тяхната идея е за прогресивен данък, което значи, че трябва да има споделени данни за броя жилища и кой какво е декларирал някъде. Затова моето предложение не прави такова разграничение и не изисква никаква синхронизация между общините. Последното би било изключително трудно предвид опита от подобни инициативи в миналото. Дори техническата част да се случи, ще има нужда от значителен административен ресурс да се следи къде какво се декларира и проверки след това. Отделно недостатък на мярката е, че поставя юридическите лица на същото ниво като семействата с деца, което е нередно.

Затова за основно жилище следва да се води там където човек има настоящ адрес. Знам, че системата за адресна регистрация не работи добре и причината е контрола. Понякога има и злоупотреби – например се сменя настоящ адрес, за да се гласува другаде или за да се трупат точки за различно училище и детска градина. Това ще стане неизгодно, ако като резултат се увеличи данъчната ставка за жилището. Ако то е съсобственост на няколко души, то всеки ще получи намалението от 90% за жилището, където живее основно. Ако живее под наем на едно място, но притежава жилище на друго, то не може да се каже, че второто е основно жилище така или иначе. Ако имота е приписан на юридическо лице като формалност, то отново говорим за взаимоотношения аналогични на наемодател независимо дали собственик на фирмата живее в него.

Има аргумент, че следва да се направи облекчение за второ жилище. Причината за това е, че има много хора с наследствени такива или вили. Това би било по-сложно административно и изисква отново централизация на информацията, тъй като трябва да се декларира кое жилище се води като почивно. Възможно е да се осъществи и общините биха имали стимул да обменят информация дали другаде няма така подадени декларации, което би било укриване на данъци.

В миналото се обсъждаше друг вариант – данъчната ставка да зависи от това дали някой живее в жилището било то като собственик или като наемател. Това би спестило въртележката с данъчните облекчения, би осветлило пазара на наемите и би извадило много празни жилища на пазара. Тази промяна обаче беше отхвърлена от Конституционния съд с доста спорно решение, че не може да се обвързва данък върху имущество с това как се използва. Всъщност, именно Радев обжалва тогава промените в местните данъци, част от които вероятно ще предложи сам сега. Описаните горе мерки дават възможност за данъчно облекчение, което не попада в обсега на това решение.

Очаквам съпротива срещу тази или подобни мерки, тъй като засягат пряко пазара на нови жилища. В момента излиза практически безплатно да се държат неизползвани вече построените или ако се нанесе в тях – това, което са освободили. Строителите разчитат на това, защото така на пазара излизат предимно това, което са започнали да строят. Разчитат и че остават скрити измеренията на фалити в сектора, изоставените строежи, невъведени в експлоатация и въобще рисковете в имотния пазар. Конкретни предложените данъчни промени няма да променят особено последното, но имат потенциал да раздвижат пазара на имоти създавайки стимул да се освободи паркирания в бетон капитал.

Финансово ще има повече постъпления за общините, от където започна предложението на Радев. Ще има и повече приходи за държавата покрай изсветляването на наемите, ако то се случи. Ако не – поради данъчното облекчение ще има намаление на приходите към хазната. Това обаче е в рамките на децентрализацията, за която Радев говори. Разбира се, ще значи увеличена данъчна тежест най-вече за хората и фирмите инвестирали в множество имоти. Няма да има засегне обаче мнозинството от хората, които притежават жилището си или тези отдаващи няколко такива. Общините могат да изберат ставка, с която дори на намалят данъчната тежест за мнозинството докато в същото време увеличат приходите си от това, което наричам криптобетон.

Технически и административно нищо от тези промени не изисква свързаност на системите на общините. Такава е добра идея по принцип, но би блокирала мерки като споменатите от Радев с години. Една промяна би била справка за настоящ адрес при изчисляването на данъците от общините. Това обаче вече се прави от тях постоянно и всъщност именно те отговарят за този процес. От страна на НАП ще трябва да се предвиди ново данъчно облекчение и промяна на декларацията каква част от приходите са от наеми в страната.

Добре за семействата, зле за инвеститорите

Убеден съм, че много хора ще са срещу това предложение и като цяло срещу всяка актуализация. Чуват се вече аргументи как един и същи доход се облага многократно, как не получаваме нищо срещу тези данъци, как се крадат и как трябва да бъде оправена събираемостта, а не да се вдигат ставките за всички останали. Има различни философии как да се облага икономическата активност и собствеността. Част е подоходна, част е на потреблението, а част е на акумулираните активи. Колкото и абстрактно и наивно да звучи думата, целта винаги е била да е честно.

Събираемостта на данъци, такси и глоби, сивата икономика, неработещата прокуратура са проблеми, за които говорим всеки ден. С местните данъци не може да се решат, но това не значи, че данъчните оценки не са крайно остарели, а спекула, тъмни капитали, а в последно време и хищнически бизнес практики не създават социален проблем допринасящ към демографската криза. Предложените мерки имат потенциал да раздвижат пазара достатъчно, за да променят поведението на играчите в нея, да направят оценката за риска по-консервативна и първото жилище по-достъпно.

Надявам се, че сред псевдо-либертарианските възгласи ще се чуят достатъчно разумни аргументи против предложението ми. Не се съмнявам, че има недостатъци както всяка друга промяна или настоящото положение. Да не се прави нищо често е по-зле, а привидната ненамеса е форма на заемане на страна. В настоящия случай – тази на едрия капитал и инвеститорите.

MiTAC Computex 2026 Booth Tour: Diamond Cooling, 52U Racks, and More

Post Syndicated from Ryan Smith original https://www.servethehome.com/mitac-computex-2026-booth-tour/

While wandering the Computex 2026 showfloor, we visited MiTAC’s booth. The prolific server vendor had numerous products on display, including racks of GPU systems, storage, and even diamond cooled servers

The post MiTAC Computex 2026 Booth Tour: Diamond Cooling, 52U Racks, and More appeared first on ServeTheHome.

Изкуственият интелект и пазара на труда в ИТ сектора

Post Syndicated from Bozho original https://blog.bozho.net/blog/4595

Изкуственият интелект навлиза в много сектори, но един от тези, в които повишаването на ефективността има най-голям потенциал и технологията е най-развит вид, е ИТ секторът. Изкуственият интелект пише код сам, и макар писането на код да е само част от работата, това може да има сериозен ефект върху пазара на труда. Има и едно усещане сред хора в сектора, че тъсренето се охлажда и има съкращения извън обичайното.
Затова поисках от НАП данни за динамиката на трудовия пазар в ИТ сектора (можете да ги свалите тук) – брой трудови договори по месеци, за всяка от многото длъжности в ИТ сферата.

Резултатът е, че поне на този етап не се вижда ясна негативна тенденция – общият брой на заетите във всички длъжности за последните 3 години расте – от 84 хиляди през юни 2023 до 90 хиляди през май 2026 г., като ръст има всеки месец спрямо предходния. С изключение на последния – май спрямо април 2026 г, с 200 заети по-малко. Ще следя дали това е начало на негативен тренд или временна флуктуация.

Когато влезем на ниво отделни длъжности, картината е същата – ръст навсякъде в последните три години, и спад в последните 1-2 месеца. Спадът в последните 2 месеца на основните 2 позиции: „програмист софтуерни приложения“ и „разработчик софтуер“ е около 100 заети (от общо над 22 хиляди). Разбира се, това не са всички длъжности за програмисти – има „програмист уеб сайтове“, „експерт по проектиране и програмиране“, „програмист-аналитик“ и др. – можете да ги видите в качения по-горе файл.

Разбира се, данните не включват някои други начини на наемане в ИТ сектора – напр. консултанти чрез B2B договор, в който случай експертът е управител, и съответно не влиза в статистиката. Не влизат и граждански договори, и някои freelance отношения през платформи като upwork. Данните не включват и нетехнически персонал на ИТ компании (т.е. самият сектор е по-голям от 90 хиляди). Но дори без тези данни, трудовите договори са достатъчни, за да се отбележи тенденция. Разбира се, гражданските, freelance и консултантските договори в повечето компании се прекратяват първо (тъй като е по-лесно), а чак след това – трудовите. Така че кривата вече може и да е тръгнала надолу, просто през трудовите договори това се отчита със закъснение.

Изкуственият интелект е и възможност, и риск. Но секторът е гъвкав и силен и смятам, че ролята на държавата на този етап трябва да е единствено в облекчаването на регулаторната тежест, за да могат компаниите да са по-конкурентни на тези от други държави (дългосрочните политки по подготовка на кадрите са отделна важна тема)

Материалът Изкуственият интелект и пазара на труда в ИТ сектора е публикуван за пръв път на БЛОГодаря.

Minisforum’s Upcoming MS-03 SFF PC Brings More of a Good Thing

Post Syndicated from Ryan Smith original https://www.servethehome.com/minisforums-upcoming-ms-03-sff-pc-brings-more-of-a-good-thing/

At Computex 2026 Minisforum was showing off their upcoming MS-03 mini-PC, the successor to their popular MS-01 and aiming to bring more of a good thing with Intel’s new Panther Lake platform

The post Minisforum’s Upcoming MS-03 SFF PC Brings More of a Good Thing appeared first on ServeTheHome.

Upgrading Lambda function runtimes at scale with AWS Transform custom

Post Syndicated from Brian Krygsman original https://aws.amazon.com/blogs/compute/upgrading-lambda-function-runtimes-at-scale-with-aws-transform-custom/

When you create an AWS Lambda function, you choose the runtime that Lambda will use to run your code. This includes the base language version and supporting libraries. Lambda runtimes follow a published deprecation schedule. This means that you must periodically upgrade your function’s runtime.

Running on a deprecated runtime means potential security exposure, loss of AWS Support, and compliance challenges. For teams managing dozens of functions, this is a manageable maintenance task. For teams managing hundreds or thousands, it becomes a significant engineering effort that competes with feature work.

You can modernize your code and configurations with AWS Transform custom, an Agentic AI service purpose-built for code modernization. It fits into each stage of a runtime upgrade: surfacing risk, confirming test coverage, code transformation, and validation. The same workflow scales from a single function to an entire organization. You can use AWS-provided transformations or create your own, for compliance or compatibility. You can give it feedback to enforce your standards. You’re charged only for active agent work during server-side operations, not for user idle time or client-side processing.

This post addresses two audiences. If you work in an application team, you will learn how to use AWS Transform custom to upgrade your functions with confidence. If you’re part of a centralized platform team, you will see how to orchestrate Lambda upgrade campaigns at enterprise scale.

The upgrade challenge

Python and Node.js are two of the most widely used Lambda runtimes, and both have important recent or upcoming deprecation timelines.

Runtime Deprecation date
Node.js 20 April 30, 2026
Node.js 22 April 30, 2027
Python 3.9 December 15, 2025
Python 3.10 October 31, 2026

Sometimes a runtime upgrade requires changing your functions’ configuration in your infrastructure-as-code template or in the Lambda console. Other times, you also need to upgrade dependencies or even make code changes.

For example, in Node.js 24 AWS removed support for callback-based function handlers, in favor of the more modern async/await pattern which Lambda has supported since Node.js 8. Functions using the old pattern must be refactored. This is a behavioral change which affects every callback-based handler in the code base.

Before:

exports.handler = function(event, context, callback) {
    const result = processEvent(event);
    callback(null, result);
};

After:

exports.handler = async function(event) {
    const result = await processEvent(event);
    return result;
};

Applying this type of transformation across multiple Lambda functions used to require manual code changes. With AWS Transform custom, you can automate the upgrade to free your team’s capacity and focus for differentiated work.

AWS Transform custom for application teams

We assume you have AWS Transform custom already set up. For guidance, see the AWS Transform custom documentation. You can also use AWS Transform custom through the Kiro Power.

Prerequisites

Make sure you have the following configured locally:

Run a documentation transform

For your first transform, you can run the AWS-provided “AWS/comprehensive-codebase-analysis” transformation on a representative function or code base. This produces a prioritized view of the upgrade effort before a single line of code is changed, helping you plan your upgrade. Better-documented functions are easier to assess, maintain, and hand off. Running a documentation transform is a low-risk first step: it doesn’t change function behavior and lets you build familiarity with the AWS Transform custom workflow.

When you run the code analysis transformation, add additionalPlanContext to inform AWS Transform custom that you plan to upgrade your Lambda function runtimes. It can flag functions most likely to require code changes. For example, functions with callback-based handlers, complex async/callback code, or low test coverage.

atx custom def exec \
    --code-repository-path . \
    --transformation-name AWS/comprehensive-codebase-analysis \
    --configuration additionalPlanContext="Include analysis of Lambda function runtime upgrade to Node.js 24"

The following figure is a screenshot from running the preceding command on a sample code base.

Example AWS Transform output from documentation transform

Validation planning

Before an upgrade, you must verify correctness. This provides the confidence that you haven’t introduced new issues by upgrading. Test coverage from unit and integration tests helps with verification. A passing test suite can enforce the behavioral contract for the transformed code and help prevent problems.

Observability tools like metrics and alarms can help you validate your changes after they’ve been deployed. They can help you detect when breaks happen and are critical for finding the underlying cause.

If you’re not comfortable with your test or monitoring coverage, you can use AI agents to help. You can create a custom transformation definition in Transform custom to add or improve your tests or add alarms to your infrastructure as code (IaC) template. You can also use Kiro or other agents to generate tests from function specs, covering expected inputs, outputs, and error paths.

Transform

Now that you’ve used the documentation transformation to familiarize yourself with the tool and confirmed you have a way to validate your upgrade, you can use AWS Transform custom to upgrade your functions to a new runtime.

To apply the transform, use the AWS Transform custom CLI or Kiro Power. The example command below runs the “AWS/lambda-nodejs-runtime-upgrade” transformation against the code in the current directory. You can use additional switches to automatically trust all tools and run non-interactively.

atx custom def exec \
    --code-repository-path . \
    --transformation-name AWS/lambda-nodejs-runtime-upgrade \
    --configuration additionalPlanContext="Target Node.js 24"

Transform custom follows the instructions in the transform definition and additional plan context you specify. You can tell it to focus on a specific Lambda function in your code repository or upgrade all the functions it finds. Transform custom identifies callback-based handlers and refactors them to async/await. It handles edge cases including callbackWaitsForEmptyEventLoop and mixed async/callback patterns.

Dependency analysis flags packages with known incompatibilities with Node.js 24 and replaces them. Configuration updates change the Lambda runtime from nodejs22.x to nodejs24.x. AWS Transform custom self-debugs on build or test errors and commits changes to git incrementally on a separate transformation branch. You can also share feedback along the way, which is captured as Knowledge Items that can be applied to future transformations.

The following figures are screenshots from running the preceding command on a sample code base.

Screenshot of AWS Transform custom CLI output. It shows a sequence of tasks relating to Node.js upgrade. AWS Transform explains each task in natural language and states which tools are being used.

Screenshot of AWS Transform custom CLI output. It shows a transformation summary report at the end of the documentation transformation run. The report describes the status of each stage in the process (all ‘Yes’) and the summary summarizes the files to be upgraded.

Validate

AWS Transform custom validates defined exit criteria before marking the transformation complete.

Exit criteria can include:

  • All handlers run without errors on Node.js 24.
  • All tests pass, including generated callback behavior tests.
  • All dependencies confirmed compatible with Node.js 24.
  • Runtime configuration updated to nodejs24.x.
  • Additional requirements added with additionalPlanContext.

The newly transformed code remains in the transformation branch until you’re ready to merge and deploy. You can review logs of the transformation process captured by Transform. You can also run additional validation on the new code, including security scans or more complex test suites like performance or penetration tests. Because the changes are on a separate git branch, you can follow your standard code review, testing, and deployment processes. For extra safety, you can deploy using Lambda traffic shifting with Versions and Aliases, which you can use to roll back.

AWS Transform custom for platform teams

The preceding workflow works well for application teams managing tens or hundreds of functions across a few repositories. But what if you’re a platform team coordinating upgrades across thousands of functions in multiple AWS accounts?

In that case, you must orchestrate upgrades across teams and repositories. In some cases, you might apply the upgrades yourself. In other organizations, you focus on coordination and keep ownership of the upgrades distributed. In both approaches you need visibility to the breadth of the challenge, and tools to monitor progress. Transform custom campaigns can help.

Initiating and tracking an upgrade campaign

Platform teams create campaigns through the AWS Transform custom web application. Log in to the web application, create a workspace, and describe your goal. For example, “I want to upgrade all Lambda functions from Node.js 22 to Node.js 24.” AWS Transform custom displays matching transformation definitions and generates a campaign with a unique campaign ID and CLI command. Note: the command includes --trust-all-tools and --non-interactive switches, meaning it will run without tool prompts or user assistance.

atx custom def exec \
    --code-repository-path <path-to-repo> \
    --non-interactive \
    --trust-all-tools \
    --campaign <campaign-id> \
    --repo-name <repo-name> \
    --add-repo

You can identify candidate functions in your organization with AWS Trusted Advisor, the AWS CLI, Amazon CloudWatch, or AWS Config. To distribute upgrade responsibility, map the functions to owners using Tags or deployment metadata in AWS CloudTrail or your continuous integration and delivery (CI/CD) pipeline. Then share the campaign command with them.

Run the command against each target repository. When the command runs, it automatically registers the repository with the campaign. It then begins the upgrade based on the configuration the platform team chose when creating the campaign.

The AWS Transform web application dashboard tracks campaign progress at a glance. It shows total repositories registered in the campaign and how many are completed, in progress, or not started. It also reports success and failure rates along with transformation results and validation summaries.

The following figures show examples of dashboard visualizations.

AWS Transform console screenshot showing progress of a transformation campaign. The pie chart shows 10 of 10 repositories upgraded. The data shows 73 files and 407 lines of code modified, and the validation rate is 100%.

AWS Transform console screenshot showing a breakdown of files changed and lines of code modified for each of 10 repositories in the upgrade campaign.

AWS Transform report showing estimated saved time of 326 hours.

Scaling with cloud infrastructure

AWS also provides Open Source infrastructure that can automate parallel transform execution using AWS Batch and AWS Fargate. This solution moves processing to the cloud from individual developer machines to help you move more quickly, and includes:

  • REST API: submit single transformations or batches of thousands.
  • Serverless compute: AWS Batch with Fargate runs transformation jobs in parallel.
  • Automatic credential management: AWS Identity and Access Management (IAM) credentials auto-refresh, avoiding long-lived access keys.
  • Multi-language container: pre-built container supporting Java, Python, and Node.js with build tools included.

The default configuration supports up to 128 concurrent transformation jobs, with automatic queuing and resource management. For detailed implementation guidance, cost information, and code, see Building a scalable code modernization solution with AWS Transform custom.

Note: AWS Batch and Fargate incur additional charges beyond AWS Transform custom. See README for cost details.

Clean up

AWS Transform custom charges for active agent work during server-side operations. To avoid ongoing charges, stop any running transformations. See the AWS Transform pricing page for details.

If you deployed the scaling infrastructure, follow the cleanup instructions.

Conclusion

You can streamline Lambda runtime upgrades with AWS Transform custom, an Agentic AI service purpose-built for code modernization.

Customers with a backlog of existing functions to upgrade can use Transform custom to coordinate and streamline bulk upgrades across their organization. Transform custom also helps you move from the tail of the release cycle to the leading edge. By making runtime upgrades faster and more straightforward, you can stay ahead of the challenges of deprecation and take advantage of better performance and new features from newer runtimes.

AWS Transform custom fits into each stage of the software development lifecycle: surface risk early, confirm validation coverage, transform, validate, deploy. It can work with your existing code management, build, test, and deployment, giving you control over changes using your existing processes and tools.

Start with the documentation transform on a function today to get hands-on with AWS Transform custom. Review the currently-deprecated runtimes and make a plan to upgrade.

For more information, see AWS Transform custom documentation and Getting Started topic in the AWS Transform User Guide.

For more serverless learning resources, visit Serverless Land.


About the authors

Brian Krygsman

Brian Krygsman

Brian is a Senior Solutions Architect at Amazon Web Services. He has an application development background and technical depth in event-driven architectures and serverless development. He works with enterprise customers to effectively leverage cloud when building scalable, fault-tolerant, high-performant, cost-effective solutions.

Jonathan Tuliani

Jonathan Tuliani

Jonathan is a Principal Product Manager with AWS Lambda. Based in Dublin, Ireland, Jonathan is responsible for Lambda’s programming language runtimes. He bridges between customers and engineering teams to define strategy, prioritize investments, and design features that solve real-world customer problems.

The collective thoughts of the interwebz