• Rust 1.94 gör språket mer uttrycksfullt och kraftfullt

    Programmeringsspråket Rust fortsätter att utvecklas i snabb takt. Den nya versionen Rust 1.94 introducerar flera förbättringar som gör språket både mer ergonomiskt och mer kraftfullt. Bland nyheterna finns en ny iterator för slice-data, förbättrad konfigurationshantering i Cargo, stöd för den senaste versionen av TOML-formatet och flera stabiliserade API:er i standardbiblioteket.

    Tillsammans innebär förändringarna att utvecklare kan skriva mer tydlig kod, organisera projekt bättre och dra nytta av nya funktioner i både språket och verktygskedjan.

    Ny iterator för slices: array_windows

    En av de mest uppmärksammade nyheterna är metoden array_windows för slices. Den fungerar på liknande sätt som den befintliga metoden windows, men med en viktig skillnad: den returnerar arrayer med fast storlek i stället för dynamiska slices.

    Detta gör att kompilatorn kan veta storleken på varje fönster redan vid kompilering, vilket förenklar kod och kan ge bättre optimeringar.

    En praktisk användning är när man vill analysera mönster i en dataström. Ett klassiskt exempel är att leta efter så kallade ABBA-mönster, där två olika tecken följs av samma två tecken i omvänd ordning, exempelvis abba eller xyyx.

    Med array_windows kan en sådan kontroll skrivas mycket kompakt:

    Här kan kompilatorn automatiskt förstå att varje fönster ska bestå av fyra element eftersom de destruktureras till fyra variabler.

    Cargo får bättre stöd för modulär konfiguration

    Rusts byggverktyg Cargo får i version 1.94 en ny funktion: möjligheten att inkludera konfigurationsfiler i andra konfigurationsfiler.

    Detta gör att större projekt kan dela upp sin konfiguration i flera mindre filer, vilket gör dem enklare att underhålla och återanvända mellan olika projekt eller utvecklingsmiljöer.

    Ett exempel är:

    Det går även att ange mer avancerade alternativ via så kallade inline-tabeller, exempelvis om en konfigurationsfil är valfri:

    Detta gör det möjligt att skapa konfigurationer som fungerar både lokalt och i olika utvecklingsmiljöer utan att alla filer behöver finnas överallt.

    Stöd för TOML 1.1

    Cargo kan nu också läsa TOML 1.1, den senaste versionen av konfigurationsformatet som används i Rust-projekt.

    Bland förbättringarna i TOML 1.1 finns:

    • inline-tabeller som kan skrivas över flera rader
    • stöd för fler escape-sekvenser i strängar
    • möjlighet att utelämna sekunder i tidsangivelser
    • trailing commas i vissa strukturer

    Det innebär exempelvis att beroenden i Cargo.toml kan skrivas mer läsbart:

    Om man använder dessa nya funktioner höjs dock projektets MSRV (Minimum Supported Rust Version), eftersom äldre Cargo-versioner inte kan tolka den nya syntaxen. Samtidigt hanterar Cargo detta automatiskt vid publicering genom att skriva om manifestfiler så att de förblir kompatibla med äldre verktyg.

    Nya matematiska konstanter i standardbiblioteket

    Rusts standardbibliotek har också utökats med några klassiska matematiska konstanter. Bland de nya konstanterna finns:

    • Euler–Mascheroni-konstanten (EULER_GAMMA)
    • det gyllene snittet (GOLDEN_RATIO)

    De finns tillgängliga för både f32 och f64 och kan användas direkt i numeriska beräkningar utan att utvecklare behöver definiera dem själva.

    Fler stabiliserade API:er

    Som i varje Rust-release har även flera tidigare experimentella funktioner nu blivit stabila API:er. Bland dessa finns bland annat:

    • array_windows och element_offset för slices
    • nya metoder för LazyCell och LazyLock
    • nya metoder i iteratorn Peekable
    • hårdvaruintrinsics för AVX-512 FP16 på x86 och NEON FP16 på AArch64

    Dessutom kan vissa funktioner, som mul_add för flyttal, nu användas i konstanta uttryck.

    Fortsatt snabb utveckling av Rust

    Rust 1.94 visar tydligt hur språket fortsätter att utvecklas i både små och stora steg. Förbättringar som array_windows gör koden mer uttrycksfull, medan förändringar i Cargo och TOML gör projekthanteringen mer flexibel.

    Utvecklare som redan använder Rust kan uppdatera till den nya versionen med kommandot:

    Den nya versionen är resultatet av arbete från ett stort antal bidragsgivare i Rust-communityt – ett exempel på hur ett modernt open source-projekt fortsätter att förbättras genom globalt samarbete.

    C vs Rust

    C

    C är ett klassiskt programspråk som har använts i årtionden för operativsystem, drivrutiner, inbyggda system och annan prestandakritisk programvara.

    Språket ger programmeraren mycket direkt kontroll över minne och hårdvara, vilket gör det snabbt och flexibelt.

    Nackdelen är att C saknar inbyggt skydd mot många vanliga minnesfel, vilket kan leda till buggar, krascher och säkerhetsproblem.

    Rust

    Rust är ett modernare systemspråk som också fokuserar på hög prestanda, men samtidigt vill minska risken för minnesfel och osäker kod.

    Genom sitt ägarskapssystem och sina kompilatorkontroller kan Rust förhindra många problem redan innan programmet körs.

    Det gör språket särskilt intressant för säkerhetskritiska system, servrar, verktyg och ny systemprogrammering.

    https://blog.rust-lang.org/2026/03/05/Rust-1.94.0

    Teknisk fakta: Rust 1.94

    Version: Rust 1.94.0

    Typ av uppdatering: Stabil utgåva

    Viktig nyhet: array_windows för slices

    Ny Cargo-funktion: stöd för include i konfigurationsfiler

    Manifestformat: Cargo kan nu tolka TOML 1.1

    Nya matematiska konstanter: EULER_GAMMA och GOLDEN_RATIO

    Fler förbättringar: stabiliserade API:er i standardbiblioteket och fler funktioner tillgängliga i const-kontext

    Uppdateringskommando:

    rustup update stable
  • Forgejo 14.0 – Egen hostad lösning för kodsamarbete

    Forgejo är en fri och community-driven plattform för kodsamarbete som används för att lagra, granska och utveckla programvara tillsammans. Den bygger på Git, ett distribuerat versionshanteringssystem som gör det möjligt för utvecklare att spåra förändringar i källkod, arbeta parallellt och slå samman arbete på ett kontrollerat sätt. Med Forgejo får organisationer och individer ett självhämtat alternativ till kommersiella kodplattformar, där de själva har full kontroll över data, arbetsflöden och säkerhet, samtidigt som de drar nytta av moderna funktioner för ärendehantering, kodgranskning och automatisering.

    Forgejo 14.0 släpptes den 15 januari 2026 och är en tydlig milstolpe för den community-utvecklade, självhämtade Git-plattformen. Versionen fokuserar på att göra det dagliga arbetet smidigare för användare, samtidigt som den stärker tillförlitlighet och säkerhet för administratörer och driftansvariga. Resultatet är en mer robust och långsiktigt hållbar kodplattform, utan att ge avkall på projektets öppna och självständiga filosofi.

    Förbättrad sökning i ärenden och pull requests

    En av de mest märkbara förbättringarna i Forgejo 14.0 är den nya sökfunktionen för ärenden och pull requests. Direkt i sökfältet kan användaren nu använda enkla inline-filter för att begränsa resultat baserat på exempelvis status, vem som skapat ärendet eller hur resultaten ska sorteras. Det gör att man snabbare kan hitta rätt bland stora mängder diskussioner och kodgranskningar, utan att behöva växla mellan olika menyer eller avancerade sökdialoger. En inbyggd hjälptext i gränssnittet förklarar hur filtren används, vilket sänker tröskeln även för mindre erfarna användare.

    Ny webbredigerare för snabbare och mer tillgänglig redigering

    Den webbaserade filredigeraren har fått en genomgripande förändring. Den tidigare lösningen, baserad på Microsofts Monaco-editor, ersätts nu av CodeMirror. Bakgrunden till bytet är att Monaco visade sig vara onödigt tung för Forgejos vanligaste användningsfall, som ofta handlar om snabba ändringar i enstaka filer. Med CodeMirror förbättras laddningstider och prestanda märkbart, samtidigt som tillgänglighet och mobilanvändning fungerar bättre. För många användare innebär detta att webbredigering nu känns mer direkt och pålitlig, snarare än som ett undantag man helst undviker.

    Förfinat gränssnitt och fortsatt arbete utan JavaScript

    Forgejo 14.0 innehåller flera mindre men viktiga förbättringar i användargränssnittet. Förhandsvisning av CITATION-filer har blivit mer flexibel, med möjlighet att växla mellan CFF- och BibTeX-format direkt i vyn. Samtidigt fortsätter arbetet med att göra Forgejo fullt användbart även utan JavaScript. I den nya versionen går det att posta kommentarer och komma åt fler menyer även när JavaScript är avstängt. Detta stärker både tillgänglighet och robusthet, och gör Forgejo mer motståndskraftigt mot framtida förändringar i webbläsare och teknik.

    Kraftigt förbättrade Forgejo Actions

    Automatiseringssystemet Forgejo Actions har utvecklats rejält i version 14.0. Hanteringen av förtroende för workflows som kommer från pull requests har blivit tydligare och mer detaljerad. Projektägare kan nu enkelt välja om ett workflow ska godkännas en gång, alltid tillåtas eller helt nekas, och tidigare beslut kan återkallas. Det ger bättre kontroll över säkerheten i projekt där externa bidrag är vanliga.

    Samtidigt har synligheten i Actions-gränssnittet förbättrats. När ett jobb väntar på en specifik runner visas detta tydligt som ett väntande tillstånd, vilket gör det enklare att förstå varför en pipeline inte startar. Stöd för concurrency-grupper, dynamiska matriser och runs-on-definitioner som bestäms av tidigare jobb gör dessutom att mer avancerade och intelligenta workflows kan byggas, anpassade efter projektets faktiska behov.

    Förbättrad databasdrift och ökad stabilitet

    På driftsidan åtgärdar Forgejo 14.0 flera långvariga problem. Ett känt fel som kunde leda till att commit_status-tabellen fylldes med miljontals redundanta poster har nu rättats till. Ett nytt kommandoradsverktyg gör det möjligt att rensa bort dessa poster efter uppgradering, vilket i praktiken kan minska datamängden med över 97 procent. Databashanteringen har också förbättrats genom att deadlocks i stort sett eliminerats och genom att foreign keys införts för att förhindra inkonsekvent data vid uppgraderingar.

    Skärpt säkerhet och moderniserat CSRF-skydd

    Säkerheten har fått särskild uppmärksamhet i Forgejo 14.0. När Forgejo är konfigurerat att själv hantera SSH-åtkomst kontrolleras nu authorized_keys-filen redan vid uppstart. Om oväntade nycklar upptäcks vägrar tjänsten starta, vilket tvingar administratören att undersöka och åtgärda problemet innan systemet tas i drift. CSRF-skyddet har samtidigt skrivits om till en stateless-lösning baserad på webbläsarens fetch-metadata. Det innebär att användare kan ha flikar öppna under lång tid utan att riskera att formulär slutar fungera när de väl skickas.

    Sammanfattning och framtidsblick

    Forgejo 14.0 är en genomtänkt och mogen uppdatering som kombinerar förbättrad användarupplevelse med tydliga vinster för säkerhet och driftsäkerhet. För både utvecklare och administratörer innebär versionen ett mer pålitligt verktyg i vardagen. Nästa stora steg blir Forgejo 15.0 LTS, planerad till april, som väntas ge långtidssupport och ytterligare stabilitet för organisationer som satsar på Forgejo i produktion.

    https://forgejo.org/download

    Forgejo 14.0 – fakta
    Vad är Forgejo?
    Självhostad kodplattform (Git forge) för repo, ärenden, PR och CI.
    Vad är Git?
    Distribuerad versionshantering som spårar ändringar och möjliggör samarbete.
    Release
    15 januari 2026
    Största UI-nyheterna
    Inline-filter i Issue/PR-sök + webbredigerare byter från Monaco till CodeMirror.
    Bättre utan JavaScript
    Fler menyer och kommentarer fungerar även med JS avstängt.
    Actions
    Tydligare trust-kontroller, “waiting”-status, concurrency-grupper och dynamiska matriser.
    Drift & databas
    Fix för commit_status-bloat + CLI-rensning, färre deadlocks och bättre dataintegritet.
    Säkerhet
    Validerar authorized_keys vid start + stateless CSRF-skydd (fungerar bättre med långöppna flikar).



  • QNX tar steget mot skrivbordet – ett realtids-OS blir självbärande för utvecklare

    QNX tar ett ovanligt kliv från det dolda till det synliga. Med lanseringen av en självhostad Developer Desktop för QNX 8.0 kan utvecklare för första gången arbeta i en fullständig skrivbordsmiljö och bygga sina program direkt på operativsystemet. Satsningen markerar ett tydligt skifte för QNX – från strikt inbyggt realtids-OS till en mer öppen och utvecklarvänlig plattform.

    Det realtidsoperativsystem som i decennier har dolt sig bakom bilars instrumentpaneler, industristyrsystem och medicinteknik tar nu ett ovanligt kliv ut i rampljuset. QNX har lanserat sin första Self-Hosted Developer Desktop för QNX 8.0 – en fullfjädrad skrivbordsmiljö där utvecklare kan bygga, testa och köra program direkt på QNX.
    Det kan låta som en självklarhet för Linux- och BSD-användare, men för QNX-världen är detta ett stort skifte. Historiskt har QNX-utveckling nästan alltid inneburit korskompilering: man skriver och bygger sin kod på Linux eller Windows för att sedan överföra den till ett QNX-system. Med den nya Developer Desktop förändras detta i grunden.

    Ett skrivbord på ett realtids-OS

    Kärnan i nyheten är ett komplett skrivbord baserat på XFCE som körs ovanpå Wayland, direkt på QNX 8.0. Resultatet är ett lättviktigt men välbekant grafiskt gränssnitt som påminner mer om en traditionell Linux-desktop än om ett klassiskt inbyggt system.
    För nya utvecklare sänker detta tröskeln rejält. För erfarna QNX-utvecklare innebär det mindre friktion i vardagen, och för alla som portar Linux-program till QNX blir skillnaden tydlig.

    Inget mer ”bygg här, testa där”

    Den kanske viktigaste nyheten är självhostad kompilering. I stället för att bygga binärer på ett annat operativsystem kan utvecklaren nu skriva kod, kompilera den, köra och felsöka samt testa grafik, bibliotek och beroenden helt och hållet inne i QNX.
    Miljön levereras med ett brett urval verktyg som många utvecklare redan känner igen: GCC och Clang, Python, Make och CMake, Git samt editorer som Geany, Emacs, Neovim och Vim. Därutöver finns terminal, webbläsare och filhanteraren Thunar, vilket ger ett komplett och självbärande arbetsflöde utan att lämna operativsystemet.

    Öppen källkod möter industrirealtid

    En stor del av styrkan i den nya Desktop-miljön kommer från QNX satsning på öppna portar. Miljön är förladdad med många av de paket som finns på QNX Open-source Dashboard, som i dagsläget innehåller över 1 400 portar, varav mer än 600 är unika projekt.
    Detta gör det betydligt enklare att porta Linux-bibliotek, grafiska verktyg baserade på GTK, OpenGL ES-applikationer och Python-program. QNX rör sig här tydligt närmare det öppna ekosystem som länge varit Linux-världens styrka, utan att kompromissa med realtidsegenskaperna.

    Virtuell maskin i dag – mer i morgon

    Den första versionen levereras som en QEMU-image och stöds officiellt på Ubuntu 22.04 och 24.04 LTS. Med en gratis QNX-licens kan utvecklare ladda ner bilden via QNX Software Center och komma igång redan i dag.
    Detta är dock bara början. Enligt QNX egen färdplan väntar QEMU-bilder för Windows och macOS, nativa x86-installationer, en dedikerad Raspberry Pi-version, förbättrad dokumentation, stöd för CI-flöden samt fler exempelprojekt och högre stabilitet.

    Varför detta är större än det låter

    QNX har länge varit känt som ett extremt pålitligt men relativt slutet system, perfekt för bilar, tåg och industriella styrsystem men mindre lockande för nya utvecklare. Med Developer Desktop tar QNX ett tydligt steg mot att bli mer tillgängligt, mer experimentvänligt och mer relevant även utanför traditionell embedded-utveckling.
    Att kunna köra ett modernt skrivbord, en webbläsare och en komplett utvecklingsmiljö på ett realtids-OS är inte bara praktiskt utan också ett tydligt ställningstagande. QNX vill inte längre bara vara osynlig infrastruktur, utan en plattform där utvecklare faktiskt vill arbeta.

    https://devblog.qnx.com/qnx-self-hosted-developer-desktop-initial-release

    FAKTARUTA: QNX Self-Hosted Developer Desktop (QNX 8.0)
    Vad är det?
    En självhostad utvecklingsmiljö som körs direkt på QNX 8.0, så att du kan bygga och testa mjukvara utan korskompilering.
    Skrivbordsmiljö
    XFCE på Wayland.
    Utvecklingsverktyg
    GCC, Clang, Python, Make, CMake, Git (m.fl.).
    Editorer/IDEs
    Geany, Emacs, Neovim, Vim.
    Ingår också
    Webbläsare, terminal, Thunar filhanterare samt exempelprojekt i C, C++, Python, GTK och OpenGL ES.
    Distribution (första släppet)
    QEMU-image.
    Stödda värdar
    Ubuntu 22.04 LTS och 24.04 LTS.
    På väg enligt roadmap
    QEMU för Windows/macOS, nativa x86-images och en Raspberry Pi-build.

