Trawling

개발·오픈소스 · 최신기사

개발 도구와 언어, 웹 기술과 오픈소스 프로젝트의 변화를 다룹니다.

OmniDiff, Git 변경을 코드 구문과 파일 내용 단위로 비교합니다

자료 요약발행

OmniDiff는 Git의 파일 변경사항을 코드에는 구문 구조로, 이미지·압축파일·폰트 등에는 내부 내용 단위로 비교해 보여줍니다. 대화형 Git difftool에서는 터미널 화면을 열고, `git diff`와 `git log -p`에서는 pager에 맞춘 텍스트 결과를 출력합니다. 지원하지 않는 코드 문법은 줄 단위로 비교하고 다른 바이너리는 파일이 다르다는 안내만 표시합니다.

Call Graph Analyzer로 Rust 패닉 경로 찾기

발행

Call Graph Analyzer(CGA)는 monomorphized MIR를 순회해 바이너리에서 도달 가능한 함수와 패닉 경로를 찾는 Rust 도구입니다. 의존성까지 분석하고 경로를 진단하지만, nightly 컴파일러 의존성과 최적화 전 분석에 따른 오탐 등 제약도 있습니다.

Rust 생태계를 위한 빠르고 안전한 tar 파서

발행

uv 0.13은 기존 구현보다 약 2배 빠르면서 파서 간 해석 차이를 줄이는 tar-codec을 소스 배포판 처리에 기본 적용합니다. 글은 tar 형식별 상태와 확장 규칙, 안전한 추출 구조를 설명하고 호환성과 엄격한 검증 사이의 설계 선택을 다룹니다.

Rust 가변 제네릭 설문 결과

발행

Rust 팀이 가변 제네릭의 활용 사례를 묻는 설문에 3,300건 넘는 응답을 받아 결과를 공개했습니다. 응답자들은 튜플 길이별 매크로 구현의 한계와 복잡성을 주로 들었지만, 기능 우선순위와 문법에는 신중한 의견도 있었습니다.

Qt Bridge 0.4, 기술 프리뷰 공개

발행

Qt가 Rust와 C# 백엔드를 Qt Quick·QML UI에 연결하는 Qt Bridges를 기술 프리뷰로 공개했습니다. 핵심 기능은 프로토타입에 쓸 수 있지만 안정 버전 전까지 API와 지원 플랫폼, 요구 사항은 바뀔 수 있습니다.

CVSS 10.0 치명적 취약점(RCE): Rust zip 크레이트를 9.0.5로 업데이트하세요

발행

Rust용 zip 크레이트에서 ZIP 파일의 중앙 디렉터리와 로컬 파일 헤더에 적힌 파일명이 다를 때 검사와 추출 결과가 달라지는 취약점이 보고됐습니다. 조작된 아카이브가 추출 경로의 파일을 덮어쓸 수 있다는 설명이지만, Reddit 댓글에서는 RCE와 CVSS 10.0 평가가 실제 공격 조건을 과장한다는 반론이 나왔습니다.

Rust 기여자에게 자금을 지원하는 방법

발행

Rust 프로젝트는 유지보수, 특정 기능 개발, 개별 기여자 후원이라는 세 경로로 자금 지원을 제안합니다. 유지보수 기금과 Rust Project Goals 후원 외에도 회사가 근무 시간에 오픈소스 작업을 인정하고 지원하는 방식이 댓글에서 보완책으로 제시됩니다.

Wild 0.11.0 공개: Wasm 기본 지원과 링커 스크립트 확장

발행

Rust로 작성한 링커 Wild 0.11.0이 Wasm 기능을 기본 활성화하고 GNU 링커 스크립트와 Mach-O 지원을 넓혔습니다. Linux 커널 모듈 링크가 가능해졌으며, 기본 스레드 수를 32개로 제한해 Linux 파일시스템의 inode 뮤텍스 경합을 줄입니다.

