Sign in

Andrew Gallant

@burntsushi.net
2.5K followers 40 following 387 posts

I love to code. burntsushi.net

PostsRepliesMedia
Andrew Gallant @burntsushi.net · 29/07/2026
Does anyone know why ripgrep is soooooo much slower on macOS than Linux these days? On the left is my AMD Ryzen 9 7940HS laptop and on the right is my M2 mac mini. Both searching the same revision of Chromium and both are hot in the OS page cache.
2173
Andrew Gallant @burntsushi.net · 15/07/2026
ripgrep 15.2.0 is out! It has some gitignore bug fixes and a nice speed-up for large directory trees. github.com/BurntSushi/r... Pictured is on my checkout of github.com/NightMachina...
1534
Andrew Gallant @burntsushi.net · 09/07/2026
regex 1.13 now has a `regex!` macro (NOT compile time regex) that encapsulates the common pattern of using something like `std::sync::LazyLock` to ensure it only compiles ~once. github.com/rust-lang/re...
1685
Andrew Gallant @burntsushi.net · 03/07/2026
I'd like to add a simple macro to `regex` for building a regex once and then using it via `LazyLock` (or similar). But I'm having trouble with the name. Should it be `regex::regex!(..)` or `regex::re!(..)` or something else? See pictures for before and after.
390
Andrew Gallant @burntsushi.net · 11/06/2026
Jiff has been added to blessed.rs!
1450
Andrew Gallant @burntsushi.net · 08/06/2026
Plausibly low hanging fruit for improving substring search performance in Rust's standard library! github.com/rust-lang/ru...
0140
Andrew Gallant @burntsushi.net · 04/06/2026
Improving Miri is so critical. Thank you Tiffany!
0250
Andrew Gallant @burntsushi.net · 03/06/2026
Thanks for all the kinds words from old fellow Lobsters users. :-)
0140
Andrew Gallant @burntsushi.net · 03/06/2026
I was recently diagnosed with a rare autoimmune disorder called anti-NMDA receptor encephalitis. It's a "disease of chaos" that completely upturned my life for a couple months. I wrote a blog about it that goes into more detail and discusses prognosis. :-) burntsushi.net/encephalitis/
burntsushi.net
Encephalitis - Andrew Gallant's Blog
1312443
Andrew Gallant @burntsushi.net · 03/06/2026
My new NAS build. My previous NAS was in continuous operation for about 10 years. It served me well, but it was time for an upgrade. pcpartpicker.com/user/burntsu...
1150
Andrew Gallant @burntsushi.net · 02/06/2026
wow
1210
Andrew Gallant @burntsushi.net · 02/06/2026
Shoutout to the `lexopt` crate as a great example of a Rust library that is effectively done. It's only had 6 releases in its 5 years of life. It's basically perfect if your needs match its level of abstraction. github.com/blyxxyz/lexopt
github.com
GitHub - blyxxyz/lexopt: Minimalist pedantic command line parser
Minimalist pedantic command line parser. Contribute to blyxxyz/lexopt development by creating an account on GitHub.
1191
Andrew Gallant @burntsushi.net · 02/06/2026
I love to see it! I'm curious if they will write the regex engine in Rust too. :-) github.com/uutils/grep
github.com
GitHub - uutils/grep: A Rust implementation of GNU Grep
A Rust implementation of GNU Grep. Contribute to uutils/grep development by creating an account on GitHub.
0140
Andrew Gallant @burntsushi.net · 31/05/2026
My son Murphy getting a successful POST on his first attempt. He doesn't know how good he has it. youtu.be/-HBOBskFMVg?...
youtu.be
murphy POSTing for the first time
YouTube video by Andrew Gallant
070
Andrew Gallant @burntsushi.net · 28/05/2026
The number of times in the past few weeks that I've said out loud to my wife, "I was talking to Chat about yadda yadda yadda" (Chat is short for ChatGPT) in the past few weeks is quite remarkable. I'm just waiting for the first time she says it. That will be a major milestone unlocked.
020
Reposted by Andrew Gallant
nikomatsakis @nikomatsakis.com · 26/05/2026
This is good.
071
Andrew Gallant @burntsushi.net · 26/05/2026
I've added an AI policy to ripgrep that was shamelessly copied from uv's policy. I plan to add this to the rest of my projects, but if anyone wants to offer feedback on wording, now would be a good time! github.com/BurntSushi/r...
github.com
611416
Andrew Gallant @burntsushi.net · 26/05/2026
Why don't Jiff's strftime and strptime routines validate the format string separately from formatting or parsing a datetime? github.com/BurntSushi/j...
github.com
Why don't Jiff's `strftime` and `strptime` routines validate the format string separately from formatting or parsing a datetime? · BurntSushi jiff · Discussion #560
I've been considering moving from chrono to jiff. So far, I've been liking what I'm reading, especially when it comes to time zones. However, one thing stood out to me. That's the strftime and strp...
0203
Andrew Gallant @burntsushi.net · 19/03/2026
astral.sh/blog/openai
astral.sh
Astral to join OpenAI
Astral has entered into an agreement to join OpenAI as part of the Codex team.
0151
Reposted by Andrew Gallant
nikomatsakis @nikomatsakis.com · 23/02/2026
What it means that Ubuntu is using Rust, new blog post with some thoughts spurred by Jon Seager's excellent keynote at @rustnationuk.bsky.social (smallcultfollowing.com/babysteps/bl...)
smallcultfollowing.com
What it means that Ubuntu is using Rust · baby steps
1264
Andrew Gallant @burntsushi.net · 31/01/2026
Finally got around to migrating off of CoC to the native neovim LSP client. And while I was at it, I ported my entire vim config over to Lua. It was quite a bit more work that I thought it would be! It's been over a decade since I've written Lua, but it's a dream come true compared to Vimscript.
4221
Andrew Gallant @burntsushi.net · 29/01/2026
uutils has now fully migrated off of Chrono (which is now soft-deprecated) to Jiff! github.com/uutils/coreu...
github.com
Consider switching from `chrono` to `jiff` · Issue #7852 · uutils/coreutils
Based on discussion in #7849, it seems like it would be interesting to use jiff instead of chrono, at the very least in date: this would make our life easier when handling timezones. Dirty branch h...
3370
Andrew Gallant @burntsushi.net · 26/01/2026
Trumpism is Fascism github.com/BurntSushi/n...
github.com
0518
Reposted by Andrew Gallant
LegalEagle @legaleagle.tv · 24/01/2026
Alex Pretti’s last words were “are you ok?” said the woman next to him who ICE also pepper sprayed in the face.
126168225452
Reposted by Andrew Gallant
Russ Cox @swtch.com · 19/01/2026
“Floating-Point Printing and Parsing Can Be Simple And Fast” The fastest known floating-point printer and parsing algorithms - fixed-width printing, shortest-width printing, and parsing, all in 400 lines of Go. research.swtch.com/fp research.swtch.com/fp-proof
research.swtch.com
research!rsc: Floating-Point Printing and Parsing Can Be Simple And Fast (Floating Point Formatting, Part 3)
17716
Andrew Gallant @burntsushi.net · 06/01/2026
Using the `regex` crate inside the Linux kernel www.dawidmacek.com/posts/2025/r...
dawidmacek.com
eBPF Policy Enforcement: Marrying Rust, kfuncs and regexes
Build a kernel-level regex policy engine using eBPF kfuncs and Rust. Tutorial on implementing AMSI-like malicious script detection in Linux kernel.
0241
Andrew Gallant @burntsushi.net · 20/12/2025
I've updated the rebar benchmarks, and .NET's regex engine in v10 is right about on par with Rust's regex crate! Nice work! (rebar is, I believe, the most comprehensive public regex benchmark in existence.) github.com/BurntSushi/r...
github.com
GitHub - BurntSushi/rebar: A biased barometer for gauging the relative speed of some regex engines on a curated set of tasks.
A biased barometer for gauging the relative speed of some regex engines on a curated set of tasks. - BurntSushi/rebar
0342
Andrew Gallant @burntsushi.net · 20/12/2025
First time seeing this and it is really great! abseil.io/fast/hints.h...
abseil.io
abseil / Performance Hints
An open-source collection of core C++ library code
0275
Reposted by Andrew Gallant
Aria Desires @gankra.bsky.social · 16/12/2025
so pumped for the ty beta to finally be here, we did so much great work it rules! astral.sh/blog/ty
astral.sh
ty: An extremely fast Python type checker and language server
ty is an extremely fast Python type checker and language server, written in Rust, and designed as an alternative to mypy, Pyright, and Pylance.
312720
Reposted by Andrew Gallant
RustNL @rustnl.bsky.social · 27/11/2025
** Speaker announcement ** Our next speaker is Andrew "BurntSushi" Gallant! Andrew is a member of the Rust project and maintains many important crates. Info & tickets: 2026.rustweek.org Do you also want to give a talk? Our CFP is open. See you in Utrecht in May! #rustlang #rustweek2026
0355
Reposted by Andrew Gallant
Mara Bos @mara.bsky.social · 13/11/2025
🦀 I've improved the implementation behind all the string formatting macros in Rust: println, panic, format, write, log::info, etc. (Everything using format_args!().) They will compile a bit faster, use a bit less memory while compiling, result in smaller binaries, and produce more efficient code! 🎉
The source of the standard Rust Hello World program with the generated assembly before and after the change.

