Federico's Blog
Outreachy internship for librsvg, December 2024
Fixing a memory leak of xmlEntityPtr in librsvg
Rustifying libipuz: character sets
Librsvg will use Rust-only image decoders starting on 2.58.0
Vilanova / Barcelona 2006: Memories of GUADECs past
Stuttgart 2005: Memories of GUADECs past
Librsvg is available from crates.io now
Reducing code size in librsvg by removing an unnecessary generic struct
Los cajones - Dos mesitas de noche, parte 3
Some thoughts on linking to code
Development guides for librsvg and at-spi2-core
Paying technical debt in our accessibility infrastructure - Transcript from my GUADEC talk
Fixing test coverage reports in at-spi2-core
Accessibility repositories are now merged
Paying technical debt in our accessibility infrastructure
Automating my home network with Salt
Moving librsvg's documentation to gi-docgen
Text in librsvg starts to get better
Librsvg's development branch is now called main
GNOME themes, an incomplete status report, and how you can help
Bzip2's experimental repository is changing maintainership
Librsvg, Rust, and non-mainstream architectures
Do not use librsvg 2.40.x
Librsvg's test suite is now in Rust
Librsvg is accepting interns for Outreachy's December 2020 round
"Rust does not have a stable ABI"
Looking for candidates for the 2020 GNOME Foundation elections
Bringing my Emacs from the past
Reducing memory consumption in librsvg, part 4: compact representation for Bézier paths
Reducing memory consumption in librsvg, part 3: slack space in Bézier paths
Reducing memory consumption in librsvg, part 2: SpecifiedValues
Librsvg accepting interns for Summer of Code 2020
Reducing memory consumption in librsvg, part 1: text nodes
Exposing C and Rust APIs: some thoughts from librsvg
Moving gnome-shell's styles to Rust
Refactoring the Length type
CSS in librsvg is now in Rust, courtesy of Mozilla Servo
Gdk-pixbuf modules - call for help
On responsible vulnerability disclosure
Constructors
Gtk-rs tutorial
Removing rsvg-view
Bzip2 1.0.7 is released
Preparing the bzip2-1.0.7 release
Bzip2 in Rust: porting the randomization table
Bzip2 uses Meson and Autotools now — and a plea for help
Bzip2 repository reconstructed
Maintaining bzip2
Bzip2 in Rust - Basic infrastructure and CRC32 computation
Containing mutability in GObjects
A Rust API for librsvg
Rust build scripts vs. Meson
Who wrote librsvg?
Librsvg's GObject boilerplate is in Rust now
Librsvg is almost rustified now
Marcar las patas - Dos mesitas de noche, parte 2
Dos mesitas de noche, parte 1 - preparar las piezas
Reinicio de La Viruta Rebelde
In support of Coraline Ada Ehmke
My GUADEC 2018 presentation
Refactoring allowed URLs in librsvg
Thessaloniki GNOME+Rust Hackfest 2018
Propagating Errors
My gdk-pixbuf braindump
Debugging an Rc<T> reference leak in Rust
Logging from Rust in librsvg
Three big things happening in librsvg
Reducing the number of image copies in GNOME
Madrid GNOME+Rust Hackfest, part 3 (conclusion)
Madrid GNOME+Rust Hackfest, part 2
Madrid GNOME+Rust Hackfest, part 1
Refactoring some repetitive code to a Rust macro
Making sure the repository doesn't break, automatically
Librsvg and Gnome-class accepting interns
Helping Cairo
Quick and dirty checklist to update syn 0.11.x to syn 0.12
Librsvg's continuous integration pipeline
RFC: Integrating rsvg-rs into librsvg
Rust things I miss in C
Writing a command-line program in Rust
rsvg-bench - a benchmark for librsvg
Help needed for librsvg 2.42.1
Librsvg gets Continuous Integration
Loving Gitlab.gnome.org, and getting notifications
Librsvg 2.40.20 is released
Librsvg moves to Gitlab
A mini-rant on the lack of string slices in C
Code Hospitality
Rust+GNOME Hackfest in Berlin, 2017
Compilation notifications in Emacs
How glib-rs works, part 3: Boxed types
Initial posts about librsvg's C to Rust conversion
The Magic of GObject Introspection
Librsvg's build infrastructure: Autotools and Rust
How Glib-rs works, part 2: Transferring lists and arrays
How Glib-rs works, part 1: Type conversions
Correctness in Rust: building strings
GUADEC 2017 presentation
Surviving a rust-cssparser API break
Legacy Systems as Old Cities