Nach vier Jahren Schlaf: Neue Version des NTFS-Treibers NTFS-3G
Den Zugriff auf NTFS-Dateisysteme überlassen viele Distributionen dem Treiber NTFS-3G.
Den Zugriff auf NTFS-Dateisysteme überlassen viele Distributionen dem Treiber NTFS-3G.
Die GNU Coreutils stellen auf den meisten Distributionen nach wie vor die zentralen Kommandozeilenwerkzeuge.
Wer die Programmiersprache Rust zumindest ein wenig beherrscht und mithilfe von Bevy in die Spieleentwicklung einsteigen möchte, kann am Wochenende in Augsburg einen passenden Workshop besuchen.
Fünf fabelhafte Fakten der Woche, die es irgendwie nicht zu einer Meldung auf Linux-Magazin Online geschafft haben – und warum eigentlich nicht.
Mozilla treibt seine KI-Amibitionen weiter voran: Mit dem neuen KI-Client Thunderbolt sollen vor allem Unternehmen künstliche Intelligenz ins eigene Haus holen und einen eigenen, souveränen „AI…
Die Linux-Mint-Entwickler verlängern ziemlich planlos die Entwicklungsphasen ihrer Distribution.
Die neue stabile Ausgabe des Webservers fasst sämtliche Änderungen des Versionszweigs 1.29.x aus dem sogenannten Mainline-Branch zusammen.
Die beliebte TLS- und Krypto-Bibliothek OpenSSL liegt in einer neuen Major-Version vor, die einige Altlasten wie SSLv3 entfernt und im Gegenzug bei den Kryptografieverfahren nachlegt.
Das kommerzielle Office-Paket des Nürnberger Entwicklers SoftMaker prüft die Grammatik zusätzlich mit dem prinzipiell quelloffenen LanguageTool.
Totgesagte leben länger: Rund vier Jahre lang lag der bei Entwicklern beliebte Speicherallokator jemalloc auf Eis.
Die offizielle Distribution für den Raspberry Pi erlaubte den Aufruf von sudo auch ohne die Angabe eines Passworts.
Trotz des kleinen Versionssprungs hinter dem Punkt bringt das Content-Management-System Joomla!
Kurz notiert: In den vergangenen Tagen gab es unterschiedliche Fälle von Supply-Chain-Angriffen auf verschiedene Pakete, die unmittelbar das Ziel hatten, wie ein Trojaner insbesondere Credentials abzugreifen. Dabei hat es sowohl das Paket litellm als auch axios getroffen.
LiteLLM: Snyk hat vergangene Woche einen umfangreichen Bericht veröffentlicht, der beschreibt, wie die Versionen 1.82.7 und 1.82.8 für den LLM-Proxy-Server LiteLLM durch den Threat-Actor, der als TeamPCP bezeichnet wird, manipuliert werden konnten. Besonders hierbei war, dass die Payload als .pth-Datei im Rahmen eines Python-Startup-Hooks ausgeliefert wurde und entsprechend verschleiert war.
axios: Heute hat es dann den im JavaScript-Ökosystem bekannten HTTP-Client axios getroffen. Wie StepSecurity und Aikido schreiben, wurde hier der Maintainer-Account übernommen, sodass zwei bösartige Versionen veröffentlicht werden konnten: 1.14.1 und 0.30.4. Mit der Größe von axios handelt es sich hier offenbar um einen der schwerwiegensten npm-basierten Supply-Chain-Angriffe bisher.
In beiden Fällen haben sowohl PyPI als auch npm die betroffenen Versionen wenige Stunden nach Veröffentlichung geflaggt. Trotzdem dürfte es einige Entwickler erwischt haben, die ihr gesamtes System nun als kompromittiert betrachten sollten. Da speziell im Fall von axios die Malware aktiv ihre Spuren entfernte, ist die Eingrenzung der kompromittierten Komponenten auf einem betroffenen System stark erschwert.
In einer der nächsten Risikozone-Episoden werden wir unseren Fokus wieder verstärkt auf die Supply Chain richten. Wir können allerdings jetzt schon feststellen, dass die Angriffe zunehmen, Entwickler das Ziel sind und Schutzmöglichkeiten wie Version Pinning notwendig, aber langfristig sicherlich nicht hinreichend sind.
Die Open Source Business Alliance (OSBA) zeichnet auch in diesem Jahr wieder herausragende Open-Source-Projekte in Behörden und öffentlichen Institutionen aus.
Bei drgn handelt es sich um einen noch sehr jungen in Python programmierbaren Debugger.
Das Tool ollama vereinfacht die Inbetriebnahme von KI-Modellen, die unter einer Open-Source-Lizenz stehen.
Der Raspberry Pi 4 liegt in einer leicht überarbeiteten Fassung vor, die auf der Unterseite einen zweiten RAM-Chip besitzt.
Die unaufhaltsam steigenden Speicherpreise erreichen erneut den eigentlich günstigen Raspberry Pi. Dessen Hersteller sieht sich gezwungen, die Preise noch einmal anzuziehen.
Kurz notiert: Die Data-Science-Bibliothek pandas wurde in Version 3.0 veröffentlicht. Auch wenn ein drittes Major-Release erst einmal nach tiefgreifenden Änderungen klingt, ist es tatsächlich nur die SemVer-Versioierung, die für den Major-Release verantwortlich ist, da pandas 3.0 auch ältere Features entfernt, die zuvor deprecated wurden. An sich bleiben natürlich die Grundkonzepte gleich.
Das pandas-Team hebt drei Neuerungen hervor:
Wird ein DataFrame erzeugt, ermittelt pandas in vielen Fällen den Datentyp für die Spalte. Wenn z. B. nur Ganzzahlen enthalten sind, ist der Datentyp int. Bei Strings war dies bisher nicht so, wie wurden als der generische Datentyp object aufgelöst und mussten manuell typisiert werden.
Das wird mit pandas 3.0 gelöst, denn String-Spalten erhalten nun automatisch den Typ str. Für diese Umstellung wird ein Migration-Guide bereitgestellt.
Unter Python gibt es eigentlich keine Pointer, womit man sich eigentlich einige Probleme erspart. Trotzdem kann es Referenzen geben, die wie Pointer wirken. Ein Beispiel aus dem Guide:
df = pd.DataFrame({"foo": [1, 2, 3], "bar": [4, 5, 6]})
subset = df["foo"]
subset.iloc[0] = 100
Aus der 1 in "foo" wurde kurzerhand 100, auch wenn nicht der DataFrame direkt geändert werden musste. Das Verhalten wird schwer vorhersehbar, wenn mit vielen DataFrames auf einmal gearbeitet wird.
Wer eine tatsächliche Kopie anlegen will, muss bisher z. B. subset = df["foo"].copy() aufrufen. Dann wird der DataFrame kopiert und Änderungen an subset landen nicht mehr auf einmal im ursprünglichen DataFrame.
Dieses Verhalten ist nun das Standardverhalten, ein expliziter .copy()-Aufruf wird nicht mehr benötigt. Das erfordert zwar einiges Umdenken hinsichtlich der Änderung von Werten, erspart aber auch einige SettingWithCopyWarnings, die schon in früheren Releases bei bestimmten Spaltenoperationen auftraten. Copy-on-Write bedeutet dabei in der Umsetzung, dass der DataFrame erst einmal weiterhin Referenzen nutzt, aber bei der ersten Veränderung einer Referenz den DataFrame kopiert und nur in der Kopie die Veränderung hinterlegt. Alles zu Copy-on-Write ist hier zu finden.
Pandas steht zunehmend im Wettbewerb zu Polars. Da ist es nicht verwunderlich, dass einige bewährte Features auch bei Pandas Einzug halten.
Neu ist ab pandas 3.0 die Funktion pd.col(). Während bisher bei df.assign()-Operationen auf Lambda-Ausdrücke zurückgegriffen werden musste, geht dies nun einfacher mit der col()-Funktion:
df.assign(c=lambda df: df['a'] + df['b']) # vor 3.0
df.assign(c=pd.col('a') + pd.col('b')) # 3.0
Hier eine Auswahl der Breaking Changes:
concat und homogenen DatetimeIndex-Objekten wird jetzt sort=False berücksichtigt.value_count(sort=False) behält jetzt die Eingabereihenfolge, nicht mehr Sortierung nach Labels.offsets.Day ist jetzt immer ein Kalendertag, kein fixer 24h-Tick. Dabei werden Zeitumstellungen explizit berücksichtigt.NaN vs. NA: In nullable Dtypes werden NaN und NA standardmäßig nun gleich behandelt, Arithmetik erzeugt jetzt NApytz ist von nun an optional.Darüber hinaus gibt es diverse kleine Änderungen, z. B. werden einige Rückgabewerte bei inplace=True verändert.
Das gesamte Changelog ist hier abrufbar. Es wird aufgrund der Deprecations empfohlen, erst auf Pandas 2.3 upgraden, den Code auf Warnings zu überprüfen und erst dann mit dem Upgrade auf Version 3.0 fortzufahren.
Fünf fabelhafte Fakten der Woche, die es irgendwie nicht zu einer Meldung auf Linux-Magazin Online geschafft haben – und warum eigentlich nicht.
Bereits weit vor der Jahrtausendwende begannen die Arbeiten an GNU Gettext, das die Übersetzungen von Programmen erleichtert.
Wer über das Netzwerk auf einen anderen Rechner zugreifen muss, findet in TigerVNC und FreeRDP geeignete Helfer.
Das grafische Partitionierungsprogramm und das zugehörige Live-System liegen in neuen Versionen vor, die jedoch im Wesentlichen nur Komponenten aktualisieren und Fehler beheben.
Ein Betriebssystem, das sich nicht kompromittieren oder manipulieren lässt – dieses Ziel strebt die neue Firma Amutable an. Ein Schlüssel dazu soll „verifizierbare Integrität“ sein.
Die Server-Distribution DietPi fordert in der neuen Major-Version mindestens Debian 12 „Bookworm“ als Unterbau.