Etikett: mjukvaruutveckling

  • Rust 1.94 gör språket mer uttrycksfullt och kraftfullt

    Programmeringsspråket Rust fortsätter att utvecklas i snabb takt. Den nya versionen Rust 1.94 introducerar flera förbättringar som gör språket både mer ergonomiskt och mer kraftfullt. Bland nyheterna finns en ny iterator för slice-data, förbättrad konfigurationshantering i Cargo, stöd för den senaste versionen av TOML-formatet och flera stabiliserade API:er i standardbiblioteket. Tillsammans innebär förändringarna att utvecklare…

  • Forgejo 14.0 – Egen hostad lösning för kodsamarbete

    Forgejo är en fri och community-driven plattform för kodsamarbete som används för att lagra, granska och utveckla programvara tillsammans. Den bygger på Git, ett distribuerat versionshanteringssystem som gör det möjligt för utvecklare att spåra förändringar i källkod, arbeta parallellt och slå samman arbete på ett kontrollerat sätt. Med Forgejo får organisationer och individer ett självhämtat…

  • QNX tar steget mot skrivbordet – ett realtids-OS blir självbärande för utvecklare

    QNX tar ett ovanligt kliv från det dolda till det synliga. Med lanseringen av en självhostad Developer Desktop för QNX 8.0 kan utvecklare för första gången arbeta i en fullständig skrivbordsmiljö och bygga sina program direkt på operativsystemet. Satsningen markerar ett tydligt skifte för QNX – från strikt inbyggt realtids-OS till en mer öppen och…