Servo Blog

フィード

記事のアイキャッチ画像
Your Donations at Work: One Year of Sponsored Servo Development
Servo Blog
Last September, the Servo project announced that long-time maintainer Josh Bowman-Matthews (@jdm) would work part-time on improving the Servo contributor experience, entirely funded by the monthly donations on OpenCollective and GitHub.In his own words, here is a look back over the past year!First of all, I am enormously grateful to everyone who financially supports Servo, as those donations have enabled me to devote significant time to a project that I care a lot about.Some highlights from that funded work that I’m proud of:I nominated 8 new maintainersI reviewed 1150 pull requestsI filed 114 issues targeted at newer contributors (92% of them have been fixed)I wrote new documentation about borrow hazards, experimental features, the AI policy, finding things to do, and fixing stable and intermittent test failuresOn top of that, I spent time diagnosing unexpected failures in others’ PRs and fixed numerous intermittent test failures that made merging PRs more difficult for everyone.A few
1ヶ月前
記事のアイキャッチ画像
July in Servo: more platforms, faster canvas, web fonts in SVG, and more!
Servo Blog
Servo 0.5.0 contains all of the changes we landed in July, which came out to 488 commits, and we now publish binaries for Linux aarch64 (@mukilan, #46760)!DOM text selections are now visible (@mrobinson, @SimonSapin, #46698, #46864, #46742, #46889, #46126).Interactive selection is coming soon!For security fixes, see § Security.`, and DOM selection rendering" />We’ve shipped several new web platform features:‘Cache-Control: stale-while-revalidate’ (@arayaryoma, #46060)‘text-decoration-thickness’ (@nicoburns, #46592)‘box-decoration-break’, for the most part (@Psychpsyo, #45492)‘@font-feature-values’, for the most part (@simonwuelker, #45308)‘font-language-override’, for the most part (@simonwuelker, #46618)‘font-variant-alternates’, for the most part (@simonwuelker, #45308)Plus a bunch of new DOM APIs:Ed448, X448, and KMAC algorithms in Subtle­Crypto (@kkoyung, #46402, #46141, #46180, #46583, #46606, #46622, #46334, #46376)‘insert­Horizontal­Rule’, ‘insert­Image’, ‘insert­Text’, and ‘for
2ヶ月前
記事のアイキャッチ画像
June in Servo: real world compat, media queries, SharedWorker, and more!
Servo Blog
Servo 0.4.0 contains all of the changes we landed in June, which came out to yet another record 558 commits (April: 534, May: 391).For security fixes, see § Security.We’ve shipped several new web platform features:‘attr()’, in experimental mode (@Loirooriol, #45041)‘image(<color>)’, ‘closest-corner’, and ‘farthest-corner’ in ‘ellipse()’ and ‘circle()’ (@Loirooriol, #45421)‘calc()’ and other mathematical expressions can now be resolved later than parse time, e.g. sign(1em - 32px) (@Loirooriol, #45421)‘font-feature-settings’ in ‘@font-face’ (@simonwuelker, #45393)‘@media (device-width)’, ‘@media (device-height)’, ‘@media (height)’, ‘@media (aspect-ratio)’, and their min- and max- variants (@jdm, @mrobinson, @nicoburns, @jschwe, #44978, #45707, #45490)‘@media (orientation)’ (@nicoburns, #45707)‘@media (pointer)’ and ‘@media (any-pointer)’ (@nicoburns, #45681)‘@media (hover)’ and ‘@media (any-hover)’ (@nicoburns, #45681)Plus a bunch of new DOM APIs:Shared­Worker (@Taym95, #45786)console­.d
3ヶ月前
記事のアイキャッチ画像
May in Servo: user scripts, mp4 compat, blackboxing in DevTools, and more!
Servo Blog
Servo 0.3.0 contains all of the changes we landed in May, which came out to 391 commits (April: 534).For security fixes, see § Security.We’ve shipped several new web platform features:‘font-kerning: none’ (@simonwuelker, #44634)‘font-variant-east-asian’ (@simonwuelker, #44989)‘font-variant-ligatures’ (@simonwuelker, #44903)‘font-variant-numeric’ (@simonwuelker, #44950)‘font-variant-position’ (@simonwuelker, #45142)mp4 files without fast start in <video> (@calvaris, #45084)<form enctype="multipart/form-data"> (@yezhizhen, #45028)<form enctype="text/plain"> (@yezhizhen, #45111)<![CDATA[]]> layout (@mrobinson, #44791)Plus a bunch of new DOM APIs:onslotchange property on Shadow­Root (@jdm, #44688)screen­Left and screen­Top on Window (@TG199, #45128)new Blob() with {endings: "native"} (@yezhizhen, #44803)new Performance­Mark() (@shubhamg13, #44702)parse­HTML() on Document (@kkoyung, #44952)read­As­Binary­String() on File­Reader (@yezhizhen, #44858, #44921)performance.measure() with mark val
4ヶ月前
記事のアイキャッチ画像
April in Servo: new Android UI, focus, forms, security fixes, and more!
Servo Blog
Servo 0.2.0 contains all of the changes we landed in April, which came out to yet another record 534 commits (March: 530).For security fixes, see § Security.Note: the GitHub release is available now, but the crates.io release is not yet complete.We expect to publish it some time next week.`, ``, ‘::details-content::before’ and ‘::details-content::after’, and ‘color-mix()’ with any number of colors" />We’ve shipped several new web platform features:<select multiple> (@lukewarlow, @mrobinson, #43189)<template shadowrootslotassignment> (@simonwuelker, #44246)<video> playback on OpenHarmony (@rayguo17, #43208)‘minimum-scale’ and ‘maximum-scale’ values in <meta name=viewport> (@shubhamg13, #40098, #43715)‘color-mix()’ with any number of <color> values (@Loirooriol, #43890)‘&::before’ and ‘&::after’ in ‘::details-content’ (@Loirooriol, #43878)‘revert-rule’ (@Loirooriol, #43878)‘tab-size’ (@mrobinson, @SimonSapin, #44480)‘text-align: match-parent’ (@TG199, #44073)new Worker() with blob URLs (
5ヶ月前
記事のアイキャッチ画像
March in Servo: keyboard navigation, better debugging, FreeBSD support, and more!
Servo Blog
Servo 0.1.0 represents Servo’s biggest month ever, with a record 530 commits and our first ever release on crates.io!For security fixes, see § Security.With this release Servo becomes more accessible, thanks to tab navigation (@mrobinson, @Loirooriol, #42952, #43019, #43058, #43246, #43267, #43067), keyboard navigation with Alt+Shift and the accesskey attribute (@mrobinson, #43031, #43144, #43434), and keyboard scrolling with Space and Shift+Space (@mrobinson, #43322).We’ve shipped several new web platform features:<input type=range> (@BudiArb, @rayguo17, @mrobinson, #41562)<script blocking=render> (@TimvdLippe, #43150)<svg width> and <svg height> (@Loirooriol, #43583)‘X-Frame-Options’ (@TimvdLippe, #43539, #43708)‘Content-Security-Policy: frame-ancestors’ (@TimvdLippe, #43630)‘::first-letter’ styling (@minghuaw, @xiaochengh, @Loirooriol, #43027)‘::placeholder’ styling (@stevennovaryo, #43053)‘::file-selector-button’ styling (@lukewarlow, @AlexVasiluta, #43498)‘background-blend-mode’ (
6ヶ月前
記事のアイキャッチ画像
Servo is now available on crates.io
Servo Blog
Today the Servo team has released v0.1.0 of the servo crate.This is our first crates.io release of the servo crate that allows Servo to be used as a library.We currently do not have any plans of publishing our demo browser servoshell to crates.io.In the 5 releases since our initial GitHub release in October 2025, our release process has matured, with the main “bottleneck” now being the human-written monthly blog post.Since we’re quite excited about this release, we decided to not wait for the monthly blog post to be finished, but promise to deliver the monthly update in the coming weeks.As you can see from the version number, this release is not a 1.0 release. In fact, we still haven’t finished discussing what 1.0 means for Servo.Nevertheless, the increased version number reflects our growing confidence in Servo’s embedding API and its ability to meet some users’ needs.In the meantime we also decided to offer a long-term support (LTS) version of Servo, since breaking changes in the reg
6ヶ月前
記事のアイキャッチ画像
February in Servo: faster layout, pause and resume scripts, and more!
Servo Blog
Servo 0.0.6 includes some exciting new features:<button command> and <button commandfor> (@lukewarlow, #41237)‘:modal’ selectors on <dialog> (@lukewarlow, #42201)‘@property’ rules (@yezhizhen, @Loirooriol, #42136, #42858)‘alignment-baseline’ and ‘baseline-shift’ (@Loirooriol, #42361)‘Content-Security-Policy: base-uri’ (@WaterWhisperer, #42272)partial support for <iframe loading=lazy> (@TimvdLippe, #41959)partial support for ‘transform-style: preserve-3d’ (@simonwuelker, #42755)Plus a bunch of new DOM APIs:most of the Pointer Events API (@webbeef, #41290)the UserActivation API (@stevennovaryo, #42060)import.meta.resolve() (@Gae24, #42506)integrity in <script type=importmap> (@Gae24, #42604)the formData() method on Request (@Taym95, #42041)the alpha property on HTMLInputElement (@simonwuelker, #42293)tabIndex on HTMLElement and SVGElement (@mrobinson, @Loirooriol, #42913)fullscreenElement on Document and ShadowRoot (@onsah, #42401)toJSON() on PerformancePaintTiming (@shubhamg13, #42396)n
7ヶ月前
記事のアイキャッチ画像
January in Servo: preloads, better forms, details styling, and more!
Servo Blog
Servo 0.0.5 is here, bringing with it lots of improvements in web platform features.Some highlights:<link rel=preload> (@TimvdLippe, @jdm, #40059)<style blocking> and <link blocking> (@TimvdLippe, #42096)<img align> (@mrobinson, #42220)<select disabled> (@simonwuelker, #42036)OGG files can now be played in <audio> (@jdm, #41789)‘cursor-color’ (@mrobinson, #41976)‘content: <image>’ works on all elements (@andreubotella, #41480)‘::details-content’ on <details> (@lukewarlow, #42107)‘:open’ on <details> (@lukewarlow, #42195)‘:active’ on <input type=button> (@mrobinson, #42095)Origin API (@WaterWhisperer, #41712)MouseEvent.detail (@mrobinson, #41833)Request.keepalive (@TimvdLippe, @WaterWhisperer, #41457, #41811)Cyclic imports, import attributes, and JSON modules (@Gae24, #41779)navigator.sendBeacon() is enabled by default (@TimvdLippe, #41694)https_proxy, HTTPS_PROXY, and NO_PROXY (@Narfinger, #41689)ML-KEM, ML-DSA, and AES-OCB in Crypto (@kkoyung, #41604, #41617, #41615, #41627, #41628, #
8ヶ月前
記事のアイキャッチ画像
December in Servo: multiple windows, proxy support, better caching, and more!
Servo Blog
Servo 0.0.4 and our December nightly builds now support multiple windows (@mrobinson, @mukilan, #40927, #41235, #41144)!This builds on features that landed in Servo’s embedding API last month.We’ve also landed support for several web platform features, both old and new:‘contrast-color()’ in CSS color values (@webbeef, #41542)partial support for <meta charset> (@simonwuelker, #41376)partial support for encoding sniffing (@simonwuelker, #41435)‘background’ and ‘bgcolor’ attributes on <table>, <thead>, <tbody>, <tfoot>, <tr>, <td>, <th> (@simonwuelker, #41272)tee() on readable byte streams (@Taym95, #35991)Note: due to a known issue, servoshell on macOS may not be able to directly open new windows, depending on your system settings.For better compatibility with older web content, we now support vendor-prefixed CSS properties like ‘-moz-transform’ (@mrobinson, #41350), as well as window.clientInformation (@Taym95, #41111).We’ve continued shipping the SubtleCrypto API, with full support for
9ヶ月前