systemd에 Rust 프로그램 빌드·통합 지원 추가

발행

systemd가 Rust로 작성한 프로그램을 기존 C 프로그램과 함께 빌드하고 실행하는 기반을 추가합니다. Rust 코드는 no_std와 C 링크를 사용하며, Meson 설정과 bindgen 생성 바인딩, 테스트를 통해 기존 systemd 프로그램과의 호환성을 확인합니다.

10월의 Gitoxide: 객체 데이터베이스 33% 가속과 안정 API 준비

발행

gitoxide 개발자는 Rust 기반 DEFLATE 압축 해제기 Sirocco를 도입해 객체 데이터베이스 작업 속도를 높였다고 보고합니다. 워크트리 생성·삭제와 안정 API 준비도 진행했으며, diff 호환성 개선과 Cargo 체크아웃 가속 계획을 공유합니다.

Rust의 미래 기능

발행

Josh Triplett가 Kangrejos 2026에서 Rust의 개발 중인 기능을 소개했습니다. 구조체 일부만 빌리는 view types, 값의 범위를 타입에 담는 pattern types, 새 borrow checker Polonius와 컴파일 타임 함수 등이 포함됩니다. 여러 기능은 아직 설계·실험 단계입니다.

Rustup 1.29.2 출시, 신뢰할 수 있는 네트워크에서 업데이트하세요

발행

Rustup 1.29.2는 eMudhra 중간 인증서 문제(CVE-2026-111943)에 대응해 rustls-webpki와 webpki-root-certs 의존성을 업데이트합니다. 기존 사용자는 rustup self update 또는 rustup update로 갱신할 수 있으며, Reddit에서는 안전한 네트워크에서 업데이트하라는 권고와 패키지 서명 검증 방식을 둘러싼 논의가 이어졌습니다.

Google의 Rust 스타일 가이드

발행

Google의 Rust 스타일 가이드는 포맷뿐 아니라 API 설계와 코드 구조까지 다룹니다. 대규모 코드 변경과 장기적인 유지보수를 고려해 일관된 관례를 제시하며, 라이브러리 코드와 애플리케이션 코드에 서로 다른 수준의 권고를 적용합니다.

tsrs: TypeScript 컴파일러의 Rust 포트

발행

Cloudflare와 VoidZero가 TypeScript 팀과 협력해 Rust로 TypeScript 컴파일러를 포팅한 실험적 프로젝트 tsrs를 공개했습니다. 같은 수의 타입 검사 작업자를 사용한 초기 벤치마크에서 TypeScript 7.0보다 최대 8배 빠르고 메모리를 약 70% 덜 썼으며, Cloudflare는 WebAssembly와 Workers 환경에서 개발 도구를 실행하는 활용도 함께 제시합니다.

Rust 컴파일러에 기대되는 2026년, 그리고 필자에게도

발행

Rust 컴파일러에서는 차세대 trait solver와 Polonius, 병렬 프런트엔드, LLVM 성능 개선 등 오래 진행한 작업이 함께 진척되고 있습니다. 필자는 이를 새 기능 하나의 성과보다 장기적인 내부 정비와 성능 투자가 결실을 맺는 시기로 설명합니다.

Rust 1.99.1 출시

발행

Rust 팀이 1.99.1을 배포했습니다. 이번 업데이트는 일부 대상에서 발생한 wcslen 링크 오류, x86_64에서 FFI bool 반환값이 잘못 전달되는 컴파일 오류, macOS에서 rust-lld가 libLLVM를 찾지 못하는 문제를 수정합니다.

iroh 1.0에 이르기까지

발행

iroh 팀이 4년간의 개발과 방향 전환을 거쳐 1.0을 출시했습니다. IPFS 호환 구현에서 출발해 QUIC, BLAKE3 검증 스트리밍, 홀펀칭을 갖춘 경량 P2P 연결 라이브러리로 범위를 좁힌 결정과 그 배경을 설명합니다.