The before version has 11 instructions and stores 56 bytes on the stack. The after version has 3 instructions and stores no data on the stack.
1153460
Andrew Gallant @burntsushi.net · 30/10/2025
Jaw droppingly wild. www.youtube.com/watch?v=NPtK...
youtube.com
So, Trump's Lawyer Keeps Txting Me...
YouTube video by LegalEagle
040
Andrew Gallant @burntsushi.net · 16/10/2025
ripgrep 15 is out! Mostly a host of bug fixes, particularly around gitignore. Some minor perf improvements. A couple small features. And (partial) Jujutsu support for gitignore. github.com/BurntSushi/r...
github.com
Release 15.0.0 · BurntSushi/ripgrep
Sponsorship is appreciated! ripgrep 15 is a new major version release of ripgrep that mostly has bug fixes, some minor performance improvements and minor new features. In case you haven't heard of...
48510
Reposted by Andrew Gallant
Rust Language @rust-lang.org · 24/09/2025
The crates.​io team was notified of two malicious crates (with similar names as legitimate crates) which were actively searching file contents for Etherum private keys, Solana private keys, and arbitrary byte arrays for exfiltration. See the blog post for details: blog.rust-lang.org/2025/09/24/c...
blog.rust-lang.org
crates.io: Malicious crates faster_log and async_println | Rust Blog
Empowering everyone to build reliable and efficient software.
311435
Reposted by Andrew Gallant
Mara Bos @mara.bsky.social · 22/09/2025
Happy 10 year anniversary to this tweet! Has memory safety in C++ been solved yet? x.com/CppCon/statu...
A tweet from @CppCon from 22 september 2015: "Herb Sutter says we are close to solving memory safety in C++ without runtime overhead. #CppCon"
920634
Andrew Gallant @burntsushi.net · 13/09/2025
Found what appears to be my oldest game save on a physical memory card. From about 18 years ago! This is from The Simpsons: Hit and Run. On a GameCube memory card. I do probably have some N64 memory cards lying around... Hmmm.
A picture showing some game saves (from up to 18 years ago) of Simpsons Hit and Run.
1130
Reposted by Andrew Gallant
Rust Language @rust-lang.org · 12/09/2025
We received reports of a phishing campaign targeting crates​.io users. Do not click on links asking to authenticate to protect your account. More information: blog.rust-lang.org/2025/09/12/c...
blog.rust-lang.org
crates.io phishing campaign | Rust Blog
Empowering everyone to build reliable and efficient software.
011256
Andrew Gallant @burntsushi.net · 12/09/2025
FYI, I got an obvious phishing attempt in my inbox from `security@rustfoundation.dev` that was masquerading as a security breach notification. It made it past gmail's spam filters. The link goes to the `github.rustfoundation.dev` domain.
25918
Reposted by Andrew Gallant
Charlie Marsh @crmarsh.com · 13/08/2025
Today, we're announcing our first hosted infrastructure product: pyx, a Python-native package registry. We think of pyx as an optimized backend for uv: it’s a package registry, but it also solves problems that go beyond the scope of a traditional "package registry".
417237
Andrew Gallant @burntsushi.net · 07/07/2025
Plato, Aug 2010 - July 7, 2025. You never did quite learn how to poop like a normal cat, but I loved you anyway. I'll miss you buddy.
131775
Reposted by Andrew Gallant
Michael (compiler-errors) Goulet @errs.io · 02/07/2025
Howdy all. I'm unfortunately not going to be with my employer for much longer due to team relocation. If anyone has any info on roles that would allow me to continue my Rust compiler work (in New York City), they'd be greatly appreciated.
19345
Reposted by Andrew Gallant
Charlie Marsh @crmarsh.com · 03/07/2025
The uv build backend is now stable, and considered ready for production use. An alternative to setuptools, hatchling, etc. for pure Python projects, with a focus on good defaults, user-friendly error messages, and performance. When used with uv, it's 10-35x faster.
523643
Reposted by Andrew Gallant
winter @homosexual.cat · 22/05/2025
spent some time switching #jj-vcs over to @burntsushi.net’s Jiff for datetime handling. look at how much simpler (most) of the code is! github.com/jj-vcs/jj/pu... there are some things i want to improve down the line, like adding reference support to interim so we can pass around an &Zoned, but…
github.com
lib, cli: migrate from `chrono` to `jiff` for timestamp handling by winterqt · Pull Request #6596 · jj-vcs/jj
Jiff 0 is a datetime library which "encourages you to jump into the pit of success" by "providing high level datetime primitives that are difficult to misuse and have reasonable perf...
2122
Andrew Gallant @burntsushi.net · 17/05/2025
Surprise surprise. Hugo has yet again started failing to build my web site with an unactionable error message. Happens about once per year. I don't stay aprised of Hugo development. I just want it to work. This has gotta be at least one of the reasons why people build their SSG.
4150
Reposted by Andrew Gallant
Charlie Marsh @crmarsh.com · 13/05/2025
Today, we’re announcing the preview release of ty, an extremely fast type checker and language server for Python, written in Rust. In early testing, it's 10x, 50x, even 100x faster than existing type checkers. (We've seen >600x speed-ups over Mypy in some real-world projects.)
1433384
Andrew Gallant @burntsushi.net · 12/05/2025
Biff is command line tool for datetime arithmetic, parsing, formatting, rounding and more. It's built on top of Jiff, which means it is DST aware and has tight integration with time zones. github.com/BurntSushi/b...
github.com
GitHub - BurntSushi/biff: A command line tool for datetime arithmetic, parsing, formatting and more.
A command line tool for datetime arithmetic, parsing, formatting and more. - BurntSushi/biff
3394
Andrew Gallant @burntsushi.net · 10/05/2025
"All in all, I think the documentation [of Jiff] very comprehensive, pretty discoverable, super approachable, and explains its philosophy pretty well. It has lots of explanations and simple how-to guides, and a comprehensive reference." www.harudagondi.space/blog/rust-do...
harudagondi.space
A Rust Documentation Ecosystem Review
3292
Andrew Gallant @burntsushi.net · 24/04/2025
I marked `xsv` as being officially unmaintained and archived the repository: github.com/BurntSushi/xsv It had been de facto unmaintained for some time and some excellent tools have popped up in its place. So it's time to pass the torch!
github.com
GitHub - BurntSushi/xsv: A fast CSV command line toolkit written in Rust.
A fast CSV command line toolkit written in Rust. Contribute to BurntSushi/xsv development by creating an account on GitHub.
2100
Andrew Gallant @burntsushi.net · 17/04/2025
I am planning to release Jiff 1.0, a datetime library for Rust, this summer. After that, I do not plan to make breaking changes, possibly indefinitely. I would LOVE LOVE LOVE more experience reports before stabilizing Jiff. Tell your friends. github.com/BurntSushi/j...
github.com
BurntSushi jiff Experience Reports · Discussions
Explore the GitHub Discussions forum for BurntSushi jiff in the Experience Reports category.
2448
Andrew Gallant @burntsushi.net · 10/04/2025
Murph (4.5yo son) had his first lesson in historiography yesterday. I was listing off a bunch of random facts about George Washington, and Murph asked where he was. I said he died a long time ago. Then Murph (roughly) asks, "but then how do you know all that about him?"
130