Pinned
👋 Hi everyone, I’m enabling GitHub Sponsors for Metro If Metro has improved your developer experience or saved your team's build times, I’d appreciate the support! Full pitch and ROI napkin math here: www.zacsweers.dev/sponsoring-m...
Zac Sweers
@zacsweers.dev
All this happened, more or less Blog: zacsweers.dev 📍NYC
1.5K followers417 following79 posts
Pinned
👋 Hi everyone, I’m enabling GitHub Sponsors for Metro If Metro has improved your developer experience or saved your team's build times, I’d appreciate the support! Full pitch and ROI napkin math here: www.zacsweers.dev/sponsoring-m...
Metro 1.5.0's a huge release with up to 50% smaller generated graphs, IC improvements, and a new hidden contributions Gradle task. github.com/ZacSweers/me...
Metro 1.4.0 brings suspend providers! ⚡ github.com/ZacSweers/me...
Suspend providers have been in the works for months, h/t @jingibus.bsky.social for writing up the original proposal. There's more work here but pretty happy with how this core runtime has shaped up! Please give feedback/ideas/etc on the original MEEP: github.com/ZacSweers/me...
Zac Sweers reposted
Enough statements, enough words, enough "careful consideration", enough private disgust. It's time for UEFA and Europe to take action against what FIFA and Infantino are doing to football: www.theguardian.com/football/202...
Circuit 0.35.1 begins removing Parcelable requirements and migrating to AndroidX retain! github.com/slackhq/circ...
Contributed R8 support to shadow, main benefit is you could produce pretty optimized uber jars now (on top of just tree-shaking). Should be pretty handy for CLIs. github.com/GradleUp/shadow/re...
Also handy for testing your library against R8/minification conditions. Good if you do some reflection and have proguard rules you ship with your library. Example of doing this (manually) here: github.com/ZacSweers/Mo...
My "Metro Under the Hood" talk from KotlinConf is available on YouTube now! Video: youtu.be/KVmogsSbic8 Slides: speakerdeck.com/zacsweers/met...
Metro 1.3.0 has rich diagnostics and experimental runtime tracing! github.com/ZacSweers/metro/re...
Metro 1.3.0 has rich diagnostics and experimental runtime tracing! github.com/ZacSweers/metro/re...
Metro 1.3.0 has rich diagnostics and experimental runtime tracing! github.com/ZacSweers/metro/re...
How to Take an 11 Month Sabbatical www.zacsweers.dev/how-to-take-...
Coming in Metro 1.3.0! Was awesome working with Rahul on this
I collaborated with @zacsweers.dev (who did most of the heavy lifting) to add automatic tracing for Graph bindings generated by Metro. If you are using DI, then you should be cognizant of it's costs. Metro automatically adds traces for all generated bindings when you enable Runtime tracing.
Introducing kempt: a single-entry point CLI that delegates to language-specific formatters with easy installation, automatic binary management, git hook integration, license headers, whitespace handling, and simple configuration. www.zacsweers.dev/introducing-...
Zac Sweers reposted
🎉 OkHttp, Okio, Retrofit, and SQLDelight join Commonhaus! www.commonhaus.org/activity/315...
Super sympathetic to Sonatype's situation, hosting isn't free. But announcing this with paltry limits and no public pricing options (a sales contact ain't it) is bad for everyone and going to be a major disruption to the JVM and Kotlin ecosystems. central.sonatype.org/publish/mave...
Zac Sweers reposted
Metro 1.2.0 has Hilt interop, provider inlining, improved compiler performance, and leaner runtime primitives! github.com/ZacSweers/metro/re...
Zac Sweers reposted
I've been a broken record on this for three years and I'll be a broken record for as long as that fucking website exists: X is a viciously racist far-right organising platform that ONLY WORKS because a huge number of centrists, lefties and progressivs cannot stop propping it up
Zac Sweers reposted
⚡️Circuit 0.34.0 is out 🚀 🆕 SubCircuit - A lightweight presenter/UI pair for reusable components that need to cooperatively delegate events to a parent. Plus a new composite-presenter Inbox sample, support for Compose 1.11, and a variety of fixes! github.com/slackhq/circ...
Zac Sweers reposted
—Guy gets a potato egg and cheese taco —republicans decide to make it a campaign issue —they call him vegan instead of vegetarian even though vegans don’t eat eggs or cheese, because vegan sounds “worse” —guy isn’t even vegetarian, he just likes tacos
RNC Chair Joe Gruters: "Tala-freako is a creep. He's a vegan. He thinks God is nonbinary. He wants to mutilate children."
Here are the slides: speakerdeck.com/zacsweers/me...
I'll be giving a talk about Metro's internals tomorrow at @kotlinconf.com! This'll be an advanced talk that assumes familiarity with Metro, and is a sort of part 2 of my "Navigating Dependency Injection with Metro" talk last year. You can find it here: www.youtube.com/watch?v=jVfm...
I'll be giving a talk about Metro's internals tomorrow at @kotlinconf.com! This'll be an advanced talk that assumes familiarity with Metro, and is a sort of part 2 of my "Navigating Dependency Injection with Metro" talk last year. You can find it here: www.youtube.com/watch?v=jVfm...
Also highly recommend @bnorm.dev's talk on compiler plugins here: www.youtube.com/watch?v=9P7q...
Metro 1.1.0 and 1.0.1 are out now! This is largely a performance release. They are identical except 1.1.0 drops Kotlin 2.2.0 - Improved compiler performance - Lots of tracing improvements - SwitchingProvider now generates tableswitch bytecode - Kotlin 2.4.20 support github.com/ZacSweers/metro/re..
Metro 1.1.0 and 1.0.1 are out now! This is largely a performance release. They are identical except 1.1.0 drops Kotlin 2.2.0 - Improved compiler performance - Lots of tracing improvements - SwitchingProvider now generates tableswitch bytecode - Kotlin 2.4.20 support github.com/ZacSweers/metro/re..
1.1.0 release notes are here, but the bulk of the interesting notes are in 1.0.1! github.com/ZacSweers/metro/re...
Metro wouldn’t be where it is without the road that Anvil paved before it. I’ve really enjoyed working with Joel and Jacob on several Metro features already, with @ralf-wondratschek.com in its early design phase, and really looking forward continuing to work with all of them. Future’s bright 🚇
Anvil is approaching the icebox, long live Metro. github.com/square/anvil...